没有合适的资源?快使用搜索试试~ 我知道了~
视觉SLAM算法在AR、地图、定位和寻路中的应用及技术发展的最新研究总结
++阵列15(2022)100222视觉SLAM算法及其在AR、地图、定位和寻路中的应用☆Charalambos Theodoroua,b,*,Vladan Velisavljevica,Vladimir Dyo a,Fredi Nonyelu ba贝德福德大学计算机科学与技术学院,卢顿,LU1 3JU,联合王国bBriteyellow Ltd,Bedford,MK43 0BT,英国A R T I C L EI N FO保留字:AR视觉SLAM同时定位与地图构建(SLAM)A B S T R A C T视觉同时定位与地图构建(vSLAM)算法利用设备摄像机来估计智能体的位置并在未知环境中重建结构。作为增强现实(AR)体验的重要组成部分,vSLAM通过添加基于定位(位置)和环境结构(映射)的虚拟对象来增强现实世界环境。本文从技术和历史的角度,分类和总结了一些最新的视觉SLAM算法提出的研究社区,同时也讨论了他们在增强现实,地图,导航和定位的应用。1. 介绍根据Fuentes-Pacheco等人[1],视觉SLAM是一组SLAM技术,仅使用图像来映射环境并确定观众的位置。与传统SLAM中使用的传感器(如GPS(全球定位系统)或LIDAR [2])相比,相机更实惠,并且能够收集更多有关环境的信息,如颜色,纹理和外观。 此外,现代相机是紧凑的,具有低成本和低功耗。采用vSLAM的最近应用的示例是人形机器人[3]、无人驾驶飞行器和陆地车辆[4]、月球车[5]、自主水下车辆[6]和内窥镜[7]的控制。根据相机类型,SLAM有三种基本类型:单眼、立体和RGB-D。立体SLAM是可以获得特定程度的轨迹分辨率的多相机SLAM。此外,立体SLAM具有更通用的优点,而不是对阳光更敏感并且主要在室内使用的RGB-D SLAM。在过去的二十年中,在开发诸如MonoSLAM [8]、PTAM[9]、PTAM-Dense [10]、DTAM [11]和SLAM [12]等算法方面取得了显著的成功。然而,大多数系统都是针对静止环境开发的,并且它们的鲁棒性在动态环境下仍然是一个问题。由于假设相机是静止场景中唯一的移动对象,这些SLAM系统[13]通常不适用。因此,移动对象将影响系统此外,额外的对象运动引入计算误差,并且由于增加的计算权重而降低轨迹估计的准确性。在这样的环境中,SLAM算法需要处理可能的误差和一定程度的不确定性characteristic在感觉测量。此外,为了在AR(增强现实)体验中将虚拟对象正确地锚定在真实环境中,有必要应用跟踪技术。这意味着动态地确定观看者另一种方法是应用SLAM技术,其目的是精确地创建和更新地图, 以及观察者相对于环境结构的位置。视觉SLAM和AR之间的这种融合是实现这项调查的动机。本研究的目的是进行调查的主要视觉SLAM算法,以及它们在增强现实,地图,定位和寻路的应用。识别了视觉SLAM算法的主要特征,并发现和分析了视觉SLAM的主要AR应用。与对SLAM的一般分析相反,本调查对不同的视觉SLAM算法进行了深入的审查。调查还包括可考虑用于评价的各种数据集和不同类型的评价指标。1996年至1997年的☆这项工作得到了Briteyellow Ltd和Innovation Bridges的支持。* 通讯作者。计算机科学与技术学院,贝德福德大学,卢顿,LU1 3JU,英国。电子邮件地址:Theodorou. study.beds.ac.uk(C. Theodorou)。https://doi.org/10.1016/j.array.2022.100222接收于2022年3月15日;接受于2022年2022年8月8日网上发售2590-0056/© 2022作者。爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表阵列期刊首页:www.sciencedirect.com/journal/arrayC. Theodorou等人阵列15(2022)1002222该领域倾向于只描述一种SLAM算法,并且其中一些算法相当陈旧。然而,为了解决这个问题,一个完整的调查描述了开创性的和最近的SLAM算法即使一些调查包括不同SLAM算法的描述(例如,参考文献 [15-17 ]),SLAM算法的扩展概述,包括最近开发的那些,包括在本调查中,一组可用于评估多种SLAM算法的数据集和一组评估指标表1。此外,还查明了评价指标的局限性,今后将进一步探讨通过本文,我们希望帮助读者更好地了解不同的SLAM算法以及它们如何应用于不同的领域。以下是对本次调查如何组织的描述。第二节介绍了SLAM的应用。在第三节中,讨论了各种SLAM算法。在第四节中,介绍了不同SLAM功能的表。第V节包括对可用于实验SLAM算法的各种数据集的讨论。第六节包括两个最常用的评价指标的说明。第七节主要集中在SLAM的讨论,第八节结束了这次调查。2. Visual SLAM应用程序SLAM算法利用来自不同传感器的数据。Visual SLAM是一种仅使用视觉传感器的SLAM技术,其可能需要单目RGB相机[18],立体相机[19],全向相机[ 19 ]。定向摄像头(在所有360度范围内同时捕获图像[25]第10段。视觉SLAM系统通常通过连续的相机帧对设定点的位置进行三角测量,并且同时使用该信息来估计相机的姿态。从本质上讲,这些系统的设计是为了绘制与其位置有关的周围环境,以方便导航。这可以通过单个3D视觉相机来实现,而不像其他形式的SLAM。只要有足够的点跟踪通过每个帧,传感器的方向和物理环境的结构都可以快速理解。所有视觉SLAM系统的目标都是通过称为光束法平差的算法调整来最小化重投影误差或投影点与实际点之间的差异。由于视觉SLAM系统需要实时操作,位置和地图数据被捆绑,单独调整,但同时提供更快的处理速度,然后合并在一起。机器人还可以配备摄像头作为另一种常见的传感器。Engle等人提出了一种用于大规模半密集地图的基于相机的方法,称为LSD-SLAM[26],其不需要调整特征束。ORBSLAM [27]是Use Mur-Artal等人提出的另一种视觉SLAM方法。它允许将视觉SLAM问题分解为三个子任务:跟踪,映射和优化。由于相机这可能会导致本地化过程中的错误。激光测距仪和单目相机的组合可能是有用的,因为这两个传感器最常用于机器人。尽管这样的算法提高了特征提取的性能,但是它们限于特定的绿色方向)[20]或RGB-D相机(除了RGB图像之外还捕获深度像素信息)[21]。接下来,在本节中,更深入地描述了vSLAM的三个主要类别,即定位、映射和寻路,以及适用于每个类别的一些相关算法。2.1. 定位定位系统帮助用户识别他们在环境中的位置和方向。可以使用各种方法在室内[22]和室外[23]进行定位。有一些传统的方法不涉及技术,例如使用通过引导暴露于环境或听觉指令构建的心理地图,以及触觉地图。机器人必须能够了解它们在环境中的当前位置,以便安全和自主地完成任务。这种类型的问题被定义为机器人知道它在环境中的位置的要求。激光测距仪[24]是用于开发SLAM算法的最流行的传感器之一。针对大规模室内环境下无人地面车辆(UGV)的定位问题,提出了一种扫描匹配方法和多分辨率似然映射算法。因此,在匹配过程中,搜索空间可以被减小。使用激光测距仪,机器人的位置可以根据测距仪的精度相当准确地确定。虽然激光测距仪能够在大的和高度不规则的环境中确定姿态,其中围绕环境或走廊的墙壁没有变化。在一个简单的几何环境中,比如一个有树和圆圈的公园,机器人很容易迷路。近年来,对视觉SLAM的兴趣显著表1综述讨论SLAM算法的论文。参考文献年算法流程图数据集度量[第十五条]2015没有没有没有[16个]2017没有没有没有[17个]2020没有没有没有我们的工作2022是的是的是的SLAM算法。2.2. 映射视觉SLAM映射是通过使用相机来获取关于环境的数据,然后结合计算机视觉和里程计算法来映射环境来执行的。这使得机器人能够独立导航并改善定位。大多数机器人都有轮子,所以测量它们的距离很容易。惯性测量单元(IMU)[28]已经被添加到一些机器人中,用于测量它们的身体运动。尽管如此,仅仅依靠里程计来估计位置是没有帮助的。然而,由于噪声产生的累积误差,仅依靠里程计来计算自身位置不够准确。当它需要几个回合的误差积累,位置变得不确定。循环闭合在这里起着关键作用。考虑到建筑物和树木是静态的,应该有一个循环闭合[29]在完全相同的地方,因为它已经在那里(循环检测)[30]。然后可以针对这些累积的噪声校正和调整生成的映射[31]。vSLAM概念是任何机器人应用的基础机器人必须穿越新的环境并生成地图。该系统不仅限于机器人,还可以用于智能手机及其相机。vSLAM将是一些高级AR用例所需的管道的一个方面,例如,虚拟世界需要准确地映射到真实环境中。2.3. 寻路寻路系统必须能够规划并向用户传达有效的路径本地化用户和规划到用户期望的目的地的路径是齐头并进的。 一旦用户已经被定位,到目的地的最佳路径就可以被确定并且作为可访问的指令被传送给用户。总是存在用户可能由于许多原因而偏离推荐路径的可能性,并且智能导航辅助将能够基于他/她的新位置来动态地重新规划到用户的目的地的路径。在保持简单有效的同时,方向必须包括用户在导航过程中可以感知的基于状态滤波器的SLAM算法,诸如MonoSLAM和姿态图SLAM,诸如C. Theodorou等人阵列15(2022)1002223++因为PTAM、DTAM和LSD-SLAM可用于寻路。在可穿戴。RNA [32]今天,有多种SLAM算法被实现,例如Saez提出的用于6-DOF姿态估计(PE)的算法。[33]通过使用RNA相机。视觉里程计(VO)算法[34]和基于熵的成本函数用于确定相机的自运动(两个相机视图之间的姿态变化)。针对基于立体视觉的可穿戴RNA位姿估计问题,提出了一种度量拓扑SLAM方法(SLAM)。当从立体相机图像中提取特征并逐步跟踪时,该区域的局部拓扑图和地图上的区域之间的全局拓扑关系被更新。立体相机不能提供关于场景的完整深度信息,尽管这些RNA不能检测物体。可穿戴RNA[35]依赖于RGB相机深度数据,因为它能够在特征稀疏的环境中提供更可靠的深度数据。为了估计摄像机的姿态,使用了一种由于PL-SLAM[37],可以实时估计相机姿态,它将跟踪和映射任务分离到两个单独的线程中,并在双核计算机上处理它们。最近的SLAM方法对齐整个图像,而不是匹配特征。然而,这些类型的方法通常不如用于估计姿态的基于特征的SLAM方法准确。3. SLAM算法一般来说,Visual SLAM算法有三个基本模块:初始化[38],跟踪和映射[39]。初始化包括定义要映射的环境的全局坐标系,以及其部分元素的重建,其将用作跟踪和映射的开始的参考。这一步对于一些视觉SLAM应用来说可能是相当具有挑战性的。本文的下一部分分为三类:基于单眼的、立体聚焦的以及单眼和立体聚焦的vSLAM算法。详细地,每种算法都描述了它的优点和缺点。3.1. 基于单眼单目SLAM是一种类型的SLAM,其专门依赖于由移动相机捕获的单目图像序列以便执行映射、跟踪和寻路。单目图像序列通常是一组彼此相似的图像PTAM。手持相机可以在AR环境中通过并行跟踪和映射(PTAM)在并行线程中,跟踪和映射是分开处理的。第一个线程尝试跟踪手持设备的不稳定运动,而另一方面,第二种方法基于先前的帧生成点特征的3D地图。制作了一张详细的地图,上面有数千个地标。 在高帧速率下清晰可见,这种方法在准确性和鲁棒性方面超越了基于模型的系统。在映射过程中,有两个不同的阶段[9]。第一阶段涉及用立体技术创建初始地图。在跟踪系统将关键帧(地图点)添加到地图后,地图绘制线程会细化并扩展图11。二、由手持摄像机捕获的视频图像用于保持摄像机相对于所构建的地图的位置的实时估计。在估计视频帧之后,可以在其上增强图形。为了计算最终姿态,系统在每帧中使用相同的过程。运动模型用于在相机每次检测到新帧时从新帧生成姿态估计。帧的先前姿态的估计基于图像中的粗尺度特征的检测来计算最终姿态估计。根据这些粗略匹配,更新相机姿态,并估计整体姿态PTAM是有利的,因为它将跟踪和映射分成两个单独的任务并并行处理它们,从而允许通常与实时操作无关的批优化技术。该地图仅用作跟踪摄像机的工具,这是PTAM的限制。虚拟实体应该能够与地图的几何图形进行交互,所以它不应该是静态的。PTAM也缺乏自动遮挡能力,这意味着它不能在没有外界帮助的情况下跟踪对象.SLAM的另一个局限性是它不是设计用于闭合大环路的。M-估计是一类广义极值估计,其中目标函数是样本平均值。非线性最小二乘法和极大似然估计都是M-估计的特例。跟踪器的M估计器不考虑特征图的不确定性,但这不影响AR应用。MonoSLAM。移动机器人中第一个成功的SLAM算法是单目SLAM(MonoSLAM)。通过在未知环境中沿着单目相机的轨迹快速移动,可以将自然地标重建为3D地图,并且可以使用稀疏但持久的点来绘制城市环境。在这种方法中,自然地标的地图是在概率框架中从稀疏但持久的数据集在线创建的。MonoSLAM的一个基本方面是基于特征的地图,它是相机 图图3显示了E X如何趋向卡尔曼。过滤器在系统启动时持续更新地图,并持续到操作完成。摄像机的运动和Fig. 1. Visual SLAM算法的分类。C. Theodorou等人阵列15(2022)1002224图二. PTAM系统架构。特征观测导致更新的概率状态估计。当观察到新的特征时,添加新的状态,并且如果需要,也可以删除特征。给定的图像测量和相机位置不能直接用于反转特征测量模型以确定新特征的位置,因为特征深度是未知的。为了确定一个特征的深度,需要从不同的视点进行几次测量,以及相机的运动。与其尝试在多个帧中跟踪因此,2D跟踪将是毫无价值的,因为跟踪移动的相机是非常困难的。此外,在视角较窄的相机中,功能的初始化必须非常快地完成,以防止它们被覆盖。作为替代方案,在识别和测量新特征之后,应沿着地图上的某条线绘制初始3D线。这条线一直延伸到无穷远沿着特征观察的方向,在摄像机的估计位置处开始,并且在参数中具有高斯不确定性。用相机捕获的图像与计算机图形相结合,以生成增强现实中的合成场景。为了产生令人信服的效果,图形必须看起来好像它们被锚定到正在观察的3D场景。为了实现这一点,需要准确理解相机的运动。然后,对象的位置可以被馈送到标准的3D图形引擎中,然后正确地渲染图像。ORB-SLAM。ORB-SLAM是一种基于功能的实时SLAM系统,可在各种环境中的室外和室内工作。作为鲁棒系统的结果,可以容忍运动杂波,可以关闭基线回路并重新定位回路,并且系统可以是全自动的。ORB-SLAM同时在三个线程上运行:跟踪、本地映射和循环闭合。对于每一帧,跟踪定位相机并确定何时C. Theodorou等人阵列15(2022)1002225图三. MonoSLAM系统架构。应 该 插 入 新 的 关 键 帧 。 为 了 优 化 姿 态 , 使 用 了 仅 运动 束 调 整(BA),以及与前一帧的初始特征匹配。在跟踪丢失的情况下(例如,由于遮挡或突然移动),使用地点识别模块全局由系统维护的关键帧的共视图用于基于相机姿态和特征匹配的第一估计来检索局部可见图在找到所有局部映射点之后,使用重投影来找到匹配,并且再次执行相机姿态优化最后但同样重要的是,跟踪线程确定是否需要添加关键帧。通过处理新的关键帧并执行本地BA,本地映射-Ping能够有效地重建周围环境。通过为不匹配的ORB找到新的对应,在共视图中对新的点进行三角剖分。点剔除策略在创建点之后的某个时间基于跟踪的结果应用。这确保了只保留高质量的点。此外,冗余的关键帧通过局部映射剔除。重要的是要记住,不属于模型的像素可能会对跟踪质量产生负面影响。超过一定阈值的光度误差必须排除在分析之外。随着最小二乘法的收敛,该阈值随着每次迭代而降低。因此,该方案使得在密集跟踪的同时观察未建模对象成为可能。DTAM。密集跟踪和映射(DTAM)是一种实时跟踪和重建方法,它不依赖于特征提取,而是依赖于密集的piX el-by-piX el跟踪。当一个大型RGB手持相机飞过静态场景时,创建了顶点。使用该算法基于关键帧生成详细的纹理深度图。为了创建深度图,帧束被密集地重建并且具有sub-piX el分辨率。当估计实时摄像机的姿态时,可以确定什么运动参数产生与实时图像匹配的最佳合成视点。两个阶段都涉及细化现场相机构成。 上在第二种情况下,我们根据模型估计帧间旋转,然后在第二种情况下使用6DOF全姿态细化来细化模型。在这两种情况下,卢卡斯Kanadestyle非线性最小二乘算法被用来最小化作为测量光度成本函数迭代。为了达到全局最小值,一旦系统最初被放置在凸盆内,就必须找到真正的解。作为最后一步,我们将通过使用2的幂图像金字塔来最大化效率LSD-SLAM。在大规模直接单眼SLAM(LSD-SLAM)中,存在三个关键组件:跟踪、深度图估计和图优化。无论何时捕获新的相机图像,跟踪组件都会自动跟踪它们。通过使用前一帧的姿态作为初始化,它确定基于当前关键帧的刚体的位置。基于跟踪的帧,深度图估计组件细化或替换当前关键帧。通过随时间推移在像素与许多较小基线之间的相对比较 每当相机移动到离当前关键帧太远时,附近关键帧的点就会投影到新的关键帧中。 四、通常,跟踪参考替换关键帧的关键帧将不会被进一步细化,因为它们的深度图被映射优化组件并入全局图中。为了检测环路闭合和尺度漂移,基于尺度感知的直接图像对齐估计相似性变换。姿态图在地图中被示出为一系列关键帧,在每个关键帧之后示出相机图像,显示逆深度图,并且显示逆深度的方差。只有包含具有足够强度梯度的所有区域的像素像素才能用于计算 深度图和方差,因此仅在半密集场景上。通过相似性变换确定对齐度量以及关键帧PMDS-SLAM。概率网格增强语义SLAM(PMDS-SLAM)[40]将像素划分为网格,并整合来自历史帧的运动概率信息。概率将传播到新的框架网格。通过使用运动检查,C. Theodorou等人阵列15(2022)1002226见图4。 LSD-SLAM系统架构。动态目标的概率可以在新的帧中更新,减小其对跟踪的影响。该网格概率被进一步用于移除高度可能的动态特征点。在PMDS-SLAM期间,跟踪和捕获图像,并且使用Mask-RCNN分割技术提取每个像素的语义信息。然后使用用于将当前帧分割成超点网格的超点分割技术。初始网格概率从语义先验信息生成,然后通过历史传播到当前时间。由于当前帧包含存在运动的位置,因此它计算这些位置处的超点网格点的运动状态。然后使用贝叶斯概率公式更新这些网格。使用由跟踪线程基于网格概率生成的动态区域掩模,在结果中不能观察到真正的运动特征仅使用匹配彼此图五、在PMDS-SLAM中,图像细节被细分,并且所有的目标都被分割。在场景中使用超点分割来分割,而不是深度学习的语义分割。为了实现分割效果,它在RGB输入图像上随机散布叠加点,并根据需要迭代扩展叠加点的范围。在这种情况下,目标不是单独分离的,而是被细分的。本文采用一种快速实现方法[14],利用SLIC [13]将图像分割成超像素。该方法可以使语义分割网络以更高的精度分割出无法识别的目标,并更精确地定位运动特征点区域,消除由于部分关节运动而导致的目标的整个轮廓特征点。与ORB-SLAM 2相比,PMDS-SLAM可以显著地提高低动态序列超过27.5%。对于具有高动态范围的场景,可以实现90%以上的改进。作为PMDS-SLAM的结果,动态对象被消除干扰,从而减少姿态误差。VPS-SLAM。在视觉平面语义SLAM(VPS-SLAM)[41]的世界中,开发了一个轻量级和实时的框架。作为该方法的一部分,视觉/视觉惯性里程计(VO/VIO)被施加到表示来自语义对象的平面表面的几何数据。使用平面表面来估计所选语义对象的形状和大小允许度量的快速、高度准确的改进。利用几种最先进的VO/VIO算法和最新的对象检测器的基于图形的方法可以估计机器人的这种方法不需要对象可以使用任何基于对象的检测器来检测VPS-SLAM中的语义对象。3.2. 基于立体声基于立体的vSLAM依赖于特征点来估计相机轨迹并构建环境的地图。特征点通常是来自环境中所有边的点。这种算法的性能受到影响,在低纹理的环境中,有时很难找到足够数量的可靠的点特征。DS-PTAM。基于立体视觉的SLAM方法是分布式立体并行跟踪和映射(DS-PTAM)。它的目的是建立一个环境地图,机器人可以在其中实时操作,同时获得准确的位置估计。通过将跟踪和映射任务划分为两个独立的执行线程并并行执行,S-PTAM实现了很好的性能C. Theodorou等人阵列15(2022)1002227图五. PMDS-SLAM系统架构。见图6。 VPS-SLAM系统架构。C. Theodorou等人阵列15(2022)1002228与其他现有的SLAM方法相比。S-PTAM假设立体相机位于世界坐标的原点,并且在过程开始时然后使用三角测量过程使用从左帧和右帧提取的特征来初始化地图。地图上的点称为三角测量。基于当前地图,下一个立体帧将基于相机的当前姿态来定位。基于先前的姿态,衰减速度模型用于确定相机的初始姿态。通过在三维空间中处理每个图像,然后在平面上绘制每个点,我们通过将每个描述符与从中提取的特征进行比较来调整此估计。在此过程中,从立体相机在空间中的观察点获得对应关系。这些对应关系被称为2D-3D匹配或约束。另外,来自世界各地的未知区域的立体帧被选择为包括在地图中,这向地图添加了约束和新点(图7)。这些帧称为关键帧。在沿着其路径移动之后,它将获得将使用所描述的方法来处理的新的立体图像Tracker模块负责此功能。第二个名为Mapper的执行线程将与Tracker同时运行,Tracker将调整相机位置和点位置,即,调整地图。束调整用于这些细化。此外,该线程还增加了关键帧和地图点之间的约束。此外,被认为是不可靠的或虚假的映射点和测量都被移除。DOC-SLAM。动态对象剔除SLAM(DOC-SLAM)[42]系统是一种立体SLAM,能够通过去除实际移动对象在高度动态的环境中实现良好的性能。通过将来自全景分割的语义信息与光流点相结合,DOC-SLAM可以检测潜在的运动对象。为了实现动态对象剔除,移动一致性检查模块确定并去除运动对象中的特征点。该方法利用一种直接估计摄像机运动轨迹的方法,减少了特征提取和跟踪的时间为了去除运动中的物体,我提出了一个运动一致性检查模块,这是一个替代基于特征的方法,它通过重新投影误差测量匹配点。在 图8,静态点提取之后是动态点剔除以提取关键点。VINS-Fusion(stereo)是DOC-SLAM定位模块的基础在静态场景中,VINS融合通过使用基于优化的状态估计来实现精确的自定位。见图7。 DS-PTAM系统结构。C. Theodorou等人阵列15(2022)10022293.3. 基于单目和立体见图8。 DOC-SLAM系统架构。更新的关键帧。基于应用于它们的参考关键帧的校正,未更新的点在图1中被变换。第九章基于单目和立体的vSLAM算法可以通过使用图像序列或仅使用特征点来执行映射、跟踪和寻路。ORB-SLAM 2. ORB-SLAM 2系统[43]是一个用于单眼,立体和RGB-D相机的集成SLAM系统,提供地图重用,循环关闭和重新定位功能。该系统通过在不同的环境中使用标准CPU来工作,从家庭内的小型手持设备到工厂中飞行的无人机和在城市街道上行驶的汽车。捆绑调整与度量尺度观测相结合,允许在后端进行准确的轨迹估计。对于定位,系统提供了一种轻量级模式,该模式利用视觉里程计来跟踪未映射的区域,并将这些轨迹与映射点匹配,以确保零漂移。在ORB-SLAM 2期间,应用完整的光束平差(BA)优化以获得最优解。由于优化需要大量资源,因此在单独的线程中执行,从而允许系统在执行优化时创建映射并识别循环。因此,将光束法平差输出与现有地图合并具有挑战性。在优化过程中,可能会出现新的循环,导致优化中止并关闭循环,再次触发BA优化过程。在完成完整BA时,关键帧的更新子集应当被合并,并且在优化过程期间插入的所有点应当被完整BA优化。通过生成树,校正的关键帧被传播到非只要环境条件在长期内没有显著变化,定位模式就可以用于实现轻量级的长期定位。如有必要,跟踪过程会在此模式下连续重新定位相机,而不会停用本地映射或循环闭合线程。作为该模式的一部分,使用视觉里程匹配来映射点。在视觉里程计中,在与前一帧中生成的3D点相同的位置处的当前帧的每个点处创建的3D点与当前帧中的ORB匹配。定位对于尚未映射的区域是鲁棒的,但漂移可能会累积。通过匹配地图点,我们确保现有地图始终保持本地化。DynaSLAM。使用DynaSLAM将动态对象检测和背景修复功能添加到ORB-SLAM 2中。无论是单目、立体还是RGB-D,DynaSLAM都能在动态场景中正常工作。该系统能够使用深度学习或多视图几何来检测移动对象。场景的静态贴图可以修补被动态对象遮挡的帧背景在分割潜在的动态内容之后,通过分析图像的静态部分来跟踪相机的姿态。由于高梯度区域往往出现在分段轮廓中,因此显著特征往往会突出。此类等高线区域不具有考虑的特征。这是ORB-SLAM 2跟踪的一个更简单、更轻便的版本在图10中,该算法包括将地图特征投影到图像帧中,验证图像的静态区域内的对应关系,460,以及C. Theodorou等人阵列15(2022)10022210见图9。 ORB-SLAM 2系统架构。通过最小化重新投影的误差来优化相机姿态对于每一个被移除的动态对象,背景修复被用来通过从先前视图中获取信息并在被遮挡的背景上进行绘画来重建逼真的图像。在已经创建地图之后,合成帧可以用于重新定位和跟踪相机,以及用于诸如虚拟和增强现实的应用465最后,DynaSLAM的唯一限制是它在具有动态对象的场景中不太准确。ORB-SLAM 3. 使用针孔和鱼眼镜头模型,ORB-SLAM 3[44]是第一个可以执行视觉,视觉惯性和多地图SLAM的系统。它是第一个系统,依靠最大后验(MAP)的估计,在惯性测量单元的初始化,导致两到十倍的精度相比,其他approaches在小型和大型,室内和室外环境。一种新的映射方法使ORB-SLAM 3能够在视觉数据不佳的情况下生存下来,因为当视觉数据由于某种原因变得不可用时,它会继续更新地图,同时当新数据变得可用时,它会无缝地结合以前的地图。与传统的里程计系统相比,ORB-SLAM 3保留了来自每个阶段的同等可见帧的所有先前处理的关键帧信息,即使它们在时间上或从先前的会话中相隔很远,也可以提高整体准确性。传感器数据由跟踪线程处理,跟踪线程实时计算当前帧相对于当前地图的位置。具有匹配特征的特征投影可以以最小的误差进行。此外,它还确定是否应将关键帧应用于当前帧。视觉惯性模式通过在优化期间包括来自惯性传感器的残差来估计主体速度和IMU偏差。丢失跟踪的跟踪线程尝试在所有Atlas地图中重新定位当前帧[ 44 ]。 如果已经重新定位,跟踪将恢复,并且活动地图将被切换。如果活动映射在一段时间后未初始化,则它将变为非活动映射并存储为非活动映射,直到可以从头开始重新初始化为止4. 比较诸如MonoSLAM、PTAM、PMDS-SLAM、LSD-SLAM和ORB-SLAM之类的单眼vSLAM算法缺乏良好执行的能力, 在大型、拥挤的室内环境中快速运行。这是由于各种原因。例如,由于MonoSLAM的确定性性质,由于与许多特征相关联的相对简单的纹理图案(例如,白色角落上的黑色),难以估计每个特征位置处的精确法向向量,对于这些特征,完全翘曲估计是不可能的此外,必须改进算法以处理大型室内和室外环境。此外,ORB-SLAM另一方面,基于立体声的vSLAM算法(诸如DS-PTAM)、跟踪器配置和地图配置倾向于更高的计算成本并且花费更长的时间来执行。由于地图更新非常复杂,发送和接收它们非常复杂。DS-PTAM还有另一个限制,跟踪估计较慢,因为配置在未优化的地图上工作得更好。基于单目和立体的vSLAM算法(诸如ORB-SLAM 2),其优化过程需要大量资源,并且将光束法平差输出与现有地图合并是具有挑战性的。此外,如果出现新的循环,则停止优化,关闭循环,并且重新开始BA优化。基于单眼和立体的vSLAM算法都使用束调整,其中一些使用局部束调整。在基于特征的单目SLAM中,光束法平差起着重要的作用.作为6DOF相机轨迹和3D点云估计的一部分,光束法平差用于基于输入特征轨迹来估计3D地图(3D点云)。然而,使用捆绑调整的SLAM系统遭受两个主要弱点。首先,需要仔细初始化光束法平差,这就要求尽可能准确地估计地图并随时间推移进行维护,从而使整个算法变得复杂。第二个挑战将出现在C. Theodorou等人阵列15(2022)10022211见图10。 DynaSLAM系统架构。当SLAM算法难以估计3D结构(这需要适当的基线)时,在慢运动或旋转的时间段内。局部光束法平差(LBA)是一种估计由校准相机拍摄的图像序列的几何的方法。这种方法的优点是降低了计算复杂度,允许实时处理,精度与标准(全局)束相当。调整。ORB-SLAM 3是一种基于单眼和立体的vSLAM算法,性能优于其他任何算法。它是第一个可以执行视觉,视觉惯性和多地图SLAM的系统。此外,它是第一个在惯性测量单元的初始化期间依赖于最大后验(MAP)估计的系统,与其他方法相比,在小型和小型测量系统中实现了两到十倍的精度。C. Theodorou等人阵列15(2022)10022212(∑=×。)的。)∑1():=(,)1:n1:n==大型、室内和室外环境。5. SLAM算法表用这种方法得到:m n -/Delta。平移分量的总时间指数、均方根误差(RMSE)计算如下:表2示出了用于SLAM的SLAM算法的一般描述。不同的因素。该算法的目的可以是一般用途,AR或机器人。相机代表了相机可以是什么RMSE(E1:n,Δ):=1mmi=112反式(Ei)苯并咪唑2(二)用于每个算法,而环境显示每个算法在哪个环境中工作。最后,表2显示了每个算法的分辨率及其估计。6. 数据集本节将讨论可用于测试SLAM算法的开源数据集。在本节中,讨论了最常用的数据集,包括KITTI数据集、EuRoc数据集和TUM RGB-D数据集。KITTI数据集。卡尔斯鲁厄理工学院和丰田技术研究所(KITTI)[45]的数据集已被用于移动机器人和自动驾驶研究。各种传感器技术被用来记录数小时的交通场景,包括高分辨率RGB、灰度立体相机和3D激光扫描仪。虽然非常受欢迎,但数据集不包含足够的基础事实以允许语义分割。使用KITTI数据集中的3D边界框对总共7481幅训练图像进行了注释。EuRoC数据集。欧洲RoC MAV [46]是由微型飞行器(MAV)收集的视觉惯性数据集。同步IMU测量, 以及运动和结构地面实况都存在于数据集中。视觉惯性定位算法可以设计和评估的数据集。TUM RGB-D数据集。TUM RGB-D [47]是一个包含图像的数据集,这些图像包含Microsoft Kinect传感器沿着其地面真实轨迹收集的颜色和深度信息。以全帧速率(30 Hz)和传感器分辨率(640 - 480)进行记录。地面实况轨迹信息是从八个高速跟踪摄像机(100赫兹)收集的,使用高精度运动捕捉。7. 评估指标相对位姿误差(RPE)。基于确定的时间间隔Δ,相对姿态误差是轨迹的局部精度的度量。因此,相对姿态误差指示轨迹的漂移,这对于评估视觉里程计系统特别相关。根据该定义,时间步长i处的相对姿态误差为:Ei:=Qie-1Qi+Δ-1P-i1Pi+Δ(1)沿着n个相机姿态的序列的相对姿态误差为表2超级算法的 平移 组件 的 的 相对 构成 误差我是表示为transs(Ei)。在某些情况下,均方根误差比平均误差更可取,因为离群值受影响较小。也可以计算中位数而不是平均值,这使得离群值的影响较小。此外,可以评估旋转误差。然而,在大多数情况下,平移误差足以进行比较(因为旋转误差在相机移动时被相机平移)。对于试图匹配连续帧的系统,有必要结合时间参数Δ=1,其指示每帧RMSE(E1:n)的漂移。当在系统中使用多个先前帧时,较大的/Delta分布可能是合适的。例如,Δ20给出了以20 Hz记录的序列的每秒漂移。比较起点和终点的一种常用(但不太好)方法是设置Δn.由于该度量对朝向轨迹末端的旋转误差的惩罚更大[48,49],因此它具有误导性。为了评估SLAM系统,对所有时间间隔Δ进行平均是有意义的,例如,计算nRMSE EΔ(3)nΔ=1该表达式在轨迹长度方面具有二次计算复杂度因此,有人提出[46],它可以通过从固定数量的位置组成一组相对姿态样本来近似绝对弹道误差(ATE)。对于vSLAM系统,估计轨迹与地面实况轨迹之间的绝对距离是可用于评估估计轨迹的全局一致性的另一重要度量。由于这两个轨迹可以在任何坐标系中指定,因此必须首先将它们对齐。利用Horn方法[50],可以获得刚体变换S,其使用最小二乘解将估计轨迹Pi:n映射到地面真实轨迹Q1:n作为该变换的结果,绝对轨迹误差可以计算如下:Fi=Q-i1SPi( 4)对于平移分量,有人提出[47]计算每个分量在所有时间索引上的均方根误差,例如算法目的摄像机环境分辨率估计MonoSLAM通用单目室内低EKFPTAM AR单目室内低BA DS-PTAM机器人立体声室内/室外低-高BA PTAM-DENSE机器人单目室内低BAORB-SLAM普通单目室内/室外低-高局部-BAORB-SLAM 2普通单目室内/室外低-高局部-BAPL-SLAM普通单目室内低-高BADTAM普通单目室内低局部-BALSD-SLAM普通单目室内/室外低-高PG SLAM++普通景深室内低局部-BADynaSLAM普通单目/立体室内/室外低高BADOC-SLAM机器人立体声室内/室外低-高局部BAPMDS-SLAM机器人单目室内/室外低-高全BA VPS-SLAM通用单目室内/室外低-高局部BAORB-SLAM 3通用单目室内/室外高局部BA)C. Theodorou等人阵列15(2022)10022213(∑++RMSE(F1:n):=1Nni=112反式(Fi)反式2(五)竞合利益作者声明,他们没有已知的竞争性金融通过在所有可能的时间间隔上平均数据,RPE还可以用于评估轨迹的总体误差。RPE考虑平移和旋转误差,而ATE仅考虑平移误差。因此,RPE度量提供了一种将旋转和平移误差组合到单个度量中的优雅方式。然而,ATE通常也间接地检测旋转误差,因为它们在错误的平移中出现7.1. 评价指标今天,许多研究人员仍然使用较旧的技术和算法来评估他们的SLAM算法的准确性。这些评估方法有许多局限性,即不适用于所有算法,特别是最近的算法,并且如果环境很大且充满障碍物,则不总是有效。这些限制带来了探索新方法的动力,这些方法可能用于准确评估SLAM算法。8. 讨论AR系统展示了视觉SLAM算法在处理配准问题上的巨大潜力。环境的映射使得用户能够根据他们的观察点将虚拟对象包括在他们的视图中,同时通过利用传感器设备的姿态的跟踪来解决虚拟元素被真实元素遮挡的问题。re620检索的结果显示了使用传统(单眼)器械作为传感器的趋势在所描述的算法中,ORB-SLAM可以被认为是使用单个相机作为传感器的那些算法中的最新技术。虽然PL-SLAM Monocular非常强大,尤其是在纹理较差的环境中,但这一结果是以牺牲高计算能力为代价的。这些算法的立体版本ORB-SLAM 2和PL-SLAM Ste- reo分别显示出类似的结果,尽管立体技术具有固有的优点,例如更容易缩放和地图初始化。在基于深度传感器(与RGB相机相关联或不相关联)的算法中,一些呈现出有希望的结果,因为对环境光不变的行为是这些传感器的重要特性。然而,深度传感器在设备中并不像RGB相机那样常见,并且由
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功