当前位置: 代码迷 >> 综合 >> 「 SLAM lesson-8 」视觉里程计知识点纲要(直接法、光流、LK光流、RGB-D的直接法)
  详细解决方案

「 SLAM lesson-8 」视觉里程计知识点纲要(直接法、光流、LK光流、RGB-D的直接法)

热度:13   发布时间:2023-12-15 10:35:17.0

一、前言

结合 高翔老师的著作《视觉SLAM十四讲:从理论到实践》,加上小白的工程经验共同完成。建议作为笔记功能反复使用。

二、直接法的引出

        根据像素灰度的差异,直接计算相机运动,可以完全不用计算关键点和描述子。

特征点法缺点:

  1. 关键点的提取与描述子的计算非常耗时。
  2. 使用特征点时,忽略了除特征点以外的所有信息。
  3. 相机有时会运动到特征缺失的地方,往往这些地方没有明显的纹理信息。

三、光流

        光流是一种描述像素随着时间,在图像之间运动的方法。

  1. Lucas-Kanade光流。(LK光流通常被用来跟踪角点的运动)

四、实践:LK光流

        使用 OpenCV提供的光流法来跟踪特征点。使用 LK的目的是为了跟踪特征点,对第一张图像提取 FAST角点,然后用LK光流跟踪它们,并画在图中。

        相机运动较大时,光流法不适用。

五、直接法

        在灰度不变假设下,使用 g2o实现直接法。

  1. 直接法推导;(目的是求第一个相机到第二个相机的相对位姿变换;优化目标是光度误差)
  2. 直接法讨论。(在 RGB-D相机下,我们可以把任意像素反投影到下一个图像中)

六、实践:RGB-D的直接法

  1. 稀疏直接法;(在 g2o方法中,优化变量是一个相机位姿,因此需要一个位姿顶点;误差项为单个像素的光度误差)
  2. 定义直接法的边;(边继承自g2o::BaseUnaryEdge)
  3. 使用直接法估计相机运动;(将节点和边组合成图,就可以调用 g2o进行优化了)
  4. 半稠密直接法;(在考察帧中,先提取梯度较明显的像素,然后用直接法,以这些像素为图优化边,来估计相机运动)
  5. 直接法讨论;(完全依靠优化来求解相机位姿,像素梯度引导着优化方向)
  6. 直接法优缺点总结。(缺点:非凸性;单个像素没有区分度;灰度值不变是很强的假设)

《视觉SLAM十四讲:从理论到实践》 PDF资源

下载链接:Robot_Starscream的资源  仅供各位研究员试读,请购买纸质书籍。

  相关解决方案