本文介绍了预积分的技术细节。

C. Forster, L. Carlone, F. Dellaert, D. Scaramuzza. On-Manifold Preintegration for Real-Time Visual-Inertial Odometry.IEEE Transactions on Robotics, 33(1), 1-21, 2017.


以上过程与我们在IMU测量方程和噪声方程中已有描述。当然,我们完全可以用这种约束来构建图优化,对IMU相关的问题进行求解。但是这组方程刻画的时间太短,或者说,IMU的测量频率太高。我们并不希望优化过程随着IMU数据进行调用,那样太浪费计算资源。于是,预积分方法应运而生,它可以把一段时间的IMU数据累计起来统一处理。现在介绍如何在关键帧之间对IMU进行预积分。

我们不妨假设从关键帧 i 和 j 之间的IMU数据被累计起来,这个过程通常可以持续若干秒钟。这种被累计起来的观测被称为预积分[7]。当然,如果我们使用不同形式的运动学,得到的预积分形式也是不同的。本文主要使用 [SO(3)+5] 的方式来推导预积分。那么,在 [k] 至 [j] 过程中,我们可以把上式中的变量累计起来,得到:

这种改变实际上只是计算了某种从 [i] 到 [j] 的“差值”。这个定义在计算上有一些有趣的性质:

  1. 我们不妨考虑从 [i] 时刻出发,此时这三个量都为零。在 [i+1] 时刻,我们计算出 [Delta Ri,i+1] ,[Delta vi,i+1] 和 [Delta pi,i+1] 。而在 [i+2] 时刻时,由于这三个式子都是累乘或累加的形式,只需在 [i+1] 时刻的结果之上,加上第 [i+2] 时刻的测量值即可。这在计算层面带来了很大的便利。进一步,我们还会发现这种性质对后续计算各种雅可比矩阵都非常方便。
  2. 上述所有计算都和 [ Ri] 的取值无关。即使 [ Ri] 的估计值发生改变,这些量也无需重新计算。这又是非常方便的一个特性。
  3. 不过,如果零偏 [b_a,k] 或 [b_g,k] 发生变化,那么上述式子理论上还是需要重新计算。然而,我们也可以通过“修正”而非“重新计算”的思路,来调整我们的预积分量。
  4. 请注意,预积分量并没有直接的物理含义。尽管符号上用了 [Delta v] 之类的样子,但它并不表示某两个速度或位置上的偏差。它只是如此定义而已。当然,从量纲上来说,应该与角度、速度、位移对应。
  5. 同样地,由于预积分量不是直接的物理量,这种“测量模型”的噪声也必须从原始的IMU噪声推导而来。
    从这几个问题出发,我们来介绍如何构造预积分的测量模型、噪声模型,以及它对各种状态变量的雅可比应该如何方便地计算。

    构建预积分测量模型

由前面的讨论可见,预积分内部带有IMU的零偏量,因此不可避免地会依赖此时的零偏量估计。为了处理这种依赖,我们对预积分定义作一些工程上的调整:

我们首先认为 [i] 时刻的零偏是固定的,并且在整个预积分计算过程中也都是固定的。
我们作出预积分对零偏量的一阶线性化模型,即,舍弃对零偏量的高阶项。
当零偏估计发生改变时,用这个线性模型来修正预积分。




此式是高斯随机变量的线性组合,它的结果依然是高斯的。同时,由于预积分的累加特性,预测分观测量的噪声也会随着时间不断累加。我们可以这样提问:能否用第 [j-1] 时刻的噪声来计算第 [j] 时刻的噪声?如果可以,那么程序实现也会更加简单。

答案显然是肯定的。由于上式是累加形式的,很容易将其写成递推的形式:

矩阵形式更清晰地显示了几个噪声项之间累计递推关系。由于它们的累加关系,在程序实现中也十分便捷。
零偏的更新

先前的讨论都假设了在 [公式] 时刻的IMU零偏恒定不变,当然这都是为了方便后续的计算。然而在实际的图优化中,我们经常会对状态变量(优化变量)进行更新。那么,理论上来讲,如果IMU零偏发生了变化,预积分应该重新计算,因为预积分的每一步都用到了 [i] 时刻的IMU零偏。但是实际操作过程中,我们也可以选用一种讨巧的做法:假定预积分观测是随零偏线性变化的,虽然实际上并不是线性变化的,但我们总可以对一个复杂函数做线性化并保留一阶项,然后在原先的观测量上进行修正。




参考文献:

[1]. C.Forster, L.Carlone, F.Dellaert,and D.Scaramuzza “IMU preintegration on manifold for efficient visual ­inertial maximum ­a­ posteriori estimation,” in Robotics: Science and Systems XI, no. EPFL­CONF­214687, 2015.

[2]. L. Chang, X. Niu, and T. Liu, “GNSS/imu/odo/lidar­slam integrated navigation system using imu/odo pre­ integration,” Sensors, vol. 20, no. 17, p. 4702, 2020.

[3]. Z. Yuan, D. Zhu, C. Chi, J. Tang, C. Liao, and X. Yang, “Visual ­inertial state estimation with pre­integration correction for robust mobile augmented reality,” in Proceedings of the 27th ACM International Conference on Multimedia, pp. 1410–1418, 2019.

[4]. K. Eckenhoff, P. Geneva, and G. Huang, “Closed­form preintegration methods for graph­based visual-inertial navigation,” The International Journal of Robotics Research, vol. 38, no. 5, pp. 563–586, 2019.

[5]. R. M. Murray, Z. Li, and S. S. Sastry, A mathematical introduction to robotic manipulation. CRC press, 2017.

[6]. J. L. Crassidis, “Sigma­point Kalman filtering for integrated GPS and inertial navigation,” IEEE Transactions on Aerospace and Electronic Systems, vol. 42, no. 2, pp. 750–756, 2006.

[7]. T.Luptonand, S.Sukkarieh, “Visual­ inertial ­aided navigation for high­dynamic motion in built environments with­out initial conditions,” IEEE Transactions on Robotics, vol. 28, no. 1, pp. 61–76, 2011.

[8]. S.Leutenegger, S.Lynen, M.Bosse, R.Siegwart, and P.Furgale, “Keyframe ­based visual-inertial odometry using nonlinear optimization,” The International Journal of Robotics Research, vol. 34, no. 3, pp. 314–334, 2015.
[9]. https://zhuanlan.zhihu.com/p/388859808
[10]. https://zhuanlan.zhihu.com/p/108203458
[11]. https://blog.csdn.net/weixin_41230454/article/details/84343506
[12]. https://lgg2018.com/2019/12/15/imu%e9%a2%84%e7%a7%af%e5%88%86/
[13]. IMU 预积分推导
[14] IMU预积分–详细推导过程

【论文阅读】On-Manifold Preintegration相关推荐

  1. 论文阅读笔记(4):Local Convex Representation with Pruning for Manifold Clustering ,带剪枝的局部凸表达进行流形聚类

    论文阅读笔记(4):带剪枝的局部凸表达进行流形聚类 介绍 文章主要贡献 理论上:局部凸表达(Local Convex Representation, **LCR**) 剪枝方法:估计流形的内在维数以剪 ...

  2. 【论文阅读】7-Discovering Structural Regularity in 3D Geometry

    [论文阅读]7-Discovering Structural Regularity in 3D Geometry 1.Input: 2.Processing pipeline 2.1.Transfor ...

  3. 论文阅读 [TPAMI-2022] ManifoldNet: A Deep Neural Network for Manifold-Valued Data With Applications

    论文阅读 [TPAMI-2022] ManifoldNet: A Deep Neural Network for Manifold-Valued Data With Applications 论文搜索 ...

  4. Zero-Shot相关论文阅读报告

    Zero-Shot相关论文阅读报告 Zero-Shot Learning with Semantic Output Codes 论文:Zero-Shot Learning with Semantic ...

  5. [论文阅读] (12)英文论文引言introduction如何撰写及精句摘抄——以入侵检测系统(IDS)为例

    <娜璋带你读论文>系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢.由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学 ...

  6. DGP 论文阅读笔记

    DGP 论文阅读笔记 论文题目:Exploiting Deep Generative Prior for Versatile Image Restoration and Manipulation Ex ...

  7. #论文阅读 LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping

    论文阅读 LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping 摘要 Abstract-We propo ...

  8. 【论文阅读】(2023.06.09-2023.06.18)论文阅读简单记录和汇总

    (2023.06.09-2023.06.12)论文阅读简单记录和汇总 2023/06/09:虽然下周是我做汇报,但是到了周末该打游戏还是得打的 2023/06/12:好累好困,现在好容易累. 目录 ( ...

  9. 《Improved Techniques for Training GANs》-论文阅读笔记

    <Improved Techniques for Training GANs>-论文阅读笔记 文章目录 <Improved Techniques for Training GANs& ...

最新文章

  1. php-mysql管理利器 adminer
  2. [团队项目]后续安排 Github
  3. 深度神经网络(DNN)模型与前向传播算法
  4. 局部特征(1)——入门篇
  5. U3D 贴图通道分离后为什么能减小体积
  6. MySQL-入门安装
  7. 五桌面工具来创建优秀的Windows环境
  8. lintcode-517-丑数
  9. mysql 存储过程遍历_Mysql创建存储过程及遍历查询结果
  10. pyqt5 python qlineedit信号_Pyqt5_QlineEdit
  11. python是脚本语言_Python 脚本语言
  12. 每日一句20190909
  13. BT种子结构及bencoding编码解析
  14. 15天助你掌握问卷统计与Spss实战
  15. JavaScript基础学习总结(一) 适合小白
  16. C++华氏温度和摄氏温度的转换
  17. 前端如何实现文件下载(七种方法)
  18. 子线程中使用Handler
  19. Testin云测试以AI自动化技术打造业内领先的兼容测试服务平台
  20. git pull 报错:error: Pulling is not possible because you have unmerged files.

热门文章

  1. ZPiE: Zero-knowledge Proofs in Embedded systems
  2. Spring-data-redis + Lettuce 如何使用 Pipeline
  3. lisp 自带dcl_Lisp教程(下册 DCL编程)彩版
  4. 《基于Python的大数据分析基础及实战》第二章
  5. RSA与大数运算(转载)
  6. linux进阶-sudo命令的理解
  7. 吃货联盟(基于mysql)
  8. 混凝土P-M相互作用曲线计算
  9. 【Spring常见错误】No qualifying bean of type
  10. 跨平台c开发库tbox:内存库使用详解