目录
摘要
近年来,基于视觉的传感器在SLAM系统中显示出显著的性能、精度和效率提升。在这方面,视觉SLAM(VSLAM)方法是指使用相机进行姿态估计和地图生成的SLAM方法。许多研究工作表明,VSLAM优于传统方法,传统方法仅依赖于特定传感器,例如激光雷达,即使成本较低。VSLAM利用不同的摄像机类型(例如单目、双目和RGB-D),在不同的数据集(例如KITTI、TUM RGB-D和EuRoC)和不同的环境(例如,室内和室外)中进行测试,并采用了多种算法和方法论,以更好地解析环境。上述变化使这一主题受到研究人员的广泛关注,并产出了许多经典VSLAM算法。在这方面,论文调查的主要目的是介绍VSLAM系统的最新进展,并讨论现有的挑战和未来趋势。论文对在VSLAM领域发表的45篇有影响力的论文进行了深入的调查,并根据不同的特点对这些方法进行了分类,包括novelty domain、目标、采用的算法和语义水平。最后论文讨论了当前的趋势和未来的方向,有助于研究人员进行研究。
总结来说,图1显示了标准VSLAM方法的整体架构。系统的输入可以与其他传感器数据集成以提供更多信息,例如惯性测量单元(IMU)和激光雷达,而不是只有视觉数据。此外,对于VSLAM 范式中使用的直接或间接方法,视觉特征处理模块的功能可能会被更改或忽略。例如,“特征处理”阶段仅用于间接方法。另一个因素是利用一些特定模块,如回环检测和光束法平差,以改进执行。
视觉SLAM算法的发展
VSLAM系统在过去的几年中已经成熟,一些框架在这个开发过程中发挥了重要作用。图2展示了视觉SLAM发展过程中的里程碑算法。
首篇实时单目VSLAM于2007年由Davison提出,名为Mono SLAM的框架[17]。他们的间接框架可以使用扩展卡尔曼滤波(EKF)算法估计现实世界中的相机运动和3D元素[18]。尽管缺乏全局优化和回环检测模块,Mono SLAM开始在VSLAM域中发挥主要作用。然而用这种方法重建的地图只包括地标,没有提供关于该区域的进一步详细信息。Klein等人[14]在同一年提出了Parallel Tracking and Mapping(PTAM),他们将整个VSLAM系统分为两个主要线程:tracking和mapping。PTAM为后续很多工作奠定了基石。PTAM方法的主要思想是降低计算成本,并使用并行处理来实现实时性能。当tracking实时估计摄像机运动时,mapping预测特征点的3D位置。PTAM也是第一个利用光束法平差(BA)联合优化相机姿态和3D地图创建的方法。其使用Features from Accelerated Segment Test(FAST)[19]的角点检测器算法进行关键点匹配和跟踪。尽管该算法的性能优于Mono SLAM,但其设计复杂,在第一阶段需要用户输入。Newcombe等人于2011年提出了一种用于测量深度值和运动参数来构建地图的直接方法,即密集跟踪和映射(DTAM)。DTAM是一种密集建图和密集跟踪模块的实时框架,可通过将整个帧与给定深度图对齐来确定相机姿态。为了构建环境地图,上述阶段分别估计场景的深度和运动参数。虽然DTAM可以提供地图的详细信息,但实时执行需要较高的计算成本。作为3D 建图和基于像素的优化领域中的另一种间接方法,Endres等人在2013年提出了一种可用于RGB-D相机的方法。他们的方法是实时的,专注于低成本嵌入式系统和小型机器人,但在无特征或具有挑战性的场景中无法产生准确的结果。同年,Salas Moreno等人[22]提出了SLAM++,是实时SLAM框架中利用语义信息的开山之作。SLAM++采用RGB-D传感器输出,并进行3D相机姿态估计和跟踪以形成姿态图。然后通过合并从场景中的语义目标获得的相对3D姿态来优化预测姿态。
随着VSLAM基线的成熟,研究人员专注于提高这些系统的性能和精度。Forster等人在2014年提出了一种混合VO方法,称为Semi-direct Visual Odometry(SVO)[24]。SVO可以结合基于特征的方法和直接方法来实现传感器的运动估计和建图任务。SVO可以与单目和双目相机一起工作,并配备了一个姿态细化模块,以最小化重投影误差。然而,SVO的主要缺点是采用短期数据关联,并且无法进行回环检测和全局优化。LSD-SLAM[25]是Engel等人于2014年提出的另一种有影响力的VSLAM方法,包含跟踪、深度估计和地图优化。该方法可以使用其姿态图估计模块重建大规模地图,并具有全局优化和回环检测功能。LSD-SLAM的弱点在于其初始化阶段,需要平面中的所有点,这使其成为一种计算密集型方法。Mur Artal等人介绍了两种精确的间接VSLAM方法,迄今为止广受关注:ORB-SLAM[26]和ORBSLAM 2.0[27]。这些方法可以在纹理良好的序列中完成定位和建图,并使用Oriented FAST and Rotated BRIEF(ORB)特征实现高性能的位置识别。ORB-SLAM的第一个版本能够使用从相机位置收集的关键帧来计算相机位置和环境结构。第二个版本是对ORB-SLAM的扩展,有三个并行线程,包括查找特征对应的跟踪、地图管理操作的局部建图,以及用于检测新环路和纠正漂移错误的回环。尽管ORB-SLAM 2.0可以与单目和立体相机一起使用,但由于重建具有未知比例的地图,因此不能用于自主导航。这种方法的另一个缺点是其无法在没有纹理的区域或具有重复模式的环境中工作。该框架的最新版本名为ORB-SLAM 3.0,于2021提出[28]。它适用于各种相机类型,如单目、RGB-D和双目视觉,并提供改进的姿态估计输出。
近年来,随着深度学习的快速发展,基于CNN的方法可以通过提供更高的识别和匹配率来解决许多问题。类似地,用学习特征替换人工设计的特征是许多最近基于深度学习的方法提出的解决方案之一。在这方面,Tateno等人提出了一种基于CNN的方法,该方法处理相机姿态估计的输入帧,并使用关键帧进行深度预测,命名为CNN-SLAM[29]。CNN-SLAM实现并行处理和实时性能的核心思想之一是,将相机帧分割成较小的部分以更好地理解环境。Engel等人还引入了Direct Sparse Odometry(DSO)[30],其将直接方法和稀疏重建相结合,以提取图像块中的最高强度点。
综上所述,VSLAM系统演进过程中的里程碑表明,最近的方法侧重于多个专用模块的并行执行。这些模块形成了与广泛的传感器和环境兼容的通用技术和框架。上述特性使它们能够实时执行,并且在性能改进方面更加灵活。
相关综述
VSLAM领域已有不少综述,对不同的现有方法进行了全面调查。每一篇论文都回顾了使用VSLAM方法的主要优点和缺点。Macario Barros等人[31]将方法分为三个不同类别:仅视觉(单目)、视觉惯性(立体)和RGB-D。他们还提出了简化分析VSLAM算法的各种标准。然而[31]并没有包括其他视觉传感器,比如基于事件的传感器。Chen等人[32]调查了广泛的传统和语义VSLAM。他们将SLAM开发时代分为经典、算法分析和鲁棒感知阶段。并总结了采用直接/间接方法的经典框架,研究了深度学习算法在语义分割中的影响。尽管他们的工作提供了该领域高级解决方案的全面研究,但方法的分类仅限于基于特征的VSLAM中使用的特征类型。Jia等人[33]调查了大量文献,并对基于图优化的方法和配备深度学习的方法进行了简要比较。在另一项工作中,Abaspur Kazerouni等人[34]涵盖了各种VSLAM方法,利用了感官设备、数据集和模块,并模拟了几种间接方法进行比较和分析。它们只对基于特征的算法进行分析,例如HOG、尺度不变特征变换(SIFT)、加速鲁棒特征(SURF)和基于深度学习的解决方案。Bavle等人[35]分析了各种SLAM和VSLAM应用中的态势感知方面,并讨论了它们的缺失点。还有一些其他综述如[15]、[36]、[37]、[32]、[37]在此不再赘述。
与上述综述不同,本文对不同场景的VSLAM系统进行全面调查,主要贡献如下:
-
对各种最近的VSLAM方法进行分类,这些方法涉及研究人员在提出新解决方案方面的主要贡献、标准和目标;
-
通过深入研究不同方法的不同方面,分析VSLAM系统的当前趋势;
-
介绍VSLAM对研究人员的潜在贡献。
VSLAM 设置标准
考虑到各种VSLAM方法,论文将可用的不同设置和配置分为以下类别:传感器和数据采集、目标环境、视觉特征处理、系统评估和语义类别,下面逐一介绍。
传感器和数据采集
Davison等人[17]引入的VSLAM算法的早期阶段配备了用于轨迹恢复的单目摄像机。单目相机是最常见的视觉传感器,用于各种任务,如物体检测和跟踪[39]。另一方面,立体相机包含两个或更多图像传感器,使其能够感知图像中的深度,从而在VSLAM应用中实现更准确的性能。相机设置具有成本效益,并为更高的精度要求提供信息感知。RGB-D相机也是VSLAM中使用的视觉传感器,其可以提供场景中的深度和颜色。上述视觉传感器可以提供丰富的环境信息,例如,适当的照明和运动速度,但它们通常难以应对照明度低或场景动态范围高的情况。
近年来,事件摄像机也被用于各种VSLAM应用中。当检测到运动时,这些低

本文介绍视觉SLAM(VSLAM)算法的发展,回顾经典算法,如Mono SLAM、PTAM等。对不同场景的VSLAM系统进行全面调查,设置传感器、环境等标准。基于多目标分类VSLAM方法,分析当前趋势,指出深度学习、语义分割等是未来研究方向。
最低0.47元/天 解锁文章
220

被折叠的 条评论
为什么被折叠?



