【开源方案共享】VDO-SLAM:基于视觉的动态SLAM感知系统
标题:VDO-SLAM: A Visual Dynamic Object-aware SLAM System
作者:Jun Zhang , Mina Henein , Robert Mahony and Viorela Ila
来源:https://arxiv.org/pdf/2005.11052.pdf
翻译:particle
欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈分享快乐。
论文阅读模块将分享点云处理,SLAM,三维视觉,高精地图相关的文章。公众号致力于理解三维视觉领域相关内容的干货分享,欢迎各位加入我,我们一起每天一篇文章阅读,开启分享之旅,有兴趣的可联系微信dianyunpcl@163.com。
摘要
在SLAM系统中通常假设环境是静态的,也有一些针对动态环境的SLAM算法通过将运动对象从环境中移除的方法来简化SLAM的跟踪,如此强制的假设将限制系统在高度动态和非结构化的环境中SLAM的应用。本文介绍了一个鲁棒性很强的动态SLAM感知系统VDO-SLAM,该系统利用语义信息实现对场景中刚性物体的运动估计,不需要事先知道物体的形状或运动模型。该方法将环境中的动态和静态结构集成在一个统一的SLAM系统中,能够获得精确的位姿和环境地图。文章提供了一种从场景中运动物体的姿态变化估计出速读的方法,为复杂的动态环境下的导航系统提供了重要的功能,我们在一些列的真实的室内和室外的数据集上验证了该系统的性能,结果表明,与先进的算法相比,该算法具有一定的实质性的改进,并开源了源代码:https://github.com/halajun/vdo_slam。
主要贡献
VDO-SLAM系统的结果。(上图)一个完整的地图,包括相机轨迹、静态背景和运动物体结构。(下图)静态背景和移动物体的特征点检测,以及估计的移动目标速度。黑色圆圈代表静态点,每个对象都用不同的颜色显示。
这是一种新的基于特征点的立体/RGB-D动态SLAM系统:VDO-SLAM,它利用基于图像的语义信息同时进行定位,构建静态环境稀疏点云和动态移动物体检测,并跟踪场景中刚性物体的运动。总之,这项工作的主要贡献有:
· 提出了一种能够在动态场景下实现机器人的位姿估计,构建静态环境地图,实现动态对象的运动估计的统一的框架。
· 动态物体SE(3)姿态变化的精确估计,优于最先进的算法,以及提出计算场景中移动物体速度的方法,
· 一种利用语义信息跟踪运动对象的稳健方法,能够处理语义对象分割失败导致的间接遮挡等问题,
· 在复杂真实的场景中演示了该系统。
据我们所知,这是第一个全动态SLAM系统,能够实现运动分割、动态目标跟踪、估计相机姿态以及静态和动态结构,场景中每个刚性物体的完整SE(3)姿态变化,提取移动物体速度信息,并且在真实的户外场景中可以运行。我们的算法在真实数据集上的性能,展示了所提出的系统解决刚性物体运动估计的能力,产生的运动结果在精度上可与相机的位姿估计相媲美,并且在城市驾驶场景中比最先进的算法性能高出一个数量级。
主要内容
该系统由三个主要部分组成:图像预处理、跟踪和建图。系统的输入是立体或RGB-D图像。对于立体图像,作为第一步,我们通过应用立体深度估计方法来提取深度信息,并将生成的数据视为RGB-D。虽然该系统最初设计为RGB-D系统,但为了充分利用基于图像的语义信息,我们采用单图像深度估计来获取单目相机的深度信息。我们的“基于学习的单目深度估计”方法,即只使用RGB图像作为系统的输入,通过深度学习的方法获得图像深度估计。
预处理
预处理模块需要完成两个具有挑战性的方面。首先,对静态背景和目标进行鲁棒分离,其次保证对动态目标的长期跟踪。为了实现这一点,我们利用计算机视觉技术的最新进展,例如实例语义分割和密集光流估计,以确保有效的目标运动分割和鲁棒的目标跟踪。
跟踪
跟踪部分包括两个模块:相机自身运动跟踪,包括特征检测和相机位姿估计子模块;目标运动跟踪包括动态目标跟踪和目标运动估计子模块。
建图
在mapping模块中,构建并维护一个全局地图。同时,从全局地图中提取局部地图,该局部地图基于当前时间步长和前一时间步长的窗口大小。这两个地图都是通过批量优化过程更新的。
论文图集
文章展示如何以无模型的方式建模刚体对象的运动并且对动态三维点进行跟踪。提出一个因子图优化来估计相机和物体的运动。在我们的系统的跟踪模块中,如图所示,系统优化的代价函数目的是估计相机姿势和移动对象的运动,代价函数与3D-2D重投影误差相关,并且定义在图像平面上。由于噪声在图像平面中的特征更好,这为相机定位提供了更准确的结果。此外,基于这个误差项,我们提出了一个新的公式,以联合优化光流与相机姿态和物体运动,以确保关键点跟踪的鲁棒性。在建图模块中,3D的误差代价函数用于优化3D结构和物体运动估计的最佳结果。
示意图实线表示相机和物体在惯性系中的姿态,虚线表示在场景中物体的运动。实线表示惯性系中的三维点,虚线表示相机帧中的三维点。
具有运动物体的动态SLAM感知系统的因子图。黑色方块代表摄影机在不同时间点的位姿,蓝色方块代表三个静态点,红色方块代表不同时间点的运动物体在相机上的相同动态点,绿色方块代表物体姿势在不同时间之间的变化。
实验与评估
与MVO系统进行的比较,使用 Oxford Multi-motion swinging 4 unconstrained数据集的进行相机和物体运动估计精度。粗体数字表示效果更好。
目标运动估计精度与CubeSLAM相比。颜色条表示与对数刻度中的左Y轴相对应的平移误差。曲线表示旋转误差,对应于右Y轴的线性刻度。
KITTI序列上VDO-SLAM的样本结果。带有相机位姿、静态环境点云和动态对象轨迹的动态地图。
总结
在本文中,我们提出了一个新的基于动态特征的SLAM系统VDO-SLAM,它利用场景中基于图像的语义信息,而不需要额外的物体姿态或几何先验知识,实现动态物体的同时定位、建图和跟踪。该系统在室内和室外具有挑战性的数据集上始终展示了稳健和准确的结果,并且在目标运动估计方面达到了最先进的性能。我们认为这是基于目标特征的系统方案中目标运动估计的达到较好效果且鲁棒的SLAM方法。
资源
三维点云论文及相关应用分享
【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法
3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)
PCL中outofcore模块---基于核外八叉树的大规模点云的显示
更多文章可查看:点云学习历史文章大汇总
SLAM及AR相关分享