基于全局特征描述子的激光SLAM回环检测方法

同步定位和建图(SLAM)是实现机器人在未知环境下的定位和移动的重要技术方法[1] 。定位精度是井下巡检的核心指标,高精度的定位算法是巡检过程中导航和避障的基础 。但井下环境复杂,具有低照度、弱纹理、图像特征难以识别的特点[2],给基于视觉的SLAM算法带来了极大的困难 。而激光SLAM算法测量距离远、精度高,利用环境的结构特征进行定位[3],在井下环境中更具应用前景[4-5] 。
目前,SLAM算法通过估计的相邻帧之间的位姿变换不断叠加进行位姿信息计算,随着巡检时间的增加,每次位姿估计中的偏差不断累积形成较大的累积误差,制约了算法的定位精度 。
利用图像语义信息丰富的特点,视觉SLAM算法如ORB-SLAM[6]、VINS[7]等,多使用基于词袋模型[8]的回环检测方法,利用预先训练的视觉特征单词构建词典,将图像中的特征描述为一个单词,图像中单词种类和数量构成图像的词袋向量,通过词袋向量之间的相似度进行回环检测 。
但激光雷达分辨率低,传递信息不如图像丰富,基于词袋模型的回环检测方法难以应用 。在LeGO-LOAM[9]和LIO-SAM[10]等激光SLAM方案中使用基于里程计的回环检测方法,通过当前位置信息判断是否可能存在回环,如当前位置一定范围内,存在历史轨迹点,则与对应关键帧进行匹配,并通过迭代最近点(ICP)配准方法进行位姿计算,实现累计误差的校正 。此类方法效果受巡检距离限制,当累积误差超过一定范围时出现无法检测到回环或错误检测的问题,仍未解决累积误差不断增长的问题,受传感器精度影响大,且ICP方法对全部点云进行配准计算,计算时间较长 。
文献[11-12]通过正态分布变换(NDT)或特征直方图检测闭环,通过距离信息判定当前位置阈值与历史轨迹的一致性,使用NDT方法或特征直方图方法进行位姿估计与二次回环检测,有效提升了匹配准确率,但召回率以及回环检测的实时性无法适用于井下无人机的定位需求 。因此,使用回环检测方法解决井下无人机巡检保持长时间高精度定位的问题,需避免对里程计的依赖,使用场景相似特征进行回环检测,同时提高计算效率,保证实时性 。
本文提出一种适用于激光SLAM的点云全局特征描述子回环检测方案,不依赖于位姿信息,利用矿井通道的几何结构特征进行匹配,通过计算与误差较小的历史场景之间的位姿变换,消除累积误差,并完成了完整SLAM算法框架的搭建,实时性好 。该框架里程计部分基于激光里程计和建图(LOAM)[13]算法计算不带回环的位姿信息,回环检测部分基于曲率划分的特征点与点云质心之间的角度关系和尺度关系进行相似度检测,使用平面点和边角点配准方法优化计算速度,并由因子图优化方法保证全局一致性 。最终,通过仿真和开源数据集实验验证了所提算法的有效性,本文研究可为激光SLAM的全局特征提取及回环算法提供理论基础 。
01 基于全局特征描述子的回环检测
设计的定位系统整体分为2个模块:里程计模块和回环检测模块 。
里程计模块参考LOAM算法[13]实现,输出里程计位姿信息,并根据点云三维曲率完成了特征点云的筛选,将边角特征点云
和平面特征点云
传递给回环检测模块 。
回环检测模块中进行回环识别和位姿的更新 。为实现对井下通道的几何描述,在激光雷达相对坐标系下,进行特征向量提取和中心点计算,基于点云的角度分布和尺度分布关系,构建点云的全局特征描述子;以多维描述子之间的相关性作为点云相似度的评价指标;使用特征点配准方法以改进全局配准计算耗时过大的问题;利用检测到的相似场景建立回环约束,通过因子图优化消除累积误差并保证轨迹和地图的全局一致性 。回环检测模块是本文研究的重点,算法流程框图如图1所示 。其中: