ORB-SLAM3:一个精确的视觉、视觉惯性和多地图SLAM开源库外文翻译资料
2023-05-16 15:24:34
英语原文共 17 页,剩余内容已隐藏,支付完成后下载完整资料
ORB-SLAM3:一个精确的视觉、视觉惯性和多地图SLAM开源库
摘要 本文展示了ORB-SLAM3,第一个可以使用针孔、鱼眼相机运行视觉、视觉惯性和多地图,且支持单目、双目和RGBD相机的SLAM系统。第一个主要新颖的点是基于特征点高密度融合的视觉惯性导航系统完全依赖于最大后验概率估计,包括在IMU初始化阶段。故,此系统可以鲁棒地实时运行在不同大小的室内外环境下,并且精度与以前的解决方法相比提高了2~10倍。第二个主要新颖的点是一个依赖于高召回率的位置识别方法的多地图系统。由于这个特点,ORB-SLAM3可以长时间运行于视觉信息稀少的环境中:在跟踪丢失时,可以重新创建一个新的地图,并且可以在回到已建图区域时与之前创建的地图无缝合并。相比于只利用邻近几秒(地图)信息的视觉里程计(即,纯视觉)系统,ORB-SLAM3是第一个能在算法的全阶段重新使用之前所有信息的系统。这使得该系统能在进行BA优化共视关键帧时,利用较大视差观测来提高求解的精度,即使这些视差观测间隔的时间较大或者来自于之前已经建立的地图。经过实验表明,在所有传感器模式下,ORB-SLAM3与文献中所提及的最优SLAM系统一样鲁棒,且有更高的精度。显而易见地,我们的双目惯性SLAM系统在EuRoC数据集中(运行的)平均精度能达到3.5cm,在高速移动手持设备的室内TUM-VI数据集中平均精度能达到9mm,室内TUM-VI数据集是AR/VR经典代表场景之一。为了便于交流和发展,我们公开了源码。
关键词 计算机视觉;惯性导航;同步定位与建图
- 1.引言
- 在视觉即时定位与建图系统(VSLAM)和视觉里程计(VO)研究发展中,只使用相机或者与惯性传感器结合使用的方法在过去二十多年里已经有了优秀的(SLAM)系统,具有越来越高的精度和鲁棒性。现代的(SLAM)系统依赖于最大后验概率(MAP)估计,这在视觉传感器中相当于光束法平差(BA),在基于特征的方法中相当于几何BA,即最小重投影误差,在直接法中相当于光度BA,即最小化一组选定像素的光度误差。
- 最近出现的视觉(VO)系统都融合了闭环技术,VO与SLAM之间的界限变得更加模糊。VSLAM的目标是用在移动端上的传感器去构建环境的地图以及实时计算该移动端在这个环境中的位姿。相反,VO系统将关注点放在了计算移动端自身的位姿上,而不是建图。一张SLAM地图很大的优点就是它允许用先前的观测进行匹配和BA,并执行以下的三种数据关联([1]中使用的术语):
- 1)短期数据关联,仅和最近几秒内获取的地图元素进行匹配。这是大多数VO系统中唯一的数据关联类型,这种数据关联类型存在一个问题:一旦地图元素离开视觉里程计的视野,这个元素就会被丢弃,即使回到原来的地方,也会造成持续的估计漂移。
- 2)中期数据关联,匹配离相机较近且累积漂移较小的地图元素。与短期观测相比,这些信息可以加入BA优化,当视觉系统移动至已建图区域时可以实现零漂移。这是该系统与带闭环检测的VO系统相比精度更高的关键。
- 3)长期数据关联,使用位置识别技术将观测与之前到达过的区域中的元素进行匹配,不管是在闭环检测中产生的累积漂移,还是在跟踪丢失、重定位的情况下,都可以成功匹配。长期匹配允许使用位姿图优化(或者更准确的说,叫BA)来重置漂移和闭环矫正。 这是保证中、大型闭环场景中SLAM精度的关键。
- 在这项工作中,我们建立在ORB-SLAM和ORB-SLAM Visual-Inertial的基础上,这是第一个能够充分利用短、中、长期数据关联的VO和VIO系统,可以在建图区域中达到零漂移。在此,我们进一步提供了多地图数据关联,它允许我们使用来自之前已经建立的地图区域的地图元素进行匹配和BA优化,实现了一个SLAM系统的真正目的:建立一个地图,并使用它进行精确的定位。
- 这本质上是一篇(SLAM)系统的论文,其最重要的贡献是ORB-SLAM3库本身,这是至今为止最完整和准确的视觉、视觉惯性和多地图SLAM系统。其主要的创新点是:
- 1)单目、双目视觉惯性SLAM系统,这个系统完全依赖于最大后验概率(MAP)估计,包括在IMU初始化阶段。该系统的初始化方法在文献[6]中提出。在这里,我们将它(这系统)与ORB-SLAM视觉惯性结合,在公共数据集中进行的彻底评估。我们的结果表明,单目和双目视觉惯性系统是非常鲁棒的,且显著比其他视觉惯性方案更准确,即使是在序列(数据集)没有回环的情况下。
- 2)改进的召回位置识别技术,很多最近的VSLAM和VO系统用DBoW2词袋技术来解决位置识别问题。DBoW2要求时间一致性,在检查几何一致性之前,将三个连续的关键帧匹配到同一区域内,以牺牲召回率为代价而提高识别精度。结果,使用这种方法的系统在闭环和重用已建图区域方面速度太慢。我们提出了一种新的位置识别算法,该算法首先检查候选关键帧的几何一致性,然后检查三个可视关键帧的局部一致性,在大多数情况下,这些关键帧已经在地图中。这种策略提高了召回率,增强了数据关联性,提高了建图的精度,但代价是计算的成本稍微提高了一点。
- 3)ORB-SLAM地图集,第一个能够处理单目或者双目VO和VIO系统的完整多地图SLAM系统。该地图集可以表示一组互不关联的地图,并能顺利地运用于所有建图操作:位置识别、相机重定位、闭环和精确的无缝地图合并。这实现了(搭载该系统的移动端)可以自主使用和合并不同时间建立的地图,执行多段增量的SLAM。
- 4)一种抽象的相机表示形式,使得使用相机模型的SLAM代码具有不可知性,并允许通过投影、非投影和雅克比函数来添加新的模型。我们提供针孔和鱼眼模型来实现。
- 所有创新点,加上一些代码上的改进,使得ORB-SLAM3成为新的、可供参考的视觉和视觉惯性开放源码SLAM库,与参考文献中最好的系统一样强大,且更加精确,正如我们在第七部分的实验结果所显示的。我们还提供了单目、双目、单目惯性和双目惯性的SLAM结果之间的比较,这可能从业人员所感兴趣的。
- 2. 相关工作
- 表I列出了最具代表性的视觉和视觉惯性系统的概要,展现了用于估计和数据关联的主要技术。表中定性的准确度和鲁棒性评估是基于第七部分的结果以及[2]中报告的PTAM、LSD-SLAM和ORB-SLAM之间的对比。
- A. 视觉SLAM(VSLAM)
- 单目SLAM(问题)最初在MonoSLAM中使用扩展卡尔曼滤波(EKF)和ShiTomas点来解决,这些点在后续的图像中通过相关性来引导搜索(理解为“特征匹配”),从而进行跟踪。通过使用特征匹配技术,中期数据管理得到显著改善,实现了手持设备的视觉SLAM。
- 相反,基于关键帧的方法只选用少数特定的帧来估计地图,忽略来自过程帧的信息。这使得在关键帧等级下,可以进行(计算)成本更高但更精确的BA优化。(基于关键帧的方法)最具代表性的系统是PTAM,它将相机跟踪和建图拆分为两个并行的线程。基于关键帧的技术在相同的计算成本下比滤波更精确,该技术成为视觉SLAM和VO的黄金标准。在文献[56]中使用滑动窗口BA实现了大规模单目SLAM,而文献[57]中使用双窗口优化和共视图(covisibility graph)实现了大规模单目SLAM。
- 基于这些想法,ORB-SLAM使用ORB特征,其描述子提供短期和中期的数据关联,构建共视图来限制跟踪和建图的复杂性,并使用词包库DBoW2执行回环和重定位,实现长期数据关联。(这是)迄今为止唯一融合了三种数据关联的SLAM系统,我们认为(融合三种数据关联类型)是其出色准确性的关键。在这项工作(ORB-SLAM3系统)中,我们利用新的Atlas(多地图)系统提高了它在纯VSLAM中的鲁棒性,该系统在跟踪丢失时开始(创建)一个新的地图,以及利用改进的召回率新位置识别方法提高了它在模糊(复杂)场景中的准确性。
- 直接法不提取特征,而是直接使用图像中的像素强度,并通过最小化光度误差来估计运动和结构。LSD-SLAM能够利用高梯度像素构建大尺度半稠密地图。然而,地图估计降低到位姿图 (PG)优化层面,获得的精度低于PTAM和ORB-SLAM。混合系统SVO提取FAST特征,采用直接法跟踪特征和任意帧之间非零强度梯度的像素,利用重投影误差优化相机轨迹和三维结构。SVO是一种非常高效的方法,但作为一种纯粹的VO方法,它只进行短期的数据关联,限制了其准确性。直接稀疏里程法 DSO能够在点检测器性能较差(纹理特征较差,提取不到特征点)的情况下计算精确的相机姿态,增强了在低纹理区域或对模糊图像的鲁棒性。它引入了局部光度BA,同时优化了7个近期关键帧的窗口和点的逆深度。这项工作的扩展包括双目、使用特征和DBoW2词袋技术的闭环,以及视觉惯性里程计。直接稀疏建图法DSM在直接法中引入了地图复用的思想,说明了中期数据关联的重要性。在所有情况下,由于缺乏短期、中期和长期数据关联的集成,导致准确性低于我们的建议(见第7节)。
- B. 视觉惯性SLAM
- 在较差的纹理、运动模糊和闭塞(的环境)中,视觉和惯性传感器的结合(为系统)提供了鲁棒性,并且在单目系统的情况下,使尺度可观测。
- 紧密耦合方法的研究可以追溯到MSCKF,其中通过特征边缘化避免了EKF在特征数量上的二次代价。初始系统在文献[34]中完善,在文献[35]、[36]中扩展到双目视觉。第一个基于关键帧和光束法平差(BA)的紧密耦合视觉里程车测量系统是OKVIS,它也能够使用单目和双目视觉。虽然这些系统依赖于特征,但ROVIO使用直接数据关联提供了带有光度误差的EFK。
- ORB-SLAM-VI首次提出了一种能够复用具有短期、中期和长期数据关联地图的视觉惯性SLAM系统,将其用于基于IMU预积分的精确局部视觉惯性BA中。然而,其IMU初始化技术太慢,耗时15秒,影响了(系统的)鲁棒性和准确性。文献[62],[63]中提出了更快的IMU初始化技术,基于一个封闭的解来联合检索尺度、重力、加速度计偏差和初始速度和带有深度信息的视觉特征。至关重要的是,他们忽略了IMU的噪声特性,最小化了空间点的3D误差,而不是它们的重投影误差,(重投影误差)这是基于特征的计算机视觉的黄金标准。我们以前的工作表明,这将导致巨大的不可预测的错误。
- VINS-Mono是一个非常精确和鲁棒的单目惯性里程计系统,闭环使用DBoW2和4自由度姿态图优化,以及地图合并。特征跟踪使用Lucas-Kanade跟踪器,比描述子匹配略稳定一些。在VINS-Fusion中,它已扩展到双目和双目惯性系统中。
- VI-DSO将DSO扩展到视觉惯性里程计,提出了一种光束平差法,将惯性观测与选定的高梯度像素的光度误差相结合,从而实现非常高的精度。随着高梯度像素信息的成功利用,提高了纹理较差的场景区域的鲁棒性。他们的初始化方法依赖于视觉惯性BA,在20-30秒内收敛在1%的尺度误差内。
- 最新的BASALT是一个双目惯性里程计系统,从视觉惯性里程计中提取非线性因素,将它们用于BA,并闭合匹配的ORB特征,达到非常高的精确度。Kimera是一种新颖出色的可度量语义建图系统,但它的度量部分由带DBoW2位姿图优化的双目惯性里程计加回环和位姿图优化组成,实现了与VINS-Fusion相似的精度。
- 在本工作中,我们建立了ORB-SLAM-VI,并将其扩展到双目惯性SLAM。我们提出了一种基于最大后验概率(MAP)估计的快速初始化方法,该方法适当地考虑了视觉和惯性传感器的不确定性,在2秒内以5%的误差估计真实尺度,在15秒内收敛到1%的尺度误差。上面讨论的所有其他系统都是视觉-惯性里程计方法,其中一些扩展了闭环功能,且需要使用中期数据关联的能力。我们相信,这一点(应该是指:使用中期数据关联类型的能力),加上快速和精确的初始化,是我们的系统始终获得更高的精度的关键,即使在没有闭环序列的情况下。
- C. 多地图SLAM
- 在滤波的方法中,文献[65]首次提出了通过地图创建和融合来增加跟踪损失的鲁棒性的想法。第一个基于关键帧的多地图系统是[66],但地图初始化是手动的,系统不能合并或关联不同的子地图。多地图功能是作为协同建图系统的一个组成部分而进行研究的,它具有多个建图代理和一个只接收信息的中心服务器,或者具有双向信息流,如C2TAM。MOARSLAM为协作式多设备SLAM提出了一种鲁棒的无状态客户机-服务器体系结构,但主要关注的是软件体系结构,没有报告准确性的结果。
- 最近,CCM-SLAM提出了一种基于ORB-SLAM的多无人机双向信息流分布式多地图系统。他们的重点是克服有限带宽和分布式处理的挑战,而我们的重点是准确性和鲁棒性,实现在EuRoC数据集上取得显著更好的结果。SLAMM也提出了ORB-SLAM2的多地图扩展,但保持子地图作为分离的实体,而我们进行无缝地图合并,构建更精确的全局地图。
- VINS-Mono是一个视觉里程计系统,具有闭环和多地图功能,依赖于位置识别库DBoW2。我们的实验表明,由于能够使用中期数据关联,在EuRoc数据集上的单目惯性单地图操作中,ORB-SLAM3的精度是VINS-Mono的2.6倍。我们的Atlas系统也建立在DBoW2的基础上,但提出了一种新的高召回率的位置识别技术,并使用本地BA进行更详细和准确的地图合并,在EuRoC上的多段(地图)实验中,比VINS-Mono的准确率提高了3.2倍。
-
3. 系
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[591358],资料为PDF文档或Word文档,PDF文档可免费转换为Word