文章目录

  • 写在前面
  • 摘要
  • 1.引言
  • 2.相关工作
  • 3.系统概述
  • 4.视觉前端
  • 5.双目视觉惯性里程计
    • A. IMU预积分因子
    • B. 非结构化视觉因子
    • C. 优化和边缘化
  • 6. 激光建图
    • A. LiDAR扫描去畸变
    • B. 帧到地图配准
  • 7. LiDAR增强的闭环
    • A. 回环检测
    • B. 回环约束
    • C. 全局位姿图优化
    • D. 重定位
  • 8. 实验结果
    • A.平台和软件
    • B.测试和结果
    • C. EuRoCMAV数据集测试
  • 9.结论

写在前面

写作参考: robot L
开源代码: 开源代码链接
论文原文: 原文链接

摘要

SLAM是移动和空中机器人的一项基本任务。基于LiDAR的系统被证明优于视觉系统由于其准确性和鲁棒性。除了该优越性,纯LiDAR系统在特定的场景会失效,比如通过隧道时。Shao等人提出了一种双目视觉惯性LiDAR(VIL)SLAM,在退化的情况下表现更好,在其他例子中有相似的性能。VIL-SLAM通过紧耦合双目视觉惯性里程计(VIO),LiDAR建图,以及LiDAR增强的视觉回环检测。该系统实时生成闭环修正的6维LiDAR位姿和接近实时的1cm体素稠密地图。VIL-SLAM证实了与最先进的激光雷达方法相比,它具有更好的精度和鲁棒性.

1.引言

SLAM解决了建立未知环境地图同时估计机器人状态的问题。虽然SLAM在过去几十年里被积极地研究,Cadena等人[1]注意到在处理不同的环境和长期连续操作时仍存在挑战。SLAM系统采用各种传感器模式,每一种都试图利用它们的好处。在过去几年里,基于LiDAR的SLAM系统比基于视觉的系统受到了更多的欢迎由于它们对环境中变化的鲁棒性。但是纯基于LiDAR的系统具有缺陷。它们在重复结构例如隧道或者走廊中失效。这些环境对建图和定位具有挑战性,使用所有传感器模式的优势的系统才能取得成功。我们提出了VIL-SLAM,其使用IMU,双目相机和LiDAR,并同时利用了它们的优势。我们的实验证实了VIL-SLAM和纯LiDAR系统在大多数情形中表现类似,并且在纯LiDAR失效的情况下表现更好。VIL-SLAM达到这个通过整合双目VIO和具有回环的LiDAR建图。据我们所知,这是首个该类型的工作。此外,我们介绍了一种方法来评估建图结果使用一个飞行时间激光扫描仪(Faro)。我们还提供了在EuRoc MAV数据集上的VIO验证结果。

VIL-SLAM使用一个紧耦合的双目VIO,其执行固定长度平滑图优化,使用稀疏3D特征用于地图配准的LiDAR建图,和融合稀疏点云对齐和视觉回环检测的闭环。回环检测优化一个全局位姿图使用一个增量求解器。VIL-SLAM被设计为长期和不同环境中鲁棒地操作。高频率IMU测量产生短期内合理但是长期容易漂移的估计。当使用双目视觉测量进行约束时,我们可以修正偏差并估计准确的相对运动(被称为VIO)。相对运动估计被用于辅助LiDAR扫描匹配其然后累计高保真度的3D点云来形成一个准确的地图。机器人的状态估计在长期运动中累积误差。闭环解决了该问题通过识别重新访问的区域使用视觉或者LiDAR方法。视觉方法包括BoW[2]来识别地点和PnP算法来估计运动修正。在LiDAR方法中,场景被识别使用基于分割的方法如SegMatch[3],并且位姿修正被估计使用ICP[4]算法。虽然BoW方法很快很通用,它缺乏很慢但是很鲁棒的使用ICP的LiDAR方法的准确性。VIL-SLAM使用一个混合方法,其中首先它使用BoW技术寻找闭环候选,使用PnP算法生成一个粗糙的位姿修正估计,然后使用ICP精修该粗糙估计。

2.相关工作

当前的VIO文献介绍了不同的构架来融合视觉和惯性数据。文献将不同的方法分为紧耦合系统[5]-[7],其中视觉信息和惯性测量被联合优化,或者松耦合系统[8]-[11],其中IMU是一个分离的模块,并且和一个纯视觉的状态估计器融合到一起。该方法可能被进一步地划分为基于滤波的方法[11]-[16]或者基于图优化的方法[5]-[7][17][18]。紧耦合的优化方法,利用迭代地最小化残差的优势,经常达到更好的精度和鲁棒性,同时具有更高的计算代价。在我们的工作中,我们限制计算量通过以无结构化方式构建路标,并且只优化固定大小的位姿图来达到实时表现。

当前仅使用激光扫描仪的最先进的的SLAM系统是[19]-[23],其中一个运动模型是需要的,或者常速度模型或者高斯过程。在[24]中的方法组合了双目相机和一个激光扫描仪。它具有来自VO的运动估计,并通过匹配激光帧来精修。不同于我们系统的是他们使用多分辨率栅格地图表示,我们使用稀疏点云来定位并输出稠密点云。同时,VIO经常更鲁棒和准确相比于VO[25].VLOAM[26],其使用一个IMU,一个单目相机和一个激光扫描仪,是与我们最相似的系统。一点不同是我们使用一个紧耦合的VIO作为运动模型来初始化LiDAR建图算法而VLOAM使用松耦合的IMU和相机。虽然我们的VIO更鲁棒,VLOAM具有更加交互的系统其中来自相机和LiDAR模块的信息可以被用于修正IMU偏置。VIL-SLAM具有的额外一项能力是LiDAR增强的闭环

3.系统概述


该系统具有四个模块如图2所示。视觉前端取来自双目相机的双目对。它执行帧到帧的跟踪和双目匹配,并且输出双目匹配作为视觉测量。双目VIO取双目匹配和IMU测量,执行IMU预积分和紧耦合的固定窗口平滑在一个位姿图中。该模块以IMU频率和相机频率输出VIO位姿。LiDAR建图模块使用来自VIO的运动估计并执行LiDAR点云去畸变和帧图配准回环模块执行视觉回环检测和初始的回环约束估计,其进一步通过一个稀疏点云ICP对齐来精修。一个约束了所有LiDAR位姿的全局位姿图被增量优化来获得全局修正的轨迹和一个实时的LiDAR位姿修正。它们被返回LiDAR建图模块用于地图更新和重定位。在后处理中,我们使用最优估计的LiDAR位姿缝补去畸变的LiDAR帧来得到稠密点云结果(图5)。

4.视觉前端

视觉前端接收一个双目对,并执行帧对帧跟踪和双目匹配用于一组双目匹配的稀疏特征点的生成,即双目匹配。一个双目匹配可能从之前的双目对中跟踪得到或者从当前对中新提取得到。帧帧跟踪表现直接影响时序约束质量,同时双目匹配帮助限制尺度。这两个工作非常关键对于任何双目视觉里程计来说。直接方法展示了鲁棒和高效时序跟踪结果在最近几年[8][27]。因此,我们使用KLT特征跟踪器[28]来跟踪所有在之前的双目对中的特征点,或者在左或者在右相机中。只有当它们被同时跟踪时,我们有一个跟踪的双目匹配并且它被放入到输出中。宽双目极线有助于尺度估计并减少由较远特征导致的退化问题。我们使用基于特征的方法,其比KLT更适合解决宽基线情形。如果被跟踪的双目匹配的数量低于某阈值,我们使用Shi-Tomashi角点检测器[29]执行特征提取,之后进行特征排除过程,其中与已存在特征距离小于某阈值的像素坐标被删除。ORB[30]描述子被计算在所有的幸存特征中,之后是一个纯暴力双目匹配以获得新的双目匹配。这个系统通过在第一个双目对中执行双目匹配来初始化。

5.双目视觉惯性里程计

双目VIO的目标是提供实时准确的状态估计以一个相对高的频率,作为雷达建图算法的运动模型。紧耦合的在一个位姿图上操作的固定长度平滑是精度和效率之间的一个好的权衡。基于优化的方法总的来说允许多次重新线性化来达到全局最小值。一个固定长度位姿图优化器进一步约束了变量的最大数量,因此计算代价被约束。因为差的视觉测量导致收敛问题,我们加强一个严格的外点剔除机制在视觉测量中。该系统通过检查双目和时序上的重投影的平均误差来消除异常值。

所提出的VIO以IMU预集成因子无结构视觉因子为约束条件。图中的表示形式如图3所示。要优化的变量是窗口内的状态。表示St为立体帧时间t时的状态变量。St包含6个自由度(DoF)系统姿态ξt(IMU帧)、相关的线速度vt、加速度计偏置bat和陀螺仪偏置bgt。被估计的状态变量的窗口是最近的N个立体帧。过去的状态变量被边缘化,产生相关变量的先验因素

A. IMU预积分因子

B. 非结构化视觉因子








C. 优化和边缘化

给定残差,位姿图优化是一个最大后验(MAP)问题其最优解为

6. 激光建图

激光建图使用高频率IMU的VIO位姿作为运动先验来执行LiDAR点云去畸变和帧图配准。表示扫描χ为从一个完整的激光雷达旋转中获得的点云。在去畸变之前从 X 中提取包含边缘和平面上点的几何特征。然后基于从当前扫描到地图的特征点(所有以前的特征点)进行配准,通过最小化特征点形成的欧氏距离残差作为优化问题来解决。

A. LiDAR扫描去畸变


B. 帧到地图配准

7. LiDAR增强的闭环

闭环是关键的对于任何SLAM系统由于长期操作进入漂移。闭环的目标是排除漂移通过执行一个全局位姿图优化,其整合了回环约束和来自LiDAR建图的相对变换信息。为了更好地支持LiDAR建图,修正的LiDAR位姿被实时地发送回来以至于来自新帧的特征点被配准到重遍历的地图。我们提出在BoW[2]回环检测和PnP回环约束构建之外增加ICP对齐。系统使用iSAM2[26],一个增量的求解器用于优化全局位姿图,达到实时表现。

A. 回环检测

双目图片和LiDAR帧被关联使用它们的时间戳。让我们分别表示这些为关键图片和关键帧。为了避免虚假的回环检测,我们限制候选在一定时间阈值内。回环候选被检测通过使用之前图片构建的BoW[2]数据库来测试关键图片。此外,我们匹配左图片的特征描述子和回环候选来滤除假阳性

B. 回环约束

系统首先获得视觉回环约束为一个初始估计。因为我们使用非结构化构架用于视觉路标,在回环候选中的所有双目匹配的特征中的三角化被执行来获得他们的3D位置。它们和当前关键图片的关联被给定通过描述子匹配。视觉回环约束然后被计算使用EPNP[37]为了提高视觉回环约束的准确性,我们在对应LiDAR关键帧的特征点上使用ICP对齐。有了一个坏的初始化或者大的点数,ICP消耗更长时间来收敛并消耗更多的时间资源。但是,视觉回环约束提供一个好的初始化点并且ICP只使用稀疏特征点(第6节),其使得它收敛的更快。

C. 全局位姿图优化


D. 重定位

一旦真实的闭环候选被发现,LiDAR建图缓存特征点(没有配准它们到地图)直到它接收到一个闭环修正。闭环修正包含全局优化的位姿。LiDAR建图更新它的地图,增加缓存的特征点到地图中然后恢复它的操作。我们可以保证实时更新地图因为(a)闭环具有实时表现(b)稀疏特征地图没有消耗太多内存(c)帧图配准是足够快的来追上LiDAR数据频率。

8. 实验结果

我们评估了VIL-SLAM,并将其与自定义数据集上最好的基于实时激光雷达的系统,LOAM2[22]进行了比较。我们没有使用KITTI里程计数据集[38],因为它们的评估序列没有VIO所需要的惯性测量。此外,大多数KITTI序列并没有挑战性。所以他们没有评估这些系统的鲁棒性,这是我们实验的主要重点。我们还使用EuRoCMAV数据集[39]评估了双目VIO子模块(VIL-VIO)。

A.平台和软件

我们建立了一个平台(如图1(a)),带有200万像素的摄像头、一个16个扫描线激光雷达、一个IMU(400Hz)和一台4GHz计算机(带4个物理核心)。我们建立了一个基于定制的微控制器的时间同步电路,通过模拟GPS时间信号对摄像机、激光雷达、IMU和计算机进行同步。该软件管道采用C++技术实现,具有ROS通信接口。我们使用GTSAM库[40]在VIO中构建固定延迟平滑器。对于回环检测,我们使用来自LibPointMatcher[41]的ICP模块来对齐点云,DBoW3[42]来构建可视化字典,以及在GTSAM[40]中的iSAM2[36]实现来进行全局优化。

B.测试和结果

我们展示了来自五个代表性环境的结果,包括无特征的走廊,杂乱的高台,隧道,和户外环境。所有这些序列的数据收集在同一点开始和结束。测度法(激光雷达建图位姿)根据最终漂移误差(FDE)进行评估。利用Faro扫描作为地面真值,以平均配准误差(MRE)进行评估。我们首先将地图与模型对齐(Faro扫描),然后地图点与模型最近点之间的欧氏距离。里程计FDE和地图结果如表一所示,更好的以粗体显示。运动轨迹和横断面图如图5所示。地图比较如图6所示。


高台是一个开放,结构化,功能丰富的室内仓库。然而,频繁的结构闭塞可能是视觉前端和激光雷达特征提取部分的一个挑战。VIL-SLAM和LOAM都很好地处理这个环境。对于VIL-SLAM,激光雷达建图模块配准其大部分扫描到地图,大大减少了测距误差。回环检测可识别起始位置并关闭回环。该地图是使用全局细化的姿态生成的,大部分地图误差低于0.15m。

走廊和隧道测试是具有挑战性的环境,因为缺乏视觉特征和激光雷达沿遍历方向的退化问题。LOAM在走廊中累积的误差较大,主要由于退化问题而未能通过隧道测试。在双目VIO模块(VIL-VIO)的帮助下,VIL-SLAM成功地完成了这两个测试。在走廊测试中,由于无特征墙壁的测量效果不足,视觉正面返回的可靠测量值较低。这破坏了壁错位观察到的地图,随后通过环闭合进行纠正,如图7(c-d)。当接近端点时,循环关闭会检测到两次循环,将FDE降低到0.05%,并生成一个细化的地图。在隧道测试中,由于退化问题, VILSLAM也在挣扎,并在遍历方向上积累了一些误差。然而,环路闭合检测到距离终点约3m处的环路,将FDE降低到0.08%,并纠正地图,如图7(a-b)。

这个巨大的循环测试具有来自走廊和高台环境的挑战。此外,我们通过沿着一条狭长而狭窄的走廊重新进入高台来结束轨迹。在图5(d)中用红十字标记的位置重新进入高台后,LOAM没有通过此测试。我们认为这是因为它没有配准新的扫描到原始的高台地图中,这是由于走廊中z方向累积的大错误造成的。VIL-SLAM在此测试中获得了成功。在没有触发环路闭合的情况下,它在里程计中达到了0.01%的FDE。VIL-SLAM是鲁棒的,并实现在重新进入时成功地配准新的扫描结果到原始的高台地图来实现这一结果。将使用VIL-SLAM的里程计估计值生成的地图与使用LOAM失效前生成的地图进行了比较。装箱区域是LOAM积累误差导致其失败的地方。

室外测试的特点是一个546米长的户外轨迹,包括一个平缓的斜坡。行人和汽车被观察到,这是潜在的异常值。VIL-SLAM和LOAM沿xy平面有类似的结果。然而,LOAM未能捕获z方向上的变化。在之前的测试中也观察到LOAM在z方向上的不准确性。

总的来说,VIL-SLAM会产生更准确的映射结果和更低的FDE。此外,VIL-SLAM成功在更具有挑战性的环境实现定性良好的地图构建和里程计结果,其中LOAM失败。

C. EuRoCMAV数据集测试


VIL-VIO有助于VIL-SLAM的鲁棒性和准确性。我们使用EuRoCMAV数据集根据绝对轨迹误差(ATE)来评估VIO。在图8中。显示了VIL-VIO和三种最先进的方法之间的比较结果。VIL-VIO的结果是确定性的,在具有3.60GHzi7-4790CPU的桌面上实时获得。其他方法的结果较[7]和[12]的实验结果较好。VIL-VIO成功地将所有序列的精度与其他序列相比较,验证其处理剧烈运动、照明变化、运动模糊和无纹理区域的能力。

9.结论

VIL-SLAM是一种最先进的定位和地图构建系统,旨在在不同的环境中稳健地长期运行。目前的框架使用松耦合的方式将VIL-VIO和激光雷达地图结合。我们正在将其扩展到一个紧密耦合的框架,这样从激光雷达建图中得到的细化姿态估计就可以用于IMU偏差校正。在回环检测中,ICP细化在扫描之间的稀疏特征点上操作。我们认为通过匹配一个扫描到建图,我们将获得一个更好的回环约束。

VIL-SLAM论文翻译:Stereo Visual Inertial LiDAR Simultaneous Localization and Mapping相关推荐

  1. 【论文翻译】RTAB-Map as an open-source lidar and visual simultaneous localization and mapping library for

    论文:RTAB-Map as an open-source lidar and visual simultaneous localization and mapping library for lar ...

  2. 综述类slam论文A Survey of Simultaneous Localization and Mapping(一)——激光雷达部分

    A Survey of Simultaneous Localization and Mapping 同步定位和地图绘制(SLAM)实现了基于自我感知的同时定位和地图构建的目的.本文对SLAM进行了概述 ...

  3. SLAM综述阅读笔记二:Simultaneous Localization and Mapping: A Survey of Current Trends in Autonomous(2017)

    转自[第八篇 SLAM:自动驾驶当前趋势综述 - 知乎] 说明该总结主要是针对自动驾驶 <Simultaneous Localization And Mapping: A Survey of C ...

  4. 论文笔记—A Review of Visual-LiDAR Fusion based Simultaneous Localization and Mapping

    论文笔记-A Review of Visual-LiDAR Fusion based Simultaneous Localization and Mapping 论文链接 文章摘要 ~~~~    ~ ...

  5. SLAM综述笔记-A Survey of Simultaneous Localization and Mapping with an Envision in 6G Wireless Networks

    A Survey of Simultaneous Localization and Mapping with an Envision in 6G Wireless Networks 这是一篇就激光与视 ...

  6. A Survey of Simultaneous Localization and Mapping 论文精读笔记

    A Survey of Simultaneous Localization and Mapping 南洋理工大学,武汉大学,2019.10.12 这是南洋理工大学的一篇关于SLAM的综述.(好像是赵俊 ...

  7. [LiteratureReview]A survey of image semantics-based visual simultaneous localization and mapping....

    [LiteratureReview]A survey of image semantics-based visual simultaneous localization and mapping: Ap ...

  8. SLAM学习笔记《Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Per》

    <Past, Present, and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception ...

  9. SLAM++: Simultaneous Localization and Mapping at the Level of Objects

    R. F. Salas-Moreno, R. A. Newcombe, H. Strasdat, P. H. Kelly. SLAM++: Simultaneous Localization and ...

最新文章

  1. 一些http 响应码及含义
  2. 【Android 逆向】APK 文件处理脚本 ApkTool.py ( 脚本简介 | 用法 | 分析 APK 文件 )
  3. Android locksettings/gatekeeper代码导读
  4. 职业规划纵向横向_金融行业之职业规划
  5. python决策树怎么选择_【机器学习+python(8)】分类决策树的介绍与实现
  6. 四、Go语言复合数据类型(上)
  7. 如何向Spring Bean 中注入java.util.Properties?
  8. Batch Normalization标准化(精)==>一方面可以简化计算过程,一方面经过规范化处理后让数据尽可能保留原始表达能力
  9. 7-7 旅游规划 (8 分)
  10. uctf-杂项题目分析
  11. 快速自检电脑是否被黑客入侵过(Windows版)
  12. 数据挖掘关联规则挖掘之FpGrowth算法
  13. 线性(欧拉)筛法筛素数表
  14. 腾讯云服务器挂载云硬盘
  15. 时钟容错同步算法之FTA
  16. 如何申请独立服务商(支付宝ISV)
  17. csv文档转为tsv文档-csv to tsv
  18. 机器学习中的概率模型
  19. amazeUI 地区选择器三级联动,带地区数据
  20. 修改jupyter Notebook默认保存路径

热门文章

  1. ccks2020中文短文本实体链接任务测评论文--小米团队--第一名
  2. 一个硅谷实习生竟是顶级黑客?网络安全风险多!
  3. 电磁场与仿真软件(21)
  4. c#串口通信(三)--半双工通信的数据接收
  5. Android开发,你所不知道的Android原生开发的现状
  6. Linux 基本使用和 web 程序部署
  7. yield 和 yield*
  8. lvgl cont(容器)
  9. 出行助手Vue项目中高德API的使用
  10. 小黑跟老黑们夜骑车拍完了毕业照面试了两场的leetcode之旅:793. 阶乘函数后 K 个零