论文部分内容阅读
SLAM(Simultaneous Localization and Mapping,同时定位与地图构建)技术是指机器人在运动的过程中,搭载特定的传感器(如相机、激光、雷达等)获取环境数据,进行自主定位与地图构建的技术。视觉SLAM(Visual Simultaneous Localization and Mapping,简称v SLAM)系统是利用相机作为视觉传感器的SLAM系统。视觉SLAM通常包含前端和后端两个部分,前端利用拍摄的图像来估计相机运动,估计时不可避免的会产生误差,最终形成累计误差。虽然后端非线性优化可以消除一部分累计误差,但长时间运行仍然会存在累计误差,无法保证位姿估计的准确性。为了减少累计误差,视觉SLAM系统中引入回环检测这个单独模块,用来判断机器人在运动过程中是否到达过先前的位置,即是否形成回环。回环检测可以提供正确的数据关联,减少累计误差,修正错误的轨迹,构建全局一致地图。回环检测算法的实现方法很多,其中基于词袋模型的回环检测算法是现在回环检测算法的主流方法之一。本文深入分析了词袋模型算法。传统词袋模型算法的词汇树是利用大量与实验无关的图像离线训练而成,词汇树表征场景的能力不强。如果单纯利用离线模型构建的词汇树来表征图像,模型与实验场景差别较大,影响回环检测的性能。同时,本文对回环检测算法进行研究。回环检测算法在进行图像相似性判断时,忽略了单词的位置信息,只利用无序的单词进行相似度计算,容易产生误匹配;回环检测算法在检测候选图像时,需要对数据库中与当前图像含有相同单词的所有图像进行相似度比较,有的图像与当前图像差异较大也参与相似度计算,增大计算量,影响回环检测的时间性能。因此,本文提出一种基于词袋模型和位置信息再验的回环检测算法,从词袋模型算法和回环检测算法两方面做出改进。本文的重点研究工作如下:(1)离线词汇树更新算法设计。本文改进了生成离线词汇树的聚类算法,利用改进的K-means++算法进行词汇树构建;同时利用实验场景的图像特征数据进行词汇树更新,提高词汇树表征图像的能力。(2)位置信息再验。本文在检测出候选图像后,利用候选图像特征与当前图像特征分别构建拓扑图,利用两个相邻矩阵的相似度得分进行再次验证,减少误匹配,提升回环检测的准确性。(3)加速回环检测算法。本文在对候选图像查找过程中,先通过含有相同单词的数目进行预匹配,剔除与当前图像差异较大的图像后,再进行相似度比较,提升回环检测算法的时间效率。(4)本文在City Center、New College、KITTI00、KITTI06数据集上进行实验对比分析。词汇树更新后前后实验对比,在精度为100%的情况下算法的最大召回率在四个数据集上分别提升12.34%、28.88%、18.48%、18.82%;其次,加入位置信息再验后,在New College数据集、City Center数据集上算法的最大召回率分别提升了6.35%、11.55%。然后,本文与五种经典算法进行对比分析,在四个数据集上最大召回率比五种算法的最好结果分别提升了0.34%、10.53%、2.86%、23.59%。最后,在四个数据集上进行改进前后单张图像处理时间对比,在四个数据集上分别节约了228ms、117ms、245ms、27ms,时间性能提升37.25%,改进后算法缩短了处理时间,实验结果验证了改进算法的正确性与有效性。