VDO-SLAM: A Visual Dynamic Object-aware SLAM system
场景刚体假设,也就是静态世界假设,在SLAM算法中很常见。在复杂的动态环境中,大多数已有的算法通过不考虑移动物体或者分别追踪它们来简化问题。这么强的假设限制了在大范围的重要真实场景应用中,自动驾驶机器人系统的部署,包括高度动态和无结构化的环境中。这篇文章提出了VDO-SLAM,一个鲁棒的感知物体的动态SLAM系统,其利用语义信息来估计场景中刚体的运动,不需要物体的的形状和运动模型的先验信息。文章提出的方法整合环境中动态和静态结构为以统一的估计框架,实现了精确地位姿和时空地图估计。我们提供了一种方式来从场景中移动物体的物体位姿变换提取速度,辅助了复杂动态环境中的导航。我们在许多真实的户内和户外数据集中展示了所提出的系统的表现。结果表明相对于SOTA算法,我们的系统有一致和重大的提升。
【与dynaSLAM只专注于相机运动不同,这篇文章站在很高的层次,借助语义信息重新阐述了SLAMMOT问题。而来自深度学习的语义信息都可以看做是传感器的加强,从而纳入状态估计的问题当中。】
【实际上,MOT的信息是否能促进SLAM的估计是存疑的?但是来自三维目标检测的信息则可以,它可以相当于一个新的传感器。】
1 Introduction
SLAMMOT
关于SLAM中动态物体的解决思路:(1)将移动物体当做动态点去除,获得静态图;(2)采用MOT(多目标跟踪)的方法去检测和跟踪物体。
语义信息
现有的SLAM一般借助了低层次的信息,比如点、线、面,而深度学习提供了更加高层次的信息,比如检测和分割。但是当前的多目标跟踪和物体的位姿估计仍然不够好。
【物体的6D位姿估计仅仅是基于图像的不够好,基于激光雷达的已经够好,足以提供很多信息。目标的关联始终是一个问题,特别是对于激光3D目标检测,但是可以借助图像比较容易地解决这个问题。】
贡献
-
统一的相机位姿、物体位姿和静态、动态点的估计框架
-
对物体的运动估计胜过SOTA【有没有和3D目标检测相比】,且提出了估计速度的方法
-
多目标跟踪时,对于分割失败导致的indirect occlusions问题进行解决
-
实验
2 Related Work
暂时省略…
3 Methodology
3.1 Background and Notation
0 X k ^0X_k 0Xk 第 k k k帧相机位姿(从相机坐标系到世界坐标系)
0 L k ^0L_k 0Lk 第 k k k帧物体位姿(从物体坐标系到世界坐标系)
0 m k i ^0m^i_k 0mki 第 k k k帧中第 i i i个点世界坐标系下坐标
相机
物体
${ }^{0} \mathbf{m}{k}^{i}={ }^{0} \mathbf{L}{k-1}{ }{k-1}^{L{k-1}} \mathbf{H}{k}{ }^{0} \mathbf{L}{k-1}^{-1}{ }^{0} \mathbf{m}_{k-1}^{i} $
0 m k i = k − 1 0 H k 0 m k − 1 i { }^{0} \mathbf{m}_{k}^{i}={ }_{k-1}^{0} \mathbf{H}_{k}{ }^{0} \mathbf{m}_{k-1}^{i} 0mki=k−10Hk0mk−1i
3.2 Camera Pose and Object Motion Estimation
这里只谈了后端是构建误差项的,没有涉及前端对初始值的估计。
相机
李代数
物体
与光流联合估计
相机联合光流
【为什么会有这个光流正则项?优化过程中的雅克比怎么求的?】
物体联合光流
3.3 Graph Optimisation
(1)白色圈圈(3D点被相机观测):包含静态点和动态点。静态点会被观测多次,动态点由于在不断变动中,因此在同一坐标下只会被某一个相机观测到一次。
(2)橙色圈圈(相机位姿的相对变换):
(3)品红色圈圈(动态点和动态物体在世界坐标系下的变换):
(4)青色圈圈(动态物体运动的平滑性):
【这里有点类似于Peiliang Li里边的轮速模型,但是直接这里直接用匀速模型未免过去直接了,条件太强了,如果用匀加速度模型会不会好一点】
总的公式:
分别就是上述的四种误差项,值得注意的是这里的相机位姿相对变换误差和物体位姿平滑误差都加上了log,这里应该是为了降低权重。
【疑惑:前面所说的光流联合估计只是在前端吗?为什么后端不这样做?】
4 System
需要深度信息,以RGBD的形式处理,双目通过立体匹配,单目通过深度估计。