🇨🇳 中文 | 🇬🇧 English
状态:预印本 · 代码待发布 · 实验验证中
惯性里程计(Inertial Odometry, IO)利用惯性测量单元(IMU)的原始数据估计运动轨迹,是 GNSS 信号缺失环境下室内导航的核心技术。以 RoNIN 为代表的深度学习方法已在速度回归任务上取得竞争性表现,但其输出为确定性点估计,缺乏对预测不确定性的量化能力,难以满足安全关键场景的需求。
本文提出 PostDiffIO,一种基于条件扩散的两阶段残差细化框架。第一阶段,骨干网络(基于 RoNIN 的 ResNet1D)从 IMU 滑动窗口预测基线速度;第二阶段,轻量级条件扩散细化器对骨干预测与真实速度之间的残差建立后验分布。训练时,细化器以骨干特征为条件,通过标准噪声预测目标学习残差去噪;推理时,确定性 DDIM 采样生成残差样本集,其均值修正骨干估计,方差表征预测不确定性。在序列级轨迹恢复中,进一步引入误差状态扩展卡尔曼滤波器(EKF),将扩散输出的速度观测与 IMU 捷联动力学融合,实现具有完整协方差跟踪的位置与速度估计。
在合成数据与公开惯性数据集上的初步实验表明,PostDiffIO 在速度估计精度和不确定性校准两方面均优于单纯骨干网络,验证了扩散残差细化在惯性里程计中的有效性。
精确、鲁棒的室内定位是增强现实、自主机器人等应用的基础需求。IMU 作为消费电子设备中最普及的运动传感器,能够提供高频率的运动感知,但其直接积分会产生无界漂移。传统方法(如扩展卡尔曼滤波 EKF、零速更新 ZUPT)依赖精细的手工调参,且在剧烈运动或磁干扰环境下性能显著退化。
近年来,深度学习为 IO 提供了新的范式,能够直接从 IMU 序列学习速度或位移映射。RoNIN 首次将 ResNet1D 引入惯性速度回归,在 200 Hz IMU 数据上实现了实时推理。此后,LSTM、TCN、注意力机制等架构相继被用于改进时序建模能力。然而,这些方法的根本局限在于:它们仅输出点估计,无法量化预测的置信程度。
在人体活动识别、机器人导航、结构健康监测等安全关键应用中,判断 预测何时不可靠 与预测本身同等重要。贝叶斯方法为不确定性估计提供了理论框架,但其计算开销使实时移动端部署成为难题。
扩散模型最初面向图像生成任务提出,近年来在低维回归问题上也展现出强大的分布建模能力。其迭代去噪过程天然支持从学习到的后验中采样,无需显式建模概率密度即可获得不确定性估计。
基于上述观察,本文提出 PostDiffIO,将条件扩散模型引入惯性里程计的残差细化。核心思想是:不直接建模完整的速度后验(代价高且冗余),而是将问题分解为两阶段——快速确定性骨干提供速度基线,轻量扩散过程仅捕获残差的不确定性。这种设计兼顾了骨干网络的实时推理速度与扩散模型的原则性不确定性量化。
本文的主要贡献如下:
- 条件扩散残差细化:提出以骨干特征为条件的扩散过程对速度残差建模后验,在不牺牲推理速度的前提下实现不确定性感知的惯性里程计。
- DDIM 采样与 EKF 融合:将 DDIM 采样的速度后验通过误差状态 EKF 与 IMU 动力学融合,同时输出高精度轨迹与校准的不确定性界。
- 模块化设计:扩散细化器与骨干网络解耦,可即插即用地接入任何输出速度的确定性 IO 网络。
本节将在论文正式提交时补充完善。
深度学习在 IO 中的架构演进可分为几个阶段。RoNIN 首次采用 ResNet1D 实现 IMU 到速度的端到端回归。后续工作引入 LSTM 进行长程时序建模,TCN 架构提升序列处理效率,注意力机制捕获长距离依赖关系。近期,Transformer 架构也被用于更高精度的轨迹估计。
扩散模型在图像生成领域取得巨大成功后,其在结构化回归任务中的应用也日益增多。条件扩散过程已被用于时间序列预测、点云去噪和运动预测等任务。本文将这一范式引入惯性里程计,利用速度残差的低维特性实现高效的扩散细化。
现有不确定性感知 IO 方法主要包括 Monte Carlo Dropout、深度集成(Deep Ensemble)和证据深度学习(Evidential Deep Learning)。这些方法或引入显著计算开销,或仅提供近似的不确定性估计。扩散模型提供了一种新的替代路径:通过采样过程的多次前向传播自然产生经验后验,无需额外的不确定性参数化。
给定采样频率为 f(通常 200 Hz)的 IMU 测量序列 x₁:T = {(aₜ, ωₜ)},其中 aₜ ∈ ℝ³ 和 ωₜ ∈ ℝ³ 分别为线加速度与角速度,IO 任务是估计对应的速度轨迹 v₁:T ∈ ℝ^(3×T)。
PostDiffIO 以长度为 W 的滑动窗口处理 IMU 数据。在每个窗口内,骨干网络预测速度估计 v̂ₜ,扩散细化器建模残差分布 p(εₜ | v̂ₜ, xₜ),其中残差定义为 εₜ = vₜ − v̂ₜ。
采用 RoNIN ResNet1D 作为确定性骨干,处理流程如下:
- 输入投影:1D 卷积将 6 维 IMU 输入映射至 64 通道特征空间。
- 残差组:四组残差块(组大小可配置)提取时序特征。
- 输出头:全连接层将全局池化特征映射为 3 维速度估计。
骨干网络同时从倒数第二层提取中间特征 fₜ ∈ ℝ^(d_f),作为扩散细化器的条件输入。
细化器为条件去噪网络 ε_θ(rₜ, t, cₜ),以含噪残差、时间步和条件向量为输入,预测加性噪声。具体而言:
- 含噪残差:rₜ = √(ᾱₜ) · ε + √(1 − ᾱₜ) · η,即真实残差经余弦调度加噪后的结果。
- 时间步嵌入:时间步 t 的正弦编码经两层 MLP 投影。
- 条件向量:cₜ = Encoder([fₜ; v̂ₜ]),骨干特征与基线速度拼接后投影至 128 维。
网络结构为:线性投影至 256 维 → 四个残差块(LayerNorm → Linear → SiLU → Linear,含跳跃连接) → 输出投影至 3 维噪声预测。
总损失为两项之和:
L = L_velocity + λ · L_diffusion
其中 L_velocity 为骨干网络的速度 MSE 损失,L_diffusion 为残差后验的噪声预测损失:
L_diffusion = E_{t∼U(0,T), η∼N(0,I)} [ ‖η − ε_θ(rₜ, t, cₜ)‖² ]
采用余弦噪声调度,共 100 个扩散步,兼顾生成质量与训练效率。
推理时采用确定性 DDIM 采样,以 10 步(原始 100 步的子集)高效获取残差后验样本:
- 初始化:r_T ∼ N(0, I)。
- 逐步去噪(t = T, T−Δt, …, Δt):
- 预测噪声:η̂ = ε_θ(rₜ, t, c)
- 估计干净信号:r₀ = (rₜ − √(1−ᾱₜ) · η̂) / √(ᾱₜ)
- 更新:r_{t−Δt} = √(ᾱ_{t−Δt}) · r₀ + √(1−ᾱ_{t−Δt}) · η̂
采样 K 个残差样本(默认 K=16),据此计算:
- 速度均值:v̂ = v̂_backbone + (1/K) · Σ ε⁽ᵏ⁾
- 不确定性协方差:Σ = (1/K) · Σ (ε⁽ᵏ⁾ − ε̄)(ε⁽ᵏ⁾ − ε̄)ᵀ
为实现序列级轨迹恢复,采用 15 维误差状态 EKF 融合扩散速度观测与 IMU 动力学。
状态向量:x = [p, v, q, bₐ, b_g]ᵀ ∈ ℝ¹⁵,依次为位置、速度、姿态四元数、加速度计偏置、陀螺仪偏置。
预测步骤:基于捷联惯导动力学进行中点积分,通过线性化状态转移矩阵传播协方差。
更新步骤:在每个扩散预测窗口,以卡尔曼增益融合速度观测:
K = P · Hᵀ · (H · P · Hᵀ + R)⁻¹
其中 H 为速度观测矩阵,R 为扩散采样的观测协方差。协方差更新采用 Joseph 形式以保证数值稳定性。
完整实验结果将在评估体系完成后发布。以下为实验设计框架。
数据集:
- OxIOD:14 个序列,真值由 Vicon 动作捕捉系统提供
- IDOL:大规模惯性数据集,涵盖多样化人体活动
- RoNIN-Synthetic:可控噪声水平的合成轨迹数据
评价指标:
- Velocity RMSE(m/s):速度估计的均方根误差
- ATE(m):位置的绝对轨迹误差
- NLL:基于预测不确定性的负对数似然
- ECE:不确定性校准的期望校准误差
实现环境:PyTorch 2.0+,Python 3.10+,单卡 NVIDIA RTX 3090。优化器为 AdamW,配合余弦学习率调度。扩散训练 100 步,推理时 DDIM 采样 10 步。
实验结果待补充。
| 方法 | Velocity RMSE ↓ | ATE ↓ | NLL ↓ | 实时性 |
|---|---|---|---|---|
| RoNIN(基线) | — | — | — | ✓ |
| PostDiffIO | — | — | — | ✓ |
| PostDiffIO + EKF | — | — | — | ✓ |
不确定性质量评估方案:
- 稀疏化曲线(Sparsification Plot):绘制误差随高不确定性样本移除比例的变化,AUC 越高表示不确定性排序越准确。
- 校准分析:对比预测方差与经验方差的可靠性图(Reliability Diagram)。
- 选择性预测:评估拒绝高不确定性预测后的准确率提升。
计划考察以下因素的影响:
- 扩散步数(50 / 100 / 200)对精度与速度的权衡
- DDIM 采样数(4 / 8 / 16 / 32)对不确定性质量的影响
- 条件向量维度(64 / 128 / 256)对模型容量的影响
- 与 Monte Carlo Dropout、深度集成等基线方法的对比
本文提出 PostDiffIO,一种基于条件扩散的不确定性感知惯性里程计框架。通过将速度估计分解为确定性骨干预测与扩散细化的残差后验,该方法在保持实时推理速度的同时实现了原则性的不确定性量化。与误差状态 EKF 的集成进一步支持了具有完整协方差跟踪的鲁棒轨迹恢复。
初步实验表明,扩散残差细化在点估计精度和不确定性校准两方面均优于单纯骨干网络。我们相信,这种"确定性预测 + 扩散细化"的两阶段范式具有广泛的适用性,可推广至惯性里程计以外的、需要不确定性感知的回归任务。
未来工作包括:将框架扩展至多模态传感器融合、设计以运动动态为条件的自适应扩散调度,以及开展全面的实际部署评估。
如本工作对您有帮助,请引用:
@article{postdiffio2025,
title = {PostDiffIO: Conditional Diffusion Posterior Refinement for Uncertainty-Aware Inertial Odometry},
author = {Your Name and Collaborators},
journal = {arXiv preprint},
year = {2025},
note = {Work in progress. Code: https://github.com/BUG423/diffusion-io}
}本项目基于 MIT 许可证 发布。
版权声明:本仓库中的代码与方法仅用于研究和学术目的。请遵守相关版权及知识产权法规,再分发或衍生作品须保留此声明。
如有疑问或合作意向,请提交 Issue。
本 README 作为项目学术披露的一部分维护,实验结果将在评估完成后持续更新。