开源又优化的F-LOAM方案:基于优化的SC-F-LOAM

文章:Optimized SC-F-LOAM: Optimized Fast LiDAR Odometry and Mapping Using Scan Context

作者: Lizhou Liao, Chunyun Fu , Binbin Feng, and Tian Su

编译:点云PCL

代码:https://github.com/SlamCabbage/Optimized-SC-F-LOAM.git

来源:arXiv 2022

本文仅做学术分享,如有侵权,请联系删除。欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈。内容如有错误欢迎评论留言,未经作者允许请勿转载,欢迎各位同学积极分享和交流。

摘要

激光雷达里程计可以在短距离行驶或小范围环境中实现精确的车辆位姿估计,但在长距离行驶或大范围环境中,由于累积估计误差,精度会逐渐的下降。这一缺点要求在SLAM框架中包含回环检测,以抑制累积误差的不利影响。为了提高位姿估计的准确性,本文提出了一种新的基于激光雷达的SLAM方法,该方法使用F-LOAM作为激光雷达里程计,扫描上下文关系用于回环检测,GTSAM用于全局优化。在我们的方法中,采用自适应距离阈值(而不是固定阈值)进行环路闭合检测,从而获得更准确的环路闭合检测结果。此外,该方法使用基于特征的匹配方法来计算回环闭合点云对之间的车辆位姿变换,而不是使用激光雷达传感器获得的原始点云,这大大减少了计算时间。使用KITTI数据集和UGV平台对我们的方法进行了验证,实验结果表明,该方法优于文献中的典型激光雷达里程计/SLAM方法。我们的代码是为了社区的利益也开源在:https://github.com/SlamCabbage/Optimized-SC-F-LOAM.git。

图1:KITTI数据集上提出的方法示例。(a) 显示了该方法对KITTI数据集序列00的建图效果(b) 显示回环检测的一个实例,其中彩色部分是当前帧中的点云,灰色部分是历史地图

主要贡献

本文在F-LOAM[1]和扫描上下文描述子[2]的基础上,提出了一种轻型激光雷达SLAM方法,即使用扫描上下文描述子优化快速激光雷达里程计并建图(Optimized-SC-F-LOAM),基于优化的SC-F-LOAM方法包括三个部分:激光雷达里程计、回环检测和全局优化;它可以用较少的计算成本实现更精确的定位。本文的主要贡献如下:

  • 使用扫描上下文描述子优化F-LOAM,从而提高大型场景中的定位精度。
  • 采用基于特征的匹配方法,代替传统的原始点云匹配(如ICP),计算回环点云对之间的位姿变换,大大降低了计算成本。
  • 采用自适应距离阈值来识别是否建立了环路闭合,该阈值降低了错误回环检测的可能性,进一步提高了定位精度。此外,由于减少了错误回环闭合检测,全局优化的计算时间也缩短了,
  • 为了社区的利益,整个SLAM框架是开源的。为了证明所提方法的优势,我们将基于常用KITTI数据集的所提算法与扫描上下文描述子和F-LOAM的直接组合进行了比较,结果表明,与SC-F-LOAM方法相比,本文提出的方法具有更高的定位精度和更低的计算量。

主要内容

在本文中,我们将F-LOAM和Scan-Context的直接组合命名为Simple-SC-F-LOAM,Simple-SC-F-LOAM的具体框架如图2所示。在该框架中,三维原始点云被传递到激光雷达里程计模块和环路闭合检测模块,以导出当前帧中相对于全局坐标系的车辆姿态,以及环路闭合检测结果,最后,进行全局优化以获得优化的车辆姿态。

根据KITTI数据集的测试,Simple-SC-F-LOAM可以提供令人满意的定位精度,然而,该方法使用ICP计算回环点云对之间的车辆姿态变换,因此,当遇到连续回环闭合时,计算负载会显著增加,并且无法将循环约束实时添加到姿态图中。实际测试证明,本文提出的方法仅需Simple-SC-F-LOAM平均所需时间的28%即可计算回路闭合点云对之间的姿态变换。

此外,原始的扫描上下文描述子方法会导致许多错误的环路闭合检测,这不仅增加了计算成本,而且降低了最终车辆定位的精度。为了解决这一错误检测问题,该方法设计了一个自适应距离阈值,可以消除由于扫描上下文描述子导致的大多数错误环路闭合检测,从而提高车辆定位的准确性。

图2:SC-F-LOAM示意图。三个不同颜色的虚线框表示三个并行处理模块,蓝色虚线框表示激光雷达里程计模块,绿色虚线框表示回环检测模块,橙色虚线框表示全局优化模块

本文提出的方法的整个框架如图3所示。与Simple-SC-F-LOAM相似,该方法的框架也包括三个模块:激光雷达里程计、回环闭合检测和全局优化,但在以下三个方面有所不同:

1,通过激光雷达里程计获得的特征点云用作回环闭合检测模块的输入。

2、使用自适应距离阈值来识别是否建立了环路闭合,以减少错误的回环闭合检测。

3、采用基于特征的匹配计算回环点云对之间的车辆姿态变换。

图3:本文提出的优化SC-F-LOAM示意图, 三个不同颜色的虚线框表示三个并行处理模块。蓝色代表激光雷达里程计模块,绿色代表回环检测模块,橙色代表全局优化模块

A、 激光雷达里程计

在激光雷达里程计模块中,采用了与[2]基本一致的框架,该激光雷达里程计主要包括四个子模块:

1)点云预处理,

2)运动估计,

3)姿态估计,

4)子地图更新。

这些子模块不再一一详细解释,后面有机会再详解。

B、 回环闭合检测

本文提出的回环闭合检测模块已纳入扫描上下文描述子的框架中。为简洁起见,扫描上下文的细节不会重复,我们在此介绍所提出的方法与原始扫描上下文之间的主要区别,回环闭合检测框架通常使用输入点云构造全局描述子进行检测。与使用原始点云数据形成全局描述子的扫描上下文不同,该方法使用从LiDAR里程模块获得的边缘点云和平面点云构建全局描述子,这两种类型的特征点包含点云原始数据中几乎所有有用的信息。这些特征点的使用减少了噪声的影响,提高了回环闭合检测的准确性,缩短了回环闭合检测时间。

C、 全局优化

减少车辆位姿估计中的累积误差是现有文献中经常讨论的问题。本文采用的全局优化方法包括两个子模块:位姿估计和位姿图构建。

实验

A、 实验装置

为了验证我们的方法在真实场景中的有效性,我们在平缓的室外场景和起伏的室外场景中测试了我们的方法。对于温和室外场景中的测试,我们采用KITTI数据集中的序列00和05进行评估。对于起伏的室外场景中的测试,我们使用大学校园内UGV平台收集的点云,如图4。所有测试都是基于安装在笔记本电脑上的机器人操作系统(ROS)进行的,该笔记本电脑配有AMD R5-5600H处理器、16 GB RAM和Ubuntu平台。

图4 UGV平台

图5显示了所提出方法的轨迹的比较结果,我们发现,对于这两种序列,所提出的方法通过提供最接近真值的轨迹而优于其他方法。我们还计算了每种方法在这两个序列中的平均平移误差(ATE)、平均旋转误差(ARE)和回环闭合点云对之间的计算时间。

图5:KITTI数据集上的轨迹比较:(a)和(b)是所有方法使用KITTI序列00和05生成的轨迹

表一显示,所提出的方法具有最小的ATE,并且适用于两个序列。同时,该方法也实现了两个序列的最佳计算时间。

C、 使用测量数据集进行实验

我们使用配备16束激光雷达的UGV采集的真实场景数据,对F-LOAM提出的方法进行了对比测试。图6(a)显示了大学校园真实场景的俯视图。图6(b)显示了该场景中具有相对轻微坡度的环路闭合部分以及两种方法生成的轨迹。图6(c)显示了同一场景中较大的回路闭合部分以及两种方法产生的轨迹,与图6(b)中的方法相比,其包含较大的斜率。在图7(a)和7(b),我们看到我们的方法在X-Y平面上比F-LOAM更好地闭合回路,而F-LOAM生成的轨迹在一定程度上偏离。图7(c)显示,F-LOAM在z轴方向上产生更明显的偏差,而我们的方法仍然可以成功地闭合回路,上述结果表明,在梯度变化较大的情况下,我们的方法可以实现更好的定位

图6:UGV平台的实验环境

图7:实验2中F-LOAM和我们的方法产生的轨迹:我们的方法得到的轨迹为白色,F-LOAM得到的轨迹为红色

D、 关于结果的讨论

综上所述,在缓坡场景中,与对比的方法相比,该方法在计算时间和定位精度方面都取得了很大的提高,这些改进有两个主要原因。

  • 一是在提出的方法中使用特征点匹配(而不是ICP匹配)来计算回路闭合点云对之间的车辆姿态变换,从而减少计算时间。
  • 另一方面,该方法在扫描点云背景下自适应地重新设计了回环判断准则,以减少错误的环路闭合检测,从而在全局优化后获得更精确的姿态。在大坡度场景中,由于在我们的方法中加入了环路闭合检测来抑制累积姿态估计误差,因此该方法在定位精度方面优于F-LOAM,尤其是在z轴方向上。

总结

本文提出了一种计算效率较高的基于激光雷达的SLAM框架,该框架以较低的计算成本获得了更好的定位和建图的结果,通过将当前有效的激光雷达里程计方法(F-LOAM)与激光雷达回环检测方法(扫描上下文关系)相结合,所提出的方法设计了用于回环检测的自适应距离阈值(而不是固定阈值),从而优化了环路闭合检测性能,这种设计使得该方法能够获得更好的定位精度和更高的计算效率,为了验证所提方法的有效性,我们使用真实场景数据集KITTI数据集和UGV收集的点云数据与文献中几种典型的SLAM方法进行了对比测试,结果表明,该方法在定位精度和环闭包点云对间位姿变换的计算时间方面优于对比方法。

参考文献

[1] W. H, W. C, C. C, and X. L, "F-LOAM : Fast LiDAR Odometry and Mapping," in 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2021.

[2] G. Kim and A. Kim, "Scan context: Egocentric spatial descriptor for place recognition within 3d point cloud map," in 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2018: IEEE, pp. 4802-4809.