目录
作者:刘 强,段富海,桑勇,赵健龙
摘 要:随着无人驾驶技术和虚拟现实技术的快速发展,近几年视觉同时定位与建图(SLAM)成为研究热点.本文针对复杂环境下视觉 SLAM 闭环检测的 3 个主要问题,场景描述、决策模型和闭环检测性能评价展开综述.首先,介绍了基于经典图像特征、深度学习、深度信息以及时变地图的场景描述方法,并详细分析了不同方法的优缺点.其次,概述了在基于场景描述的闭环识别过程中常用的一些决策模型,着重介绍了概率模型和序列匹配.再次,说明了闭环检测的性能评价方法,并分析了其与后端优化的联系.最后,围绕深度学习、后端优化和多种描述子融合等关键点,展望了有助于推动闭环检测技术未来发展的方向.
1引言
1.1专业背景
1.视觉SLAM 具有感知能力和重定位能力更强、安装方式多元化、更加廉价等优势。
2.如何设计更加鲁棒、更加可靠的系统,以应对复杂多变的环境,成为目前视觉 SLAM 研究的主题。
3.一些方案没有从根本上消除错误闭环带来的影响,而且加重了优化后端的计算负担。
1.2技术背景
1.光照变化、季节更替、 动态场景、 视角变化等因素(见图 1)会大大降低检测的准确率和召回率。
2.新的观测信息到来时,先将其转化为对场景的描述,然后和地图信息进行比对,最后通过决策模型来对闭环进行识别。
3.评价内容:场景描述、决策模型和闭环性能
ps. 图像数据库、地图点的拓扑信息和度量信息、路标点的几何信息一起构成了对地图的描述.拓扑信息是指机器人运动的连续性,相邻的图像代表着地图上邻近的地方;度量信息是指场景之间的相对位置和方向信息;几何信息是指图像特征的 3 维信息及其数据关联。
2.场景描述
场景描述方法主要包括:(1) 局部特征描述子;(2) 全局描述子;(3) 局部区域的全局描述子;(4) 结合深度信息的场景描述;(5) 场景的时变描述。
2.1局部描述子
SIFT(scale-invariant feature transform)。后来发展的算法比如 Bay等提出的 SURF(speeded-up robust feature)算法、 Rublee等提出的 ORB(oriented FAST and rotated BRIEF)算法大多以牺牲性能为代价来提高效率。
Sivic等提出的视觉词袋模型 离线将大量特征的描述子进行聚类,最终形成视觉词汇,这样每一副图片就可用 1 个二进制向量来表示,向量的长度是视觉词汇的总个数,图像间共享词汇的数量用以度量图像间的相似度,避免了极其耗时的特征匹配过程。发展:空间离散化[Galvez-López D, Tardos J D. Bags of binary words for fast place recognition in image sequences[J]. IEEE Transactions on
Robotics, 2012, 28(5): 1188-1197.],在线化[Angeli A, Doncieux S, Meyer J A, et al. Incremental vision-based topological SLAM[C] //IEEE International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2011:1031-1036]。
适应环境变化:引入几何信息来加强对场景的描述
自特征与自提取。。。
2.2全局描述子
使用全局描述子的方法直接去计算整张图像的描述子。
Oliva等提出的 Gist 描述子:滤波器在不同方向和频率下提取图像信息并压缩成 1 个向量来得到图像的描述。
Kröse等直接用 PCA:降维方法生成线性图像特征,然后利用该特征建立基于高斯分布的观测模型。
Lowry使用在线学习。
Ulrich等则采用全景彩色图片的直方图结合最邻近学习来进行图像匹配。
Sunderhauf等先对图像进行下采样,然后围绕下采样后的图像中心计算 BRIEF。
目前向深度学习法发展。
Sunderhauf低层外观,高层视角,闭环检测。[Sunderhauf N, Shirazi S, Dayoub F, et al. On the performance of ConvNet features for place recognition[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscat-away, USA: IEEE, 2015: 4297- 4304.]
不利于闭环:闭环检测的相似度计算应该集中于静态事物上才能应对场景的变化,3 种常用思路:(1) 微调现有的 CNN;(2) 重新设计 CNN;(3) 采用语义分割对动态和静态场景进行分离.
AlexNet 对应的热图中,值较大的地方多对应着原图中圆环、汽车这些有利于进行图像分类的事物。
思路:
(1)第 1 种是对原有的神经网络进行微调使其适应闭环检测任务例如 Arandjelovic等使用局部聚合特征描述,输出池化层。
(2)第 2 种思路是重新训练 CNN 来生成图像描述子.Lopez-Antequera等设计的 CNN 将 1 张图像映射成 128 维的向量。
前 2 种基于学习的方法虽然在训练的数据集上取得了较好的效果,但在面对新环境时其泛化能力仍然有待提高。
(3)第 3 种方法是用语义分割将图像分成几何稳定和几何不稳定的区域.Naseer等采用基于 FastNet 网络结构的全卷积神经网络对图像进行二进制分割,分割后的图像和原始图像通过现有分类网络的 conv3 分别生成描述子,最后将 2 个描述子进行聚合,以生成当前场景的描述。
不适合:同时出现外观变和视角变。必须要结合其他方法才能获得应用,例如视角合成和序列匹配。
2.3局部区域的全局描述子
局部特征点描述子和全局描述子优势互补。
生成局部区域:固定方格法,基于特征点的方法,基于图像分割的方法,基于物体提案的方法。
基于特征点的方法以特征点为中心生成图像区域,区域大小由特征点被探测到时对应的最大尺度空间和一个放大因子决定。
基于图像分割的方法根据一定的阈值将具有相似性质的图像区域划分为一个图像块。
物体提案是其中比较特殊的一种方法,它源自目标识别.物体提案法在图像上生成一系列大小不一的候选框。
2.4结合深度信息的场景描述
深度信息结合语义分割可生成更高级的语义特征来描述场景,从而增强对环境的认知能力。
对闭环检测而言,由深度信息结合图像信息建立的语义特征,不仅增强了对外观变化和视角变化的适应能力,而且简化了地图描述,节省了存储空间,因为语义地图只需要存储特征的语义标签即可,而不是整个 3 维信息。
2.5场景的时变描述
当现实环境发生诸如昼夜更替、街道拆迁、季节变换等较大变化时。生成不同时间段下的描述子。另一
种方法是直接用不同时间段的观测信息来代表同一个地点。
3.决策模型
如何建立决策模型来根据当前场景描述和地图信息识别出可能的闭环。最简单的建模方法是将闭环检测看作是图像检索问题,而不考虑地图的拓扑信息和度量信息。FAB-MAP 2.0 使用反索引结构来存储地图描述信息[Biber P, Duckett T. Experimental analysis of sample-based maps for long-term SLAM[J]. International Journal of Robotics Research, 2009, 28(1): 20-33.]每一个词汇下存储拥有该词汇的图片,而并非每一张图片下存储其拥有的词汇,这使得搜寻空间的规模只和词汇数量有关,而不受地图规模的限制。
3.1决策模型建立
拓扑依赖拓扑信息和图像信息的方法,GPS 的精度也会受到环境的限制。
概率模型
闭环检测的任务是根据当前观测信息和地图信息检测机器人是否回到之前到过的地方.从概率的角度出发,就是要生成概率分布,每一个点的概率代表机器人回到地图上某一点的可能性。
贝叶斯模型,它主要包含先验模型和观测模型 2 部分。---need一是它们都需要一种监督训练的方法来学习观测模型的参数,二是而实际的闭环检测还需要应对误匹配的问题。
Cummins等提出的 FAB-MAP 算法是一种基于词袋模型和贝叶斯模型的方法,它一定程度上解决了上述方法存在的一些问题。
基于 Chow Liu树的生成模型,使得 FAB-MAP 在进行闭环检测,考虑了共享词汇,而且考虑了高频词汇造成的图像混淆问题时。
序列匹配模型
拓扑信息最直观的方法是采用序列匹配。序列匹配方法的问题是计算非常耗时,尤其是对于大规模地图。但有算法可以提速O()到O(nlogn)。
其他模型
共视图法和生物拟态法。
3.2 利用度量信息
度量信息可从 SLAM 系统的前端或者 GPS 中获得,融合度量信息的闭环检测可以缩小闭环搜寻空间,提升闭环检测的性能。
3.3 利用几何信息
对基于局部特征描述子进行闭环检测的方法,可以使用特征点的几何信息来增强鲁棒性。
4.闭环检测性能评价
准确率和召回率。性能优良的闭环检测系统能够兼具很高的准确率和召回率,但在实际操作中,准确率和召回率很难同时保证.一般用准确率-召回率曲线来反映闭环检测系统的综合性能。如何在准确率和召回率之间做出取舍,需要从后端优化的角度来考虑。实际应用中在设计算法时还需要考虑计算资源。
5.发展方向
1.闭环检测和深度学习。
2.闭环检测和后端优化。
3.多种描述子融合的闭环检测方法。