「 SLAM lesson-2.1 」经典视觉SLAM框架、视觉里程计、后端优化、回环检测

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


一、经典视觉SLAM框架

        一共由两条主线构成,且这两条主线同时进行:

  1. 传感器数据——>>前端视觉里程计——>>后端非线性优化——>>建图
  2. 传感器数据——>>回环检测——>>后端非线性优化——>>建图
  • 传感器信息读取: 在视觉SLAM中主要为相机图像信息的读取和预处理。如果在机器人中,还可能有码盘、惯性传感器等信息的读取和同步。
  • 视觉里程计(VisualOdometry,VO): 视觉里程计任务是估算相邻图像间相机的运动,以及局部地图的样子。VO又称为前端(Front End)。
  • 后端优化(Optimization): 后端接收不同时刻视觉里程计测量的相机位姿,以及回环检测的信息,对它们进行优化,得到全局一致的轨迹和地图。
  • 回环检测(Loop Closing): 回环检测判断机器人是否曾经到达过先前的位置。如果检测到回环,它会把信息提供给后端进行处理。
  • 建图(Mapping):它根据估计的轨迹,建立与任务要求对应的地图。

二、视觉里程计

        视觉里程计关心相邻图像之间的相机运动。图像在计算机里只是一个数值矩阵,这个矩阵里面表达着什么东西,计算机毫无概念。所以,为了定量地估计相机运动,必须在了解相机与空间点的几何关系之后进行。

        VO能够通过相邻帧间的图像估计相机的运动,并恢复相机的空间结构。叫它为“里程计“是因为他和实际的里程计一样,只计算相邻时刻的运动,而和再往前的过去的信息没有关联。

        假定我们已有了一个视觉里程计,估计了两张图像间的相机运动。那么只要把邻时刻的运动”串起来”就构成了机器人的运动轨迹,从而解决了定位问题。另一方面,我们根据每个时刻的相机位置,计算出各像素点对应的空间点位置,就得到了地图。

        仅通过视觉里程计来估计轨迹,将不可避免地出现累计漂移。这是由于视觉里程计只顾及两个图像间运动造成的。

三、后端优化

        笼统地说,后端优化主要指处理SLAM过程中噪声的问题。后端优化要考虑的问题,就是如何从这些带有噪声的数据中,估计整个系统的状态,以及这个状态估计的不确定性有多大——这称为最大后验概率估计。SLAM问题的本质,是对运动主体自身和周围环境空间不确定性的估计。为了解决SLAM,我们需要状态估计理论,把定位和建图的不确定性表达出来,然后通过采用滤波器或非线性优化,去估计状态的均值和不确定性(方差)。

        在视觉SLAM中,前段和计算机视觉研究领域更为相关,比如图像的特征提取与匹配等,后端则主要是滤波和非线性优化算法。

四、回环检测

        回环检测,又称为闭环检测(Loop Closure Detection)主要解决位置估计随时间漂移的问题。如果有某种手段,让机器人知道“回到了原点”,或者把“原点识别出来,我们再把位置估计值“拉”过去,就可以消除漂移了。这就是所谓的回环检测。 

        地图存在的主要意义,是为了让机器人知晓自己到达过的地方。为了实现回环检测,我们需要让机器人具有识别曾到达过的场景的能力。例如:我们可以判断图像间的相似性。来完成回环检测。所以视觉回环检测,实质上是一种计算图像数据相似性的算法。

        在检测到回环之后,我们会把"A与B是同一个点”这样的信息告诉后端优化算法。然后,后端根据这些新的信息,把轨迹和地图调整到符合回环检测结果的样子。


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

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

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 回环检测可以帮助检测滑窗中的重复部分,从而使优化算法更加高效。此外,滑窗优化可以帮助提高回环检测的准确性,因为它能够提供有效的定位信息。因此,滑窗优化回环检测可以结合使用,以提高激光slam后端优化的性能。 ### 回答2: 在激光SLAM后端优化中,滑窗优化回环检测是两种常用的策略,它们可以结合起来进一步提高SLAM系统的精度和鲁棒性。 首先,滑窗优化是指在SLAM系统的后端优化中,不仅考虑当前帧与其前后几帧之间的约束关系,还考虑到之间的某些帧之间的约束关系。这样可以在保证计算效率的前提下,增加更多的约束来提高SLAM系统的精度。滑窗优化可以通过设置一个窗口大小,并且每次添加新的帧时,滑动窗口并更新优化位姿,以维持窗口内的关键帧数量。这样,在滑窗优化的过程中,不仅考虑了相邻帧之间的约束,还同时考虑了窗口内部的帧之间的约束。 而回环检测则是指在SLAM系统中,通过识别出现在地图中的重复环境特征,将其作为回环来进行检测和处理。回环检测可以通过特征匹配、相似性度量等方法来实现。一旦检测回环,系统可以通过优化重新估计历史轨迹和地图,并修正之前可能存在的误差。通过回环检测优化SLAM系统可以有效地减少误差累积,提高系统的精度和鲁棒性。 将滑窗优化回环检测结合起来,可以进一步提高激光SLAM后端优化效果。在滑窗优化的过程中,可以考虑回环之间的约束关系,并在优化过程中相应地更新和调整位姿。另外,回环检测也可以在滑窗优化中发挥作用,检测回环后进行位姿校正,进一步提升优化效果。 总之,滑窗优化回环检测在激光SLAM后端优化中可以相互结合,通过增加更多约束和修正误差来提高系统的精度和鲁棒性。 ### 回答3: 在激光SLAM后端优化中,滑窗优化回环检测是两种常用的技术方法,它们可以结合使用来提升SLAM系统的优化效果。 首先,回环检测是指通过对机器人在地图中经过的轨迹进行分析,寻找是否存在已经探索过的区域重新进入的情况。回环检测技术可以通过对激光扫描数据、视觉信息或其他传感器数据进行匹配,从而确定机器人当前所处的位置。回环检测的结果可以用来校正之前路径的误差,并更新地图的拓扑结构和机器人位姿。 滑窗优化是一种常用的参数优化方法,它通过维护一个滑动窗口,选择其中的一些关键帧进行优化,得到更准确的位姿估计和地图重建结果。滑窗优化技术中,通常会通过图优化(Graph Optimization)方法,以最小化误差函数为目标,对关键帧之间的约束进行求解,从而得到更精确的轨迹和地图。 将滑窗优化回环检测结合可以提高SLAM系统的地图构建和路径估计的准确性和鲁棒性。具体步骤如下: 1. 首先,通过激光扫描数据或其他传感器数据进行实时建图,并随机选取一些关键帧作为滑窗的初始状态。 2. 在滑窗的窗口滑动过程中,当检测回环时,通过回环检测算法寻找回环帧,并进行回环边的添加。 3. 在回环边添加后,通过图优化方法对滑窗内的关键帧和回环边进行优化,以最小化误差。 4. 优化后的结果可以用来更新机器人的位姿估计和地图重建。 通过滑窗优化回环检测的结合,可以实现对系统的闭环误差的消除和路径的校正,从而提高SLAM系统的性能和精度。同时,这种方法也可以减少计算量,提高系统的实时性能。但值得注意的是,滑窗优化回环检测都有相应的参数和阈值需要调整和设置,才能取得好的优化效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值