翻译:视觉 SLAM 概述:从传统到语义《An Overview on Visual SLAM: From Tradition to Semantic》更新ing

摘要

视觉SLAM(VSLAM)由于其传感器成本低、易于与其他传感器融合、环境信息更丰富等优势而得到迅速发展。传统的基于视觉的 SLAM 研究取得了许多成就,但在具有挑战性的环境中可能无法取得预期的结果。深度学习推动了计算机视觉的发展,深度学习与SLAM的结合越来越受到关注。语义信息作为高级环境信息,可以使机器人更好地了解周围环境。本文从传统VSLAM和语义VSLAM结合深度学习两个方面介绍了VSLAM技术的发展。对于传统的VSLAM,我们详细总结了间接和直接方法的优缺点,并给出了一些经典的VSLAM开源算法。此外,我们专注于基于深度学习的语义 VSLAM 的开发。从典型的神经网络 CNN 和 RNN 开始,我们详细总结了 VSLAM 系统的神经网络改进。之后,我们重点介绍目标检测和语义分割对 VSLAM 语义信息引入的帮助。我们相信,未来智能时代的发展离不开语义技术的助力。将深度学习引入VSLAM系统提供语义信息,可以帮助机器人更好地感知周围环境,为人们提供更高层次的帮助。

关键词:SLAM, 深度学习, 神经网络,计算机视觉,语义, 智能时代。

1. Introduction

人们需要移动机器人自己完成一些任务,这就需要机器人能够适应陌生的环境。因此,能够在陌生环境中进行定位和建图的 SLAM [1](同时定位和建图)已成为自主移动机器人的必备能力。自 1986 年首次提出以来,SLAM 受到了众多研究人员的广泛关注,并在机器人、虚拟现实等领域迅速发展。 SLAM是指基于位置和地图的自定位,基于自定位构建增量地图。主要用于解决机器人在未知环境中移动时的定位和地图构建问题[2]。 SLAM作为一项基础技术,早期已应用于移动机器人定位导航。随着计算机技术(硬件)和人工智能(软件)的发展,机器人研究受到越来越多的关注和投入。许多研究人员致力于使机器人更加智能。 SLAM被认为是促进移动机器人真正自主的关键[3]。

有学者根据采用的传感器不同,将 SLAM 分为激光 SLAM 和视觉 SLAM(VSLAM)[4]。与VSLAM相比,由于起步较早,国外的激光SLAM研究相对成熟,长期以来一直被认为是移动机器人的首选方案。与人眼类似,VSLAM 主要以图像作为环境感知的信息源,比激光 SLAM 更符合人类的理解,信息量更多。近年来,基于相机的 VSLAM 研究引起了研究人员的广泛关注。由于价格便宜、易于安装、环境信息丰富、易于与其他传感器融合等优点,出现了许多基于视觉的 SLAM 算法[5]。 VSLAM 具有环境信息更丰富的优势,被认为能够赋予移动机器人更强的感知能力,并应用于一些特定场景。因此,本文将重点放在 VSLAM 上,并梳理出由此衍生的算法。基于各种激光雷达的SLAM不在本文讨论范围内。有兴趣的读者可以参考文献[6,7,8]等来源。

作为自主机器人导航的解决方案之一,传统的VSLAM本质上是基于图像几何特征的简单环境理解[9]。 因为传统的 VSLAM 只利用环境的几何特征,如点、线等。面对这种低层次的几何信息环境,传统的VSLAM可以达到高度的实时性。 面对光照、纹理和动态物体等普遍的变化,传统的VSLAM显示出明显的不足,在位置精度和鲁棒性方面存在缺陷[10]。 虽然传统视觉SLAM构建的地图包含了环境中的重要信息,在一定程度上满足了机器人的定位需求, 但不足以支持机器人的自主导航和避障任务。 此外,它不能满足智能机器人与环境和人类的交互需求[11]。

人们对智能移动机器人的需求与日俱增,对机器人的自主能力和人机交互能力提出了很高的要求[12]。传统的 VSLAM 算法可以满足机器人的基本定位导航需求,但无法完成“帮我关卧室门”、“去厨房给我拿苹果”等更高级的任务。这样的目标,机器人需要识别场景中物体的信息,找出它们的位置并构建语义图。借助语义信息,将数据关联从传统的像素级升级到对象级。此外,感知几何环境信息被赋予语义标签以获得高级语义图。它可以帮助机器人理解自主环境和人机交互[13]。我们认为,深度学习的快速发展为将语义信息引入 VSLAM 提供了桥梁。尤其是在语义图构建中,将其与 VLAM 相结合,可以使机器人获得对场景的高级感知和理解。它显着提高了机器人与环境之间的交互能力[14]。

2016 年,Cadena 等人 [15]首先提出将SLAM的发展分为三个阶段。在他们的描述中,我们处于鲁棒感知阶段,如图1所示。他们从经典、算法和鲁棒三个方面描述了SLAM在不同时期的重点和贡献。参考 [16] 总结了 2010 年到 2016 年基于视觉的 SLAM 算法的发展,并提供了一个工具包来帮助初学者。优素福等人 [17] 讨论了 VSLAM 的基本框架,并总结了几个数学问题,以帮助读者做出最佳选择。巴夫勒等人 [18]总结了机器人SLAM技术,指出了机器人场景理解的发展趋势。

Servieres 等人从视觉和视觉惯性的融合出发 [19]回顾和比较了重要的方法,总结了SLAM中出现的优秀算法。阿扎姆等人 [20]对基于特征的方法进行了全面研究。他们根据在环境中观察到的视觉特征对所审查的方法进行了分类。此外,他们还提出了未来SLAM发展可能遇到的问题和解决方案。参考。 [21]详细介绍了基于单目、双目、RGB-D和视觉-惯性融合的SLAM方法,并给出了存在的问题和未来的方向。参考[22]描述了VSLAM从几何到深度学习的机遇和挑战,并预测了VSLAM在未来语义时代的发展前景。

图 1. SLAM 发展时代概览。 SLAM 的发展经历了三个主要阶段:理论框架、算法分析和高级鲁棒感知。 时间点没有严格限制,而是代表了SLAM在一定阶段的发展和人们感兴趣的热点问题。图 1. SLAM 发展时代概览。 SLAM 的发展经历了三个主要阶段:理论框架、算法分析和高级鲁棒感知。 时间点没有严格限制,只是代表了SLAM在一定阶段的发展和人们感兴趣的热点问题。

如您所见,有一些基于视觉的 SLAM 技术的调查和总结。 但大多只关注 VSLAM 的一个方面,没有更全面地总结 VSLAM 的发展历程。 此外,上述评论更多地关注传统的视觉SLAM算法,而语义SLAM结合深度学习没有详细介绍。 因此,有必要对基于视觉的 SLAM 算法进行全面回顾,以帮助研究人员学生在视觉 SLAM 技术方面展开努力,以了解这一大领域的概况。

为了让读者对 SLAM 领域有更深入、更全面的了解,我们回顾了通用 SLAM 算法从诞生到现在的历史。此外,我们总结了推动 SLAM 解决方案技术演进的关键解决方案。 SLAM的工作从点问题的形成到最常用的状态方法进行了描述。我们不仅仅关注一个方面,而是提出了关键的主要方法来展示将 SLAM 方法带到当前状态的研究之间的联系。此外,我们回顾了 SLAM 从传统到语义的演变,这一视角涵盖了历史上主要的、有趣的和领先的设计方法。在此基础上,我们对深度学习 SLAM 算法进行了全面总结。语义 VSLAM 也进行了详细的解释,以帮助读者更好地理解语义 VSLAM 的特点。我们认为我们的工作可以帮助读者更好地理解机器人环境感知。我们在语义 VSLAM 方面的工作可以为读者提供更好的思路,并为未来的 SLAM 研究甚至机器人自主感知提供有用的参考。因此,本文对基于视觉的 SLAM 技术的发展进行了全面的补充和更新。此外,本文将基于视觉的 SLAM 的发展分为两个阶段:传统 VSLAM 和集成深度学习的语义 VSLAM。让读者更好地了解VSLAM的研究热点,把握VSLAM的发展方向。我们认为传统的相位 SLAM 问题主要解决算法的框架问题。在语义时代,SLAM 侧重于结合深度学习的高级态势感知和系统鲁棒性。

我们的审查对最先进的技术做出了以下贡献:

  • 我们更全面地回顾了基于视觉的 SLAM 的发展,回顾了基于环境语义信息的同步定位和地图构建领域的最新研究进展。
  • 从卷积神经网络(CNN)和循环神经网络(RNN)开始,我们详细描述了深度学习在 VSLAM 中的应用。 据我们所知,这是第一次从神经网络的角度介绍 VSLAM。
  • 我们详细描述了语义信息与VSLAM的结合,并指出了VSLAM在语义时代的发展方向。 我们主要介绍和总结了语义信息与传统视觉SLAM在系统定位和地图构建方面的突出研究成果,并对传统视觉SLAM和语义SLAM进行了深入比较。 最后,提出了语义SLAM未来的研究方向。

具体来说,在第一节中,本文详细介绍了传统 VSLAM 的特点,包括直接法和基于前端视觉里程计的间接法,并对基于深度相机的 VSLAM 与集成IMU的经典 VSLAM 进行了比较。在第 2 节中,本文分为两部分。我们首先从两个神经网络 CNN 和 RNN 中介绍深度学习和 VSLAM 的结合。我们认为,将深度学习引入语义 VSLAM 是语义 VSLAM 发展的前提。此外,这个阶段也可以看作是语义 VSLAM 的开始。然后,本文从目标检测和语义分割两个方面描述了深度学习将语义 VSLAM 推向高级阶段的过程。所以本文从动态对象的定位、映射和消除三个方面总结了语义VSLAM的发展方向。在第 3 节中,本文介绍了一些主流的 SLAM 数据集,以及该领域的一些优秀实验室。最后,我们总结了当前的研究,并指出了未来VSLAM研究的方向。本文的章节目录如图 2 所示。

图 2. 本文其余部分的结构图。 本文重点介绍语义VSLAM的第二章。 我们认为引入神经网络是语义 VSLAM 的开始。 我们从一个深度神经网络入手,描述了它与VSLAM的结合,然后从基于深度学习的目标检测和语义分割等方面对现代语义VSLAM进行了详细的解释,并进行了总结和展望。
图 2. 本文其余部分的结构图。 本文重点介绍第二章的语义VSLAM。 我们认为引入神经网络是语义 VSLAM 的开始。 我们从一个深度神经网络入手,描述了它与VSLAM的结合,然后从基于深度学习的目标检测和语义分割等方面对现代语义VSLAM进行了详细的解释,并进行了总结和展望。

2. SLAM发展现状

2.1. VSLAM中常用的传感器

VSLAM 中使用的传感器通常包括单目相机、立体相机和 RGB-D 相机。单目摄像头和立体摄像头的原理相似,可以广泛应用于室内外环境。 RGB-D相机作为一种特殊形式的相机,主要通过主动发射红外结构光或计算飞行时间(TOF)来直接获取图像深度。使用方便,但对光敏感,大多数情况下只能在室内使用[23]。活动摄像头作为近几年出现的一种新型摄像头传感器,一张有别于传统摄像头的照片。事件相机就是“事件”,可以简单到“像素亮度变化”。事件相机输出的变化是像素亮度,基于事件相机的SLAM算法仍仅处于初步研究阶段[24]。此外,作为基于视觉的经典SLAM系统,视觉-惯性融合在很多方面都取得了优异的成绩。在图 3 中,我们比较了不同相机的主要特征。

图 3. 不同相机之间的比较。 事件相机不是特定类型的相机,而是可以获取“事件信息”的相机。 “传统相机”工作频率恒定,在拍摄高速物体时存在滞后、模糊、曝光过度等天然缺陷。 然而,事件相机,一种类似于人眼的基于神经的信息处理方法,没有这些问题。
图 3. 不同相机之间的比较。 事件相机不是特定类型的相机,而是可以获取“事件信息”的相机。 “传统相机”工作频率恒定,在拍摄高速物体时存在滞后、模糊、曝光过度等天然缺陷。 然而,事件相机,一种类似于人眼的基于神经的信息处理方法,没有这些问题。

2.2. 评估工具和数据集

SLAM 问题已经存在了几十年。 在过去的几十年里,涌现了许多优秀的算法,尽管侧重点不同,但每种算法都不同程度地促进了 SLAM 技术的快速发展。 每个算法都必须进行公平比较。 一般来说,我们可以从耗时、复杂度和准确性等多个角度来评估一个 SLAM 算法。 然而,最重要的是我们最关注它的准确性。 ATE(Absolute Trajectory Error)和RPE(Relative Pose Error)是用来评估SLAM准确性的两个最重要的指标。 相对位姿误差用于计算相同两个时间戳中位姿变化的差异,适用于估计系统漂移。 绝对轨迹误差直接计算相机位姿的真实值与SLAM系统的估计值之间的差异。 ATE和RPE的基本原理如下。

假设:给定的姿态估计是Δ。 下标代表时间t(或帧),这里假设估计姿态和真实姿态的每一帧的时间是对齐的,总帧数相同。

ATE:绝对轨迹误差是估计位姿与真实位姿的直接差异,可以直接反映算法的准确性和全局轨迹的一致性。 需要注意的是,估计的pose和ground truth通常不在同一个坐标系,所以我们需要先对它们进行配对:对于stereo SLAM和RGB-D SLAM,尺度是统一的,所以我们需要计算一个变换矩阵 通过最小二乘法 S ∈ SE (3) 从估计姿态到真实姿态。 对于具有尺度不确定性的单目相机,我们需要计算从估计位姿到真实位姿的相似变换矩阵 S∈ Sim (3)。 所以帧 i 的 ATE 定义如下:=

4. 语义VSLAM

语义 SLAM 是指一种 SLAM 系统,它不仅可以获取未知环境的几何信息和机器人运动信息,还可以检测和识别场景中的目标。它可以获得语义信息,例如它们的功能属性和与周围物体的关系,甚至可以理解整个环境的内容[134]。传统的 VSLAM 以点云等形式表示环境,对我们来说是一堆毫无意义的点。为了从几何和内容层面感知世界并为人类提供更好的服务,机器人需要进一步抽象这些点的特征并理解它们[135]。随着深度学习的发展,研究人员逐渐意识到它可能有助于解决 SLAM 问题 [136]。语义信息可以帮助 SLAM 在更高层次上理解地图。此外,它减少了 SLAM 系统对特征点的依赖,提高了系统的鲁棒性 [137]。

现代语义VSLAM系统离不开深度学习的帮助,通过学习获得的特征属性和关联关系可以用于不同的任务[138]。 作为机器学习的一个重要分支,深度学习在图像识别[139]、语义理解[140]、图像匹配[141]、3D重建[142]等任务中取得了显著成果。 深度学习在计算机视觉中的应用可以极大地缓解传统方法遇到的问题[143]。 传统的 VSLAM 系统在许多方面都取得了可喜的成绩,但仍有许多具有挑战性的问题需要解决 [144]。 参考[145]详细总结了基于深度学习的VSLAM,并指出了传统VSLAM存在的问题。 这些工作 [146,147,148,149] 建议应该使用深度学习来替代传统 SLAM 的一些模块,例如闭环和姿态估计,以改进传统方法。

机器学习是人工智能的一个子集,它使用统计技术提供从计算机“学习”数据的能力,而无需复杂的编程。与特定于任务的算法不同,深度学习是基于学习数据的机器学习的一个子集。它的灵感来自于所谓的人工神经网络的功能和结构。深度学习通过学习将世界显示为更简单的概念和层次结构,并根据不太抽象的概念计算更抽象的表示,从而获得了极大的灵活性和能力。传统机器学习和深度学习最重要的区别在于数据扩展的性能。当数据非常小时,深度学习算法就不能很好地工作,因为它们需要大数据来完美地识别和理解它。机器学习算法的性能取决于识别和提取特征的准确性。另一方面,深度学习算法从数据中识别这些高级特征,从而减少为每个问题开发全新特征提取器的工作量。深度学习是机器学习的一个子集,与传统的机器学习算法相比,它已被证明是行业中一个更强大、更有前途的分支。它以其分层的特性实现了许多传统机器学习无法实现的功能。 SLAM 系统需要收集环境中的大量信息,因此需要计算的数据量非常巨大,而深度学习模型正好适合解决这个问题。

本文认为语义 VSLAM 是一个不断发展的过程。 早期,一些研究人员试图通过使用 CNN 等神经网络提取环境中的语义信息来提高 VSLAM 的性能。 在现代阶段,目标检测、语义分割等深度学习方法是推动语义 VSLAM 发展的有力工具。 因此,在本章中,我们将首先描述典型神经网络在 VSLAM 中的应用。 我们认为这是现代语义 VSLAM 发展的前提。 神经网络在 VSLAM 中的应用为现代语义 VSLAM 提供了模型。 本文认为,神经网络是将语义信息引入现代语义VSLAM系统并获得快速发展的桥梁。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值