DynaSLAM: Tracking, Mapping, and Inpainting in Dynamic Scenes

Central Idea:

本文提出了一个视觉SLAM系统,它建立在ORB-SLAM2的基础上,增加了运动分割方法,使其在单目、立体和RGB-D摄像机的动态环境中具有鲁棒性。本文中的系统可以精确地跟踪相机位置,并创建一个静态的、因此可重复使用的场景地图。并且,在RGB-D模式下可以使用先前帧中的静态信息修复被动态物体遮挡的部分,使新合成的帧能够在正常ORB-SLAM模式下作为关键帧使用,进行跟踪和建图。
1.单目和双目的模式下,只是用了CNN的最新Mask R-CNN算法进行动态对象的分割,这样SLAM算法就不会提取动态对象上的特征点,使动态对象上的关键点既不用于跟踪也不用于建图;
2.而在RGB-D模式下,图像用Mask R-CNN进行动态分割,同时使用多视图几何图形的方法进行动态分割,然后利用先前帧中的静态信息修复被动态对象遮挡的部分。(基于多视图几何和基于深度学习的方法检测动态对象)
在这里插入图片描述 F.1

研究背景(针对什么现状)

SLAM对于机器人应用来说是一个先决条件,但是:
一方面,研究界对SLAM的研究大多假定在静态环境下,这限制了SLAM在现实中有人类生活场景中的应用。
另一方面,场景中动态目标的出现带来的问题却还没有得解决:
1)检测出动态对象避免SLAM算法将其作为关键点用于跟踪和建图;
2)去除动态特征点后如何恢复被动态对象遮挡的部分。

相关工作

基于特征的SLAM方法:
1.Tan等人通过将地图要素投影到当前帧中进行外观和结构验证来检测场景中发生的更改。
2.WangsiriPitakMurray跟踪场景中的已知3D动态对象。类似地,Riazuelo等人通过检测和跟踪人来处理人类活动。
3.LiLee的工作使用了深度边缘点,这些点具有表示其属于动态对象的概率的相关权重。

特别为动态场景进行设计的直接法:
4.Alcantarilla等人通过具有立体摄像机的场景流表示来检测移动对象。
5.WangHuang使用RGB光流分割场景中的动态对象。
6.Kim等人提出通过计算在同一平面上连续投影的深度图像之间的差值来获得场景的静态部分。
7.Sunet等人计算了连续RGB图像之间的强度差。像素分类是通过对量化的深度图像进行分割来完成的。

这些存在两个方面的问题:
1)仅根据序列[1]、[3]、[9]、[12]-[17]中包含的信息来映射静态场景部分的所有方法(包括基于特征的方法和直接方法)都不能在动态对象(例如停放的汽车或坐着的人)保持静态时估计终身模型

2)WangsiriPitakMurray,以及Riazueloet等人会检测到动态对象,但**无法检测到静态对象产生的变化,例如,有人推的椅子或有人扔的球。**也就是说,前一种方法成功地检测出了运动目标,而第二种方法成功地检测到了多个运动目标。我们的研究DynaSLAM结合了多视图几何和深度学习。

本文的工作与系统描述

系统框架图如上图F.1.

A.使用CNN对潜在动态内容进行分割

B.低成本跟踪

C.使用掩码R-CNN和多视图几何对动态内容进行分割
通过使用Mask R-CNN,可以对大多数动态对象进行分割,而不是用于跟踪和映射。但是,有些对象无法通过此方法检测到,因为它们不是动态的,而是可移动的。最新的例子有某人携带的一本书,某人移动的椅子,甚至是长期地图中的家具变化。
使用投影角度的一些方法进行处理。
总的来说就是使用深度学习和多视图几何的联合方法来进行动态目标识别。在这里插入图片描述F.2

D.跟踪和建图

E.背景修复
使用先前帧中的静态信息进行背景修复
在这里插入图片描述F.3

这些合成的帧的另一个应用:如果帧的动态区域内嵌有静态内容,则系统可以在静态假设下使用嵌入的图像作为SLAM系统工作。

实验比较

作者在TUM RGB-D和KITTI数据集上对DynaSLAM系统进行了评估,并且在动态环境下与其他最先进的SLAM系统进行了比较;同时为了量化本文中的方法在动态场景中的改进,作者还将DynaSLAM系统与ORB -SLAM2系统进行了比较。各类比较的结果如下:

A.TUM数据集

  1. 在名为sitting(S)的序列中,有两个人坐在桌子前说话和打手势,也就是说,有一个低程度的运动。
  2. 在名为walking(W)的序列中,两个人同时在背景和前景中行走,然后坐在桌子前面。此数据集具有高度动态性,因此对标准SLAM系统具有挑战性。
    两种序列中都包含了四种不同的相机位姿:
    halfsphere、xyz、rpy、static
    分别代表着按照1m的半球行进、绕坐标轴行进、在滚动轴、俯仰轴和偏航轴上旋转以及静止。

DynaSLAM本身几种变化的比较:在这里插入图片描述DynaSLAM与ORB-SLAM2进行比较:
在这里插入图片描述动态场景下与几种最先进的SLAM系统进行比较:在这里插入图片描述表四显示了TUM数据集中ORB-SLAM和DynaSLAM(单目)的跟踪结果和跟踪轨迹的百分比:在这里插入图片描述B.KITTI数据集

表V显示了我们在11个训练序列中的结果,并与立体声ORB-SLAM2进行了比较:在这里插入图片描述表VI显示了ORB-SLAM和DynaSLAM的单目变体的相同序列中的结果:在这里插入图片描述
表VII显示了DynaSLAM不同阶段的平均计算时间:在这里插入图片描述

结论

1.本文提出了一个视觉SLAM系统,它建立在ORB-SLAM2的基础上,增加了运动分割方法,使其在单目、立体和RGB-D摄像机的动态环境中具有鲁棒性。我们的系统精确地跟踪摄像机,并创建一个静态的、因此可重复使用的场景地图。在RGB-D的情况下,DynaSLAM能够获得没有动态内容和内画遮挡背景的合成RGB帧,以及它们相应的合成深度帧,这对于虚拟现实应用可能非常有用。我们提供了一段视频,展示了DynaSLAM的潜力。
2.与最先进技术的比较表明,DynaSLAM在大多数情况下达到了最高的精确度。在TUM动态对象数据集中,DynaSLAM是目前最好的RGB-D SLAM解决方案。在单目情况下,我们的精度与ORB-SLAM相似,但以较早的初始化获得了场景的静态地图。在Kitti数据集中,DynaSLAM的精确度略低于单目和立体ORB-SLAM,但动态对象表示场景的重要部分的情况除外。然而,我们估计的地图只包含结构对象,因此可以在长期应用中重复使用。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐