Beabbit读论文系列(一):A Survey on Global LiDAR Localization: Challenges, Advances and Open Problems

最近在学习全局定位相关内容,突然发现这篇综述,于是在此记录。建议大家结合着看,有些参考文献还是比较重要的。

摘要

关于自身姿势的知识是所有移动机器人应用的关键。因此,姿态估计是移动机器人的核心功能的一部分。在过去的二十年里,激光雷达扫描仪已经成为机器人定位和测绘的标准传感器。本文概述了基于lidar的全局定位的最新进展和进展。我们首先制定问题并探索应用范围。然后,我们回顾了该方法,包括最近几个主题的进步,例如地图、描述符提取和一致性检查。本文的内容组织在三个主题下。第一个主题涉及全局位置检索和局部姿态估计的组合。第二个主题是将单次测量升级为顺序全局定位的顺序测量。最后,第三个主题侧重于将单机器人全局定位扩展到多机器人系统中的多机器人定位。我们通过对全球激光雷达定位的开放挑战和有希望的方向的讨论来结束调查。据我们所知,这是移动机器人全局激光雷达定位的第一个综述。
关键词:激光雷达点云、全局定位、位置识别、姿态估计

1 导语

自主导航对于广泛的移动机器人应用是必不可少的,包括道路上的自动驾驶汽车[1]和农业中的农业机器人[2]。为了实现这一点,机器人定位在几乎所有导航系统中都发挥着不可或缺的作用。今天的移动机器人任务要求这些系统在大规模和不断变化的环境中运行,这对机器人定位和映射提出了潜在的挑战。

全球导航卫星系统(GNSS)是户外机器人导航中广泛使用的设施。GNSS 主要从两个方面促进机器人定位。首先,GNSS 融合方法可以以有限的误差连续跟踪机器人的局部运动,例如 GNSS 辅助同步定位和映射 (SLAM) [3]。另一个潜在的方面是 GNSS 可以提供有关全局位置的信息。这些信息可以帮助机器人初始化其在地球上的位置,如果机器人定位失败,则恢复其位置。事实上,这两个方面都与两种典型的定位问题有关:姿态跟踪和全局定位,这些定位是在著名的概率机器人[4]中引入的。与姿态跟踪问题不同,全局定位要求机器人从头开始在给定的地图上全局定位自己。因此,位姿空间一般大于位姿跟踪问题,导致一个具有挑战性的问题需要解决。

GNSS严重依赖卫星发送的数据质量,这使得它在GNSS不友好的区域(如室内、密集的城市环境或森林)是不切实际的。在这种情况下,超宽带(UWB)和其他信号发射器[5]可以部署用于全局定位。外部标记和标签[6]还可以为视觉辅助定位提供全局位置和方向信息。这些方法依赖于外部基础设施的分布,并且通常不需要改变环境。因此,在没有改变环境的情况下使用机载传感器是移动机器人的更一般的解决方案。视觉图像是信息丰富的,很容易从相机中获得。早期的方法使用摄像机实现全局视觉定位[7],这是一个显著相关性的话题,引起了许多研究兴趣[8]。

激光探测和测距 (LiDAR) 传感器在过去 25 年取得了重大进展。早期的激光扫描仪只提供低分辨率和范围[4]的二维激光点。传感器技术的发展推动了从2D到3D的激光雷达传感,从稀疏到相对密集的点云。在 2007 年 DARPA 城市挑战赛中,Velodyne HDL64E 传感器安装在完成比赛的六个自动驾驶车辆中的五个上 [9]。激光雷达传感器现在正成为机器人社区的标准设备。激光雷达传感器通过发射和接收光直接提供距离测量。与摄像机的视觉图像相比,这些远程测量对光照和外观变化具有更强的鲁棒性,使得全局激光雷达定位在大规模和不断变化的环境中更加实用。这促使我们使用激光雷达传感器对全局定位进行全面调查。

1.1 问题提出以及论文结构

给定一个先验地图 M \mathbf{M} M和输入数据 D \mathbf{D} D,机器人的状态估计 X \mathbf{X} X可以用贝叶斯公式表述为: X ^ = arg ⁡ max ⁡ X p ( X ∣ D , M ) = arg ⁡ max ⁡ X p ( D ∣ X , M ) p ( X ∣ M ) ( 1 ) \hat{\mathbf{X}}=\arg\max_{\mathbb{X}}p(\mathbf{X}\mid\mathbf{D},\mathbf{M})=\arg\max_{\mathbb{X}}p(\mathbf{D}\mid\mathbf{X},\mathbf{M})p(\mathbf{X}\mid\mathbf{M}) (1) X^=argXmaxp(XD,M)=argXmaxp(DX,M)p(XM)(1)
其中 p ( X ∣ D , M ) p(\mathbf{X}\mid\mathbf{D},\mathbf{M}) p(XD,M)是给定状态和地图匹配的概率, p ( X ∣ M ) p(\mathbf{X}\mid\mathbf{M}) p(XM) X {X} X的先验估计,地图 M \mathbf{M} M是机器人定位的关键因素,在测量具体的定位方法之前,在第2节中介绍了经典的面向定位的LiDAR地图。具体来说,LiDAR 地图分为三种类型:第 2.1 节中的基于关键帧的子图、第 2.2 节中的全局特征图和第 2.3 节中的全局度量图。

对于局部位姿跟踪,先验估计 p ( X ∣ M ) p(\mathbf{X}\mid\mathbf{M}) p(XM)通常遵循特定的单峰分布,例如 p ( X ) ∼ N ( ⋅ ) p(\mathbf{X})\sim\mathcal{N}(\cdot) p(X)N()。然而,对于全局定位,机器人缺乏对它在哪里的知识,位姿误差不能有界。在经典的概率机器人[4]中,概率 p ( X ∣ M ) p(\mathbf{X}\mid\mathbf{M}) p(XM)通常遵循均匀分布,没有机器人姿态的先验,即 p ( X ∣ M ) = 1 ∣ X ∣ p(\mathbf{X}\mid\mathbf{M})=\frac1{|\mathbb{X}|} p(XM)=X1。得到的估计问题由下式给出:
X ^ = arg ⁡ max ⁡ X p ( D ∣ X , M ) ( 2 ) \hat{\mathbf{X}}=\arg\max_\mathbb{X}p(\mathbf{D}\mid\mathbf{X},\mathbf{M})\quad(2) X^=argXmaxp(DX,M)(2)
这是在先验地图上全局定位问题的一般公式。解的搜索空间实际上远大于局部位姿跟踪问题,使其更具挑战性。

我们以单个输入和单个输出开始这个问题。如果 D \mathbf{D} D 是时间戳 t t t处的单个 LiDAR 点云 z t \mathbf{z}_t zt,则问题是估计一个全局位姿 x t \mathbf{x}_t xt。这个问题被称为单次全局定位问题,并在本调查的第 3 节中进行了全面调查。单次全局定位问题可以表述为最大似然估计 (MLE) 问题,如下所示:
x ^ t = arg ⁡ max ⁡ X p ( z t ∣ x t , M ) ( 3 ) \hat{\mathbf{x}}_t=\arg\max_\mathbb{X}p(\mathbf{z}_t\mid\mathbf{x}_t,\mathbf{M})\quad(3) x^t=argXmaxp(ztxt,M)(3)
在第 3 节中,我们根据两种不同方法的耦合程度进一步对单镜头方法进行分类:位置识别和姿态估计,这是本次调查的两个主要类别。直观地说,位置识别以检索方式实现了全局定位,而姿态估计提供了细粒度的度量姿态。耦合度在3.1节、3.2节、3.3节和3.4节中依次增加。在这些小节中,激光雷达测量 z t \mathbf{z}_t zt和全局映射 M \mathbf{M} M的形式也相应变化。图 3 和第 3 节介绍了详细的说明。

值得注意的是,在机器人移动[11]时,测量 z t \mathbf{z}_t zt在一个时间戳[10]或一个累积的LiDAR子映射上采集一次LiDAR扫描。它们都被描述为LiDAR点云,可以被认为是单镜头全局定位系统的一种度量。我们不区分这两种测量,尽管具有稀疏 LiDAR 扫描的单次全局定位比密集 LiDAR 子图更具挑战性。

通常,LiDAR 地图的大小远大于单个 LiDAR 点云的大小,即 ∣ M ∣ > ∣ z t ∣ |\mathbf{M}|>|\mathbf{z}_t| M>zt,使得单镜头全局定位问题难以解决。为了提高全局定位的性能,一种直接方法是使用连续的扫描流或子图作为测量,即 D = Z t ≜ { z k = 1 , ⋯ z t } \mathbf{D}=\mathbf{Z}_t\triangleq\{\mathbf{z}_{k=1},\cdots\mathbf{z}_t\} D=Zt{zk=1,zt}。然后将原始问题转换为连续全局定位问题,这将在本综述的第 4 节中讨论。连续全局定位可以表述为估计 X t {\mathbf{X}_{t}} Xt:
X ^ t = arg ⁡ max ⁡ X ∏ k = 1 t p ( z k ∣ x k , M ) p ( X t ) ( 4 ) \hat{\mathbf{X}}_t=\arg\max_{\mathbb{X}}\prod_{k=1}^tp(\mathbf{z}_k\mid\mathbf{x}_k,\mathbf{M})p(\mathbf{X}_t)\quad(4) X^t=argXmaxk=1tp(zkxk,M)p(Xt)(4)
其中 p ( X t ) p(\mathbf{X}_t) p(Xt)包含先验信息,表示连续量 X t \mathbf{X}_t Xt的连接。估计问题可以通过批量处理方式融合一系列单次全局定位结果来解决,类似于用于全局视觉定位的 SeqSLAM [12]。通过求解这一点,全局定位可以提供相对于地图的机器人姿态轨迹。注意到额外的里程计信息可以通过约束位姿空间[13]来帮助改进顺序全局定位,输入数据表示为 D = { Z t , U t − 1 } \mathrm{D}=\{\mathrm{Z}_t,\mathrm{U}_{t-1}\} D={Zt,Ut1},其中 , U ,\mathrm{U} ,U表示移动机器人的里程计输入。

然而,在大部分的实际应用中,我们可能只对具有连续输入的全局姿态的最后一个估计 x t \mathbf{x}_t xt的感兴趣,例如 x t \mathbf{x}_t xt作为局部姿态跟踪的初始猜测。另一方面,单次全局定位结果可能不太准确,并且需要后端来跟踪多个假设。在这种情况下,连续全局定位可以看作是估计 x t \mathbf{x}_t xt的马尔可夫过程,公式如下: x ^ t ∝ p ( z t ∣ x t , M ) ⏟ Measurement p ( x t ∣ x t − 1 , u t − 1 ) ⏟ Motion p ( X t − 1 ) ⏟ Prior ( 5 ) \hat{\mathbf{x}}_t\propto\underbrace{p(\mathbf{z}_t\mid\mathbf{x}_t,\mathbf{M})}_{\text{Measurement}}\underbrace{p(\mathbf{x}_t\mid\mathbf{x}_{t-1},\mathbf{u}_{t-1})}_{\text{Motion}}\underbrace{p(\mathbf{X}_{t-1})}_{\text{Prior}}\quad(5) x^tMeasurement p(ztxt,M)Motion p(xtxt1,ut1)Prior p(Xt1)(5)
其中测量模型和运动模型和 z t \mathbf{z}_t zt u t − 1 \mathbf{u}_{t-1} ut1相关,先验估计 p ( X t − 1 ) {p(\mathbf{X}_{t-1})} p(Xt1)由先前的递推计算决定。该公式也被称为定位的递归滤波,一个有代表性的工作是蒙特卡罗定位(MCL)[14]。这里的批处理处理和递归滤波都是机器人状态估计的两个主要分支[15]。

从上述方程可以看出,单镜头 p ( z k ∣ x k , M ) p(\mathbf{z}_k\mid\mathbf{x}_k,\mathbf{M}) p(zkxk,M) 在顺序全局定位问题中仍然起着关键作用。从另一个角度来看,我们还可以基于位置识别和姿态估计对连续全局定位进行分类,从而弥补第 3 节和第 4 节之间的差距。我们将分别在 4.1 节和第 4.2 节中介绍连续位置匹配方法和连续度量方法。前者主要融合连续位置识别结果,后者侧重于估计度量姿态。同时,我们还将在这两个小节中继续讨论批处理和递归过滤。

第 3 节和第 4 节调查了全球 LiDAR 定位的主流方法。在实际场景中,全局定位方法在极端条件下不能很好地工作,例如在过时的地图上定位或在另一个机器人的地图上定位机器人。在第 5 节中,我们回顾了几种可以提高此类条件下性能的流行方法,特别是专注于多机器人情况。最后但重要的是,在第 6 节中,讨论了全局 LiDAR 定位的开放性问题作为未来研究的结论。

总之,我们的论文结构类似于鱼,如图1所示。第1节详细介绍了全局定位问题和本次调查的范围。然后,我们在第 2 节中介绍了三种类型的地图框架。第 3 节和第 4 节然后概述了基于测量数量的现有方法:单次或顺序。前者侧重于在给定的地图上匹配单个 LiDAR 点云,而后者采用顺序测量来近似地面实况姿势。然后在第 5 节中,我们将全局定位问题扩展到多机器人应用的跨机器人定位问题。最后,第 6 节提供了有关全球 LiDAR 定位的开放挑战和新兴问题的讨论。本次调查的简要结论在第 7 节中介绍。
图1鱼形纸张结构。本调查从鱼头的问题制定和相关介绍开始。然后鱼身体部位包含全局 LiDAR 定位问题的主要子主题:地图框架、单次和顺序全局定位和多机器人定位。最后,在鱼尾介绍了对开放问题的扩展讨论。我们还在每个部分标题上展示了上面的图形插图。

1.2 典型情况

具体的全局定位方法根据机器人测绘与定位的实际情况而变化。三种典型情况如下所示。

1.2.1 回环检测

在 SLAM 框架中,闭环检测 (LCD) 是一种用于确定机器人是否返回到先前访问的位置或位置的方法。然而,简单地识别重新访问的位置不足以在SLAM中执行闭环。通常,还需要当前位置和先前位置之间的相对变换,就像基于图的一致映射方法的情况一样[16,17]。在本文中,我们交替使用术语 LCD 和闭环,因为两者都涉及检测重新访问的位置和估计相对转换。 LCD通常被认为是一个序列内问题。序列内是指测量和地图来自同一序列的场景,保持机器人旅程的连续性。相反,序列间是指测量和映射来自不同数据序列的实例,这些序列可以在不同的时间帧下发生。这两个术语也出现在 Wild-Places 数据集 [18] 中。

1.2.2 重定位

重定位有助于机器人在姿势跟踪失败或机器人被绑架时恢复。此外,它可用于在导航开始时激活机器人。闭环检测 (LCD) 和重定位之间的根本区别在于所使用的数据序列:重定位被分类为序列间问题,其中测量和地图是从不同的数据序列中获得的。值得注意的是,在长期多会话序列的情况下,重定位可能会带来重大挑战,例如试图在过时的点云图上重新定位 LiDAR 扫描。此外,在某些情况下,重定位的位姿空间 ∣ X ∣ \left|\mathbb{X}\right| X可以大于LCD,因为在重新定位中没有先验信息,而LCD可以使用里程计信息作为粗略的初始估计,从而将位姿空间减少到更小的尺寸。

1.2.3 多机器人定位

可以使用增量 SLAM 或其他映射技术从多个机器人生成多个在线地图。这些地图可能有部分重叠,但在自己的坐标下。多机器人定位,或多机器人映射,旨在在另一个机器人的地图上全局定位机器人。更具体地说, D \mathbf{D} D M \mathbf{M} M来自不同机器人,并且需要估计所有机器人的姿态。理论上,跨机器人定位问题与单机器人重定位[4]相同,但在多机器人场景中。相关技术也可用于离线地图合并应用程序。例如,跨机器人定位是在单个机器人收集的多个会话上进行的,用于长期使用,而挑战在于透视变化可能发生在长期条件下。图 2 说明了三个常见场景,其中机器人需要估计其当前测量值与其自身或另一个机器人地图之间的相对变换。这种能力通常被称为全局定位,它可以通过各种传感器和融合的传感器模式来实现。本调查特别关注全局 LiDAR 定位问题以及与之相关的技术和开放问题。
图 2 三种典型情况。从上到下:单机器人序列内液晶显示器(闭环);单机器人间序列重新定位;跨机器人序列间定位。蓝色填充框表示测量(LiDAR 扫描或子图)。橙色线可能是全局定位问题的相对转换
###1.3 和以往综述的关系
Lowry等人[7]对2015年的视觉位置识别进行了全面的综述。他们首先讨论了“地点”的定义,并介绍了视觉位置识别的相关技术。一般的位置识别调查[19]从多个角度回顾了位置识别主题,包括传感器模式、挑战和数据集。然而,位置识别通过检索确定机器人是否重新访问先前的位置,这不等于全局定位的概念。Tift等人[20]回顾了长期视觉定位,并对最先进的方法进行了评估,如基于视觉位置识别(图像检索)和基于结构的摄像机姿态估计。Elhousni等人[21]提出了一种激光雷达定位调查,重点研究了自动驾驶汽车激光雷达辅助姿态跟踪。在这些调查论文 [7, 19, 20, 21] 中没有明确审查 LiDAR 位置识别和姿态估计。从全局 LiDAR 定位的角度来看,我们提出了一个涵盖相关主题的完整调查,例如视觉上的主题 [7, 20]。Cadena等人[22]在2016年提出了SLAM的历史和有前景的研究方向。SLAM支持各种机器人应用。Ebadi等人最近的一篇文章[23]调查了具有挑战性的地下SLAM的最新进展。具体来说,SLAM旨在逐步估计姿态和构造地图,而全局定位估计先验地图上的全局姿态。这两个问题具有一定的相关性。更具体地说,LCD 是现代 SLAM 算法的关键特征,如 Robotics [24] 手册中介绍的。没有闭环或位置识别将SLAM简化为里程计[22]。我们相信这篇调查论文将有助于用户使 LiDAR SLAM 系统更加健壮和准确。

2 全局定位地图

在深入研究方法部分之前,必须引入地图 M \mathbf{M} M进行机器人定位。本节主要关注支持全局定位的地图,并将通用映射分为三个主要集群:基于关键帧的子地图、全局特征地图和全局度量地图。我们列出了三个广泛使用的地图,并讨论了内部地图结构和表示。

2.1 基于关键帧的子地图

基于关键帧的子图是一种非常流行的机器人定位地图结构,特别是在大规模环境中。它由一组关键帧组成,每个关键帧包含一个机器人姿态和一个对齐的子图,以及关键帧[7]之间拓扑或几何连接形式的附加信息。基于关键帧的子图易于维护,非常适合下游导航任务[25]。基于关键帧的映射可以表示为:
M s u b = { m 1 , ⋯   , m s } ( 6 ) \mathrm{M}_{\mathrm{sub}}=\{\mathrm{m}_1,\cdots,\mathrm{m}_s\}\quad(6) Msub={m1,,ms}(6)
其中 s s s 表示子映射的数量。换句话说,如果我们只检索关键帧数据库中的位置,那么 s s s 对应于 X \mathbb{X} X的大小。

基于关键帧的映射有效地离散化整个位姿空间,降低了问题的复杂性。这种离散地图结构特别适合于地点检索,因为每个关键帧都可以被认为是移动机器人的不同“地点”。子地图包含在每个关键帧中可以作为检索的全局描述符,也可以通过附加的度量网格或点来增强几何配准。值得注意的是,关键帧姿势之间的距离在实践中是一个关键因素。例如,如果该距离较大或关键帧分辨率较低,轻量级机器人导航可能需要较少的关键帧(即较小的 s s s ),但代价是定位失败的风险增加。每个子图中的内容可以是稀疏特征或密集指标,将在以下部分中介绍。此外,应该注意的是,基于关键帧的映射可能不适用于某些环境中的全局定位,例如许多本地环境相似的室内或森林区域。在这种情况下,可能会首选全局地图。

2.2 全局特征地图

全局特征图保持稀疏的局部特征点来描述环境。早期的SLAM系统从激光数据中提取地标以支持映射和定位,如维多利亚公园数据集[26]中的树干。这些地标本质上是低维特征点。如今,LiDAR特征点一般具有高维信息[27]。因此,基于特征的对应匹配可以直接用于相对变换估计。更重要的是,局部特征稀疏且易于管理,使得导航系统更加轻量级。

应用此类地图的主要挑战是生成和维护稳定的特征点。例如,高清地图(HD map)是自动驾驶车辆的典型全局特征图。HDmap构造涉及多个车载传感器和高性能计算,维护全局高清地图是昂贵的。对于仅 LiDAR 的全局特征图,需要一个强大的前端特征提取器来确保地图质量。

2.3 全局度量地图

全局度量图是具有描述工作环境的密集度量表示的单个映射。通常,度量和显式表示包括2D/3D点[28]、网格[29]、体素[30]和网格[31]。全局度量图易于使用,可以提供高精度的几何信息。

但是定位,无论是姿势跟踪还是全局定位,都是常见的自主导航系统中的一个块。在大规模环境中,全局度量图可能是资源受限的移动机器人的负担。有人可能会建议,我们可以在保持主要几何属性的同时对密集点进行下采样或压缩[32,33]。但是正如 [34] 所指出的,随着地图大小预算使用原始点减少,定位性能下降。解决这个问题有两种解决方案:一种是使用稀疏的局部特征而不是密集表示,即全局特征图;另一种是将地图空间分割成子地图,即基于关键帧的子地图。地图框架和内容应根据应用场景设计.

值得注意的是,隐式地图表示正变得非常流行,包括非学习[35,36]和基于学习的表示[37,38]。一个著名的工作是正态分布变换 (NDT),它使用概率密度函数作为表示。当前基于学习的隐式表示[37,38]利用神经辐射场(NeRF)[39]导出的技术,与显式表示相比,使用更少的参数[28,29,30,31],由于其连续表示,有可能获得更高的精度。地图表示是SLAM和其他导航相关应用的一个基本但关键的主题。我们建议阅读Rosen等人[40]的评论,供有兴趣该主题的读者阅读。

总之,本节介绍了三种类型的地图。这些地图结构及其内部表示是支持第3节和第4节中全局LiDAR定位的基础。例如,如果涉及位置识别技术,如3.1、3.2和3.3节中的方法,空间离散化对于获得基于关键帧的检索子图是必不可少的。

单镜头全局定位:位置识别和姿态估计

单镜头全局定位方法仅使用单个LiDAR点云来解决位姿估计问题。地点识别是实现这一点的核心主干。通常,位置识别是基于关键帧的子图的判别模型,其中每个关键帧通常由全局描述符和机器人姿态组成。位置识别的基本思想是基于全局描述符检索概率最高的位置,并测量 z t \mathbf{z}_t zt M s u b \mathbf{M}_{sub} Msub之间的相似性。更具体地说,这些全局描述符应该具有一定的区分性:对不同的位置具有区分性,但对于彼此靠近的位置保持相似。

然而,位置识别只能提供粗略的位置作为估计的“姿势”,而局部姿态估计仍然需要通过精确的特征匹配或模拟技术。在本节中,我们将考虑其位置识别和相对姿态估计程度对所有单镜头方法进行分类,如下所示:

  • 3.1节:位置识别方法只使用描述符检索最相似的位置。
  • 3.2节:位置识别和局部姿态估计首先实现位置识别,然后通过定制的姿态估计器估计机器人的姿态。
  • 3.3节:姿态估计耦合位置识别将两个阶段紧密耦合在一起。
  • 3.4:单阶段全局姿态估计直接使用姿态估计直接估计全局地图上的全局姿态。

图 3 显示了位置识别模块和姿态估计模块之间的四种类型的组合。我们还在表1中列出了几个具有代表性的单镜头全局激光雷达定位工作。从地图的角度来看,在3.1、3.2和3.3节中,方法通常依赖于基于关键帧的子图。在第 3.4 节中,全局定位通常基于全局特征图(或还有一个度量图)。请注意,第 3.2 节中介绍的方法侧重于局部姿态估计,并在 3.1 节中给出了方法的位置先验时应用。
在这里插入图片描述
对于某些全局定位方法,边界不太清楚。例如,几种位置识别方法[41]中没有全局描述符,基于局部特征的姿态估计起着重要作用。我们考虑它们位于 3.3 节和第 3.4 节的边界,并在第 3.3 节中列出它们以进行间隙。

3.1 仅限地点识别

仅位置识别的方法通过在预先构建的基于关键帧的地图中检索位置来解决全局定位问题。图4展示了一种仅用于位置识别的方法,以便更好地理解。激光雷达位置识别中最具挑战性的部分是全局描述符提取。与视觉图像相比,激光雷达的原始点云是无纹理的,格式不规则,有时密度不均匀。从数据处理的角度来看,全局描述符提取是一种点云压缩方法,同时保持不同地方的区别性。我们根据如何处理激光雷达数据预处理对位置识别进行分类。
在这里插入图片描述

3.1.1基于密集点或体素

基于密集点和密集体素的工作是指那些直接在密集表示上生成全局描述符的工作。早期的激光扫描仪只能为机器人定位提供2D激光点。Granströom等人[57]设计了一个全局描述符,该描述符由2D激光扫描中的20个特征组成,例如覆盖区域和范围数据中的多个聚类。然后将手工制作的描述符和标签输入到弱分类器Adabost[58]中进行训练。在[59]中将基于学习的方法扩展到3D激光特征。快速直方图[42]不是提取特征,而是将3D点的范围分布编码为一维直方图,用于位置检索。地球移动器距离用于测量不同直方图的相似性,这与大多数位置识别方法中的欧几里得距离或余弦距离不同。受[42]的启发,Yinet等人[60]基于3D激光雷达扫描中的高度和范围划分,构建了一种2D类图像表示。然后,可以将该问题转换为图像分类问题,该问题可以通过训练具有基本对比损失的2D卷积神经网络来解决[61]。除了使用激光雷达扫描仪的距离信息外,DELIGHT[62]还利用激光雷达强度的直方图作为位置识别和几何验证的描述符。

上述所有方法都设计了用于基于激光雷达的位置识别的手工2D或1D直方图。这是因为3D点云的深度学习在当时还不那么成熟。2017年,Qi等人[63]提出了PointNet,它可以学习3D深度学习任务的局部和全局特征。新型编码器还提高了点云处理的性能,如用于点卷积的KPconv[64]。PointNetVLAD[43]利用PointNet提取3D点云的特征,并通过NetVLAD[65]将其聚合到全局描述符中。但受PointNet的限制,PointNetVLAD忽略了三维点云中的局部几何分布。为了解决这个问题,LPDNet[66]设计了一个基于十个手工制作的局部特征的自适应局部特征提取模块,以及一个基于图的邻域聚合模块来生成全局描述符。随着Transformer[67]在不同任务中的出现以实现长程依赖性,注意力机制越来越多地被用于选择重要的局部特征进行位置识别。PCAN[68]将局部特征考虑在内,并计算注意力图以确定每个特征的显著性。Xia等人的SOE-Net。[69]使用点方向编码模块生成逐点局部特征,并将其输入自注意网络,将其聚合为全局描述符。然而,这些方法不能完全提取邻居周围的逐点局部特征。Hui等人提出了一种金字塔点云变换网络,命名为PPT Net[70]。PPT Net可以学习不同尺度的局部特征,并通过金字塔VLAD将其聚合为描述性的全局表示。最近的工作[71]利用SE(3)-等变网络来学习全局描述符,使位置识别对旋转和翻译变化更具鲁棒性。尽管进行了网络结构设计,但[72]中提出了局部一致性损失,以确保从同一位置的点云中提取的局部特征的一致性。为了节省内存和提高传输效率,Wiesmann等人[73]提出了一种通过注意力机制聚合的压缩点云表示,用于位置识别。作者还在[74]中设计了一种新的架构,用于更高效的训练和推理.

另一种流行的方法是先对三维点云进行体素化,然后提取全局描述符进行位置识别。体素处理可以使原始三维点云更加规则。这使得3D点云接近类似3D图像的表示,即,每个网格(2D)或立方体(3D)可以被视为一个图像块。Magnusson等人[75,76]将局部细胞分类为平面、直线和球体,然后将它们全部聚合到一个向量中,作为位置识别的全局描述符。分类标准基于局部分布概率密度函数,即无损检测。在深度学习时代,周等人[77]提出了NDTTransformer,它将原始点云转换为无损检测细胞,并使用注意力模块来增强识别能力。Siva等人提出的VBRL。[78]引入了一种基于体素的3D表示,该表示在正则化优化公式中结合了多模态特征。Oertel等人提出了AugNet[79],这是一种结合了外观和结构特征的基于增强图像的位置识别方法。Komorowski等人介绍了MinkLoc3D[44],该方法通过特征金字塔网络提取稀疏体素化点云上的局部特征,并通过池化操作将其聚合为全局描述符。之后,他们提出了MinkLoc3Dv2[80]作为MinkLoc3D[44]的增强,该增强利用了更深入、更广泛的网络架构和改进的训练过程。

3.1.2基于稀疏段

基于分段的方法是指基于点分段进行位置识别的工作,该工作利用了局部和全局表示的优势。Seed[81]将原始点云分割为分割的对象,并将这些对象的拓扑信息编码到描述符中。SGPR[45]利用原始点云的语义和拓扑信息,并使用图神经网络生成语义图表示。Locus[82]将时间和拓扑信息编码为全局描述符,作为判别场景表示。Gong等人[83]在高级描述符搜索和低级几何搜索中都利用了分段的空间关系。总的来说,基于分割的方法接近于我们人类对位置识别的看法,即使用高级表示而不是低级几何。另一方面,这些方法在很大程度上依赖于分割质量和其他附加的语义信息。3D点云分割方法通常是耗时且资源密集型的。

3.1.3基于投影

与上述两个类别相反,基于投影的方法不直接在3D点云或线段上生成描述符;相反,这些方法首先将3D点云投影到2D平面,然后实现全局描述符提取。他等人[46]提出了M2DP,将原始点云投影到多个2D平面中,用来自不同平面的描述符构建签名。激光雷达虹膜[84]将3D点云的高度信息编码为二进制激光雷达虹膜图像,并将其转换为傅立叶域以实现旋转不变性。Kong等人提出的RINet。[85]首先将点云转换为由语义信息编码的扫描上下文图像,并设计了一个用于学习旋转不变表示的旋转不变网络。Yin等人[47]通过离散三维空间设计了一个多层球面投影。然后基于球面投影将VLAD层[65]和球面卷积[86]集成为SphereVLAD。SphereVLAD可以学习用于位置识别的视点不变全局描述符。

总结:第3.1.1节和第3.1.3节中的早期方法试图从传统数据处理的角度设计手工制作的全局描述符。随着神经网络技术的发展,数据驱动的脚本编写器越来越流行,从而在位置识别方面获得了高性能(>95%Recall@1在[87,80]中)。有几种方法已经实现了位置检索的完全旋转不变描述符,如[42]中手工制作的快速直方图和[47]中基于学习的SphereVLAD。我们可以得出结论,三维激光雷达点云的全局描述符提取已经达到了一定的成功水平。然而,仍然存在一些挑战和问题,例如泛化能力,将在第6.6节中讨论。

本小节中的所有方法都只提供检索到的位置作为输出。全局定位性能是在机器学习指标下评估的,如精度召回曲线和F1分数。我们将在第6.1节中讨论评估指标。在这种情况下,姿势(位置)的平移精度由关键帧的分辨率决定(25m用于RobotCar数据集[88]上的评估);不考虑或评估旋转估计的精度。在实践中,这实际上无法满足大多数高精度全局定位任务的需求,例如,通过相对变换构建一致的全局地图,或者用精确的位置和方向唤醒机器人。

从另一个角度来看,全局描述符是原始激光雷达数据的高度压缩表示,并且在压缩过程中存在信息丢失,尤其是对于那些端到端的深度学习方法。这种表示自然适用于位置检索中的最近邻搜索,但不能用于几何姿态估计。在下一节中,我们将回顾度量表示所涉及的局部变换估计。

(内容过长,后续见下篇博客)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值