作者:robot L


主要内容

基于点云分割和CNN的LiDAR点云回环检测方法。

改进的点云配准失效检测方法,效率更高。

基于运动惯性里程计,AICP,回环的因子图LiDAR-SLAM系统,可以在腿式机器人上运行。

不足

处理频率只有1Hz,远低于激光频率10Hz。

没有和SOTA LiDAR-SLAM算法对比。

M. Ramezani, G. Tinchev, E. Iuganov, M. Fallon. Online LiDAR-SLAM for Legged Robots with Robust Registration and Deep-Learned Loop Closure. IEEE International Conference on Robotics and Automation, 2020.

摘要

在本文中,我们提出了一种基于因子图的3D LiDAR SLAM系统,组合了SOTA深度学习的基于特征的回环检测子,使得腿式机器人能够在工业环境中定位和建图。点云先通过惯性运动学状态估计器对齐,然后再使用ICP配准对齐。为了闭环,我们使用使用一种回环策略,匹配工业环境中的分割块和点云。我们离线训练描述子来匹配这些分割快。我们方法的高效性来自小心地设计网络结构以最小化参数数量,从而深度学习方法能够使用CPU实时配置,这也是本文的最大贡献。里程计和闭环因子通过位姿图优化被更新。最终我们提供了高效的风险对齐预测方法,验证了配准的可靠性。在一个工业环境中的实验结果证实了我们系统的鲁棒性和灵活性,包括在SLAM地图中的自主路径跟随。

1. 介绍

机器人建图和定位已经被研究了20多年,为许多不同任务提供了感知基础。大量研究被执行使得机器人能够在未知环境中定位,导航,并完成任务。虽然付出了大量的努力,但是自主机器人在复杂环境中长期操作仍然是开放的研究领域。

视觉SLAM已经展示出大量的进步[1][2],专注于克服光照条件变化的挑战[3]。替代地,本文专注于LiDAR。激光测量的运动估计和建图更准确。因此,我们专注于腿式机器人的LiDAR-SLAM。

我们SLAM的核心基于ICP,用于3D配准的常见方法[13],来对齐3D LiDAR采集的点云。我们的方法基于之前的自动调参ICP(AICP)[4],通过分析点云内容来鲁棒化对齐。AICP的初始化由机器人的状态估计器提供[5],通过融合惯性测量和运动学信息来估计机器人状态。我们的LiDAR里程计漂移低于1.5%。

本文主要贡献如下:

1)一种在线的3D LiDAR SLAM系统用于腿式机器人基于ICP配准。

2)一种验证度量来量化点云配准的可靠性。

3)一种基于学习的闭环检测,在移动CPU上实时运行。

4)算法在ANYmal四足机器人上的实时验证。

腿式机器人激光SLAM系统_子图

图1.  在ANYmal机器人上的3D LiDAR建立的工业场地地图的俯视角。

2. 相关工作

本节提供了文献综述在行走机器人的感知和LiDAR-SLAM系统方面。

A 行走机器人的感知

SLAM对于行走机器人是一项关键能力。示例系统包括运行在HRP-2人形机器人上的单目视觉SLAM系统[6],其基于EKF框架。相反地,[7]利用粒子滤波器来估计SLAM方法的后验,也在HRP-2上进行。Oriolo等人[8]验证了视觉里程计在Nano bipedal机器人上通过紧耦合视觉信息和机器人的运动学和惯性感知在EKF框架中。但是,这些方法需要环境的先验稀疏地图,限制了机器人的感知。

[9]和[10]中的工作利用KinectFusion[11]或ElasticFusion[12]的帧-模型视觉跟踪,其使用从粗到精的ICP算法。然而,基于视觉的SLAM技术受到变化光照的干扰。虽然对光照的鲁棒性已经被探索,例如[14]和[3],但是仍然是很大的挑战对于任何视觉导航系统来说。

与双足机器人相比,四足机器人的灵活性和鲁棒性更强,当在具有挑战的环境中运动时。因此,它更适合长期任务,例如工业场景的探索。在极端情况下,机器人需要跳过障碍物区域。Park等人[15]使用一个Hokuyo激光来检测40cm的障碍,其然后允许MIT Cheetah-2的控制器跳过障碍物,虽然LiDAR测量没有被用于定位。

Nobili等人[16]提供了一个状态估计器用于Hydraulic四足机器人(HyQ),基于单目惯性EKF。机器人的基坐标系速度和位置被传播使用IMU测量,腿式里程计,视觉里程计和激光里程计。系统容易漂移由于导航系统没有回环检测技术。

B 激光SLAM系统

一个有效的LiDAR里程计方法是LOAM[17]。LOAM提取边缘和表面点特征在点云中通过评估局部表面的平滑度。表面被重投影到下一帧的开始基于运动模型,并在下一帧中找到点对应。最终3D运动被估计通过最小化点对应的距离和。LOAM达到了高精度和低计算代价。

类似LOAM,Deschaud[18]发展了LiDAR里程计,IMLS-LiDAR,具有类似的精度通过使用帧-模型匹配。

Shan等人[19]扩展了LOAM到LeGO-LOAM,其分别优化横向和纵向参数。此外,LeGO-LOAM检测回环通过使用ICP算法来创建一个全局一致的位姿图使用iSAM2[20]。

Behley等人[21]提出了一种基于面元的LiDAR SLAM系统通过使用当前帧和面元模型的投影数据关联。

Dube等人[22]发展了一种在线的协作LiDAR SLAM系统。使用两到三个机器人,每个装配3D LiDAR,增量稀疏位姿图被生成通过连续场景识别约束。场景识别约束被确定通过SegMatch算法[23],其表示LiDAR点云为一组紧凑但是具有区分度的特征。描述子被用于匹配过程以确定回环。

3. 方法

我们的目标是提供ANYmal长时间的无漂定位和准确的周围地图。图2和图3给出了系统的不同成分分别从硬件和软件的角度。

腿式机器人激光SLAM系统_3D_02图2.  LiDAR-SLAM系统的硬件组成部分。

腿式机器人激光SLAM系统_3D_03图3.  LiDAR-SLAM系统的框图。

A 运动-惯性里程计

腿式机器人激光SLAM系统_子图_04

腿式机器人激光SLAM系统_子图_05

腿式机器人激光SLAM系统_3D_06

MAP估计是可靠的当等式(6)服从正态分布。但是,ICP对于较少的几何特征环境敏感,例如走廊或者门前,可能得到不好的街而过当优化该位姿图时。在第3.D节中,我们提出了一种快速的验证技术用于检测可能的AICP配准失效。

C 回环方法

本节介绍了我们的基于学习的回环方法和几何回环检测。

1)深度学习的回环方法:我们使用Tinchev等人的方法[26],基于匹配单独的分割对使用基于学习的特征描述子。它使用一个较浅的网络,从而它不需要一个GPU。我们提供一个方法总结,称之为高效分割匹配(ESM),但是建议读者参考[26]。

首先,一个神经网络被离线训练使用单个LiDAR观测(分割)。通过使用里程计,我们能够匹配分割实例不需要人工的干预。网络输入是一个三元组——锚点,正和负分割。锚点和正样本是来自连续帧的相同物体,而负样本是20m外的分割。该方法直接在原始点云数据上执行一系列X-卷积算子,基于PointCNN[27],接着是三个全连接层,其中最后一层用于分割的描述子。

在我们的实验中,当SLAM系统接收一个新的参考点云时,它被预处理,然后被分割为一系列点云簇。对于每个参考点云中的簇,一个描述子向量被计算使用高效的Tensorflow C++应用通过使用训练模型的权重进行前向传播。这允许一批分割被同时预处理。

腿式机器人激光SLAM系统_3D_07

2)几何回环检测:为了几何检测回环,我们使用腿式估计器(TSIF)的协方差来定义当前机器人位姿附近的一个动态搜索窗口。然后搜索窗口内的机器人位姿被检验基于两种原则:最近邻和点云配准的验证(第3.D节)。最终,几何回环被计算在当前点云中,并且得到对应的位姿使用AICP。

D 点云配准的快速验证

腿式机器人激光SLAM系统_3D_08

腿式机器人激光SLAM系统_子图_09

算法1.  伪代码

4. 实验验证

表1给出了机器人传感器的参数。

腿式机器人激光SLAM系统_点云_10

表1.  传感器参数

我们首先分析了验证方法,然后探究了基于学习的回环检测方法对于速度的可靠性。然后证实了我们SLAM系统的表现在室内和室外试验中。视频链接:ori.ox.ac.uk/lidar-slam

A 验证表现

腿式机器人激光SLAM系统_3D_11

腿式机器人激光SLAM系统_子图_12

图6.  我们提出的验证方法和原始方法比较。时间比较(左),表现比较(右)。

B 学习回环检测器的评估

在下一个实验中,我们探索不同回环方法的表现使用室外数据。

1)对视角变化的鲁棒性:图5展示了我们具有学习的回环方法的SLAM系统的预览。我们只选择两个点云来创建地图,它们的位置是图5中的蓝色箭头。

腿式机器人激光SLAM系统_点云_13

图5.  基于学习的回环验证。

腿式机器人激光SLAM系统_3D_14

2)计算时间:图8展示了计算时间图。几何回环的计算时间依赖遍历相同区域的次数。几何回环在最近N个点云中迭代,基于半径;遍历的协方差和距离导致它变慢。类似地,验证方法需要在最大重叠的点云中迭代,影响了实时操作。

替代地,学习的回环方法对地图大小的扩展性更强。它具有低维特征描述子,比上千个欧式空间中的数据点更快。

C 室内和室外实验

为了验证完整的SLAM系统,机器人在室内和室外分别走了100m和250m。每个实验持续45min。图1(底部)和图4展示了测试位置:工业建筑。为了评估建图准确性,我们比较了SLAM系统,AICP,和基准腿式里程计(TSIF)使用真值。如图4所示,我们使用Leica TS16来自动跟踪装在机器人身上的360度棱镜。这样,我们能够记录机器人的位置以厘米级别在7Hz左右。

腿式机器人激光SLAM系统_3D_15

图4.  实验在ANYmal上执行。为了确定真值轨迹,我们使用Leica TS16激光跟踪器来跟踪机器人上的360度棱镜。

对于评估度量,我们使用RPE和ATE[32],RPE决定轨迹的局部准确性,ATE决定全局准确性。

如图7(右)所示,我们具有验证的SLAM系统基于与真值完全一致。验证算法包括27个真-正回环因子(如图7(左)所示),被增加到因子图中。没有这个验证时,38个回环被创建,一些是错误的,导致较差的地图。图1(顶部)展示了地图的全局一致性。但是,对于室内试验没有真值来验证轨迹的准确性。

腿式机器人激光SLAM系统_3D_16

图7.  具有验证的SLAM系统(左);不同算法和真值的轨迹对比(右)。

表2展示了有/没有验证的SLAM结果,与AICP LiDAR里程计以及TSIF腿式状态估计器对比。由于Leica TS16没有提供旋转估计,我们使用最好的表现方法——具有验证的SLAM,并比较它和其他算法的轨迹使用ATE度量。基于该实验,具有验证的SLAM的漂移低于0.07%。

腿式机器人激光SLAM系统_点云_17

表2.  不同方法的定位准确性比较。

D 在ANYmal上的实验

在最终实验中,我们验证了SLAM系统在ANYmal上。在构建具有回环的地图后(遥控建图),我们需要一条回到操作站的路径。使用Dijkstra算法[33],最短路径被创建使用因子图。因为每条边已经被遍历,跟随路径能够回到初始点。