留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

高适应性激光雷达SLAM

黄瑞 张轶

黄瑞, 张轶. 高适应性激光雷达SLAM[J]. 电子科技大学学报, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
引用本文: 黄瑞, 张轶. 高适应性激光雷达SLAM[J]. 电子科技大学学报, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
HUANG Rui, ZHANG Yi. High Adaptive Lidar Simultaneous Localization and Mapping[J]. Journal of University of Electronic Science and Technology of China, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
Citation: HUANG Rui, ZHANG Yi. High Adaptive Lidar Simultaneous Localization and Mapping[J]. Journal of University of Electronic Science and Technology of China, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196

高适应性激光雷达SLAM

doi: 10.12178/1001-0548.2020196
详细信息
    作者简介:

    黄瑞,男,博士,主要从事计算机视觉、机器智能方面的研究

    通讯作者: 张轶,E-mail:yi.zhang@scu.edu.cn
  • 中图分类号: TP242.6

High Adaptive Lidar Simultaneous Localization and Mapping

More Information
  • 摘要: 时定位与地图构建 (SLAM),或同步建图与定位,目前主要应用于自动驾驶及机器人自主导航领域。由于激光雷达SLAM系统具有较高的测量准确性、对光照变化不敏感的特点,其在工业界获得了广泛的应用。但是基于激光雷达的SLAM算法有几个难以处理的问题:1) 在结构化信息较少或在变化场景下的定位的不准确性;2) 对于运动畸变的矫正能力还比较欠缺。该文针对以上问题做了两点改进:1) 当结构化信息较少时,改进了原始算法处理迭代退化的步骤,提出了静态门限与动态门限结合共同应对退化的方法;2) 在应对剧烈运动时,在1的基础上增加了一个局部地图优化的方法,给后端提供更精确的初始位姿和点云信息。实验结果表明,本文算法在剧烈运动和变化环境中有较好的鲁棒性及定位精度,同时免除了多传感器融合在SLAM中面临的激励不足的问题。
  • 图  1  畸变矫正不好时,输入给后端ICP的点云会出现较大畸变

    图  2  算法整体流程图

    图  3  室内轨迹误差对比图

    4  测试环境为楼道即狭长走廊的测试结果

    图  5  各种情况下的特征向量矩阵及相似矩阵

    图  6  室外公开数据集轨迹对比图

    表  1  3种算法的定位精度统计

    ErrorsSequenceLOAMLIOOurs
    Translation RMSE/
    m
    fast10.44710.05490.0974
    fast20.20340.06550.0813
    med10.15810.05220.0791
    med20.11200.08180.0749
    slow10.06910.04250.0581
    slow20.06210.03510.0542
    Rotation RMSE/
    rad
    fast10.10400.05510.0905
    fast20.08630.05980.0973
    med10.07540.05530.0676
    med20.06710.05750.0684
    slow10.05580.05210.0520
    slow20.05910.05330.0499
    下载: 导出CSV
  • [1] URTASUN R, LENZ P, GEIGER A. Are we ready for autonomous driving? the kitti vision benchmark suite[C]//Conference on Computer Vision and Pattern Recognition (CVPR). [S.l.]: IEEE, 2012, 1: 3354-3361.
    [2] WAN G W, YANG X L, CAI R L, et al. Robust and precise vehicle localization based on multi-sensor fusion in diverse city scenes[EB/OL]. [2019-11-12]. https://arxiv.org/pdf/1711.05805.pdf.
    [3] MUR-ARTAL R, MONTIEL J M M, TARDOS J D. ORB-SLAM: a versatile and accurate monocular SLAM system[J]. IEEE Trans. On Robotics, 2015, 31(5): 1147-1163. doi:  10.1109/TRO.2015.2463671
    [4] PIRE T, FISCHER T, CIVERA J, et al. Stereo parallel tracking and mapping for robot localization[C]//Proc of the Intern Conf on Intel Robots and Systems (IROS). Hamburg: IEEE, 2015: 1373-1378.
    [5] SONG S, CHANDRAKER M. Robust scale estimation in real-time monocular sfm for autonomous driving[C]//International Conference on Computer Vision and Pattern Recognition CVPR. Columbus, USA: IEEE, 2014: 24-27.
    [6] HESS W, KOHLER D, RAPP H, et al. Real-time loop closure in 2D LIDAR SLAM[C]//2016 IEEE International Conference on Robotics and Automation (ICRA). [S.l.]: IEEE, 2016: 1271-1278.
    [7] QIN T, LI P SHEN S, et al. VINS-Mono: A robust and versatile monocular visual-inertial state estimator[J]. IEEE Transactions on Robotics, 2018, 34(4): 1004-1020. doi:  10.1109/TRO.2018.2853729
    [8] KITT B, GEIGER A, LATEGAHN H. Visual odometry based on stereo image sequences with RANSAC-based outlier rejection scheme[C]//2010 IEEE Intelligent Vehicles Symposium. San Diego: IEEE, 2010: 802-813
    [9] DROESCHEL D, BEHNKE S. Efficient continuous-time SLAM for 3D Lidar-based online mapping[C]//2018 IEEE International Conference on Robotics and Automation (ICRA). Brisbane: IEEE, 2018: 1-9.
    [10] GENEVA P, ECKENHOFF K, YANG Y, et al. LIPS: LiDAR-Inertial 3D plane SLAM[C]//IEEE International Conference on Intelligent Robots and Systems. Madrid: IEEE, 2018: 123-130.
    [11] ZHANG J, KAESS, M, SINGH S. On degeneracy of optimization‐based state estimation problems[C]//IEEE International Conference on Robotics and Automation (ICRA). Stockholm, Sweden: IEEE, 2016: 809-816.
    [12] ZHANG J, KAESS M, SINGH S. Real-time depth enhanced monocular odometry[C]//EEE/RSJ International Conference on Intelligent Robots and Systems (IROS). Chicago: IEEE, 2014: 941-950
    [13] ZHANG J, SINGH S. Visual-lidar odometry and mapping: Low‐drift, robust, and fast[C]//IEEE International Conference on Robotics and Automation (ICRA). Seattle: IEEE, 2015, DOI: 10.1109/ICRA.2015.7139486.
    [14] ZHANG J, SINGH S. Laser-visual-inertial odometry and mapping with high robustness and low drift[J]. Journal of Field Robotics, 2018, 35(8): 1242-1264. doi:  10.1002/rob.21809
    [15] YE H, LIU M. LiDAR and inertial fusion for pose estimation by non-linear optimization[C]//2016 IEEE International Conference on Robotics and Automation (ICRA). [S.l.]: IEEE, 2018: 267-274.
    [16] YE H, CHEN Y, LIU M. Tightly coupled 3d lidar inertial odometry and mapping[C]//2019 International Conference on Robotics and Automation (ICRA). Montreal, Canada: [s.n.], 2019: 3144-3150.
    [17] GENTIL C L, VIDAL-CALLEJA T, HUANG S. 3D Lidar-IMU calibration based on upsampled pre-integrated measurements for motion distortion correction[C]//2018 IEEE International Conference on Robotics and Automation (ICRA). [S.l.]: IEEE, 2018: 2149-2155.
    [18] ISHIKAWA R, OISHI T, IKEUCHI K. LiDAR and camera calibration using motions estimated by sensor fusion odometry[C]//2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). [S.l.]: IEEE, 2018: 7342-7349.
    [19] ZHANG J, SINGH S. Low-drift and real-time lidar odometry and mapping[J]. Autonomous Robots, 2017, 41(2): 401-416. doi:  10.1007/s10514-016-9548-2
    [20] SHAN T, ENGLOT B. LeGO-LOAM: Lightweight and ground-optimized lidar odometry and mapping on variable terrain[C]//2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). [S.l.]: IEEE, 2018: 4758-4765.
    [21] SHAO W Z, VIJAYARANGAN S, LI C, et al. Stereo visual inertial LiDAR simultaneous localization and mapping[C]//2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). [S.l.]: IEEE, 2019: 370-377.
    [22] ZHANG J, SINGH S. LOAM: Lidar odometry and mapping in real-time[C]//Robotics: Science and Systems Conference (RSS). Berkeley: [s.n.], 2014: 872-881.
    [23] ZHU A Z, THAKUR D, OZASLAN T, et al. The multi vehicle stereo event camera dataset: An event camera dataset for 3D perception[J]. IEEE Robotics and Automation Letters, 2018, 3(3): 2032-2039. doi:  10.1109/LRA.2018.2800793
  • [1] 刘璟, 谢元禄, 霍长兴, 呼红阳, 张坤, 毕津顺, 刘明.  65 nm闪存芯片擦除时间退化的优化设计 . 电子科技大学学报, 2019, 48(4): 492-497. doi: 10.3969/j.issn.1001-0548.2019.04.003
    [2] 周瑞, 鲁翔, 卢帅, 李志强, 桑楠.  基于粒子滤波和地图匹配的融合室内定位 . 电子科技大学学报, 2018, 47(3): 415-420. doi: 10.3969/j.issn.1001-0548.2018.03.015
    [3] 赫熙煦, 陈雷霆, 张民, 孙青云.  基于动态认知的微博用户行为关系网络构建方法 . 电子科技大学学报, 2018, 47(2): 262-266. doi: 10.3969/j.issn.1001-0548.2018.02.016
    [4] 黎海涛, 齐双.  基于室内地图环境信息的多楼层WiFi定位技术研究 . 电子科技大学学报, 2017, 46(1): 32-37. doi: 10.3969/j.issn.1001-0548.2017.01.006
    [5] 周牧, 张巧, 田增山, 蒲巧林, 李玲霞.  基于图像边缘检测的WLAN室内用户运动地图构建 . 电子科技大学学报, 2016, 45(2): 240-245.
    [6] 高晴, 陈华富.  基于动态因果模型的运动执行和运动想象脑网络研究 . 电子科技大学学报, 2010, 39(3): 457-460. doi: 10.3969/j.issn.1001-0548.2010.03.030
    [7] 袁清珂, 刘大慧, 曾德东, 颜旭晖.  焊头机构运动建模与仿真技术的研究 . 电子科技大学学报, 2009, 38(2): 317-320. doi: 10.3969/j.issn.1001-0548.2009.02.38
    [8] 黄大贵, 邹学军, 廖细明.  用Pro/E对过约束运动平台动态仿真分析研究 . 电子科技大学学报, 2009, 38(6): 1042-1046. doi: 10.3969/j.issn.1001-0548.2009.06.032
    [9] 王博, 张建奇.  红外运动弱小目标的动态规划检测 . 电子科技大学学报, 2009, 38(4): 613-616. doi: 10.3969/j.issn.1001-0548.2009.04.032
    [10] 李先锐, 葛海波, 来新泉, 李玉山.  芯片动态门限静态功耗的优化技术 . 电子科技大学学报, 2009, 38(3): 443-446. doi: 10.3969/j.issn.1001-0548.2009.03.030
    [11] 荣健, 申金娥, 丁学科, 李芳, 邝爱华, 刘文鑫.  采用改进的退化模型恢复湍流降质图像 . 电子科技大学学报, 2008, 37(6): 890-892,950.
    [12] 林雪原, 何友.  数字地图辅助的三星时差定位方法及误差分析 . 电子科技大学学报, 2007, 36(4): 688-691.
    [13] 曾磊, 曾斌, 韩迪.  分布式SAR系统中运动目标检测定位技术 . 电子科技大学学报, 2007, 36(1): 40-43.
    [14] 吴光斌, 李军, 夏侯荔鹏.  用动态链路复用技术构建多业务交换体系结构 . 电子科技大学学报, 2006, 35(5): 815-818.
    [15] 李劲.  测向交叉定位系统的动态航迹起始算法 . 电子科技大学学报, 2006, 35(6): 894-896,912.
    [16] 钱雪彪, 刘永智.  大气湍流引发图像畸变的校正研究 . 电子科技大学学报, 2003, 32(3): 340-342.
    [17] 孙明, 周明天, 詹瑾瑜.  JMX动态管理服务的研究与设计 . 电子科技大学学报, 2002, 31(5): 507-511.
    [18] 王蔚然, 潘晓强, 张晓霞, 万里冰.  机载激光雷达成像畸变的仿真分析 . 电子科技大学学报, 1999, 28(4): 410-414.
    [19] 王蔚然.  机载激光成像雷达运动畸变的分析与修正 . 电子科技大学学报, 1998, 27(6): 583-587.
    [20] 陈勇, 于奇, 杨漠华.  MOS器件热电子退化的电子辐射实验研究 . 电子科技大学学报, 1997, 26(6): 666-669.
  • 加载中
图(7) / 表(1)
计量
  • 文章访问数:  5791
  • HTML全文浏览量:  1612
  • PDF下载量:  65
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-04-24
  • 修回日期:  2020-10-21
  • 网络出版日期:  2021-01-12
  • 刊出日期:  2021-01-31

高适应性激光雷达SLAM

doi: 10.12178/1001-0548.2020196
    作者简介:

    黄瑞,男,博士,主要从事计算机视觉、机器智能方面的研究

    通讯作者: 张轶,E-mail:yi.zhang@scu.edu.cn
  • 中图分类号: TP242.6

摘要: 时定位与地图构建 (SLAM),或同步建图与定位,目前主要应用于自动驾驶及机器人自主导航领域。由于激光雷达SLAM系统具有较高的测量准确性、对光照变化不敏感的特点,其在工业界获得了广泛的应用。但是基于激光雷达的SLAM算法有几个难以处理的问题:1) 在结构化信息较少或在变化场景下的定位的不准确性;2) 对于运动畸变的矫正能力还比较欠缺。该文针对以上问题做了两点改进:1) 当结构化信息较少时,改进了原始算法处理迭代退化的步骤,提出了静态门限与动态门限结合共同应对退化的方法;2) 在应对剧烈运动时,在1的基础上增加了一个局部地图优化的方法,给后端提供更精确的初始位姿和点云信息。实验结果表明,本文算法在剧烈运动和变化环境中有较好的鲁棒性及定位精度,同时免除了多传感器融合在SLAM中面临的激励不足的问题。

English Abstract

黄瑞, 张轶. 高适应性激光雷达SLAM[J]. 电子科技大学学报, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
引用本文: 黄瑞, 张轶. 高适应性激光雷达SLAM[J]. 电子科技大学学报, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
HUANG Rui, ZHANG Yi. High Adaptive Lidar Simultaneous Localization and Mapping[J]. Journal of University of Electronic Science and Technology of China, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
Citation: HUANG Rui, ZHANG Yi. High Adaptive Lidar Simultaneous Localization and Mapping[J]. Journal of University of Electronic Science and Technology of China, 2021, 50(1): 52-58. doi: 10.12178/1001-0548.2020196
  • 最近几年来,由于自动驾驶及自主机器人的迅速发展,作为其基础核心技术的时定位与地图构建技术 (simultaneous localization and mapping, SLAM) 获得了较多的关注[1-4]。且由于硬件的发展,特别是以多线激光为代表的高精度空间传感器的出现,SLAM系统在导航精度鲁棒性上都有了较大突破。得益于激光雷达能够获取高精度的距离信息、不受光照变化的影响,且能够提供丰富的结构化信息用于位姿估计,近年来涌现了众多的基于激光雷达的SLAM算法[5-8]。这些算法的稳定性、定位精度、运算实时性相较基于视觉或视觉与惯性测量单元 (inertial measurement unit, IMU) 融合的方案都有了较大的提升。但基于激光雷达的算法也面临一些其他的问题,如:空间结构信息较少时系统稳定性及精度问题、运动畸变的矫正、动态场景问题等。

    为了适应复杂多变的周围环境和无规律的自身运动,需要一种兼具鲁棒性和准确性的定位与建图的方法。在过去的十多年中,基于视觉和单线激光的定位方法取得了较多的成果[2,6-8];而最近几年,基于多线激光雷达的SLAM受到了广泛的关注[8-10]。但是现有的激光雷达SLAM算法在平面结构较多且空间狭小的环境中定位时,会受到结构化约束信息较少而带来的位姿更新误差的影响。更重要的是,如果激光雷达本身进行剧烈运动,其将表现出与结构化信息较少相似的特点:定位误差较大且建图不精确。在剧烈运动过程中,相比处于结构化信息较少的环境,系统更容易积累,这就导致了其定位和建图都会产生更大的误差。

    在应对激光雷达剧烈运动方面的文章较少,且都是关于多传感器融合的[11-15]。其通常做法是,使用激光雷达和惯性传感器(inertial measurement unit, IMU)紧耦合,相互之间提供约束,共同估计自身位姿。这种方法面对剧烈运动时误差累积小、精度高[16-17],但是存在以下两个问题:

    1)多传感器之间的时间同步较难[17-18],只能在设备使用前,通过静态方法估计,然后在后续优化问题中作为常量添加;

    2)由于多传感器紧耦合框架复杂,且严重依赖于传感器的自身特性[19-21],最终会对系统稳定性造成较大影响。

    本文只使用激光雷达,免去了时间同步误差及多传感器外参标定误差的影响,同时可以保证在剧烈运动场景中误差与多传感器紧耦合的误差处于同一量级。实验中发现单纯使用激光雷达在特殊场景中定位精度低,且主要是以下两方面的原因:1)迭代优化过程中,固定的退化处理门限不适应动态的场景变化;2)过大噪声导致前端里程计不准,从而使得点云畸变矫正出现问题。本文主要对这两方面进行改进。

    • 本文提出一种适应性强、在各种环境及运动状态下都有较高精度及鲁棒性的算法。主要从两方面改进:1)迭代优化过程中,不再固定退化门限,以动态门限和静态门限结合的方式,综合处理点云退化的情况;2)在最终执行ICP (就近点迭代)之前,使用之前已有的局部地图,进一步进行优化位姿后再一次进行畸变矫正,从而使得最终优化的时候引入更少的噪声,对应1)中较平缓的进行门限变化,保证普通场景中门限变化是由于所处环境变化而非偶发性的运动状态变化导致。

    • 文献[22]通过添加扰动找到退化方向,并通过统计分析,确定一个退化值的门限,小于这个退化门限的特征值都可以认为在这个方向上有退化。本文继承这种处理方式,但是采用了更加灵活的方式减小噪声的影响。

      在非线性优化中,高斯牛顿法是最常用的优化算法,其思路是在函数的局部极值点附近,对函数进行二阶泰勒展开。由于泰勒展开的二次项中海森矩阵的二阶偏导计算复杂,所以一般用一阶雅可比矩阵计算得出。最终得到一个线性方程组:

      $${{H}}\Delta {{x}} = {{g}}{\kern 1pt} {\kern 1pt} $$ (1)

      式中,海森矩阵近似为$H = {{J}}{(x)^{\rm{T}}}{{J}}(x)$,其中${{J}}(x)$是雅各比矩阵;$g = - {{J}}{(x)^{\rm{T}}}{{f}}(x)$${{f}}(x)$表示优化过程中当前点的残差;$\Delta {{x}}$是需要求解的更新量。在迭代优化过程中,为了提升系统的鲁棒性,现有做法是,在某个固定的门限下面对优化过程中约束较弱的空间维度做最优估计,使这个维度上的信息不影响最终的更新结果。设矩阵变换B能将这些弱约束维度在更新结果中去除,则B为:

      $${{B}} = {{{P}}^{ - 1}}{{AP}} = {{{P}}^{ - 1}}\left[ \begin{array}{l} 0{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \cdots {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} 0 \\ \vdots {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \ddots {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \vdots \\ 0{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \cdots {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} 1 \\ \end{array} \right]{{P}}{\kern 1pt} {\kern 1pt} $$ (2)

      式中,P为变换矩阵,是由n个特征值对应的n个线性无关的特征向量按照特征值的对应关系所组成的矩阵;A为对角线上存在零元素的对角矩阵,表示在基空间中对弱约束维度屏蔽的线性变换;BA的相似矩阵,处在优化更新量的空间中,即B变换是更新量所在空间中对应的线性变换。A, B两个变换在不同基空间中描述了同一件事情:即对弱约束维度的屏蔽。

      本文迭代过程中用到的3种海森矩阵特征向量组成的矩阵:

      $$\begin{split} &\;\;\;\; {{{V}}_p} = {[{{v}_1},\cdots,{v_m},0,\cdots,0]^{\rm{T}}} \\ &\;\; {{{V}}_u} = {[0,\cdots,0,{v_{m + 1}},\cdots,{v_n}]^{\rm{T}}}{\kern 1pt} {\kern 1pt} {\kern 1pt} \\ & {{{V}}_f} = {[{v_1},\cdots,{v_m},{v_{m + 1}},\cdots,{v_n}]^{\rm{T}}} \end{split} $$ (3)

      式中,Vp代表特征值较小所对应的特征向量,也是将要屏蔽的维度;Vu对应特征值较大,将用于特征值较小维度的最优估计;Vf包含了所有的特征向量。高斯牛顿迭代解出来的优化量为$\Delta {{x}}$。则之后的迭代优化的增量就变为了:

      $$\Delta {{{x}}^*} = {{B}}\Delta {{x}} = {{V}}_f^{ - 1}{{{V}}_u}\Delta {{x}}$$ (4)

      而考虑弱约束的完整更新量为:

      $$ \begin{split} &\qquad\Delta {{x}} = {{V}}_f^{ - 1}{{{V}}_f}\Delta {{x}} = {{V}}_f^{ - 1}({{{V}}_p} + {{{V}}_u})\Delta {{x}} = \\ & {{V}}_f^{ - 1}{{{V}}_p}\Delta {{x}} + {{V}}_f^{ - 1}{{{V}}_u}\Delta {{x}} = {{V}}_f^{ - 1}{{{V}}_p}\Delta {{{x}}_p} + {{V}}_f^{ - 1}{{{V}}_u}\Delta {{{x}}_u} = \\ &\;\; {{V}}_f^{ - 1}{{{V}}_p}\Delta {{x}} + {{V}}_f^{ - 1}{{{V}}_u}\Delta {{x}} = {{V}}_f^{ - 1}{{{V}}_p}\Delta {{{x}}_p} + {{V}}_f^{ - 1}{{{V}}_u}\Delta {{{x}}_u} \end{split} $$ (5)

      可以看出,$\Delta x$可以分为两种更新量,处理后的更新量$\Delta {x^{\rm{*}}}$中没有考虑弱约束方向带来的更新量。但是,由于决定弱约束方向的退化门限是通过统计及经验得出的固定值,并不能很好地反映各种环境下真实的退化门限,这可能会带来退化门限过大或者过小的问题。当退化门限过大时,较多的有用信息会由于相对不大的噪声而被完全抛弃,而这些方向上的最优估计可能并不准确;当退化门限过小时,迭代更新量会较多的受到噪声的影响,导致更新量异常地变大并偏离正确的更新方向。

      为了弥补退化门限固定所带来的影响,本文设计出一种动态的自适应的更新退化门限的方法。对退化门限做以下改进:由两个退化门限共同决定是否执行退化时的最优估计操作,退化门限D1为固定值,其值较大,用来初步判断迭代过程是否退化,通过统计分析得出[11];退化门限D2为动态变化的值,主要为了消除原始退化门限过大时,有较好约束的有用信息损失的问题。当通过D1判断出现退化的时候,将各维度特征值与动态门限D2对比,若小于D2则进一步对比,以D2作为退化门限的两种更新量$\Delta {x_{p2}}$$\Delta {x_{u2}}$

      $\left| {\Delta {x_{p2,i}}} \right| > \left| {\Delta {x_{u2,i}}} \right|$,表示此时受噪声影响较大($ \Delta {x}_{p2,i} $$ \Delta {x}_{u2,i} $分别表示i方向上,弱约束与强约束的更新量),应该只保留有较好约束关系的更新量$\Delta {x_{u2}}$;否则表示噪声的影响其实不大,可不用改变更新量。当vmin位于D1D2之间时,表示D2决定的噪声并不是噪声的主体,其中还包括别的方向的噪声。如果此时在D1决定的更新量中,噪声依旧有主要影响才按原始的方法屏蔽掉较小方向的噪声及更新量,从而避免出现“假退化”的情况。在单次迭代过程中,若动态门限D2判断出现了退化,则表明当前动态门限较小,应适当增大,否则应该减小动态门限。综上,统计得出的静态门限D1表示对噪声大小进行一次初步判断,其取值较大;D2表示随环境噪声变化而变化的动态门限,其取值较小,表示对时变噪声是否对系统有较大影响的更稳健的判断。

    • 通常算法采用了一个默认的假设:前端假设激光雷达是匀速运动的。因此这种假设在一般情况下表现较好,但是当位姿在短时间内变化较大时,就会失去精度。而这一步解算出来的位姿会作为运动畸变的矫正参数,由此导致畸变矫正出问题,是输入给后端优化的参数的进一步恶化,如图1所示。

      图  1  畸变矫正不好时,输入给后端ICP的点云会出现较大畸变

      这种未很好矫正畸变的点云在后端精细化的ICP中会引入较大噪声,使得迭代优化过程中即使有较好的位姿初始值,也会受到较大的噪声影响,带来的噪声又同时会对退化的判断造成影响。因此本文在输入后端进行全局优化之前,先根据已有局部地图对位姿做一遍修正,之后用修正的位姿送入后端进一步迭代优化。

    • 退化算法流程为:D1表示较大的固定退化门限,D2表示动态变化的退化门限(其初值为D1的一半),vmin表示高斯牛顿迭代中海森矩阵的最小特征值,$\Delta {x_{p1,i}}$表示以D1为退化门限所计算的${{V}}_f^{ - 1}{{{V}}_p}\Delta {{{x}}_p}$的第$ i $个更新量,$\Delta {x_{u1,i}}$表示以D1为退化门限所计算的${{V}}_f^{ - 1}{{{V}}_u}\Delta {{{x}}_u}$的第i个更新量,$\Delta {x_{u2,i}}$$\Delta {x_{p2,i}}$同理。count表示到目前积累的的退化次数,为动态变化的值,最小值为0,表示当前SLAM系统是否处于连续性的大幅度退化中:若处于连续性的大幅度退化中,则表示当前系统需要用局部地图来进行进一步的位姿迭代优化。

      在上述算法中,引入动态门限:当动态门限D2增大时,表示当前噪声影响较大,需要在下一次迭代过程中剔除更多的噪声影响;当动态门限D2减小时,表示当前噪声的影响并不大,可以在下一次迭代过程中剔除更少的噪声影响。同时,由于激光雷达测量的环境结构信息具有时间上的连续性,动态门限D2的引入能更好的反映当前时间段所处环境的结构信息丰富与否,同时在面对复杂多变的环境时有更好的适应性。整体的算法流程如图2所示。

      图  2  算法整体流程图

      该系统首先进行帧间匹配,此时并不考虑帧间迭代过程中的噪声与退化,因为基于帧间对应扫描线匹配的位姿迭代足够鲁棒。之后进入局部地图优化模块,若出现退化,则按照算法1屏蔽特征向量,同时判断当前动态积累的退化帧数是否大于5 (表示动态累计退化时间大于0.5 s)。若count大于5,则需要局部优化的位姿进行第二次畸变矫正。将点云送入当前维护的局部地图,再次进行位姿的迭代优化。

      算法1:单次迭代中出现$ \exists {v}_{i}<{{{D}}}_{1}$时,执行以下步骤进一步确定退化情况

      输入:A (迭代过程的海森矩阵)、$ \Delta {{x}}$(之前按没有退化算出来的更新量)、D1D2

      输出:通过进一步的判断更新或不更新$\Delta {{x}}$

      开始:

       由A计算D1下的$\Delta {x_{p1}}$$\Delta {x_{u1}}$D2下的$\Delta {x_{p2}}$$\Delta {x_{u2}}$

        ${\rm{if}} \;{v}_{\min} < {D}_{2}$

         ${\rm{if}} \; \exists (\left|\Delta {x}_{p2,i}\right| > \left|\Delta {x}_{u2,i}\right|)$

         $\Delta {{x}}=\Delta {{{x}}}_{{{u}}2}$;更新动态门限:${D}_{2}= {D}_{2}+5; {\rm{count}}++;$

         else

          更新动态门限:${D}_{2}={D}_{2}-5; {\rm{count}}--;$

         end

        else if $\exists (\left| {\Delta {x_{p1,i}}} \right| > \left| {\Delta {x_{u1,i}}} \right|)$

         $\Delta {{x}}=\Delta {{{x}}}_{u1} ;{D}_{2}={D}_{2}+5;{\rm{count}}++;$

        else count−−

        end

      该算法在多个层级上减小噪声对SLAM系统的影响,保证系统在各种环境,各种运动状态中都有较好的定位与建图精度。同时,当设备并未处于持续性的剧烈运动中时,系统并不进行局部地图优化,保证了系统整体的计算量较低。

    • 对比本文算法、LOAM算法和LIO算法的实现数据,数据集[17]为公开的室内无人机采集的数据集,表1为数据集中fast1数据的对比。

      表 1  3种算法的定位精度统计

      ErrorsSequenceLOAMLIOOurs
      Translation RMSE/
      m
      fast10.44710.05490.0974
      fast20.20340.06550.0813
      med10.15810.05220.0791
      med20.11200.08180.0749
      slow10.06910.04250.0581
      slow20.06210.03510.0542
      Rotation RMSE/
      rad
      fast10.10400.05510.0905
      fast20.08630.05980.0973
      med10.07540.05530.0676
      med20.06710.05750.0684
      slow10.05580.05210.0520
      slow20.05910.05330.0499

      由上表可以看出,本文提出的算法相比于同样只使用激光雷达的LOAM算法,在定位精度上有了很大的提升。同时相较于使用激光雷达和IMU紧耦合的LIO算法,本文提出的算法在定位精度上也没有太大的差距。进一步的,本文提出的算法在室内激烈运动场景中,对平移量的相对误差控制得较好。在误差水平上,整体跟LIO处于同一个量级。但本算法的旋转量相对误差优势不明显,整体误差水平和LOAM接近。因为LIO使用了IMU与激光雷达的紧耦合,更容易获得较为精确的旋转信息,而本文算法旋转信息的估计本质上还是依靠帧间匹配,相对于同样使用帧间匹配约束的位移信息更加不好约束,因此,图3a图3b中,本文算法轨迹相对于LIO算法轨迹表现出更明显的在真值附近来回震荡的效果。

      图  3  室内轨迹误差对比图

    • 本实验采用自行录制的数据,硬件如图4a所示,无人小车搭载rslidar-16、GPS、相机及毫米波雷达(用于后期自主导航等用途),测试中故意制造较大的角度变化。在这种场景下,迭代优化过程将会出现退化,原始的退化控制算法将造成某些方向上的不可控。

      可以看出,图4a在优化过程中,角度优化量出现了较大的误差。为了分析以上过程,画出了各种情况下的海森矩阵的特征向量矩阵及相似变换矩阵。

      图  4  测试环境为楼道即狭长走廊的测试结果

      各种情况下的特征向量矩阵及相似矩阵如图5所示。其中,5a表示受到较好约束的迭代过程,此时每行每列都有明显的极大值,只在平面运动(即FL)上有少许噪声。但是对结果影响不大,因为平面运动中,平面上的两个轴会相互影响。5b表示受到了严重的噪声影响,此时P, Y, F列与V1, V4, V5行都没有出现明显的极大值。此时红线上方代表固定门限判定的退化维度,此时为forward方向。图5c对应图5a效果,在方向维度出现了较大误差,即出现了伪退化的情况。

      图  5  各种情况下的特征向量矩阵及相似矩阵

      图5d表示真实退化情况下算法估计的结果。退化维度(即V4行)的更新量不是由其自身(即F列)主导的,而是通过所有更新维度对其进行估计。与图5d不同的是,图5c中最后更新量依旧取决于F的原始更新量(即[V4, F]依旧是所在行与列的极大值),但此时的海森矩阵的特征向量矩阵已经屏蔽掉了F维度,这也造成了图5bV1维度在其他维度上的投影也被屏蔽了。此时5b中第二大值[V1,P]也受到了较大影响,导致其在pitch角度的更新量受到严重影响,即对应图4b中所示的轨迹和建图误差。综上,该场景下,迭代优化不应该被判断为退化,这也是本文提出动态门限的作用,最终的结果如图4b所示,此时更新量正常,没有出现严重的建图误差。

    • 实验使用室外公开数据集[23],该数据集使用20 Hz、16线激光雷达,结果如图6所示。该数据集中传感器处于长期的平面运动中,期间经过城市街景和树木较多的类森林路段,周围环境复杂多变,可以较好地评价算法性能。

      在这个数据集中,LIO的表现较为糟糕,其垂直方向的轨迹出现了较大误差。因为激光雷达和IMU紧耦合的框架不适合长期的平面运动,IMU某些轴的未充分激励很容易导致将随机误差引入系统中。LOAM的表现稍好于LIO,但是依旧存在较大误差。由于该数据集设置20 Hz的采集频率,造成单帧点云数量减少一半,有用约束减少,系统容易出现退化,特别是在后半程树木较多的场景下,结构化信息约束杂乱,噪声较多,容易出现退化。而本文算法计算的轨迹非常接近真值,表明本文算法在室外开阔且多变的场景中,依旧有较好的表现。

      图  6  室外公开数据集轨迹对比图

    • 本文采用多层级多分支的数据处理流程,最终达到了在室内剧烈运动场景和室外开阔且又变化的场景都有较高精度的效果。改进的退化算法保证系统能尽可能减小多种场景下的噪声影响,同时有选择的进入局部地图优化,既保证了设备在剧烈运动时能通过更多的信息优化自身位姿,又使得在普通场景中,系统不会消耗太多计算资源。最后,实验数据表明本文提出的算法流程,能够兼顾多种运动场景和多种运动状态,在复杂的环境和运动中保持较高的定位和建图精度。

参考文献 (23)

目录

    /

    返回文章
    返回