Py学习  »  机器学习算法

基于深度学习的三维激光雷达动态物体分割(LiDAR-MOS)

计算机视觉life • 2 年前 • 399 次点击  

点击上方“计算机视觉life”,选择“星标”

快速获得最新干货

本文转载自泡泡机器人SLAM,文章仅用于学术分享。

本文作者:陈谢沅澧  博士

编辑:       吴奇

论文提出了一种利用深度学习和时空信息结合的方法实现了三维激光雷达动态物体分割,并用以提高激光雷达SLAM定位和建图的精度。有关LiDAR-MOS的论文,代码,数据集以及视频都已经公开。大家可以在下面地址找到~

论文: 

http://www.ipb.uni-bonn.de/pdfs/chen2021ral-iros.pdf
代码: https://github.com/PRBonn/LiDAR-MOS
数据集: http://bit.ly/mos-benchmark
视频: https://youtu.be/NHvsYhk4dhw

这里,为了方便大家,这里将演讲者内容提取出来,方便大家直接阅读~

演讲PPT和中文翻译字幕

Motivation

检测和识别环境中哪些部分在移动、哪些部分没有移动是非常具有挑战性的一项任务。它对于自动驾驶汽车来说很重要,因为其是无人驾驶众多下游任务的基础,例如预测周围环境的未来状态、避开障碍物和路径规划。它还可以改进和增强车辆本身的姿态估计、传感器数据之间的配准和 SLAM定位和建图的效果。

在这项工作中,我们的目标是对 LiDAR 数据进行动态物体分割 (LiDAR MOS)。在这项工作中,与点云语义分割不同的是我们的任务不是要预测点云的语义类别,如车辆、道路、建筑物等,而是更专注于将场景分割成两部分:一部分是实际移动的物体,例如正在行驶的汽车、行人,另一部分是静态物体,例如停放的汽车和静态背景,例如道路和建筑物等。我们提出了一种新的基于深度学习的方法,该方法利用 LIDAR 距离图像(range image),运算速度非常快,能够实现在线实时点云动态物体分割。


Contributions

本文的创新点包括:

首先,我们提出了一种新颖的在线动态物体分割方法,该方法实现了对 3D LiDAR 数据的动态物体分割。所提出的方法基于深度学习和神经网络,利用激光雷达序列距离图像,结合使用空间和时间信息来实现动态物体分割。所提出的方法可用于众多下游任务,例如里程计位姿估计、建图、SLAM 等。此外,基于 SemanticKITTI,我们提出了一个新的基于LiDAR 的动态物体分割数据集。我们将其与我们的代码一同发布,以便于其他研究人员在未来对更多的动态物体分割算法进行测试和比较。

Methods 

这里所展示的是该方法的概述图。我们使用基于距离图像的 LiDAR 表示方式和神经网络来实现在线动态物体分割。给定当前激光雷达观测和过去的激光雷达数据,我们首先生成过去LiDAR数据和当前 LiDAR 观测之间的“残差图像”(residual image),通过这种方式,我们可以得到时间上的序列信息。我将在下一页ppt中给出更多关于如何生成残差图的具体细节。生成残差图像后,我们将残差图与当前扫描连接到一起,一同用作神经网络的输入。然后我们利用所提出的动态物体二分类标签训练神经网络,该标签仅包含移动和非移动的两个类别。最终,所提出的方法可以实现对激光雷达数据中动静物体的检测和分离。

这里展示的是生成残差图像的示例。为了生成残差图像,我们首先使用从 SLAM 或基于传感器的里程计估计中得到的位姿估计将过去的LiDAR扫描转换到当前视点。然后如公式中所展示的,我们将它们投影成当前视点中的距离图像,并与当前LiDAR距离图进行差值比较,最终得到对应的残差图像。这里展示了过去 8 次LiDAR扫描所对应生成的残差图像。从残差图像中我们已经可以看到运动物体的粗略轮廓。因此使用残差图像和当前观察,我们利用序列信息来指导网络更好地检测和分割激光雷达数据中的运动物体。

在本文中,我们没有设计新的网络架构,而是使用了过去已成功应用于基于 LiDAR 的语义分割的网络。我们直接用融合的距离图像和残差信息来作为输入,并使用提出的二值标签重新训练网络,该二值标签仅包含两个类别,移动和静态。最后,我们使用提出的LiDAR-MOS数据集评估 LiDAR 动态物体分割的性能。我们最终测试了 3 个不同的现有网络,在使用我们提出的时空序列信息和二值标签后,所测试的所有网络都显示出在动态物体分割上的巨大改进。我将在之后的幻灯片中展示具体的测试结果。

这里所展示的是我们的方法在KITTI 里程计测试数据上的在线实时动态物体分割结果。红点表示移动的物体,而灰色的点表示不动的物体。可以看到,我们的方法可以很好地区分正在移动地物体,如移动的汽车和行人,以及静止的物体,如停放的汽车,和静态背景,如道路和建筑物。可以看到,我们的方法也适用于不同的环境,例如在高速公路环境,它也可以很好地从静态背景中分割出移动的汽车。

Experiments

我们使用用于实现语义分割的三种不同网络(RangeNet++、SalsaNext 和 MINet)测试了三种不同设置来实现动态物体分割,如表 1 所示。第一个设置是直接使用移动和非移动的二值标签来训练三个基于距离图像的网络。第二个设置是将前一帧附加到当前帧作为网络的输入,并使用二值标签进行训练。第三个设置是利用所提出的残差图像连接到当前帧作为网络的输入。从实验结果可以看到,与仅使用一帧或直接附加两帧相比,使用所提出的残差图像,所有这些网络都获得了更好的动态物体分割性能。

接下来展示的是一些关于所提出方法的消融研究(ablation study)。这幅图展示的是关于 LiDAR MOS 的残差图像数量的消融研究。可以看到,当只使用一张残差图像时,我们提出的算法在MOS性能方面已经有了很大的提升,当添加更多的残差图像时,可以进一步提高MOS性能,但到了8帧之后,提升效果并不那么显着。因此,在实际应用中,我们只使用过去 8 帧LiDAR扫描所生成的残差图像作为输入。

这幅图显示了关于 MOS 性能与添加到用于生成残差图像的位姿噪声的消融研究。

可以看出,由于在位姿估计中添加了噪声,所提出的MOS算法的性能会下降。但是,当添加的噪声越来越大时,MOS 性能不会变差。这意味着网络可能会在噪声大到一定程度时忽略含噪声的残差图像

这里所展示的是我们的算法在非常具有挑战性的情况下动态物体分割的结果。当前,汽车正行驶于一个十字路口。在当前场景中同时存在着大量运动物体和静态物体。可以看到,我们的方法可以很好地检测到运动物体,即使是对一些运动十分缓慢地物体,例如在十字路口等待交通的汽车和行人,而其他方法无法做到这一点。接下来展示的是所提出的方法应用于下游任务,比如提高LiDAR里程计位姿估计精度。

该表显示了KITTI里程计数据集上位姿结果的结果,斜线前的数字是旋转误差,斜线后的数字是平移误差。SuMa 是传统的仅使用几何信息的 LiDAR SLAM 方法,SuMa++ 是我们之前提出的语义 SLAM,它利用语义一致性来提高LiDAR SLAM精度,而 SuMa-MOS 是我们将提出的动态物体分割和传统 SLAM相结合的方法。可以看出,通过使用所提出的 LiDAR MOS 来检测和去除 LiDAR 扫描中的动态物体并用于激光雷达SLAM可以得到优于原始仅使用几何信息的SLAM算法,同时也优于使用全类语义信息的 SuMa++。

这里显示了所提出的LiDAR-MOS对于在线建图也很有用。在上半部分,我展示了使用原始点云数据构建的地图。可以看出,该图中存在很多由移动物体造成的所谓“幽灵”伪影(ghost effects),污染了地图,导致其无法用于接下来的定位导航应用。

相比之下,当使用我们的方法对 LiDAR 扫描中的动态物体进行去除后,伪影消失了,我们的算法可以在不更改建图算法的情况下得到干净的地图。

为了对更多基于激光雷达的动态物体分割算法进行比较并支持未来的研究,我们提出并发布了一个新的激光雷达动态物体分割数据测试集,该数据集基于SemanticKITTI 数据集进行构建的,其中包括了隐藏的测试集可用以对不同算法进行公平比较。图中展示了所提出的 LiDAR-MOS 数据集的的网站和链接。我们热烈欢迎对此任务感兴趣的朋友尝试我们的数据并将您的 LiDAR MOS 结果上传用以得到隐藏测试集上的分数。

对本工作进行总结,在本工作中我们提出了一种新颖的在线动态物体分割方法,该方法实现了对 3D LiDAR 数据的动态物体分割。所提出的方法基于深度学习和神经网络,利用激光雷达序列距离图像,结合使用空间和时间信息来实现动态物体分割。所提出的方法可用于众多下游任务,例如里程计位姿估计、建图、SLAM 等。此外,基于 SemanticKITTI,我们提出了一个新的基于LiDAR 的动态物体分割数据集。我们将其与我们的代码一同发布,以便于其他研究人员在未来对更多的动态物体分割算法进行测试和比较。

独家重磅课程!

1、VIO课程:VIO灭霸:ORB-SLAM3源码详解,震撼上线!

2、图像三维重建课程(第2期):《视觉几何重建》课程及84页独家电子书上线!

3、重磅来袭!基于LiDAR的多传感器融合SLAM 系列教程:LOAM、LeGO-LOAM、LIO-SAM

4、系统全面的相机标定课程:单目/鱼眼/双目/阵列 相机标定:原理与实战

5、视觉SLAM必备基础(第2期):视觉SLAM必学基础:ORB-SLAM2源码详解

6、深度学习三维重建课程:基于深度学习的三维重建学习路线

7、激光定位+建图课程:激光SLAM怎么学?手把手教你Cartographer从入门到精通!

8、视觉+IMU定位课程 视觉惯性里程计58讲教程全部上线!IMU预积分/残差雅克比推导、边缘化约束、滑窗BA!




全国最棒的SLAM、三维视觉学习社区↓


技术交流微信群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群,请添加微信号 chichui502 或扫描下方加群,备注:”名字/昵称+学校/公司+研究方向“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

投稿、合作也欢迎联系:simiter@126.com


扫描关注视频号,看最新技术落地及开源方案视频秀 ↓


—   版权声明  —

本公众号原创内容版权属计算机视觉life所有;从公开渠道收集、整理及授权转载的非原创文字、图片和音视频资料,版权属原作者。如果侵权,请联系我们,会及时删除。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/119974
 
399 次点击