《LIO-SAM阅读笔记》-为何要引入增量式里程计?

前言:

LIO-SAM在后端中同时维护着两个里程计,一个是增量式里程计,一个是优化后的里程计,其中优化后的里程计是经过imu、回环、gps因子图联合优化后的结果,是整个系统中最准确的位姿估计,那么为什么还需要维护增量式里程计呢?

以下是我的理解,不一定正确,如有错误,或者不一样的见解欢迎在评论区留言讨论。

我认为最主要的原因(或者是最大的用途)是需要用增量式里程计信息结合imu预积分信息进行联合的因子图优化,更新IMU偏置。

为何此处要进行联合imu的因子图优化呢?

此处因子图优化可以更新三个变量,分别是:当前帧位姿、速度、IMU偏置。其中前两个完全可以采用后端优化后的里程计信息 ,要比此处优化后的位姿更加准 确,因此这里的因子图优化操作最不可替代的是更新IMU偏置。

那么为什么不采用后端优化后的里程计信息结合imu预积分信息进行联合的因子图优化,更新IMU偏置呢?

增量式里程计是一个平滑的结果不会有大幅度的位姿跳跃,适用于因子图优化时,帧间的位姿变换对imu预积分的约束。而后端优化后的里程计经过联合因子图优化后(尤其是回环时全局的位姿的调整),其帧间的位姿变换幅度可能较大,这样对IMU预积分的约束就起不到什么效果,也就无法准确的更新IMU偏置。

因此我认为,如果不需要更新IMU偏置,在LIO-SAM中完全可以不维护增量式里程计,直接使用后端优化后的位姿联合IMU帧间的预积分结果,就可以发送最终的imu里程计信息。

相关推荐
澈2077 分钟前
深入浅出C++滑动窗口算法:原理、实现与实战应用详解
数据结构·c++·算法
ambition2024237 分钟前
从暴力搜索到理论最优:一道任务调度问题的完整算法演进历程
c语言·数据结构·c++·算法·贪心算法·深度优先
cmpxr_39 分钟前
【C】原码和补码以及环形坐标取模算法
c语言·开发语言·算法
qiqsevenqiqiqiqi39 分钟前
前缀和差分
算法·图论
代码旅人ing1 小时前
链表算法刷题指南
数据结构·算法·链表
Yungoal1 小时前
常见 时间复杂度计算
c++·算法
宝贝儿好1 小时前
【LLM】第二章:文本表示:词袋模型、小案例:基于文本的推荐系统(酒店推荐)
人工智能·python·深度学习·神经网络·自然语言处理·机器人·语音识别
守护安静星空1 小时前
esp32开发笔记-工程搭建
笔记·单片机·嵌入式硬件·物联网·visual studio code
ljt27249606611 小时前
Compose笔记(七十七)--视频录制
笔记·android jetpack
不爱吃炸鸡柳2 小时前
单链表专题(完整代码版)
数据结构·算法·链表