浅谈SLAM中的回环检测
随着路径的不断延伸,机器人在建图过程中会存在一些累计误差,除了利用局部优化、全局优化等来调整之外,还可以利用回环检测来优化位姿。回环检测,又称闭环检测,是指机器人识别曾到达某场景,使得地图闭环的能力。
意义
1.前端提供特征点的提取和轨迹、地图的初值,而后端负责对这所有的数据进行优化。然而,如果像VO那样仅考虑相邻时间上的关联,那么,之前产生的误差将不可避免地累计到下一个时刻,使得整个SLAM会出现累积误差。
2.回环检测模块能够给出除了相邻帧之外的,一些时隔更加久远的约束。之所以它们之间会有约束是因为我们察觉到相机经过了同一个地方, 采集到了相似的数据。而回环检测的关键,就是如何有效地检测出相机经过同一个地方这件事。如果我们能够成功地检测这件事,就可以为后端的Pose Graph提供更多的有效数据,使之得到更好的估计,特别是得到一个全局一致的估计。
3.回环检测一方面关系到我们估计的轨迹和地图在长时间下的正确性。另一方面,由于回环检测提供了当前数据与所有历史数据的关联,在跟踪算法丢失之后,我们还可以利用回环检测进行重定位。因此,回环检测对整个 SLAM 系统精度与鲁棒性的提升是非常明显的。
方法
1.最简单的方式就是对任意两张图像都做一遍特征匹配,根据正确匹配的数量确定哪两个图像存在关联:缺点在于,我们盲目地假设了“任意两个图像都可能存在回环”,使得要检测的数量实在太大在大多数实时系统当中是不实用的。
2.另一种朴素的方式是随机抽取历史数据并进行回环检测,比如说在n帧当中随机抽 5 帧与当前帧比较。这种做法能够维持常数时间的运算量,但是这种盲目试探方法在帧数 N 增长时,抽到回环的几率又大幅下降,使得检测效率不高。
3.我们至少希望有一个“哪处可能出现回环”的预计,才好不那么盲目地去检测。这样的方式大体分为两种思路:基于里程计的几何关系(Odometry based),或基于外观(Appearance based)。基于几何关系的做法假设了“相机回到之前位置附近”,才能检测回环有倒果为因的嫌疑。基于外观的方法仅根据两张图像的相似性确定回环检测关系。这种做法摆脱了前后端数据和估计的累计误差,使回环检测模块成为 SLAM 系统中一个相对独立的模块(当然前端可以为它提供特征点),成为了视觉 SLAM 中主流的做法。
图片新闻
最新活动更多
-
12月12日火热报名中>>> STM32全球线上峰会
-
即日-12.26火热报名中>> OFweek2024中国智造CIO在线峰会
-
1月8日火热报名中>> Allegro助力汽车电气化和底盘解决方案优化在线研讨会
-
即日-0120限时下载>>> 爱德克(IDEC)设备及工业现场安全解决方案
-
限时免费下载立即下载 >>> 2024“机器人+”行业应用创新发展蓝皮书
-
即日-2025.8.1立即下载>> 《2024智能制造产业高端化、智能化、绿色化发展蓝皮书》
推荐专题
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论