论文标题:
A Neurosymbolic Approach to Adaptive Feature Extraction in SLAM
论文作者:
Yasra Chandio, Momin A. Khan, Khotso Selialia, Luis Garcia, Joseph DeGol, Fatima M. Anwar
导读:
本研究提出了一种创新的神经符号学方法(nFEX),用于自适应地改进SLAM中的特征提取模块。nFEX结合了深度学习和符号推理的优势,通过领域特定语言(DSL)动态选择和配置最优的特征提取器,以适应不断变化的环境条件。实验结果表明,nFEX在多个数据集上显著提高了特征提取的质量,减少了姿态误差,并在没有GPU支持的情况下实现了实时性能。©️【深蓝AI】编译
1. 摘要
自主机器人、自动驾驶车辆以及各类VR、AR设备需要在动态变化的真实世界环境中进行精确且可靠的跟踪定位,然而,诸如SLAM等现有的跟踪方法,尽管经过了广泛的手动调整,但仍然不能很好地适应环境变化和边界条件;另一方面,基于深度学习的方法虽可以更好地适应环境变化,但它们通常需要大量的训练数据,并且在适应新领域时往往缺乏灵活性。为了解决这个问题,本研究提出了利用神经符号学程序合成方法来构建可适应的SLAM流程,这些流程整合了传统SLAM方法的领域知识,同时利用数据学习复杂关系。该研究首先设计了一种领域特定语言(DSL),它可以封装特征提取的重要属性和各种特征提取器在现实世界中的表现;然后,神经符号学架构进行自适应特征提取,通过学习优化参数,同时使用符号推理来选择最合适的特征提取器。实验评估表明,神经符号学特征提取(nFEX)能够产生更高质量的特征,还可将观察到的ORB和SIFT这些最先进基线特征提取器的姿态误差分别降低了高达90%和66%,从而增强了系统在新环境中的效率和适应性。
本文的主要贡献如下:
●神经符号学方法(nFEX):提出了一种新颖的神经符号学方法,用于自适应地改进SLAM系统中的特征提取模块;
●领域特定语言(DSL):开发了一种DSL,用于封装特征提取的重要属性和不同特征提取器在现实世界中的性能表现;
●自适应特征提取:通过学习优化参数,并使用符号推理来动态选择最合适的特征提取器。
2. nFEX
2.1 nFEX概述
在传统的SLAM中,图像由预先选择的具有固定参数的特征提取器处理,产生一个特征向量,并将其馈送到剩余的SLAM步骤(里程计和其他优化)中用于姿态生成。为此,本研究提出的方法nFEX如图1所示,合成了一个神经符号程序,旨在根据实时环境输入动态选择和配置特征提取器,即用神经符号特征提取取代传统的手动调优特征提取模块,如图2中蓝色突出显示。
图1|nFEX概述©️【深蓝AI】编译
图2|nFEX(篮框)在SLAM框架中的贡献©️【深蓝AI】编译
2.2 DSL架构
nFEX基于DSL框架进行搭建,DSL框架概述了以下结构:
(1)特征提取器选择(α),用于识别给定场景条件下的最佳特征提取器架构;
(2)参数配置(Θ),用于确定了增强特征提取器性能的最佳参数设置。
DSL框架使用知识图将领域洞察封装到特征提取模块中,知识图充当领域信息数据库,帮助理解和导航模块的操作和参数。DSL框架下的知识图如图3所示,其包含了表示各种特征提取操作的节点,例如尺度空间表示、关键点检测和描述符,图中的边根据性能指标、计算考虑和对环境因素的适应性描述了这些操作之间的关系和兼容性。
图3|特征提取知识图谱©️【深蓝AI】编译
nFEX构建了相关的DSL语法(语法示意如图4所示),使用图概念,及相关语法解析输入条件的结构(例如室内/室外场景、代理类型、照明条件等),并根据描述的每个规则选择合适的α及其Θ。nFEX中的DSL语法增强了适应性,并简化了新应用程序的每次重新校准,使用户可以直接添加新的输入条件和参数。这种DSL确保了合成的程序在逻辑上是一致且可操作的,允许自动解析和执行特征提取。一旦DSL建立起来,就能够确保程序的逻辑连贯性和可操作性,从而实现特征提取的自动解析和执行。
图4|解析nFEX的DSL语法©️【深蓝AI】编译
nFEX通过参数调优(Θ)和特征提取器选择(α)两步适应度函数实现一个DSL程序来实现其目的:
(1)参数调优(Θ):给定一组特征提取器 α = α 1 , α 2 , . . . , α y α = {α_1, α_2, ..., α_y} α=α1,α2,...,αy,为每个特征提取器的初始参数 Θ = θ 1 , θ 2 , . . . , θ n Θ = {θ_1, θ_2, ..., θ_n} Θ=θ1,θ2,...,θn,以及一组符号环境条件 E = e 1 , e 2 , . . . , e c E = {e_1, e_2, ..., e_c} E=e1,e2,...,ec,优化过程由一个变换函数 g ( θ , E ) g(θ, E) g(θ,E)定义,该函数根据 E E E动态调整 Θ Θ Θ,得到优化后的参数集 Θ ′ = θ 1 ′ , θ 2 ′ , . . . , θ n ′ Θ^′ = {θ^′_1, θ^′_2, ..., θ^′_n} Θ′=θ1′,θ2′,...,θn′,其中 w k w_k wk为每个参数 k k k的权重,权重表示为如下公式:
Θ ′ = g ( Θ , E ) , w k = ∏ j = 1 f k j ( e j ) θ k ′ = w k ⋅ θ k = ( ∏ j = 1 c f k j ( e j ) ) ⋅ θ k for each k ∈ { 1 , 2 , … n } \Theta^{\prime}=g(\Theta,E),\quad w_{k}=\prod_{j=1}f_{kj}(e_{j})\\\theta_{k}^{\prime}=w_{k}\cdot\theta_{k}=\left(\prod_{j=1}^{c}f_{kj}(e_{j})\right)\cdot\theta_{k}\quad\text{for each }k\in\{1,2,\ldots n\} Θ′=g(Θ,E),wk=j=1∏fkj(ej)θk′=wk⋅θk=(j=1∏cfkj(ej))⋅θkfor each k∈{1,2,…n}左右滑动查看完整公式
其中 ∏ j = 1 c f k j ( e j ) \prod_{j=1}^cf_{kj}(e_j) ∏j=1cfkj(ej)是给定参数 k k k的所有环境条件调整的累积积。
在环境条件 E E E的情况下,优化参数 θ ′ \theta^′ θ′的适应度由适应度函数 F F F来评估:
F ( Θ ′ ∣ E ) = f ( Θ ′ ∣ E ) F(\Theta'|E)=f(\Theta'|E) F(Θ′∣E)=f(Θ′∣E)
该公式演示了场景条件如何直接影响参数优化,从而允许基于环境的自适应特征提取。
特征参数Θ主要包含五4个部分:NF、SF、NL、ST。功能数量NF影响系统识别和跟踪环境标志的能力,优化NF对于平衡细节捕获和计算负载至关重要,确保检测到足够的特征来准确地表示场景,而不会淹没处理能力,特别是在复杂或稀疏的环境中;尺度因子(SF)决定了图像金字塔中连续尺度之间的间隔,影响系统尺度不变特征检测的能力,适当调整的SF允许特征提取器始终如一地识别图像中的特征,无论它们在图像中的大小如何,使系统能够保持健壮,以应对受光照条件和运动影响的物体的大小或距离变化;金字塔级别的数量(NL)调整跨对象大小的特征,它扩展了系统在整个场景中识别各种尺寸特征的能力,直接影响了系统在处理具有不同空间特征的场景中的多功能性;关键点选择性阈值(ST),确保了不同且可靠的关键点匹配跨图像,关键是处理反射表面或不一致的纹理通过促进均匀的特征分布。
(2)特征提取器选择(α):一旦为每个特征提取器 α i \alpha_i αi获得了 θ ′ \theta^′ θ′,并给定了一组符号指标 M = m 1 , m 2 , … , m p M=m_1,m_2,…,m_p M=m1,m2,…,mp,其中每个指标 x ∈ { 1 , 2 , … , p } x \in \{1,2,\ldots,p\} x∈{1,2,…,p}的权重是动态调整的 p x = h x ( E ) p_x=h_x(E) px=hx(E)。 h x ( E ) h_x(E) hx(E)是一个基于环境条件 E E E计算第 x t h x^{th} xth个指标权重的函数。评估每个特征提取器 α i \alpha_i αi的检测特征质量(其参数已优化为 Θ ′ \Theta^′ Θ′)可用以下公式:
F metrics ( α i ∣ Θ i ′ , E ) = ∑ x = 1 p ρ x ⋅ m x ( α i ′ ) = ∑ x = 1 p h x ( E ) ⋅ m x ( α i ′ ) F_\text{metrics}(\alpha_i|\Theta_i',E)=\sum_{x=1}^p\rho_x\cdot m_x(\alpha_i')=\sum_{x=1}^ph_x(E)\cdot m_x(\alpha_i') Fmetrics(αi∣Θi′,E)=x=1∑pρx⋅mx(αi′)=x=1∑phx(E)⋅mx(αi′)
其中特征质量指标M强调特征提取过程中固有的指标,确保神经符号优化可以直接影响它们,而不依赖于下游SLAM组件的数据。M具体包括如下几个部分:
1.纹理度( m 1 = ∑ ( I ( a , b ) − I ˉ ) 2 m_1=\sqrt{\sum(I(a,b)-\bar{I})^2} m1=∑(I(a,b)−Iˉ)2): 将图像内的纹理方差进行积分,其中 I ( a , b ) I(a, b) I(a,b)为像素强度, I ˉ \bar{I} Iˉ为平均强度;
2.差异度( m 2 = ∑ ∣ I f e a t u r e − I s u r r o u n d i n g ∣ m_{2}~=~\sum|I_{\mathrm{feature}}~-~I_{\mathrm{surrounding}}| m2 = ∑∣Ifeature − Isurrounding∣): 衡量特征与周围环境的独特性;
3.运动捕捉( m 3 = ∥ a t + 1 − a t ∥ m_3 = \|\mathbf{a}_{t+1}-\mathbf{a}_t\| m3=∥at+1−at∥): 量化帧之间的特征移动;
4.稳定性( m 4 = N u m b e r o f s t a b l e f e a t u r e s T o t a l n u m b e r o f f e a t u r e s m_{4} = \frac{\mathrm{Number~of~stable~features}}{\mathrm{Total~number~of~features}} m4=Total number of featuresNumber of stable features): 评估随时间变化的检测一致性;
5.空间密度( m 5 = N u m b e r o f F e a t u r e s A r e a o f R e g i o n m_5 = \frac{\mathrm{Number~of~Features}}{\mathrm{Area~of~Region}} m5=Area of RegionNumber of Features): 检查特征分布的均匀性;
6.特殊性( m 6 = 1 ∑ s i m i l a r i t y ( f e a t u r e , o t h e r f e a t u r e s ) m_{6} = \frac{1}{\sum\mathrm{similarity(feature,~other~features)}} m6=∑similarity(feature, other features)1): 衡量特征的独特性;
7.再现性( m 7 = N u m b e r o f R e − d e t e c t e d F e a t u r e s T o t a l N u m b e r o f F e a t u r e s m_{7} = \frac{\mathrm{Number~of~Re-detected~Features}}{\mathrm{Total~Number~of~Features}} m7=Total Number of FeaturesNumber of Re−detected Features): 度量一致性特征检测。
最终选择能够最大化 F m e t r i c s F_{metrics} Fmetrics的特征提取器 α ∗ \alpha^∗ α∗:
α ∗ = arg max α i ∈ { α 1 , α 2 , . . . , α y } F metrics ( α i ∣ Θ i ′ , E ) \alpha^*=\arg\max_{\alpha_i\in\{\alpha_1,\alpha_2,...,\alpha_y\}}F_{\text{metrics}}(\alpha_i|\Theta_i',E) α∗=argαi∈{α1,α2,...,αy}maxFmetrics(αi∣Θi′,E)
这确保了特征提取器的选择和性能评估能够适应环境上下文。
2.3 合成训练
nFEX首先使用神经网络优化特征提取器参数(Θ),以概括提取器在不同上下文中的性能。为了处理现实场景中固有的不确定性和部分非结构化信息,采用平滑解释技术进行细微适应。然后针对优化的Θ,程序进行评估,以做出关于给定上下文最合适的α及其配置的明智决策。这种选择过程类似于神经架构搜索,其本质就是评估各种架构在当前情况下的所选择的特征提取器的上下文性能。最后再采用与此阶段相结合的反馈机制,允许基于下游性能(例如姿态)的持续程序优化。这种迭代过程确保了项目保持最佳配置,以适应新的挑战和环境。
在适应度函数训练上,本研究使用两步神经网络优化特征提取参数 F ( Θ ′ ∣ E ) F(\Theta^{\prime}|E) F(Θ′∣E)和特征提取器选择 α ∗ \alpha^∗ α∗。 F ( Θ ′ ∣ E ) F(\Theta^{\prime}|E) F(Θ′∣E)训练采用多层感知器(MLP),具有三个完全连接的层和ReLU激活,以防止姿势误差的均方误差(MSE)损失。 α ∗ \alpha^∗ α∗训练采用混合神经网络通过处理数值数据和图像来评估特征提取器的有效性。该阶段使用卷积神经网络(CNN)层进行图像分析,并将其与完全连接的层集成在一起进行数值分析,评估特征质量。该网络基于特征质量分数的交叉熵最小化损失函数。在两个模型中都应用了特征缩放,使用标准缩放器对特征进行归一化,通过确保它们的均值为零,标准差为1,使它们更有利于神经网络训练。
2.4 推理使用
在推理过程中,上述合成程序在实时场景中动态应用优化的 θ \theta θ和 α \alpha α。它可以动态地适应不断变化的环境,分析场景数据以进行准确的特征提取并集成到SLAM框架中。该阶段强调实时适应和从新数据中持续学习,从而实现持续的系统性能改进,并提高对不同场景的适应性。
3. 实验
本研究将nFEX与ORBSLAM3进行了相关的性能测试,使用绝对轨迹误差(ATE)进行性能比较。实验中使用ORB及SIFT的默认参数(参数来自OpenCV)和动态优化参数(Θ)作为基线,在序列EuroC-MH 02, KITTI-00和HolosetSuburb-seq-1上训练模型,在NVIDIA GeForce RTX 2070 GPU上运行了所有测试,批处理大小为8,使用Adam优化器,学习率为 1 e − 4 1e^{−4} 1e−4。
3.1 端到端性能
表1展示了nFEX方法以及ORB和SIFT特征提取器使用默认和动态优化参数在三个数据集序列的平均ATE。可以看到动态优化显著提高了ORB的性能,特别是在KITTI序列中,强调了参数调优的重要性。然而,面对KITTI序列中SIFT在其默认参数下出现失败的情况,动态优化也起到了显著改进。在具有挑战性的EuRoC室内场景和HoloSet混合环境中,nFEX也达到了最低的平均ATE,突出了其在复杂环境中的有效性。即使经过优化,SIFT在KITTI默认配置中的失败及其滞后性能也凸显了nFEX在实现鲁棒特征提取和计算效率之间的平衡方面的优势。总的来说,nFEX通过适应操作环境、选择最佳特征提取器和动态优化参数,显示了其显著增强SLAM可靠性的潜力。
表1|不同特征提取器平均ATE(单位:m)的性能比较(10次运行的平均值)©️【深蓝AI】编译
3.2 泛化性能
表2突出了nFEX的泛化能力。在第一个案例MH01 - MH01中,对前70%的序列进行训练,对剩余30%的序列进行测试,平均ATE为0.792m,证明了nFEX在熟悉环境下的有效性。在MH01(简单序列)上训练后,在MH05(困难序列)上进行测试时,ATE增加到1.329m,表明在新的环境和运动动态下,在同一数据集中对不同序列的合理泛化。当从MH01上的训练过渡到KITTI-6上的测试时ATE跳跃到2.476米,但仍在合理范围内,反映了nFEX适应完全不同的环境条件的挑战,例如室外与室内设置差异以及无人机与汽车运动载体差异。上述这些结果突显了nFEX跨环境泛化的潜力。
表2|nFEX的泛化性能展示(将第一个或部分序列上训练所得用在第二个序列上进行测试)©️【深蓝AI】编译
3.3 消融实验
(1)参数优化的影响:
在图5中,展示了各个参数(NF、SF、NL、ST)对ORB特征提取器ATE的影响。在测试过程中,固定了一个参数,并保持其余参数的动态调整,而具有所有动态参数或所有默认参数的ORB分别用黑线和红线突出显示。这种比较显示了动态参数配置的潜力,特别是在复杂多变的环境中。与默认设置相比,nFEX和动态优化的ORB显著增加了特征匹配准确性(如表3所示)。nFEX明显优于默认ORB (ORB- def),展示了其自适应优化特征提取的能力,以获得更高的匹配质量。
图5|动态参数消融实验结果©️【深蓝AI】编译
表3|MH01序列不同特征提取器的平均特征匹配数©️【深蓝AI】编译
(2)特征提取器选择的影响:
在表4中展示了nFEX对MH01序列的特征提取器选择能力,它在ORB和SIFT提取器之间动态选择。选择过程产生了不同的分布:ORB-Dyn在3638帧中被选择了1366帧,显示了它在某些条件下的偏好,其次是SIFT-Dyn的1124帧。ORB-Def和SIFT- def(带有默认参数的SIFT)的选择频率较低,表明动态参数优化通常优于默认设置。
表4|nFEX对MH01序列内不同帧选择不同的特征提取器©️【深蓝AI】编译
3.4 运行效率
将nFEX定位为提高SLAM性能的可行解决方案,处理速度是一大考量因素。在表5中,展示了nFEX在10次运行中的平均计算效率。参数和特征提取器的选择执行迅速,确保快速适应,112毫秒的帧处理仍然在实时应用的可接受范围内。
表5|nFEX中任务的定时©️【深蓝AI】编译
4. 结论
精准的自适应跟踪是实现自主智能体在动态环境中安全鲁棒运行的关键挑战。本研究所提方法利用符号推理和数据驱动学习的优势,根据遇到的环境动态选择和配置最合适的特征提取器。与传统方法相比,nFEX的动态精准性在不同领域的三个代表性基准数据集上性能显著提高。虽然该研究的重点是自适应SLAM特征提取,但也为SLAM框架中的其他模块融入神经符号程序提供了坚实基础。
编译|唐僧洗头用飘柔
审核|Los
移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态👇
深蓝AI·赋能AI+智驾+机器人