文章:Monocular Simultaneous Localization and Mapping using Ground Textures
作者:Kyle M. Hart1;2, Brendan Englot2, Ryan P. O’Shea1, John D. Kelly1, David Martinez
编辑:点云PCL
代码:https://github.com/Navy-RISE-Lab/ground-texture-slam.git
摘要
本文研究旨在通过引入完整的同时定位与建图(SLAM)系统,减轻对地图的依赖,通过不需要现有地图让系统对于变化的环境更加稳健。该SLAM系统使用多种技术的组合来实现这一目标,首先图像的关键点被识别并投影到地面平面,然后这些关键点、视觉词袋(visual bags of words)以及几个阈值参数被用于识别共视的图像和被重新访问的区域,系统随后使用鲁棒的M-估计器来估计具有重叠图像和重新访问区域的机器人姿态之间的变换,这些优化的估计构成了用于导航的地图。通过实验数据展示这个系统在许多地面纹理上表现可靠,但并不适用于所有情况。
主要贡献
本文系统的贡献如下:
• 据我们所知,首次开发了仅使用单目相机的在线地面纹理SLAM系统。
• 在地面纹理领域内,利用已知的地面纹理图像深度来估计重叠图像之间的变换和识别闭环的独特算法。
• 在最新的数据集上进行实验,显示了一些纹理上的厘米级精度以及在不同纹理上的优越性能,同时实现了一致准确的闭环识别。本系统的源代码开源:https://github.com/Navy-RISE-Lab/ground-texture-slam。
内容概述
图2显示了所提出方法的概要。首先对输入图像进行处理,然后使用连续的图像对来估计仅基于视觉的里程计。接着利用闭环进行校正漂移,在里程计和闭环校正步骤中,都使用图像中识别出的关键点及其关联描述子来估计图像对之间的变换。此外,两个步骤都使用在地面平面上投影的关键点和鲁棒确定性模型M-estimators来估计变换,与局部视觉里程计不同,闭环检测使用三个度量方法来确定候选闭环是否有效,每个步骤估计的变换被插入到表示地图的因子图中。

图2:系统结构,有两个子模块:局部里程计(蓝色方框),与前一图像进行比较;闭环检测(黄色方框),与几乎所有前一图像进行比较,并通过阈值设定进行筛选(由黑色菱形表示)
实验
数据集示例图像如图3所示。该数据集仅包括大约平面表面,因此该系统在非平面户外表面(如山坡)上的工作能力尚未经过测试。

图3:数据集中的示例纹理。数据集包含多个纹理环境。每个纹理包含多个观测序列,每个观测由一个未畸变的图像和在图像捕获时的相关真实位置组成。
图5显示了一个路径在一个纹理上的结果。该图显示了我们完整的SLAM解决方案以及我们的解决方案的变体,其中没有任何环路闭合,以指示环路闭合在校正漂移方面的有效性。

图5:红色虚线表示我们上文中描述的SLAM系统的结果,蓝色虚线表示我们的系统在没有任何闭环校正的情况下进行的修改结果。
图7显示了一个示例结果,用红线连接每个确定的环路闭合,每个环路闭合连接两个附近的图像,没有错误的环路闭合。

此外图8显示了所选环路闭合的估计距离与地面真实值之间的距离图,在几乎所有情况下,估计距离非常接近实际值,尽管有些纹理有异常值,包括为清晰起见而删除的异常值,这意味着该系统既能够识别环路闭合,又能够准确测量这些环路闭合,以用于漂移校正。

总结
本文提出了一种创新的地面纹理SLAM系统,它仅使用校准的向下朝向的单目相机,这个系统是第一个在地面纹理领域提供完整在线SLAM功能而无需现有地图的系统,在接收新图像时,它会检测图像中的关键点,并使用相机位置的已知信息将它们投影到地面平面上,然后,它使用鲁棒的M-estimator方法估计机器人在图像对之间经历的地面平面2D变换,闭环检测使用三个阈值来识别重访区域以提高整体准确性,我们提供了实验结果,展示了该系统在各种地面纹理上的可靠性,并确定了几种需要进一步研究支持的纹理。我们还展示了准确的闭环识别,在适合的纹理上运行时,该系统提供了一种在不需要提供先验地图的情况下迅速完成机器人导航的方法。
资源
自动驾驶及定位相关分享
【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法
自动驾驶中基于激光雷达的车辆道路和人行道实时检测(代码开源)
更多文章可查看:点云学习历史文章大汇总
SLAM及AR相关分享