在本文中,作者提出了一种新颖的闭环检测算法,该算法利用图注意力神经网络对语义图进行编码以执行地点识别,然后使用语义配准来估计6个自由度的相对姿态约束。
作者的地点识别算法包含两个关键模块,即语义图编码模块和图比较模块。语义图编码模块采用图注意力网络高效地编码来自输入点云语义图的时空和几何信息。
接着,作者在节点嵌入和图嵌入步骤中均使用自注意力机制来创建独特的图向量。
在图比较模块中,作者将当前扫描和关键帧扫描的图向量进行比较,以识别可能的闭环。具体来说,利用两个图向量之间的差异显著提升了性能,如消融研究所示。
最后,作者实现了一种语义配准算法,该算法接受闭环候选扫描并估计LiDAR SLAM系统的相对6个自由度姿态约束。
在公共数据集上的广泛评估表明,与 Baseline 语义图算法相比,作者的模型在最大F1分数上实现了13%的改进,在SemanticKITTI数据集上表现更为准确和鲁棒。
为了回馈社区,作者在https://github.com/crepuscularlight/SemanticLoopClosure上开源了作者提出的算法的完整实现和语义配准的定制实现。
1. 引言
本研究旨在探讨人工智能在XX领域的应用及其发展趋势。随着科技的不断进步,人工智能技术逐渐从理论走向实践,为各行各业带来了前所未有的变革。本文首先对人工智能的基本概念、发展历程和关键技术进行了概述,随后分析了人工智能在XX领域的具体应用案例,最后对人工智能未来的发展趋势进行了展望。
同时定位与建图(SLAM)在使自主移动机器人探索和导航未知环境中发挥着关键作用。其基本挑战之一是前端里程计状态估计误差导致的漂移累积,这可能导致全局地图不一致。为了解决这一问题,开发了闭环检测算法,这些算法能够识别重访地点,并通过在位姿图或基于非线性因子图的激光SLAM系统中添加6自由度位姿约束,帮助减少累积的漂移。通过利用最新人工智能进步中的学习能力,如Uy和Lee(2018)、Cattaneo等人(2022)、Kong等人(2020)、Liu等人(2019)、Ma等人(2022)的研究,闭环检测算法不断创新,以提高其准确性和实时性能。
经典(学习无关)的基于LiDAR的闭环检测算法采用启发式和手工设计的方法,将大量的原始点云数据缩减为具有独特性和描述性的多维向量。此外,这些手工设计的方法中大多数还针对描述符设计了一个精心设计的度量标准,用于比较它们的相似性。许多这样的手工设计全局特征描述符,如M2DP(He等人,2016年)、ScanContext(Kim和Kim,2018年)及其变体(Wang等人,2020年;Kim等人,2021年),对设计参数、使用的LiDAR类型(32、64或128通道)、LiDAR的位姿(水平或倾斜)以及最后感知干扰(如遮挡和旋转)非常敏感。
近年来,基于深度学习的闭环检测算法因其能够针对目标环境进行定制训练而受到广泛关注,这种训练考虑了特定的安装姿态和使用的激光雷达类型。早期代表性方法,如Uy和Lee(2018)的PointNetVlad和Cattaneo等人(2022)的LCDNet,通过学习具有可迁移性和判别性的点云描述符,已经展示了有前景的准确性。然而,它们将原始点云整体处理,在部署时需要大量的计算能力,从而影响了实时性能。
近期的研究中,Kong等人(2020年)提出了一种计算量较小的方法,该方法明确地将语义图作为基础表示,旨在更好地模拟真实世界场景在语义上的实际外观。为此,SGPR以点云的实例分割结果作为输入,创建语义图,并将空间和语义信息编码到轻量级图嵌入中。这些图嵌入在图-图交互模块中进行匹配,该模块是一个将环路检测视为图比较问题的图匹配神经网络。Kong等人(2020年)的研究是第一个基于图的位置识别方法之一,但并未从语义图中编码全面信息(遗漏了几何信息),使用了Kong等人(2020年)提出的更为简单的EdgeConv模块来创建节点嵌入,并且根据作者论文中提出的建议,仍有改进其图-图交互模块的空间。
近期,Velickovic等人(2018年)提出的图注意力网络(GAT)以及Bai等人(2019年)提出的图相似度计算方法,在如何编码、比较图以及使图可端到端学习方面取得了显著进步。具体而言,图注意力网络采用可学习的线性变换代替简单的标量值来聚合邻近特征,相较于SGPR中使用的EdgeConv,提供了更好的图编码。这本质上允许GAT中的多头注意力从多个子空间中学习,从而编码图节点之间的复杂关系,显著提升了性能。接下来,Vaswani等人(2017年)提出的关于Transformer的开创性论文引入了自注意力机制Vaswani等人(2017年),在该机制中,可以有效地学习输入序列中不同元素之间的关系,从而对训练数据中的潜在复杂关系进行推理。
受SGPR Kong等人(2020年)、GAT Velickovic等人(2018年)、自注意力机制 Vaswani等人(2017年)以及SimGNN Bai等人(2019年)的启发,作者开发了一种改进的基于图循环闭合检测技术,该技术克服了许多不足,并利用最新技术有效地编码语义图,从而显著提升了性能。
作者提出了一种两阶段方法,包括语义图编码器和图比较模块。
-
作为作者的第一个贡献,作者通过设计一种语义图编码器来增强SGPR,该编码器利用图注意力网络对语义图中空间、语义和几何信息进行编码,与SGPR有限的信息和简单的编码方式相比,能更全面地编码信息。
-
作者的第二个贡献是在节点嵌入和图嵌入步骤中采用自注意力机制来编码复杂的潜在关系,从而本质上创建出更独特的图向量。
-
作为作者的第三个贡献,作者表明,在图比较模块中使用输入图向量的差异来进行分类,相较于SGPR(Kong等人,2020年)中直接使用图向量,可以显著提升性能。
-
作者的最后一个贡献是开源作者的工作,可在https://github.com/crepuscularlight/SemanticLoopClosure找到,其中包含语义图编码模块、图比较模块以及针对6自由度姿态估计的定制语义配准实现,以促进这一方向的研究进一步发展。
经过对公共数据集的全面实验和消融研究,作者证明了与现有最先进方法相比,作者的语义地点识别网络和语义注册算法在准确性和鲁棒性方面均有提升。
此外,作者还展示了这两个模块可以在实时运行中,以最小的内存和计算需求工作,使它们成为集成到现有SLAM框架中的理想选择。
2. 相关研究工作
在探讨人工智能领域的最新进展之前,回顾和总结已有的研究成果至关重要。以下是对当前人工智能领域相关研究工作的概述:
-
深度学习在图像识别中的应用
:近年来,深度学习技术在图像识别领域取得了显著成果。研究者们通过改进神经网络结构和训练算法,实现了对复杂图像的高效识别。
-
自然语言处理的发展
:自然语言处理(NLP)作为人工智能的重要分支,近年来也取得了突破性进展。通过引入深度学习、迁移学习等技术,NLP在机器翻译、情感分析、文本摘要等方面取得了显著成效。
-
强化学习在游戏和机器人控制中的应用
:强化学习作为一种重要的机器学习范式,在游戏和机器人控制等领域取得了广泛应用。研究者们通过设计高效的算法和策略,使智能体能够在复杂环境中实现自主学习和决策。
-
知识图谱在推荐系统中的应用
:知识图谱作为一种新型的数据表示方法,在推荐系统、问答系统等领域具有广泛的应用前景。通过构建大规模知识图谱,研究者们实现了对用户兴趣和物品属性的精准预测。
-
跨学科研究进展
:人工智能领域的发展离不开与其他学科的交叉融合。例如,认知科学、心理学、生物学等领域的知识为人工智能研究提供了新的视角和方法。
总之,人工智能领域的研究工作呈现出多元化、交叉融合的发展趋势。在未来的研究中,作者将继续关注这些领域的最新进展,以期推动人工智能技术的创新与发展。
作者回顾了关于传统和学习型3D场景识别算法的先前研究,以及相关图神经网络,这些网络可以作为 Backbone 从图中提取具有代表性的特征,同时突显了现有方法的局限性,并为本方法所引入的改进奠定了基础。
2.1 三维空间识别
传统方法通过精心设计的方法将数百万个点的原始点云转换为多维向量。通常,这些提取的特征描述符可以通过欧几里得距离或特定的手工构建的度量标准进行比较,从而找到近似匹配,本质上代表一个地点的匹配/重访。Magnusson等人(2009年)开发了NDT,这是一种基于直方图的特征描述符,利用正态分布表示来描述3D表面以及场景匹配的评估指标。2013年,Bosse等人(Bosse和Zlot,2013年)提出了一种关键点投票机制,以实现当前扫描与数据库扫描之间的快速匹配,并通过拟合参数模型到潜在分布来估计匹配阈值/超参数。M2DP(He等人,2016年)首先将3D点云投影到二维平面上以生成密度签名,并使用相应的 ConCat 奇异向量作为描述符。
SegMatch Dubé等人(2017年)是首批从原始点云的聚类片段中提取描述符,并使用几何验证步骤来寻找正确匹配的方法之一。采用高级几何聚类和语义/特征描述进行匹配的方法,通常可以达到高精度,并且在闭环检测中更加鲁棒。Scan Context Kim和Kim(2018年)开启了直接使用点云而不计算直方图来创建全局描述符的趋势。它使用一个编码函数,将压缩信息存储在径向和方位方向上的空间桶中,以生成更具独特性的全局描述符。尽管vanilla Scan Context Kim和Kim(2018年)仅在每个桶中存储最大高度,但其变体在桶中编码了更有效、更具代表性的信息,包括检测到的强度(Wang等人,2020年)、点云的语义标签(Li等人,2021a)和子上下文(Kim等人,2021年),从而提升了描述符的性能。
基于学习的方法具有一个本质优势,即能够针对特定环境进行定制训练,包括特定的机器人/传感器配置,从而使得它们在特别复杂的环境中能够提供更好的性能。Uy和Lee(2018)利用深度神经网络通过使用PointNet(Qi等,2017)作为主干网络,以及NetVLAD(Arandjelovic等,2016)来聚合学习到的局部特征,从而输出全局描述符以实现匹配。Dube等人(2018)提出了利用每个聚类/段3D点云的方差进行数据驱动学习的SegMap方法,但固有的3D卷积神经网络架构带来了相当大的计算负担。
为了丰富局部的几何细节,LPD-Net(刘等,2019)采用了自适应 Backbone 网络,将局部信息聚合到全局描述符中。局部信息提取模块的核心是融合来自特征空间和笛卡尔空间的最近邻信息。MinkLoc3D(Komorowski,2021)提出了一种简单的神经网络,用于处理基于稀疏3D卷积的稀疏 Voxel 化点云。通过量化原始点云并使用稀疏卷积,它在保持高精度的同时,达到了与其他基于多层感知器算法相当的推理速度。LCDNet(Cattaneo等,2022)采用了端到端架构,同时实现了地点识别和6自由度姿态估计。共享的3D Voxel 卷积神经网络用于提取用于地点识别和姿态估计两个 Head 的特征。另一方面,SGPR(Kong等,2020)通过将每个实例视为一个节点,将地点识别问题转化为图匹配问题,并设计了一个高效的图神经网络来推理相似性,在主流数据集上表现出优异的鲁棒性。
2.2 图神经网络在特征提取中的应用
在此,作者回顾了几篇与图神经网络相关的作品,这些作品将图编码成独特的特征向量,因为这是SGPR和作者所提出算法的核心思想。受到计算机视觉领域中卷积神经网络巨大成功的启发,许多方法将卷积移植到图结构中。Bruna等人(2014)基于谱图理论开发了一种图卷积。Kipf和Welling(2017)提出了一种半监督方法,以实现一种高效的图卷积变体,该方法在谱域中利用了一阶近似。为了提高图神经网络的灵活性,Wang等人(2019)采用了EdgeConv,以动态聚合图中的最近邻特征,这些特征更适合图的高级特征。ResGCN的提出(Li等人,2023)通过添加残差网络和引入大规模架构,展示了其优越的优越性。
GNN的另一分支源自Vaswani等人(2017年)提出的自注意力机制。Velickovic等人(2018年)提出的图注意力网络(GAT)提出了一种新颖的想法,即利用自注意力层从邻居节点计算可学习的权重,从多个子空间中获取更多参数来编码节点之间的复杂关系。这项工作开辟了处理图数据的新方向,并已应用于多个领域。Brody等人(2022年)探讨了GAT的内在机制,并修改了操作顺序,以克服原始静态注意力机制的局限性。
在本文中,作者以SGPR作为基准,进一步通过图注意力网络增强其架构,提取实例的额外几何信息,利用自注意力机制编码复杂关系,并开发了一个更具区分度的图比较模块,该模块在降低模型尺寸和加速推理的同时,显著提升了性能。
3. 方法
在本节中,作者介绍了本研究采用的方法论,包括数据收集、预处理和模型训练过程。
3.1 系统概述
作者的系统流程如图1所示。采用F-LOAM Wang等(2021)方法作为前端激光雷达里程计,为每个到达的激光雷达扫描提供位姿估计。该位姿被视为位姿图中的一个节点,用于整个轨迹的非线性优化。根据里程计得到的相对位姿作为当前节点与其前一个节点之间的一个因素。具体来说,当基于语义图的地点识别模块成功找到潜在的闭环候选者时,通过语义配准计算得到的另一个约束被插入到对应节点之间的位姿图中。该位姿图结合了里程计约束和闭环约束,通过优化得到最终一致且准确的环境3D地图。所提出的闭环后端包含两个组件:首先是生成闭环候选者的语义地点识别模块,其次是计算相对6自由度位姿的语义重定位模块。
图1:所提出的基于语义图闭环检测系统在SLAM框架中的高级工作流程。该闭环检测算法以两个语义分割的点云作为输入,将其转换为语义图。随后,部署语义图编码器将它们压缩成图向量。最后,图对比模块预测两个闭环候选的相似度。当相似度超过特定阈值时,使用语义配准估计姿态约束,并将其添加到姿态图中进行轨迹优化。
3.2 语义地点识别
语义位置识别模块用于判断机器人是否回到了之前经过的位置,从定量角度出发,它提供了一组可能的闭环候选集。为了判断两次激光雷达扫描是否收集自同一地点,作者设计了该模块的三个部分:
从输入点云构建语义图
语义图编码模块,用于从语义图中提取独特的图向量
图比较模块用于估计两个图向量的相似度。如果预测的相似度高于某个特定阈值,则该扫描对将被视为语义注册和进一步姿态图优化的潜在闭环候选。
3.2.1 语义图
作者采用了与SGPR Kong等人(2020年)类似的方法来从原始语义点云构建语义图,但作者在编码检测到的边界框时增加了额外的几何信息,以提升性能。构建的语义图中的节点编码了检测到的目标的语义标签、其局部质心坐标和边界框。对于语义信息,使用了一维编码作为嵌入函数,消除了语义标签的序号影响。编码的语义标签和实例的质心坐标(
)代表了当前场景中语义目标的空间分布以及这些实例之间的拓扑关系。通过添加所提出的边界框,作者通过增加代表物体大小和边界的几何信息来增强语义图。作者探讨了以下三种编码实例几何信息的可能方法:
FPFH(Rusu等人,2009年)- 经典3D特征描述符 PointNet(Qi等人,2017年)- 基于深度学习的3D特征提取器 实例的边界框(左上角、右下角)的点 通过定量评估(第4.2.1节中的表4),作者决定将边界框作为额外的几何信息源添加到构建的语义图节点中,从而提升性能,且在边界框可通过实例分割轻松获取的情况下,无需额外的计算开销。
3.2.2 语义图编码模块
语义图编码器旨在将语义图转换为具有代表性的图向量。在这个过程中,这些图向量比输入的语义图更具区分度,同时在更少的维度中对其进行表示。语义图编码器分为两个步骤:从图中提取特征矩阵(节点嵌入)以及将特征矩阵压缩为向量(图嵌入)。
节点嵌入:对于包含多个节点且每个节点含有独特信息的图,作者编码了所考虑节点的信息以及其相邻节点的上下文信息。在SGPR模型中,这是通过DGCNN(Wang等人,2019年)中的EdgeConv实现的,它跳过了为每个输入图构建邻接矩阵的耗时步骤,而是在卷积操作中搜索
个最近邻节点(kNN)。这使得DGCNN更加灵活和鲁棒,同时降低了计算开销。作者观察到,与SGPR中使用EdgeConv来编码邻域节点信息不同,图注意力网络(GATs)可以通过多头注意力从多个子空间中学习,提取更全面的特征,这些特征可以编码邻域节点之间复杂的潜在关系。因此,作者提出用GATs替换EdgeConv Backbone 网络,并随后修改整个流程中的后续步骤。
图2展示了语义图编码器的详细说明。语义图编码器从输入语义图中延伸出三个分支,分别对应语义标签、质心和边界框。对于考虑的某个分支,输入的语义图可以表示为
,其中
,
代表节点的数量,
是特征维度,例如,在图2中,质心的特征维度
,边界框的特征维度
。
图2:所提语义图编码器的架构。从输入点云生成的语义图通过三个图注意力网络(GAT)提取上下文空间、语义和几何特征。然后,将这些特征连接并传递到一个自注意力模块,以生成节点嵌入
。接着,对节点嵌入
应用另一个自注意力模块,以学习全局上下文向量
。最后,将节点嵌入
投影到全局上下文向量
上,以获得相应的节点权重,并使用这些权重来计算最终的图向量
。为了聚合邻域节点信息,作者首先计算当前节点和相邻节点的差值,
,然后将此差值与
连接,得到
,其维度实际上翻倍。作者执行这种
与
的连接,是为了结合
和
之间的上下文信息。然后,作者使用一个可学习的矩阵
对
进行转换,并估计基于注意力的权重
,如下所示:
在本文中,
代表用于降维的可学习注意力向量,
表示连接操作,
是节点
的
个最近邻节点的全局标识。在作者的实验中,作者选择了
作为最近邻参数,以确保所有评估的一致性。
与Velickovic等人(2018年)提出的使用所有节点的经典GAT相比,作者提出的
-NN搜索算法在训练和推理方面显著降低了计算成本。作者采用了斜率为0.2的LeakyReLU激活函数,以增强神经网络的学习精度并缓解训练过程中的神经元死亡问题。使用GAT提取的特征的第
行可以表示为:
在本文中,
表示一个非线性函数,
表示连接操作,
是由第
个注意力向量(
)计算得到的归一化注意力系数,而
是
次可学习的线性变换。在此公式中,作者应用了具有
个头的多头注意力机制:通过这种方式,不同的头可以专注于特征
的不同子空间,从而提升了增强型 GATs 的表达能力。
在分别从语义、空间和几何分支提取特征后,作者使用了一个自注意力模块将它们融合在一起(图2)。作者的目的是不仅与一个分支中的邻近节点进行交互,而且从不同的分支中聚合信息,从而得到更全面的节点嵌入表示。自注意力机制在确定序列中的不同权重方面天生适用。节点嵌入的对应输出
的计算如下:
在
分别代表 Query 、 Key和Value 映射函数的情况下,
是来自三个分支的拼接特征,
是键的维度。通过一个自注意力模块,包含来自不同节点三个独立信息分支的原始图被转换为一个单一的节点嵌入矩阵
。接下来的步骤是将这个节点嵌入
压缩成一个图向量
。图嵌入:将图压缩成固定长度的向量,可以编码所有节点的信息,这对于高效比较两个图以及实现许多下游应用至关重要。作者提出使用一个自注意力模块从节点嵌入
中学习一个全局上下文向量
,而不是SimGNN中更简单的方法,以有效地从
中捕获有用的信息。节点嵌入矩阵
通过自注意力模块,产生一系列辅助向量,这些向量可以表示为:
在注意力机制中,
代表第
行的辅助向量。可学习的全局上下文向量
通过聚合辅助向量来估计,如图3概述的图比较模块。作者提出一个相对差向量(橙色显示),作为两个图向量的差值的绝对值。相似度向量是基于一阶和二阶差向量以及连接的图向量进行学习的。然后,该相似度向量通过全连接层来预测两个输入图向量之间的相似度值。
关于SimGNN Bai等人(2019年)的研究,如下所示: