Visual SLAM算法:2010年至2016年的回顾
- 23k下载
- 9引文
抽象
SLAM是同时定位和映射的缩写,这是一种用于估计传感器运动和在未知环境中重建结构的技术。特别是,使用相机的同时定位和映射(SLAM)被称为视觉SLAM(vSLAM),因为它仅基于视觉信息。vSLAM可以用作各种类型应用的基础技术,并且已经在文献中的计算机视觉,增强现实和机器人领域中进行了讨论。本文旨在从技术和历史的角度对不同研究团体中提出的最新vSLAM算法进行分类和总结。特别是,我们专注于主要从2010年到2016年提出的vSLAM算法,因为在那个时期发生了重大进展。技术类别总结如下:
关键词
调查 视觉SLAM 计算机视觉 增强现实 机器人1简介
同时定位和映射(SLAM)是用于获得环境中的未知环境和传感器运动的3D结构的技术。该技术最初被提出用于实现机器人中机器人的自动控制[ 1 ]。然后,基于SLAM的应用程序已经广泛扩展,例如基于计算机视觉的在线3D建模,基于增强现实(AR)的可视化和自动驾驶汽车。在早期的SLAM算法中,集成了许多不同类型的传感器,例如激光测距传感器,旋转编码器,惯性传感器,GPS和相机。这样的算法是公总结在下面的论文[ 2,3,4,5 ]。
近年来,由于传感器配置简单且技术难度高于其他传感器,因此仅对使用相机的SLAM进行了积极讨论。由于这种SLAM的输入仅是视觉信息,因此该技术具体称为视觉SLAM(vSLAM)。vSLAM算法在计算机视觉,机器人和AR领域得到了广泛的应用[ 6]。特别是,它们适用于AR系统中的相机姿态估计,因为系统的配置可以是简单的,例如安装在相机上的平板电脑或智能手机。AR系统的一个重要要求是实时响应,以无缝和交互方式合并真实和虚拟对象。为了在轻量级手持设备上利用有限的计算资源实现响应,在文献中已经提出了各种低计算成本的vSLAM算法。这种vSLAM算法的应用不限于AR系统。例如,它对机器人中的无人驾驶自动驾驶车辆(UAV)也很有用[ 7]。尽管已经在不同的研究社区中针对不同目的提出了vSLAM算法,但它们基本上共享技术核心思想的整体部分,并且可以用于彼此实现不同的目的。因此,我们将此类算法归类并总结为调查论文。
在本文中,我们回顾了实时vSLAM算法,这些算法在2010年代显着发展。通常,vSLAM的技术难度高于其他基于传感器的SLAM,因为与通常在机器人中使用的360°激光感测相比,相机可以从有限的视野获得较少的视觉输入。根据这样的输入,需要连续估计相机姿势并同时重建未知环境的3D结构。使用单目相机的vSLAM的早期工作基于2000年代的跟踪和映射特征点。这被称为“基于特征的方法”。为了应对无纹理或无特征的环境,已经提出了不检测特征点而是直接用整个图像进行跟踪和映射的vSLAM。这被称为“直接方法”。“随着微软Kinect等低成本RGB-D传感器的出现,已经提出了具有单眼图像和深度的vSLAM算法。因此,本文介绍的现有vSLAM算法根据基于特征的,直接的和基于RGB-D摄像机的方法进行分类。本文将对想要开始学习vSLAM的基本框架,算法之间的差异以及2010年至2016年的进展的读者有所帮助。此外,还讨论了剩余的技术问题以用于进一步的研究主题和几种比较的基准方法提供了不同的算法,以便读者可以对下一个研究方向有一些看法。本文介绍的现有vSLAM算法根据基于特征的,直接的和基于RGB-D摄像机的方法进行分类。本文将对想要开始学习vSLAM的基本框架,算法之间的差异以及2010年至2016年的进展的读者有所帮助。此外,还讨论了剩余的技术问题以用于进一步的研究主题和几种比较的基准方法提供了不同的算法,以便读者可以对下一个研究方向有一些看法。本文介绍的现有vSLAM算法根据基于特征的,直接的和基于RGB-D摄像机的方法进行分类。本文将对想要开始学习vSLAM的基本框架,算法之间的差异以及2010年至2016年的进展的读者有所帮助。此外,还讨论了剩余的技术问题以用于进一步的研究主题和几种比较的基准方法提供了不同的算法,以便读者可以对下一个研究方向有一些看法。
在本文的其余部分安排如下。在第2节和第3节中,介绍了vSLAM的元素和vSLAM的相关技术,包括视觉里程。在第4,5和6,其中现有的vSLAM算法进行了总结,基于特征的,直接的,和基于RGB-d-vSLAM算法,分别介绍。在第7节中,讨论了vSLAM算法中的其余技术问题。在第8节中,介绍了用于评估vSLAM算法性能的数据集。最后,我们在第9节中提出结论。注意到2011年之前提出的vSLAM算法的调查论文[ 8,9 ]。这些论文对于理解我们对新算法的调查也很有用。
2 vSLAM的元素
在本节中,我们首先介绍自2000年代后期以来大多数vSLAM算法遵循的基本框架。
2.1基本模块
- 1。
初始化
- 2。
跟踪
- 3。
制图
为了启动vSLAM,有必要为未知环境中的相机姿态估计和3D重建定义某个坐标系。因此,在初始化中,首先应该定义全局坐标系,并且将一部分环境重建为全局坐标系中的初始映射。在初始化之后,执行跟踪和映射以连续估计相机姿势。在跟踪中,在图像中跟踪重建的地图以估计图像相对于地图的相机姿势。为此,首先从图像中的特征匹配或特征跟踪获得图像与地图之间的2D-3D对应。然后,通过求解Perspective-n-Point(PnP)问题从对应关系计算相机姿势[ 10],11]。应该注意的是,大多数vSLAM算法假定事先校准固有的摄像机参数,以便它们是已知的。因此,相机姿势通常等同于外部相机参数,其具有在全局坐标系中相机的平移和旋转。在映射中,当摄像机观察之前未执行映射的未知区域时,通过计算环境的3D结构来扩展地图。
2.2用于稳定和准确的vSLAM的附加模块
-
重新定位
-
全局地图优化
当由于快速摄像机运动或一些干扰导致跟踪失败时,需要重新定位。在这种情况下,需要再次计算相对于地图的相机姿势。因此,此过程称为“重定位”。如果重定位未包含在vSLAM系统中,则在跟踪丢失后系统不再起作用,并且此类系统实际上并不实用。因此,文献中已经讨论了一种快速有效的重定位方法。请注意,这也被称为机器人技术中被绑架的机器人问题。
另一个模块是全局地图优化。地图通常包括根据相机移动距离的累积估计误差。为了抑制错误,通常执行全局映射优化。在此过程中,通过考虑整个地图信息的一致性来细化地图。当重新访问地图使得在一些相机移动之后再次捕获起始区域时,可以计算表示从开始到现在的累积误差的参考信息。然后,来自参考信息的循环约束被用作约束以抑制全局优化中的错误。
循环关闭是一种获取参考信息的技术。在循环闭合中,首先通过将当前图像与先前获取的图像匹配来搜索闭环。如果检测到循环,则表示摄像机捕获先前观察到的视图之一。在这种情况下,可以估计在相机移动期间发生的累积误差。注意,闭环检测过程可以通过使用与重定位相同的技术来完成。基本上,重新定位用于恢复相机姿势,并且完成环路检测以获得几何一致的地图。
姿势-图形优化已广泛用于通过优化相机姿态[抑制累积误差12,13 ]。在该方法中,相机姿势之间的关系表示为图形,并且构建一致图以抑制优化中的误差。束调整(BA)还用于通过优化地图和相机姿势来最小化地图的重投影误差[ 14 ]。在大型环境中,采用该优化过程来有效地最小化估计误差。在小环境中,BA可以在没有闭环的情况下执行,因为累积误差很小。
2.3总结
如上所列,vSLAM算法的框架由五个模块组成:初始化,跟踪,映射,重定位和全局映射优化。由于每个vSLAM算法对每个模块采用不同的方法,因此vSLAM算法的特征高度依赖于所采用的方法。因此,了解vSLAM算法的每个模块以了解其性能,优点和局限性非常重要。
应该注意,使用跟踪和映射(TAM)而不是使用定位和映射。TAM最初用于并行跟踪和映射(PTAM)[ 15 ],因为定位和映射不是以传统方式同时执行的。使用一个线程在每个帧中执行跟踪,而在另一个线程的某个定时执行映射。在提出PTAM之后,大多数vSLAM算法遵循TAM的框架。因此,本文使用TAM。
3相关技术
vSLAM,视觉测距和运动在线结构设计用于估计未知环境中的摄像机运动和3D结构。在本节中,我们将解释它们之间的关系。
3.1视觉里程计
vSLAM和VO之间的关系也可以从论文[发现20,21 ]和文献[ 22,23 ]。在文献[ 20,22 ],上VO的技术首次提出。然后,在vSLAM的技术,提出了通过添加在VO全局优化[ 21,23 ]。
3.2运动结构
运动结构(SfM)是一种以批量方式估计环境的摄像机运动和3D结构的技术[ 24 ]。在论文[ 25 ]中,提出了一种在线运行的SfM方法。作者将其命名为实时SfM。从技术角度来看,vSLAM和实时SfM之间没有明确的区别。这可能就是为什么在最近的论文中找不到“实时SfM”这个词的原因。
如本节所述,vSLAM,VO和实时SfM共享许多常见组件。因此,我们在本文中介绍了所有这些并且不区分这些技术。
4基于特征的方法
文献中存在两种基于特征的方法:基于过滤器的方法和基于BA的方法。在本节中,我们将解释这两种方法并提供比较。尽管有些方法是在2010年之前提出的,但我们在此解释了它们,因为它们可以被视为其他方法的基本框架。
4.1 MonoSLAM
-
通过使用已知对象完成映射初始化。
-
使用EKF估计特征点的相机运动和3D位置。
该方法的问题是计算成本与环境的大小成比例地增加。在大型环境中,状态向量的大小变大,因为特征点的数量很大。在这种情况下,很难实现实时计算。
4.2 PTAM
为了解决MonoSLAM中的计算成本问题,PTAM [ 15 ]将跟踪和映射分成CPU上的不同线程。这两个线程并行执行,因此映射的计算成本不会影响跟踪。结果,在优化中需要计算成本的BA可以用于映射。这意味着跟踪实时估计相机运动,并且该映射以计算成本估计特征点的精确3D位置。PTAM是第一种将BA纳入实时vSLAM算法的方法。在发布PTAM之后,大多数vSLAM算法都遵循这种类型的多线程方法。
与MonoSLAM相比,在PTAM中,系统可以通过将跟踪和映射分成CPU上的不同线程来处理数千个特征点。
已经提出了许多扩展的PTAM算法。Castle等。开发了PTAM的多地图版本[ 30 ]。Klein等。开发了手机版的PTAM [ 31 ]。为了在移动电话上运行PTAM,减少了输入图像分辨率,地图点和关键帧数量。此外,他们考虑在BA中滚动快门失真以获得准确的估计结果,因为滚动快门通常安装在大多数移动电话相机中,因为其成本低廉。由于PTAM可以重建仅所述环境的三维稀疏结构中,第三线程可以被用来重建环境[致密的3D结构32,33 ]。
4.3 MonoSLAM和PTAM之间的比较
在文献[ 34 ]中讨论了MonoSLAM中基于EKF的映射与基于BA的PTAM关键帧映射之间的差异。根据文献,为了提高vSLAM的准确性,增加地图中的特征点的数量是重要的。从这个角度来看,基于BA的方法比基于EKF的方法更好,因为它可以处理大量的点。
4.4全球地图优化技术
如上所述,通过使用BA作为关键帧来维持整个地图的几何一致性。然而,一般而言,BA由于包括关键帧的相机姿势和地图中的点的众多参数而遭受局部最小问题。姿势图优化是一种解决方案,可以避免循环关闭中的这个问题,如第2节所述。在循环闭合中,首先使用循环约束优化相机姿势。在优化相机姿势之后,执行BA以优化特征点的3D位置和相机姿势。对于循环闭合,采用基于视觉信息的方法[ 35 ]。他们使用基于词袋的图像检索技术来检测其中一个关键帧,其视图与当前视图类似[36 ]。
在vSLAM系统[ 35 ]中,选择立体相机作为视觉传感器。在这种情况下,坐标系的比例是固定的并且是已知的。然而,在单眼vSLAM情况下,如果不执行全局BA,则存在尺度模糊并且在相机移动期间尺度可能改变。在这种情况下,出现尺度漂移问题,并且每帧的坐标系的比例可能不一致。为了校正比例漂移,应在7 DoF中优化相机姿势。Strasdat等。[ 37 ]提出了一种基于相似变换优化7个DoF相机姿态的方法。
作为PTAM的扩展,ORB-SLAM [ 38 ]包括BA,基于视觉的闭环检测和7 DoF姿势图优化。据我们所知,ORB-SLAM是最完整的基于特征的单眼vSLAM系统。ORB-SLAM扩展到立体声vSLAM和RGB-D vSLAM [ 39 ]。
4.5总结
基于特征的方法摘要
在本节中,我们介绍了基于特征点的vSLAM算法。基于特征点的vSLAM算法通常采用手工制作的特征检测器和描述符,并且可以在丰富的纹理环境中提供稳定的估计结果。然而,通过使用这种手工制作的特征难以处理弯曲边缘和其他复杂的线索。在某些特殊情况下,例如有纹理的差的环境中,线特征已经被用作图像特征[ 40,41 ]。此外,特征点和边缘被组合以实现针对运动模糊输入图像的稳健估计[ 42 ]。
5直接方法
与上一节中基于特征的方法相比,直接方法使用手工制作的特征检测器和描述符直接使用输入图像而不进行任何抽象。它们也被称为无特征方法。通常,光度一致性被用作直接方法中的误差测量,而几何一致性(诸如图像中的特征点的位置)被用在基于特征的方法中。在本节中,我们将介绍一些领先的直接方法。
5.1 DTAM
-
通过立体测量完成地图初始化。
-
通过从重建的地图生成合成视图来估计相机运动。
-
通过使用多基线立体声估计每个像素的深度信息,然后通过考虑空间连续性来优化它。
DTAM算法经过优化,可以在手机上实现实时处理[ 46 ]。基本上,这些方法[ 43,46,47 ]被设计用于快速和在线3D建模。
应该指出的是,Stühmer等人。先前提出了一种用于估计每个像素的深度信息的变分方法[ 47 ]。它们使用与DTAM映射类似的成本函数。但是,在这种方法中,PTAM [ 15 ]用于跟踪。因此,跟踪是基于特征的方法,并不是完全直接的方法。
5.2 LSD-SLAM
LSD-SLAM是直接方法中的另一种主要方法。LSD-SLAM的核心思想遵循半密集VO的思想[ 20]。在该方法中,重建目标限于与重建整个区域的DTAM相比具有强度梯度的区域。这意味着它忽略无纹理区域,因为难以从图像估计准确的深度信息。在映射中,首先将随机值设置为每个像素的初始深度值,然后,基于光度一致性来优化这些值。由于此方法不考虑整个地图的几何一致性,因此该方法称为视觉测距法。
-
将随机值设置为每个像素的初始深度值。
-
通过从重建的地图生成合成视图来估计相机运动。
-
重建区域仅限于高强度梯度区域。
-
7采用DoF姿势图优化来获得几何一致的地图。
基本上,这些半密集的方法[ 20,21 ]可以用CPU实现实时处理。此外,他们通过考虑手机的CPU架构优化了手机的LSD-SLAM算法[ 48 ]。在文献[ 48 ]中,他们还评估了LSD-SLAM算法对低分辨率输入图像的准确性。LSD-SLAM延伸到立体相机和全方向摄像机[ 49,50 ]。
5.3 SVO和DSO
福斯特等人。提出了半直接VO(SVO)[ 51 ]。虽然跟踪是通过特征点匹配完成的,但映射是通过直接方法完成的。在基于特征的方法中,特征描述符和Lucas-Kanade跟踪器[ 52 ]用于查找对应关系。与基于特征的方法相比,通过最小化特征点周围的光度误差来估计相机运动。该方法可以视为DTAM和LSD-SLAM的稀疏版本。
最近,恩格尔等人。提出直接稀疏测距法(DSO)[ 53 ]。与SVO相比,DSO是一种完全直接的方法。为了抑制累积误差,DSO尽可能地从几何和光度角度去除误差因子。在DSO中,输入图像被分成几个块,然后,选择高强度点作为重建候选。通过使用此策略,点在整个图像中传播。此外,为了实现高精度估算,DSO使用几何和光度相机校准结果。应该注意,DSO仅考虑局部几何一致性。因此,DSO分为VO,而不是vSLAM。
5.4总结
6 RGB-D vSLAM
最近,结构化的基于光的RGB-D相机[ 54 ]如Microsoft Kinect [ 55 ]变得便宜且小巧。由于这些摄像机实时提供3D信息,因此这些摄像机也用于vSLAM算法。
6.1与单眼vSLAM的区别
通过使用RGB-D相机,可以直接获得具有纹理信息的环境的3D结构。另外,与单眼vSLAM算法相比,坐标系的比例是已知的,因为可以在度量空间中获取3D结构。
基于深度(D)的vSLAM的基本框架如下。迭代最近点(ICP)算法[ 56 ]已被广泛用于估计相机运动。然后,通过组合多个深度图来重建环境的3D结构。为了将RGB结合到基于深度的vSLAM中,已经提出了许多方法,如下所述。
应该注意的是,大多数消费者深度相机是为室内使用而开发的。他们将IR模式投射到环境中以测量深度信息。在室外环境中难以检测发射的IR图案。另外,深度测量范围存在限制,使得RGB-D传感器可以捕获1至4米的环境。
6.2 KinectFusion
Newcombe等。2011年提出KinectFution [ 57 ]。在KinectFusion中,体素空间用于表示环境的3D结构。通过在体素空间中组合所获得的深度图来重建环境的3D结构,并且通过ICP算法使用估计的3D结构和输入深度图(基于深度的vSLAM)来估计相机运动。KinectFusion在GPU上实现,以实现实时处理。
Kahler等。在移动设备上实现KinectFusion的实时处理[ 58 ]。为了降低计算成本,他们在映射过程中使用体素块散列。RGB-D vSLAM受到大量数据的影响。在文献[ 59 ]中,它们通过统一共面点来减少数据量。
6.3 SLAM ++
Salas-Moreno等。提出了一种对象级RGB-D vSLAM算法[ 60 ]。在该方法中,预先将多个3D对象注册到数据库中,并且在在线处理中识别这些对象。通过识别3D对象,精确估计的地图,并且3D点被3D对象替换以减少数据量。
作为类似的算法,Tateno等人。提出了一种RGB-D SLAM的实时分割方法[ 61 ]。标记分段对象,然后,这些对象可用作识别目标。
6.4 RGB-D VO技术和全局地图优化
对于跟踪,RGB图像也用于RGB-D vSLAM算法。在文献[ 62,63 ],相对照相机运动是由连续的帧之间的跟踪特征点估计。然后使用跟踪的特征点估计平移矩阵,并且使用深度图通过ICP算法细化该平移矩阵。在另一方面,光度基于一致性的相机运动跟踪方法已经被提出[ 22,23,64]。这种测光基于一致性的照相机运动跟踪,也采用单眼基于相机的致密vSLAM方法[ 20,21,43 ]。
为了获得几何一致的映射,在RGB-D vSLAM算法中使用姿势图优化和变形图优化。Kerl等人。使用姿势图优化来减少累积误差[ 23 ]。这种姿势图优化几乎与单眼vSLAM算法中的循环闭包相同。惠兰等人。分别使用姿势图优化进行相机运动细化和变形图优化以进行地图细化[ 65 ]。与其他作品[ 23 ]相比,估计的地图也得到了改进。在[ 66],变形图优化经常用于某些帧,并且通过RGB-D图像和重建模型之间的匹配来估计相机运动。他们展示了几何一致的模型,可以尽可能多地使用变形图优化获得。
请注意,RGB-D SLAM API在消费者设备中提供,例如Google Tango 2和Structure Sensor 3。特别是,Google Tango通过组合内部传感器信息提供稳定的估计结果。
7打开问题
在实际情况中,vSLAM面临一些问题。在本节中,我们列出了以下问题:纯旋转运动,地图初始化,估计固有摄像机参数,滚动快门失真和比例模糊。
7.1纯旋转
当用户在手持增强现实应用中移动设备时,有时会发生纯粹的旋转运动。这是一个问题,因为在单眼vSLAM的纯旋转运动期间不能观察到视差。为了解决这个问题,在文献[ 67,68 ],不同的投影模型用于处理一般相机运动和纯旋转运动。例如,基于单应性的跟踪用于纯旋转运动,6个DoF相机跟踪用于其他相机运动。作为另一种方法,根据相机运动使用两种类型的3D点表示[ 69]。可以用大的视差观察到的点被表示为3D点,并且不能用大的视差观察到的点被表示为3D射线。在跟踪过程中,3D射线信息也用于估计相机运动。它们使用输入图像中的3D光线和特征点之间的距离作为重投影错误。
请注意,纯粹的旋转运动在RGB-D vSLAM中不是问题。这是因为可以通过使用获得的深度图来完成跟踪和映射过程。另一方面,基于单眼摄像机的vSLAM在纯旋转运动期间不能继续映射。
7.2地图初始化
映射初始化对于在vSLAM中实现准确估计很重要。基本上,为了获得准确的初始地图,基线应该很宽。然而,在实际情况中,新手可能难以进行理想的相机运动。为了解决这个问题,Mulloni等人。提出了一个用户友好的初始化[ 70 ]。他们使用2D / 3D指南指导理想的相机运动以进行地图初始化。Arth等人。为室外环境提出了基于2.5D地图的初始化[ 71 ]。通过使用此方法,可以在地球上的全局坐标系中初始化vSLAM。
诸如基准标记和已知3D对象的参考对象也已被用于获得全局坐标系,并且通过跟踪参考对象来估计初始相机姿势。为了扩展可跟踪区域,vSLAM与它结合在一起。Vuforia 4提供基于标记的SLAM初始化。在文献[ 72,73 ],他们使用一个已知的3D对象为基准,和已知物体的形状用于细化地图。
7.3估计固有的摄像机参数
大多数vSLAM算法假设已知的固有摄像机参数。这意味着应在使用vSLAM应用程序之前完成摄像机校准,并且应在vSLAM估计过程中修复固有摄像机参数。然而,这对新手来说很烦人。在文献中,他们在vSLAM期间实现了内在的相机参数估计[ 74 ]。在vSLAM估计过程中,内在相机参数逐渐收敛。另一方面,可以处理固有的相机参数变化[ 75 ]。它们通过基于离线自校准技术估计焦距变化来消除相机变焦效果[ 76 ]。
7.4卷帘快门失真
为了实现精确的相机姿态估计,考虑快门类型是很重要的。大多数vSLAM算法假设全局快门,并且这些算法估计每帧的一个相机姿势。然而,包括RGB-D相机在内的大多数消费者相机由于其成本而采用卷帘式快门。在滚动快门相机中,捕获图像的每一行由不同的相机姿势拍摄。显然很难直接估计每行的相机姿势。通常,基于插值的方法用于估计滚动快门相机姿态估计。在文献[ 77,78,79 ],他们使用样条函数进行内插的摄像机轨迹。
7.5规模模糊
在具有单眼vSLAM的一些vSLAM应用程序中需要绝对比例信息。为了获得绝对刻度信息,用户的身体在文献[使用80,81 ]。李等人。用户的手来确定绝对尺度和全局坐标系[ 80 ]。Knorr等人。使用用户的面部信息来确定绝对尺度[ 81 ]。假设这些身体部位的尺寸差异在人体内很小。因此,这些vSLAM系统可以准确地估计尺度信息。
作为另一种方法,也可以使用移动电话上的诸如加速度计,陀螺仪和磁传感器的若干传感器。在文献[ 82 ]中,通过使用加速度计估计尺度信息。他们使用频域滤波技术来消除传感器噪声。
8基准测试
为了实现vSLAM算法之间的公平比较,基准测试显然很重要,并且近年来已经讨论了其方法。在这里,我们介绍一些基准数据集如下。
TrakMark提供具有6个DoF相机运动和固有相机参数的图像序列[ 83 ]。在TrakMark中,图像序列分为三种场景:虚拟化环境,室内环境和室外环境5。TrakMark假定用于评估AR / MR研究社区中vSLAM算法的性能。他们还从AR / MR研究的角度提出了评估标准。在AR / MR应用程序中,图像空间错误是最重要的,因为如果将虚拟对象叠加到图像上是自然的,则可以。在TrakMark中,他们使用虚拟对象的投影误差(PEVO)作为评估vSLAM算法的标准[ 84]]。在该标准中,使用估计的和理想的相机姿势将虚拟点投影到输入图像上,然后在图像空间中测量距离。
Martull等。新提供了一个跟随Tsukuba数据集的立体数据集[ 85 ]。Tukuba立体数据集已用于评估立体算法。他们使用计算机图形创建了新的Tukuba立体数据集。数据集中提供了每个帧的图像序列,相机姿势和深度图。使用不同的相机轨迹和照明条件来创建图像序列。
TUM RGB-D基准数据集为RGB-D图像序列提供了6个DoF相机姿势[ 86 ]。使用运动捕捉系统获得相机姿势,可以认为其比vSLAM更准确。他们分别提出相对姿态误差(PRE)和绝对轨迹误差(ATE)来评估局部和全局误差。
KITTI数据集用于评估驾驶场景中的视觉系统,包括许多类型的数据[ 87 ]。在数据集中,提供了视觉测距数据集。使用RTK-GPS获得地面相机姿势。在KITTI数据集网页6中,列出了评估结果。LSD-SLAM和ORB-SLAM算法的结果可以在网页中找到。
与其他数据集相比,SLAMBench提供了一个从准确性和能耗评估vSLAM算法的框架[ 88 ]。此外,KinectFusion实现包含在SLAMBench中的不同选项(C ++,OpenMP,OpenCL和CUDA)中。
自2008年以来,在混合和增强现实(ISMAR)国际研讨会上组织了现场基准测试,称为“跟踪竞赛”。在跟踪竞赛中,参与者需要使用自己的vSLAM系统完成组织者提供的特定任务。与基于数据集的评估不同,参与者可以基于当前跟踪结果来控制相机移动。因此,跟踪竞争可以将vSLAM算法评估为交互系统。
9结论
在本文中,我们主要介绍了2010年至2016年的最新vSLAM算法。基本上,vSLAM算法由初始化,相机运动估计,3D结构估计,全局优化和重定位组成。最近,直接方法是单眼vSLAM的活跃研究领域。近年来也开发了RGB-D vSLAM,因为可以以便宜的价格获得许多消费者RGB-D相机。在AR / MR研究界,实际问题已经解决。尽管vSLAM算法自2003年开发以来,vSLAM仍然是一个活跃的研究领域。
代表性算法的比较
方法 |
地图密度 |
全局优化 |
循环闭合 | |
---|---|---|---|---|
单声道SLAM [ 26 ] |
特征 |
疏 |
没有 |
没有 |
PTAM [ 15 ] |
特征 |
疏 |
是 |
没有 |
ORB-SLAM [ 38 ] |
特征 |
疏 |
是 |
是 |
DTAM [ 43 ] |
直接 |
稠密 |
没有 |
没有 |
LSD-SLAM [ 21 ] |
直接 |
半密集 |
是 |
是 |
SVO [ 51 ] |
半直接 |
疏 |
没有 |
没有 |
DSO [ 53 ] |
直接 |
疏 |
没有 |
没有 |
KinectFusion [ 57 ] |
RGB-d |
稠密 |
没有 |
没有 |
密集的视觉SLAM [ 23 ] |
RGB-d |
稠密 |
是 |
是 |
ElasticFusion [ 66 ] |
RGB-d |
稠密 |
是 |
是 |
SLAM ++ [ 60 ] |
RGB-d |
稠密 |
是 |
是 |
本文重点介绍了最近仅使用相机的vSLAM算法。作为另一种方法,使用视觉和惯性数据的SLAM算法称为视觉惯性SLAM。通过结合视觉和惯性数据,我们可以获得更稳定的估算结果。另外,在文献[ 77,82 ],他们使用的传感器的信息来解决规模估计和滚动快门的失真补偿。目前,智能手机和平板电脑设备具有摄像头,GPS,陀螺仪和加速度计。在未来,我们相信传感器融合是实现强大而实用的vSLAM系统的一个方向。
为了学习vSLAM算法的元素,我们提供了ATAM 7,它是一个面向初学者的vSLAM工具包[ 89 ]。它包括单眼vSLAM算法,包括棋盘的实际比例估计。用户可以轻松地安装和修改ATAM,因为源代码设计得很好,只依赖于OpenCV [ 90 ]和cvsba [ 91 ]。
10尾注
笔记
作者的贡献
TT和HU收集并总结了视觉SLAM论文。SI是一名顾问,并帮助起草了手稿。所有作者阅读并认可的终稿。
利益争夺
作者声明他们没有竞争利益。
出版商的说明
Springer Nature在已发布的地图和机构隶属关系中对管辖权主张保持中立。
参考
-
1。Chatila R,Laumond JP(1985)移动机器人的位置参考和一致的世界建模在:机器人与自动化国际会议论文集,138-145。谷歌学术
-
2。Durrant-Whyte H,Bailey T(2006)同时定位和制图:第一部分。Robot Autom Mag IEEE 13(2):99-110。CrossRefGoogle学术搜索
-
3。Bailey T,Durrant-Whyte H(2006)同时定位和制图(大满贯):第二部分。IEEE Robot Autom Mag 13(3):108-117。CrossRefGoogle学术搜索
-
4。Thrun S,Leonard JJ(2008)机器人手册。第一章。同步定位和映射。谷歌学术
-
5。Aulinas J,Petillot YR,Salvi J,LladóX(2008)The slam problem:a survey in:人工智能研究与发展会议论文集:加泰罗尼亚人工智能协会国际会议论文集,363-371。谷歌学术
-
6。Billinghurst M,Clark A,Lee G(2015)增强现实调查。发现趋势人机交互8(2-3):73-272。CrossRefGoogle学术搜索
-
7。Engel J,Sturm J,Cremers D(2012)基于摄像头的低成本直升机导航在:智能机器人和系统国际会议论文集,2815-2821。谷歌学术
-
8。Ros G,Sappa A,Ponsa D,Lopez AM(2012)用于无人驾驶汽车的视觉猛击:简短调查在:智能车辆研讨会(IV)研讨会。谷歌学术
-
9。Fuentes-Pacheco J,Ruiz-Ascencio J,Rendón-Mancha JM(2015)视觉同步定位和制图:一项调查。Artif Intell Rev 43(1):55-81。CrossRefGoogle学术搜索
-
10。Klette R,Koschan A,Schluns K(1998)计算机视觉:来自图像的三维数据。第1版。谷歌学术
-
11。Nister D(2004)对广义3点姿势问题的最小解决方案在:IEEE计算机视觉和模式识别会议论文集,560-5671。谷歌学术
-
12。Grisetti G,KümmerleR,Stachniss C,Burgard W(2010)关于基于图形的大满贯的教程。Intell Transp Syst Mag IEEE 2(4):31-43。CrossRefGoogle学术搜索
-
13。KümmerleR,Grisetti G,Strasdat H,Konolige K,Burgard W(2011)g2o:图优化的一般框架在:国际机器人与自动化会议论文集,3607-3613。谷歌学术
-
14。捆绑调整现代合成。在:Triggs B,McLauchlan PF,Hartley RI,Fitzgibbon AW(编辑)(2000)视觉算法:理论和实践。第298-372页。谷歌学术
-
15。Klein G,Murray DW(2007)用于小型AR工作空间的并行跟踪和映射在:Proceedngs of International Symposium on Mixed and Augmented Reality,225-234。谷歌学术
-
16。NistérD,Naroditsky O,Bergen J(2004)Visual odometry In:Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,652。GoogleScholar
-
17。Yousif K,Bab-Hadiashar A,Hoseinnezhad R(2015)视觉测距和视觉猛击的概述:移动机器人的应用。Intell Ind Syst 1(4):289-311。CrossRefGoogle学术搜索
-
18。Scaramuzza D,Fraundorfer F(2011)Visual odometry [tutorial]。Robot Autom Mag IEEE 18(4):80-92。CrossRefGoogle学术搜索
-
19。Fraundorfer F,Scaramuzza D(2012)视觉测距:第二部分:匹配,稳健性,优化和应用。Robot Autom Mag IEEE 19(2):78-90。CrossRefGoogle学术搜索
-
20。Engel J,Sturm J,Cremers D(2013)用于单目相机的半密集视觉测距仪在:Proceedings of International Conference on Computer Vision,1449-1456。谷歌学术
-
21。Engel J,SchöpsT,Cremers D(2014)LSD-SLAM:大规模直接单眼SLAM In:欧洲会议计算机视觉会议论文集,834-849。谷歌学术
-
22。Kerl C,Sturm J,Cremers D(2013)用于RGB-D相机的鲁棒odometry估计在:国际机器人与自动化会议论文集,3748-3754。谷歌学术
-
23。Kerl C,Sturm J,Cremers D(2013)用于RGB-D相机的密集视觉SLAM在:智能机器人和系统国际会议论文集,2100-2106。谷歌学术
-
24。Agarwal S,Furukawa Y,Snavely N,Simon I,Curless B,Seitz SM,Szeliski R(2011)在一天中建造罗马。Commun ACM 54(10):105-112。CrossRefGoogle学术搜索
-
25。Civera J,Grasa OG,Davison AJ,Montiel J(2010)用于扩展卡尔曼滤波的1点ransac:应用于运动和视觉测距的实时结构。J Field Robot 27(5):609-631。CrossRefGoogle学术搜索
-
26。Davison AJ(2003)使用单个摄像机实时同步定位和映射在:计算机视觉国际会议论文集,1403-1410。谷歌学术
-
27。Davison AJ,Reid ID,Molton ND,Stasse O(2007)Monoslam:实时单镜头SLAM。Pattern Anal Mach Intell IEEE Trans 29(6):1052-1067。CrossRefGoogle学术搜索
-
28。NistérD(2004)五点相对姿势问题的有效解决方案。Pattern Anal Mach Intell IEEE Trans 26(6):756-770。CrossRefGoogle学术搜索
-
29。Williams B,Klein G,Reid I(2007)Real-time SLAM relocalisation In:Proceedings of International Conference on Computer Vision,1-8。谷歌学术
-
30。Castle R,Klein G,Murray DW(2008)可穿戴增强现实的多个地图中的视频率本地化在:2008年第12届IEEE可穿戴计算机国际研讨会,15-22。doi:10.1109 / ISWC.2008.4911577。
-
31。Klein G,Murray DW(2009)在照相手机上进行平行跟踪和绘图在:Proceedngs of International Symposium on Mixed and Augmented Reality,83-86。谷歌学术
-
32。Newcombe RA,Davison AJ(2010)使用单个移动摄像机进行密集重建在:IEEE会议计算机视觉和模式识别,1498-1505。谷歌学术
-
33。Pradeep V,Rhemann C,Izadi S,Zach C,Bleyer M,Bathiche S(2013)MonoFusion:使用单个网络摄像头进行小场景的实时3D重建在:Proceedngs of International Symposium on Mixed and Augmented Reality,83-88 。谷歌学术
-
34。Strasdat H,Montiel JM,Davison AJ(2012)Visual SLAM:为什么过滤?Image Vision Comput 30(2):65-77。CrossRefGoogle学术搜索
-
35。Mei C,Sibley G,Cummins M,Newman P,Reid I(2009)一种恒定时间效率的立体声猛击系统In:British Machine Vision Conference,54-15411。谷歌学术
-
36。Cummins M,Newman P(2008)FAB-MAP:在外观空间中的概率定位和映射。Int J Robot Res 27(6):647-665。CrossRefGoogle学术搜索
-
37。Strasdat H,Montiel J,Davison AJ(2010)规模漂移感知大规模单眼猛击在:机器人学报:科学与系统,5。Google学术搜索
-
38。Mur-Artal R,Montiel JMM,TardósJD(2015)ORB-SLAM:多功能和精确的单眼SLAM系统。IEEE Trans Robot 31(5):1147-1163。doi:10.1109 / TRO.2015.2463671。CrossRefGoogle学术搜索
-
39。Mur-Artal R,TardósJD(2016)ORB-SLAM2:用于单筒,立体和RGB-D相机的开源SLAM系统。CORR。ABS / 1610.06475。谷歌学术
-
40。Eade E,Drummond T(2009)单眼大满贯的边缘地标。Image Vis Comput 27(5):588-596。CrossRefGoogle学术搜索
-
41。Hirose K,Saito H(2012)基于线路SLAM的快速线描述:英国机器视觉会议论文集。谷歌学术
-
42。Klein G,Murray D(2008)提高基于关键帧的SLAM的敏捷性:欧洲计算机视觉会议论文集,802-815。谷歌学术
-
43。Newcombe RA,Lovegrove SJ,Davison AJ(2011)DTAM:密集跟踪和实时映射In:Proceedings of International Conference on Computer Vision,2320-2327。谷歌学术
-
44。Okutomi M,Kanade T(1993)一种多基线立体声。Pattern Anal Mach Intell IEEE Trans 15(4):353-363。CrossRefGoogle学术搜索
-
45。Rudin LI,Osher S,Fatemi E(1992)基于非线性总变差的噪声消除算法。Phys D Nonlinear Phenom 60(1):259-268。MathSciNetCrossRefzbMATHGoogle学术搜索
-
46。Ondruska P,Kohli P,Izadi S(2015)MobileFusion:手机上的实时体积表面重建和密集跟踪。IEEE Trans Vis Comput Graph 21(11):1251-1258。CrossRefGoogle学术搜索
-
47。StühmerJ,Gumhold S,Cremers D(2010)来自手持相机的实时密集几何。在:Goesele M,Roth S,Kuijper A,Schiele B,Schindler K(编辑)。斯普林格,柏林,海德堡,第11-20页。谷歌学术
-
48。SchöpsT,Engel J,Cremers D(2014)用于智能手机上AR的半密集视觉测距仪在:Proceedngs of International Symposium on Mixed and Augmented Reality,145-150。谷歌学术
-
49。Caruso D,Engel J,Cremers D(2015)用于全向摄像机的大规模直接SLAM在:智能机器人和系统国际会议论文集。谷歌学术
-
50。Engel J,Stueckler J,Cremers D(2015)带立体声相机的大规模直接SLAM在:智能机器人和系统国际会议论文集。谷歌学术
-
51。Forster C,Pizzoli M,Scaramuzza D(2014)SVO:快速半直接单眼视觉测距仪在:国际机器人与自动化会议论文集,15-22。谷歌学术
-
52。Baker S,Matthews I(2004)Lucas-kanade 20年:一个统一的框架。Int J Comput Vis 56(3):221-255。CrossRefGoogle学术搜索
-
53。Engel J,Koltun V,Cremers D(2016)直接稀疏测距。CORR。ABS / 1607.02565。谷歌学术
-
54。Geng J(2011)结构光3d表面成像:一个教程。Adv Opt Photon 3(2):128-160。CrossRefGoogle学术搜索
-
55。Zhang Z(2012)微软kinect传感器及其效果。MultiMedia IEEE 19(2):4-10。MathSciNetCrossRefGoogle学术搜索
-
56。Besl PJ,McKay ND(1992)一种三维形状配准方法。IEEE Trans Pattern Anal Mach Intell 14(2):239-256。CrossRefGoogle学术搜索
-
57。Newcombe RA,Izadi S,Hilliges O,Molyneaux D,Kim D,Davison AJ,Kohi P,Shotton J,Hodges S,Fitzgibbon A(2011)KinectFusion:real-time dense surface mapping and tracking In:Proceedngs of International Symposium on Mixed和增强现实,127-136。谷歌学术
-
58。Kahler O,Prisacariu V,Ren C,Sun X,Torr P,Murray D(2015)移动设备上的深度图像的非常高的帧速率体积积分。IEEE Trans Vis Comput Graph 21(11):1241-1250。CrossRefGoogle学术搜索
-
59。Salas-Moreno RF,Glocker B,Kelly PHJ,Davison AJ(2014)Dense planar SLAM In:Proceedngs of International Symposium on Mixed and Augmented Reality,157-164。谷歌学术
-
60。Salas-Moreno RF,Newcombe RA,Strasdat H,Kelly PHJ,Davison AJ(2013)SLAM ++:对象级别的同步定位和映射在:IEEE会议计算机视觉和模式识别,1352-1359。谷歌学术
-
61。Tateno K,Tombari F,Navab N(2016)当2.5D还不够时:密集SLAM上的同时重建,分割和识别,IEEE国际机器人与自动化会议(ICRA),2295-2302。谷歌学术
-
62。Henry P,Krainin M,Herbst E,Ren X,Fox D(2012)RGB-D映射:使用Kinect风格的深度相机进行室内环境的密集3D建模。Int J Robot Res 31(5):647-663。CrossRefGoogle学术搜索
-
63。Endres F,Hess J,Engelhard N,Sturm J,Cremers D,Burgard W(2012)对RGB-D SLAM系统的评估在:国际机器人与自动化会议论文集,1691-1696。谷歌学术
-
64。SteinbrückerF,Sturm J,Cremers D(2011)来自密集RGB-D图像的实时视觉测距法In:IEEE国际会议计算机视觉研讨会论文集,719-722。谷歌学术
-
65。Whelan T,Kaess M,Leonard JJ,McDonald J(2013)用于大规模密集RGB-D SLAM的基于变形的环闭合在:智能机器人和系统国际会议论文集,548-555。谷歌学术
-
66。Whelan T,Leutenegger S,Moreno RS,Glocker B,Davison A(2015)ElasticFusion:密集猛击没有姿势图在:机器人学报:科学与系统。doi:10.15607 / RSS.2015.XI.001。
-
67。Gauglitz S,Sweeney C,Ventura J,Turk M,HöllererT(2012)实时跟踪和映射来自普通和仅旋转摄像机运动In:Proceedngs of International Symposium on Mixed and Augmented Reality,13-22。谷歌学术
-
68。Pirchheim C,Schmalstieg D,Reitmayr G(2013)在基于关键帧的SLAM中处理纯相机旋转In:Proceedngs of International Symposium on Mixed and Augmented Reality,229-238。谷歌学术
-
69。Herrera C,Kim K,Kannala J,Pulli K,HeikkiläJ,et al(2014)Dt-slam:deferred triangulation for robust SLAM In:Proceedings of 3D Vision,609-616。谷歌学术
-
70。Mulloni A,Ramachandran M,Reitmayr G,Wagner D,Grasset R,Diaz S(2013)用户友好的SLAM初始化在:Proceedngs of International Symposium on Mixed and Augmented Reality,153-162。谷歌学术
-
71。Arth C,Pirchheim C,Ventura J,Schmalstieg D,Lepetit V(2015)从2.5 d地图即时室外定位和SLAM初始化。IEEE Trans Vis Comput Graph 21(11):1309-1318。CrossRefGoogle学术搜索
-
72。Bleser G,Wuest H,Stricker D(2006)在部分已知和动态场景中的在线相机姿态估计在:混合和增强现实国际研讨会论文集,56-65。谷歌学术
-
73。Tamaazousti M,Gay-Bellile V,Collette SN,Bourgeois S,Dhome M(2011)通过利用环境的部分知识在运动重建中对结构进行非线性细化在:IEEE计算机视觉和模式识别会议论文集,3073 -3080。谷歌学术
-
74。Civera J,Bueno DR,Davison A,Montiel JMM(2009)Camera self-calibration for sequential bayesian structure from motion in:Proceedings of International Conference on Robotics and Automation,403-408。谷歌学术
-
75。Taketomi T,HeikkiläJ(2015)单眼猛击的焦距变化补偿在:国际图像处理会议论文集,1-5。谷歌学术
-
76。Pollefeys M,Koch R,Gool LV(1999)尽管有不同的和未知的内部摄像机参数,但仍进行自校准和度量重建。Int J Comput Vis 32(1):7-25。CrossRefGoogle学术搜索
-
77。Lovegrove S,Patron-Perez A,Sibley G(2013)样条融合:视觉惯性融合的连续时间表示,应用于卷帘快门相机在:Proceedings British Machine Vision Conference,93.1-93.12。谷歌学术
-
78。Kerl C,Stueckler J,Cremers D(2015)使用滚动快门RGB-D相机的密集连续时间跟踪和映射在:计算机视觉国际会议论文集,2264-2272。谷歌学术
-
79。Kim JH,Cadena C,Reid I(2016)滚动快门相机的直接半密集SLAM在:机器人与自动化国际会议论文集,1308-1315。谷歌学术
-
80。Lee T,HöllererT(2008)用于无标记增强现实的多线程混合特征跟踪。IEEE Trans Vis Comput Graph 15(未定义):355-368。谷歌学术
-
81。Knorr SB,Kurz D(2016)利用用户的脸来进行手持式单眼SLAM的绝对比例估计在:混合和增强现实国际研讨会的进展,11-17。谷歌学术
-
82。Mustaniemi J,Kannala J,SärkkäS,Matas J,HeikkiläJ(2016)基于惯性的尺度估计,用于移动设备上的运动结构。CORR。ABS / 1611.09498。谷歌学术
-
83。Tamura H,Kato H(2009)关于建立ar / mr几何登记和跟踪方法基准测试方案的国际自愿活动的提案在:混合和增强现实国际研讨会,233-236。谷歌学术
-
84。Makita K,Okuma T,Ishikawa T,Nigay L,Kurata T(2012)基于虚拟现实模型的TrakMark中AR / MR相机跟踪方法的基准测试:IEEE ISMAR 2012跟踪方法和应用研讨会,1-4。谷歌学术
-
85。Martull S,Martorell MP,Fukui K(2012)逼真的CG立体图像数据集与地面实况视差图在:ICPR2012 Workshop TrakMark2012,40-42。谷歌学术
-
86。Sturm J,Engelhard N,Endres F,Burgard W,Cremers D(2012)评估RGB-D SLAM系统的基准在:智能机器人和系统国际会议论文集。谷歌学术
-
87。Geiger A,Lenz P,Urtasun R(2012)我们准备好进行自动驾驶吗?kitti视觉基准套件In:IEEE会议计算机视觉和模式识别会议论文集。谷歌学术
-
88。Nardi L,Bodin B,Zia MZ,Mawer J,Nisbet A,Kelly PHJ,Davison AJ,LujánM,O'Boyle MFP,Riley GD,Topham N,Furber SB(2015)推出SLAMBench,一种性能和准确度基准测试方法SLAM In:IEEE国际机器人与自动化会议,5783-5790。谷歌学术
-
89。Uchiyama H,Taketomi T,Ikeda S,做Monte Lima JPS(2015)[海报] Abecedary跟踪和制图:跟踪比赛的工具包在:IEEE国际混合和增强现实研讨会,198-199。谷歌学术
-
90。开源计算机视觉。http://opencv.org/。2017年5月24日访问。
-
91。cvsba:sba库的OpenCV包装器。http://www.uco.es/investiga/grupos/ava/node/39。2017年5月24日访问。
版权信息
开放获取本文根据知识共享署名4.0国际许可(http://creativecommons.org/licenses/by/4.0/)的条款进行分发,允许在任何媒体中不受限制地使用,分发和复制,前提是您提供对原作者和来源的适当信用,提供知识共享许可的链接,并指出是否进行了更改。