ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM

  • I. INTRODUCTION
  • II. RELATED WORK
  • III. SYSTEM OVERVIEW
  • V. VISUAL-INERTIAL SLAM
  • VIII. CONCLUSIONS

ORB-SLAM3,第一个能够用单目、双目和RGB-D,针孔和鱼眼镜头模型进行视觉、视觉惯性和多地图SLAM的系统。基于特征的紧密集成视觉惯性SLAM系统,完全依赖于最大后验概率(MAP)估计,甚至在IMU初始化阶段也是如此。在小型和大型,室内和室外环境中都能稳定地运行。多地图系统,依赖于一种新的位置识别方法和改进的召回。能够在长时间的不良视觉信息下生存:定位失败情况下,当重新访问已经建图的区域时,会启动一个新的地图来和以前的地图无缝合并。是第一个能够在所有算法阶段重用所有先前信息的系统。能BA优化共视关键帧,即使它们在时间上相隔甚远,或者它们来自以前的建图会话。

I. INTRODUCTION

现代系统依赖于最大后验概率(MAP)估计,在视觉传感器的情况下,它对应于光束平差(BA):基于特征的方法中,使特征重投影误差最小化的几何BA;直接方法中,使一组选定像素的光度误差最小化的光度BA。
Visual slam的目标是使用移动代理上的板载传感器来构建环境地图并实时计算代理自身的位姿。相反,VO系统的重点是计算代理的自我运动,而不是建图。SLAM地图优势在于匹配和使用了BA以前的观测数据,通过三种类型的数据关联[1]:
短期:
匹配在过去几秒钟内获得的地图元素。大多数VO系统使用的唯一数据关联类型,一旦环境元素离开视线,就会丢弃,导致系统在同一区域中移动也会产生持续的估计漂移。
中期:
匹配靠近相机的地图元素,累积漂移仍然很小。可以在BA中进行匹配和使用,并且当系统在地图区域移动时,可以达到零漂移。与采用回环检测的VO系统相比,这是提高系统精度的关键。
长期:
使用位置识别技术将观测值与先前访问过的区域中的元素匹配,不考虑累积漂移(回环检测)或跟踪丢失(重新定位)。能够使用位姿图(pose-graph PG)优化或BA来重置漂移从而校正回环。是在大中型回环场景中,保证系统精度的关键。
ORBSLAM3的创新:
一种完全依赖最大后验概率(MAP)估计的单目和双目视觉惯性SLAM系统。即使在IMU(惯性测量单元)初始化阶段也是如此。 [6]中介绍了所提出的初始化方法。这里添加了它与ORB-SLAM视觉惯性[4]的集成,扩展到双目惯性slam。
高召回率位置识别。DBoW2实现位置识别需要时间一致性,在检查几何一致性之前,将三个连续的关键帧匹配到同一个区域,提高精度,在回环和重用以前的地图时速度太慢。故提出了一种新的位置识别算法:首先检查候选关键帧的几何一致性,然后检查与地图中已有的三个可共视关键帧的局部一致性。提高了召回率、数据关联和地图准确性,代价是计算成本稍高。
ORB-SLAM Atlas地图集。第一个用于单、双目能够处理视觉和视觉惯性的多地图SLAM系统。允许自动使用和组合在不同时间构建的地图,执行增量多会话SLAM。用视觉ORBSLAM地图集的初步版本见[10]。在这里我们添加了新的地点识别系统,视觉惯性多地图系统。
一种抽象的相机表示法。代码与所使用的相机模型无关,通过提供投影、反投影和雅可比函数来添加新相机模型。如针孔[11]和鱼眼[12]模型的实现。

II. RELATED WORK

A. Visual SLAM
MonoSLAM[13]、[14]、[53]中使用扩展Kalman滤波器(EKF)和ShiTomasi点进行相关引导搜索,然后在后续图像中跟踪这些点。中期数据关联显著的改进了特征匹配的一致性,实现了手持式视觉SLAM[54],[55]。
相比之下,基于关键帧的方法只使用少数选定帧来估计地图,忽略来自中间帧的信息。以关键帧率执行更昂贵但更精确的BA优化。最具代表性的是PTAM[16],将相机跟踪和建图分成两个平行线程。在相同的计算成本下,基于关键帧的技术比滤波更精确[56],成为视觉SLAM和VO的黄金标准。[57]中使用滑动窗口BA实现了大规模的单目SLAM,[58]中使用了双窗口优化和共视图。
ORB-SLAM[2],[3]使用ORB特征,其描述子提供短期和中期数据关联,构建共视图以限制跟踪和建图的复杂性,并使用词袋DBoW2[9]进行回环和重定位,实现长期数据关联。是迄今为止唯一集成了三种数据关联的视觉SLAM系统。我们使用新的地图集(Atlas)系统来提高它在纯视觉SLAM中的鲁棒性,并使用新的高召回率位置识别方法来提高它在回环场景中的准确性。
直接法使用图像中的像素强度,通过最小化光度误差来估计运动和空间结构。LSD-SLAM[20]能够使用高梯度像素构建大比例的半稠密地图(位姿图),其精度低于PTAM和ORB-SLAM[2]。混合系统SVO[23],[24]从帧到帧提取FAST特征,使用直接方法跟踪特征和具有非零强度梯度的像素,并使用重投影误差优化相机轨迹和结构,只执行短期的数据关联,限制了准确性。直接稀疏里程计DSO[27]能够在特征点探测不佳的情况下计算出精确的相机位姿,增强了低纹理区域或模糊图像的鲁棒性,引入了局部光度BA,同时优化了7个最近关键帧的窗口和点的逆深度,扩展到了双目[29]、使用特征和DBoW2[59][60]的回环闭合,以及视觉惯性里程计[46]。直接稀疏建图DSM[31]在直接方法中引入了地图重用的思想,说明了中期数据关联的重要性。
B. Visual-Inertial SLAM
视觉传感器和惯性传感器的结合提供了对不良纹理、运动模糊和遮挡的鲁棒性,并且在单目系统的情况下,使尺度可观察。
紧耦合方法的研究可以追溯到MSCKF[33],特征边缘化避免了特征数量上的EKF二次方代价计算,系统在[34]中得到完善,在[35]、[36]中扩展到双目。第一个基于关键帧和光束平差的紧耦合视觉里程计系统是OKVIS[38],[39],能够使用单目和双目视觉。ROVIO[41],[42]使用直接数据关联向EFK提供了光度误差。
ORB-SLAM-VI[4]首次提出了一种视觉惯性SLAM系统,能够重用三种数据关联的地图,并在基于IMU预积分的精确局部视觉惯性BA中使用它们[61],[62],它的IMU初始化技术太慢,耗时15秒,影响了系统的鲁棒性和准确性。[63],[64]中提出了更快的初始化技术,是闭合形式的解决方案,联合了尺度恢复、重力、加速度计偏差、初始速度和特征深度。忽略了IMU的噪声特性,将空间点的3D误差降到最小,而不是重投影误差,会导致大量不可预测的错误。
VINS-Mono[7]是一个非常精确和健壮的单目惯性里程计系统,使用DBoW2和4-DoF位姿图优化和地图合并来检测回环。特征跟踪使用Lucas Kanade tracker,比匹配描述子稍微健壮一些。在VINS-Fusion [44]中扩展到双目和双目惯性。Kimera[8]是一种新颖的度量语义建图系统,度量部分包括双目惯性里程计加上DBoW2回环检测和位姿图优化,与VINS-Fusion的精度相似。BASALT [47]是一个双目视觉惯性里程计系统,从视觉惯性里程计中提取非线性因素,用于BA,并闭合与ORB特征相匹配的回路,实现极好的精确度。
最近,VI-DSO[66]将DSO扩展到视觉惯性里程计,提出了一种光束平差,将惯性观测和选定的高梯度像素的光度误差结合起来,从而获得非常好的精度。成功地利用了高梯度像素的信息,增强了对纹理较差的场景区域的鲁棒性。它们的初始化方法依赖于视觉惯性BA,需要20-30秒才能收敛到1%的尺度误差内。
我们建立在ORB-SLAM-VI上,并将其扩展到双目惯性SLAM。提出了一种新的基于最大后验概率(MAP)估计的快速初始化方法,考虑了视觉和惯性传感器的不确定性,并在2秒内估计到5%,15秒内收敛到1%的尺度误差。上面讨论的所有其他系统都是视觉惯性里程计方法,其中一些通过回环进行扩展,缺乏使用中期数据关联的能力。
C. Multi-Map SLAM
[67]首次提出了通过地图创建和融合的方式,增强对探索过程中跟踪丢失的鲁棒性的想法。第一个基于关键帧的多地图系统之一 [68],但地图初始化是手动的,无法合并或关联不同的子地图。多地图作为协同制图系统的一个组成部分,由多个地图代理和一个只接收信息的中央服务器[69]或C2TAM[70]中的双向信息流组成。MOARSLAM[71]提出了一种用于协作多设备SLAM的健壮的无状态客户-服务架构,但主要关注的是软件架构,而没有准确的结果。
最近,CCM-SLAM[72],[73]提出基于ORB-SLAM的分布式多地图系统,用于具有双向信息流的多架无人机。重点是克服有限带宽和分布式处理的挑战,我们的重点是准确性和稳健性,在EuRoC数据集上取得更好的结果。ORB-SLAMM[74]还提出了ORB-SLAM2的多层地图扩展,但将子地图作为独立的实体,我们执行无缝地图合并,从而构建更精确的全局地图。
对比VINS-Mono[7]。由于我们的方法能够使用中期数据关联,ORB-SLAM3在EuRoc数据集上的单目惯性单会话操作的精度是VINS-Mono的2.6倍。建图系统也建立在DBoW2上,但提出了一种新的更高召回率的位置识别技术,并使用局部BA进行更详细和更准确的地图合并,在EuRoC上多会话操作中,其精度比VINS-Mono提高了3.2倍。

III. SYSTEM OVERVIEW

ATLAS地图集由一系列断开的地图组成。活动地图中,跟踪线程定位传入的帧,并由局部建图线程不断优化和增加新的关键帧。其他地图称为非活动地图。该系统建立了一个独特的DBoW2关键帧数据库,用于重新定位、回环和地图合并。
TRACKING处理传感器信息,实时计算当前帧相对于活动地图的位姿,减少已匹配的地图特征的重投影误差,还决定当前帧是否成为关键帧。在视觉惯性模式下,在优化中加入惯性残差来估计物体速度和惯性测量单元偏差。当跟踪丢失时,跟踪线程将尝试重新定位所有地图集中的当前帧位姿,恢复跟踪,并在需要时转换换为活动地图。否则活动地图将被存储为非活动地图,从头开始初始化。
LOCAL MAPPING将关键帧和点添加到活动地图,移除多余的,并用视觉或视觉惯性BA优化地图,操作在接近当前帧的关键帧局部窗口中进行。惯性情况下,利用我们新的最大后验概率MAP估计技术,通过建图线程初始化和优化IMU参数。
LOOP and MAP MERGING以关键帧率检测活动地图和整个地图集的公共区域,如果公共区域属于活动地图,则执行回环校正;否则,两个地图将无缝地合并为一个活动地图。在循环校正之后,在一个独立的线程中启动一个完整的BA,以便在不影响实时性能的情况下进一步优化地图。
IV. CAMERA MODEL
我们的目标是通过提取与相机模型相关的所有属性和函数(投影和反投影函数、Jacobian等)来将相机模型从整个SLAM管道中抽象出来。
A. Relocalization
我们采用了最大似然透视n点算法(MLPnP)[76],该算法使用投影光线作为输入,与相机模型完全解耦。只需提供一个从像素到投影光线的反投影函数,就可以使用重定位。
B. Non-rectified Stereo SLAM
校正鱼眼相机将需要严重的图像裁剪,丧失了更快地环境建图和更好地抵抗遮挡的优势。我们的系统不依赖图像校正,将双目视为两个单目相机:1.它们之间有一个连续的相关变换SE(3)2.在观测相同场景的一部分中有一个共同区域。
我们估计一个6自由度的刚体位姿来表示相机,其参考系可以位于其中一个相机或IMU传感器中。
与单目情况一样,在区域中第一次看到的特征通过多视图进行三角化。

V. VISUAL-INERTIAL SLAM

A. Fundamentals
在世界坐标系中的刚体位姿Ti=[Ri,pi]∈SE(3)和速度vi,以及陀螺仪和加速度计的偏差,bgi和ba i,假设按照布朗运动演化。有状态向量:

根据[61]中提出的理论,在连续的视觉帧i和i+1之间测量IMU预积分,并在[62]中的流形上公式化。获得了预积分的旋转、速度和位置测量值,表示为∆Ri,i+1,∆vi,i+1和∆pi,i+1,以及整个测量矢量的信息矩阵∑Ii,i+1。采用[62]中惯性残差rIi,i+1的定义:

还使用在xj位置处的帧i和3D点j之间的重投影误差rij:

∏是相机模型对应的投影函数,uij是在图像i处观察点j,得到信息矩阵∑ij,TCB∈SE(3)表示从IMU到相机(左或右)的刚性变换,由标定得到。⊕是SE(3)群对三维空间元素的变换运算。
视觉惯性SLAM可以作为基于关键帧的最小化问题[39]。给定一系列k+1关键帧及其状态-Sk.={S0,Sk},以及3d点L及其状态X.={x0,xL−1},优化问题可以表述为

(最小化惯性残差+重投影误差)kj是观测3D点j的一系列关键帧。优化可概括为图2a所示的因子图。对于重投影误差,用鲁棒Huber核ρhub来减少伪匹配的影响,而惯性残差不存在未命中关联,所以不需要核函数。优化用于提高追踪和建图线程效率,但需要良好的初始种子来收敛到精确的解。

B. IMU Initialization
为了获得惯性变量的良好初值:速度、重力方向和IMU偏差。提出三个关键见解:1.纯单目主要问题是尺度未知。首先解决仅视觉(vision-only)问题将增强IMU初始化。2.如[77]尺度显式作为为优化变量时收敛更快,而不是使用BA的隐式表示。3.忽略IMU初始化过程中的传感器不确定性会产生很大的不可预测误差[65]。
考虑传感器的不确定性,将IMU初始化描述为一个最大后验概率估计问题,分为三个步骤:
1)仅视觉估计:初始化纯单目SLAM[2],并在2秒内运行,每4Hz插入关键帧。得到一个由k=10相机姿势和数百个点组成的地图,用仅视觉BA进行优化(图2b)。这些位姿转换为刚体参考系,得到轨迹-T0:k=[R,-p]0:k,横线表示按尺度(up-to-scale)变量。
2)仅惯性估计:这一步获得一个优化的惯性估计,在最大后验概率估计的理念上,仅使用关键帧之间的-T0:k和惯性测量。这些惯性变量叠加在仅惯性估计的状态向量中:

式中,s∈R+为仅视觉解的尺度因子;Rwg∈SO(3)为重力方向,用两个角度表示,世界系重力为g=RwggI,其中gI=(0,0,G)TG为重力的大小;b=(ba,bg)∈R6为加速度计和陀螺仪偏差假设在初始化时恒定;-v0:k∈R3是从第一个关键帧到最后一个关键帧的按尺度速度,初始估计从-T0:k开始估计。此时,我们只考虑惯性测量值I0:k.={I0,1,,,Ik−1,k}。因此,最大化的后验分布是:

p(I0:k | Yk)代表似然,p(Yk)代表先验。考虑到测量的独立性,纯惯性地图估计问题可以写成:

取负对数,假设IMU预积分和先验分布为高斯误差,最终得到优化问题:

这种优化,如图2c所示,与等式4的不同之处在于不包括视觉残差,多了先验残差rp来使IMU偏差接近于零,其协方差∑p由IMU的特性给出。
当我们在流形(manifold)中进行优化时,定义一个回缩[62],以便在优化过程中更新重力方向估计:

Exp从so(3)到SO(3)的指数地图。为了保证在优化过程中尺度因子为正,将其更新定义为:

一旦仅惯性估计优化完成,帧的位姿和速度以及3D地图点将按估计的比例缩放,旋转z轴与估计的重力方向对齐。偏差被更新,重复IMU预积分,来减少未来的线性化误差。
3)视觉惯性估计:
表示为图2a,相较于仅惯性步骤,联合视觉惯性估计所有的关键帧有共同的偏差,有相同的先验信息。
我们的很容易将单目惯性初始化扩展到双目惯性,方法是将尺度因子固定为1,即把它从仅惯性优化变量中取出,增强收敛性。
C. Tracking and Mapping
采用[4]中提出的方案。跟踪只优化最后两帧的状态,而地图点保持不变。
对于建图,从方程4中求解全局优化对于大型地图来说是很困难的。我们使用关键帧及其点的滑动窗口作为优化变量,包括共视的关键帧,但保持它们固定。
当慢运动不能提供良好的惯性参数可观性时,初始化可能无法在15秒内收敛到精确解。基于改进的仅惯性优化,提出了一种新的尺度修复技术,包括所有插入的关键帧,但只估计尺度和重力方向的参数(图2d)。此时假设偏差恒定是不正确的。相反,使用估计值估计每一帧,并修复它们。优化每10秒在局部建图线程中执行一次,直到超过100个关键帧或自初始化以来已超过75秒。
D. Robustness to tracking loss
当跟踪少于15个点的地图时,我们的视觉惯性系统进入视觉丢失状态,可以在两个阶段实现鲁棒性:
短期丢失:根据IMU读数估计当前刚体状态,地图点投影到估计的相机位姿中,并在一个大图像窗口中搜索匹配点。匹配的结果被包含到视觉惯性优化中。大多数情况下可以恢复。否则,5秒后,进入下一阶段。
长期丢失:一个新的视觉惯性地图被初始化,并成为活动地图。
VI. MAP MERGING AND LOOP CLOSING
通过将地图点投影到估计的相机位姿中,并在仅几个像素的窗口中搜索匹配项,从而找到帧和活动地图之间的短期和中期数据关联。为了实现长期数据关联的重定位和回环,ORB-SLAM使用了DBoW2词袋位置识别系统[9],[78]。最近实现回环的VO和SLAM系统也采用了这种方法(表1)。
与跟踪不同,位置识别不是从相机位姿的初始猜测开始的。相反,DBoW2用词袋向量建立了一个关键帧数据库,能够根据词袋高效地提供与查询图像最相似的关键帧。只使用第一个候选者,原始DBoW2查询的精确度和召回率在50-80%之间[9]。为了避免假阳性破坏地图,DBoW2用时间和几何一致性检查,达到100%精度和30-40%召回率[9],[78]。关键是,时间一致性检查延迟了位置识别至少3个关键帧。Atlas系统中,我们发现这种延迟和低召回率常常会造成相同或不同地图上的区域重复。
我们提出了一种新的具有改进召回率的位置识别算法,用于长期和多地图数据关联。每当建图线程创建新的关键帧时,启动位置识别,尝试与地图集中已经存在的任何关键帧匹配,如果找到的匹配关键帧属于活动地图,则执行回环。否则,是一个多地图数据关联,需合并活动地图和匹配地图。第二个新颖的方法,一旦新的关键帧和匹配地图之间的相对位姿被估计,定义一个局部窗口,包含匹配的关键帧及其在共视图中的邻域。在窗口中,集中搜索中期数据关联,提高了回环和地图合并的精度。这两个新颖在EuRoC实验中,让ORB-SLAM3比ORB-SLAM2获得了更好的精度。下面解释细节。
A.Place Recognition
为了实现高召回率,对于每一个新的活动关键帧,在地图集中搜寻DBoW2数据库,找出一系列相似关键帧。为了达到100%精确度,每一个候选都经过几何检查,检查在图像窗口中是否有一个ORB关键点的描述子与地图点的ORB描述子匹配,用汉明距离作为阈值判断。如果还有多个候选,检查第二近的匹配的距离率(ratio),位置识别算法如下:
1)DBoW2候选关键帧
我们用活动关键帧Ka来查询地图集DBoW2数据库,检索三个最相似的关键帧,不包括与Ka共视的关键帧。每个作为位置识别匹配的候选Km。
2)局部窗口
每一个Km,定义一个局部窗口,包括Km、它的最佳共视关键帧以及被它们观察到的地图点。DBoW2直接索引提供了Ka中的关键点和局部窗口关键帧之间的一系列假定匹配。对于每一个2D-2D匹配,我们也可以在它们对应的地图点之间进行3D-3D匹配。
3)3D对齐变换
使用RANSAC计算变换Tam,使Km局部窗口中的地图点与Ka的地图点对齐。在纯单目情况,或者单目惯性,当地图还不成熟时,计算Tam∈Sim(3),否则Tam∈SE(3)。这两种情况下,使用Horn算法[80],用三个3D-3D的匹配来找到Tam的每个假设。通过Tam对Ka中的地图点进行变换后,在Ka中的重投影误差如果处于阈值之下,则该假设获得赞成票。票数超过某个阈值,则选择票数较多的假设。
4)引导匹配优化
局部窗口中的所有地图点都用Tam变换,以找到与Ka中的关键点更多的匹配。搜索也会颠倒,在所有关键帧的局部窗口中寻找Ka地图点的匹配。利用找到的所有匹配,采用非线性优化方法对Tam进行优化,目标函数为双向重投影误差,利用Huber函数对伪匹配提供鲁棒性。如果优化后的inliner数超过一个阈值,则使用较小的图像搜索窗口启动引导匹配和非线性优化的第二次迭代。
5)在三个共视关键帧中验证
为了避免假阳性,DBoW2等待位置识别在三个连续的关键帧中触发,延迟或丢失了位置识别。为了验证位置识别,在活动地图部分搜索两个与ka共视的关键帧,与局部窗口中的点匹配的数量超过了一个阈值。如果没有找到,则使用新传入的关键帧进一步验证,而不需要再次请求词袋。验证继续,直到三个关键帧验证Tam,或者两个连续的新关键帧无法验证Tam。
6)重力方向验证
在视觉惯性的情况下,如果活动地图是成熟的,估计Tam∈SE(3)。进一步检查俯仰角和偏航角是否低于阈值,以确定是否接受位置识别假设。
B. Visual Map Merging
当一个成功的位置识别产生多个地图数据关联时,在活动地图Ma中的关键帧Ka和存储在地图集Mm中的不同地图的匹配关键帧km之间,通过对齐变换Tam,启动地图合并操作。在这个过程中,必须特别注意确保Mm中的信息能够被跟踪线程及时重用,以避免地图重复。为此,将Ma地图引入Mm参考。由于Ma可能包含许多元素,合并它们可能需要很长时间,因此合并分为两个步骤。首先,在Ka和Km邻域定义的连接窗口中进行合并,然后通过位姿图优化将修正传播到合并后的其余部分。合并算法的具体步骤是:
1)连接窗口组合。连接窗口包括Ka及其共视关键帧,Km及其共视关键帧以及它们观察到的所有地图点。在将它们包含在连接窗口中之前,属于Ma的关键帧和地图点由Tma变换以使它们与Mm对齐。
2)合并地图。Ma和Mm融合在一起成为新的活动地图。若要删除重复点,将在Mm关键帧中主动搜索匹配Ma点。对于每个匹配,Ma中的点被移除,Mm中不断累积已移除点的所有观测值。共视和本质图[2]通过添加Mm和Ma关键帧相连的边来更新,这些边是由新的中期点关联找到的。
3)连接窗口BA。在连接窗口(图3a)中,执行局部BA优化Ma和Mm中的所有关键帧。为了固定自由度,与Mm中共视的关键帧保持固定。优化完成后,连接窗口区域中包含的所有关键帧都可以用于相机追踪,实现快速准确地Mm地图重用。
4)位姿图优化。在保持连接区域关键帧固定的前提下,利用融合后的整个地图的本质图进行位姿图优化。此优化将修正从连接窗口传播到地图的其余部分。

C. Visual-Inertial Map Merging
与纯视觉情况相似。对步骤1)和3)进行修改:
1)视觉惯性连接窗口组合。如果活动地图是成熟的,在被包含到连接窗口之前,用有效的Tma∈SE(3)变换到地图Ma。如果不成熟,用有效的Tma∈Sim(3)对齐Ma。
3)视觉惯性连接窗口BA。
关键帧ka及其最近时间5个关键帧的位姿、速度和偏差作为优化项。这些变量通过IMU预积分项进行关联。对于地图Mm,我们进行了类似的处理,包括k及其5个时间邻域的姿态、速度和偏差,如图3b所示。对于Mm,包含了紧挨着局部窗口的关键帧,但固定了;对于Ma,包含了相似的关键帧,但其位姿仍是可优化的。所有这些关键帧看到的所有点,以及观察这些点的关键帧位姿也得到优化。所有的关键帧和点通过重投影误差来关联。
D. Loop Closing
回环校正类似于地图合并,但是在位置识别匹配的两个关键帧都属于活动地图的情况下。连接窗口由匹配的关键帧组合而成,重复点被检测和融合,在共视和本质图中创建新的连接。下一步是位姿图优化,将回环校正传播到地图的其余部分。最后一步是全局BA,在考虑回环的中期和长期匹配后找到MAP估计。在视觉惯性情况下,全局BA只在关键帧数目低于阈值的情况下进行,避免巨大的计算开销。
VII. EXPERIMENTAL RESULTS

VIII. CONCLUSIONS

在[2]-[4]的基础上,我们推出了ORB-SLAM3,这是一个最完整的视觉、视觉惯性和多会话SLAM的开源库,配备了单目、立体、RGB-D、针孔和鱼眼摄像头。除了集成库本身,我们的主要贡献是快速准确的IMU初始化技术和多会话地图合并功能,这些功能依赖于一种新的具有改进召回功能的地点识别技术,使ORB-SLAM3非常适合于长期和大规模的SLAM实际应用。我们的实验结果表明,ORB-SLAM3是第一个能够有效利用短期、中期、长期和多地图数据关联的视觉和视觉惯性系统,达到了现有系统无法达到的精度水平。我们的结果还表明,在精确度方面,使用所有这些类型的数据关联的能力压倒了其他选择,例如使用直接方法代替特征,或者对局部BA执行关键帧边缘化,而不是像我们那样假设一组静态关键帧。关于鲁棒性,直接方法在低纹理环境下可能更稳健,但仅限于短期[27]和中期[31]数据关联。另一方面,匹配特征描述子成功地解决了长期和多地图数据关联问题,但在跟踪方面似乎不如使用光度信息的lucaskanade那样健壮。一个有趣的研究方向可能是开发适合于四个数据关联问题的光度技术。我们目前正在探索从人体内窥镜图像构建地图的想法。关于四种不同的传感器配置,毫无疑问,双目惯性SLAM提供了最稳健和精确的解决方案。此外,惯性传感器允许在IMU速率下估计姿态,该速率比帧速率高一个数量级,这是一些用例的一个关键特性。对于双目相机由于体积、成本或处理要求较高而不受欢迎的应用,您可以使用单目惯性,而不会在鲁棒性和准确性方面损失太多。只需记住,在勘探过程中纯粹的旋转不允许估计深度。在低速运动或无侧倾和俯仰旋转的应用中,例如在平坦区域的汽车,IMU传感器很难初始化。在这种情况下,如果可能的话,使用双目SLAM。除此之外,利用CNNs从单个图像进行深度估计的最新进展为可靠和真实的单目SLAM提供了良好的前景[85],至少在CNN训练过的相同类型的环境中是如此。

ORB SLAM3论文大致翻译,手动整理相关推荐

  1. PPO算法OpenAI论文大致翻译

    近年来,涌现出一些用于带有神经网络函数逼近器的强化学习的算法,主要有DQL,"vanilla"策略梯度算法和信任域/自然策略梯度算法.然而,这些算法在广泛性.数据效率和稳定性方面仍 ...

  2. 论文中文翻译——A deep tree-based model for software defect prediction

    本论文相关内容 论文下载地址--Web Of Science 论文中文翻译--A deep tree-based model for software defect prediction 论文阅读笔记 ...

  3. 论文中文翻译——VulDeePecker: A Deep Learning-Based System for Vulnerability Detection

    本论文相关内容 论文下载地址--Engineering Village 论文中文翻译--VulDeePecker: A Deep Learning-Based System for Vulnerabi ...

  4. 英文翻译_科研论文英文翻译时需注意的事项及一些对策

    科研论文的英文翻译是以把握全文精髓为目的,准确简单阐明观点,用精炼的语言介绍文章的论点.论据.过程.实验和结果,尽可能让读者通过阅读标题和摘要大致了解整篇文章所阐述的问题和表达的内容.蓝译编译认为,科 ...

  5. Feature Selective Anchor-Free Module for Single-Shot Object Detection论文阅读翻译 - 2019CVPR

    Feature Selective Anchor-Free Module for Single-Shot Object Detection论文阅读翻译 文章目录 Feature Selective A ...

  6. 英文文献翻译格式整理器

    英文文献翻译格式整理器 一.软件开发灵感及相关说明 本人作为一枚科研小白,在阅读英文文献的时候,仅靠自己菜鸡的英语水平是无法流畅的阅读的,所以大多数情况下是需要借助翻译软件的.我的翻译过程是:Adob ...

  7. 论文中文翻译——Vulnerability Dataset Construction Methods Applied To Vulnerability Detection A Survey

    本论文相关内容 论文下载地址--Web Of Science 论文中文翻译--Vulnerability Dataset Construction Methods Applied To Vulnera ...

  8. FastSpeech2论文中文翻译

    FastSpeech2 论文的翻译,翻译的挺差的,大概是那意思 只翻译了摘要.模型部分和实验部分 摘要: 高级的TTS模型像fastspeech 能够显著更快地合成语音相较于之前的自回归模型,而且质量 ...

  9. 论文中文翻译——Double-Fetch情况如何演变为Double-Fetch漏洞:Linux内核中的双重获取研究

    本论文相关内容 论文下载地址--Web Of Science 论文中文翻译--How Double-Fetch Situations turn into Double-Fetch Vulnerabil ...

最新文章

  1. 290. Word Pattern
  2. SQLite3的提交事务代码
  3. [iOS]应用内支付(内购)的个人开发过程及坑!
  4. 鸿蒙系统怎么换windows,求助~鸿蒙系统windows环境搭建(hpm-cli安装失败)!
  5. Jn建站系统2.0源码 附视频安装教程
  6. 源码分析参考:Queue
  7. AIX安装JDK1.7教程
  8. TS笔记--------Jonathan
  9. ffplay.c函数结构简单分析(画图)
  10. 牛客网暑期ACM多校训练营(第三场): E. Sort String(KMP)
  11. php fsockopen,php fsockopen()有什么用?
  12. ASP.NET页面刷新的几种方法
  13. web前端基础——Less语法
  14. Nginx从入门到入坟(十)- Rewrite功能详解与案例实操
  15. 基于帧间频域分析的视频篡改检测
  16. zkeys阿帕云对接易支付插件,支持zkeys阿帕云最新版(亲测可用)
  17. Windows安装配置Oracle
  18. Ionic4--路由跳转
  19. 如何选择聚合支付平台
  20. 什么是LIDAR(激光雷达),如何标注激光点云数据?

热门文章

  1. ubuntu 18 安装supervisor程序实现进程守护
  2. [附源码]计算机毕业设计springboot剧本杀交流分享平台
  3. 微信小程序历史搜索历史的本地缓存和删除
  4. 本体技术视点 | SocialFi 如何解决 Web3 社交中的声誉问题?
  5. VisMockup10.1安装
  6. 基于java web新生入学报到系统
  7. 【Rust指南】配置加速Cargo下载、更新依赖库|利用随机数编写Rust猜数游戏
  8. PMP挂靠一年多少钱?
  9. 中国艺术孙溟㠭黄檗归来创作作品
  10. Python中的循环