论文笔记_SLAM_VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator

​​​​​​出处

  • 【VINS论文翻译】VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator https://blog.csdn.net/qq_41839222/article/details/85683373

  • 解决方案的核心是一个鲁棒的基于紧耦合的滑动窗非线性优化的单目视觉惯性里程计(VIO)。

本文创新

  • 鲁棒的初始化过程,它能够从未知的初始状态引导系统。

  • 基于优化的单目视觉惯性里程计,具有相机-IMU外部校准和IMU偏置估计

  • 四自由度全局位姿图优化

  • 状态估计

    • 提供精确的局部姿态、速度和方位估计,而且还以在线方式执行摄像机IMU外部校准和IMU偏置校正

零碎知识点

  • 单目视觉系统无法恢复度量尺度

  • 视觉惯性系统高度非线性的事实

  • 由于对非线性系统迭代求解的计算要求很高,很少有基于图的非线性系统能够在资源受限的平台(如手机上)实现实时性能。

  • 视觉测量处理

    • 直接法[2][3][21]最小化光度误差,而间接法最小化几何位移。直接法因其吸引区域小,需要很好的初始估计,而间接法在提取和匹配特征时需要额外的计算资源。间接法由于其成熟性和鲁棒性,在实际工程部署中得到了广泛的应用。然而,直接法更容易扩展到稠密建图,因为它们是直接在像素级别上操作的。

  • IMU预积分(IMU pre-integration)

    • 在图优化公式中,为了避免重复的IMU重复积分,提出了一种有效的方法,即IMU预积分(IMU pre-integration)。这种方法在[22]中首次提出的,它用欧拉角来参数化旋转误差。

  • 视觉测量残差

    • 与在广义图像平面上定义重投影误差的传统针孔相机模型相比,我们在单位球面上定义摄像机的测量残差。几乎所有类型相机的光学,包括广角、鱼眼或全向相机,都可以模拟为连接单位球体表面的单位射线。

视频讲解

  • https://v.qq.com/x/page/f0512y3gti1.html?
  • SFM:不带尺度的三维重构是够的, 但要用于待尺度的导航和AR应用,还是不够用的

IMU功能

  • 提供 角速度、加速度
  • 惯性测量单元(IMU)通常指由3个加速度计和3个陀螺仪组成的组合单元,加速度计和陀螺仪安装在互相垂直的测量轴上。

  • 通过抖动来测量加速度,对无人机的飞行效果不错,但对于一般匀速运动的汽车来说,加速度为0,就没什么测量值,尺度信息的估计就不容易知道了;而且在二维情况上,只有yow的motion,没有row/patch的motion,这个对IMU的bias(三个自由度)的观测也是非常的不利。

  • 积分 a->v ->s

  • 鲁棒性强的时候:快速旋转时,视觉挂掉时

  • 标定:IMU与IMU之间

初始化

  • 非线性要收敛,必须要一个初始值的

    • 初始化的不好,就很可能不会收敛到一个正确的值的。

  • Pipeline:

    • 先使用SFM计算(不带尺度信息),会得到一个up-to-scale的平移信息,和一个未与重力对齐的相对比较准的旋转信息

    • 再使用IMU预积分得到的相对旋转,与相机的旋转组合起来,得到它们之间的相对旋转,即外场。

    • 把IMU预积分得到的位置速度,跟视觉的up-to-scale的平移信息,对齐起来。只要能对起来,就意味着尺度能修正了。

  • 关于IMU和相机之间的相对位置(距离)的标定:

    • 相对位置的值,相比空间中物体的距离,比较小,对系统误差影响较小,所有一般会假定一个值,然后再去优化它。

  •  滑动窗口的作用:运算复杂度保持在一个固定的状态下

  • 视觉惯导:其实就是视觉的测量值,和IMU的测量值进行加权平均,

    • 加的权,其实是一个协方差矩阵

  • 视觉模块:

    • 使用的是,球型相机模块,因为球形相机模块,可以建模任何其他的相机模型

    • 视差:从不同的视角拍一个点

      • 若是原地旋转的话,就没有时差了,因为这样只是图像特征点的平移,对深度估计是没有用的。

你可能感兴趣的:(SLAM,计算机视觉算法,自动驾驶)