Catalogue
VINS-Mono整体架构
架构




ROS基础






整体代码流程图





前端



处理图片流程

这里的cur_img实际上是上一帧,只是它在这里是这样定义而已。

- 假设第一帧跟踪了5个点
- 第二帧,跟踪到了0,1,2,4号点,另外有新的特征点5
- 可以看到,特征点0,1,2,4同时被第一帧和第二帧观测到,因此被观测次数是2
- ...
直方图均衡化
代码中是直接调用Opencv函数来处理的,用来增强对比度
- 参数越大,对比度越大,噪点越多

光流跟踪
也是直接调用Opencv函数

异常点剔除——基础矩阵法
也是直接调用Opencv函数

特征点提取
也是直接调用Opencv函数

前端发布消息

根据时间戳挑选观测数据
getMeasuments()
挑选策略




前端视觉+IMU联合优化
简单来说,就是使用IMU数据来给视觉提供初始位姿,来进行跟踪

IMU预积分



- 根据两帧图像之间的所有IMU数据,来计算IMU约束(预积分)
- 然后计算IMU预积分误差
residual,下图黄色框部分

IMU预积分误差的协方差矩阵

IMU预积分误差协方差更新公式

协方差更新变化过程
第0帧

第1帧

...
第20帧

IMU预积分误差的雅可比更新变化过程

