前端、后端和回环检测

基于优化的SLAM经典框架

全局优化就是回环检测

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

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

前后端

Snipaste_06-08_15-10

前端主要是用来剔除掉一些差点,后端主要是包括边缘到边缘的残差、面到面的残差运动畸变校正迭代位姿优化等。

LOAM-Livox算法的前端处理主要包含两个环节:good points选取和特征点提取!

后端迭代位姿优化

由于固态雷达为非重复式扫描,提取的特征点不能持续的被跟踪。即使雷达静止不动,扫描的轨迹和特征点和前一帧比也是不同的。LOAM-Livox 算法 用了一种迭代式位姿优化方法来计算雷达的位姿。实现了实时里程计和建图,频率20HZ。

回环检测

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

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

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

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

打基础2:SLAM框架的简单梳理 - 知乎 (zhihu.com)

最后修改:2023 年 11 月 10 日
如果觉得我的文章对你有用,请随意赞赏