Advertisement

ICCV2023开源!UncLe-SLAM:稠密神经辐射场SLAM的不确定性学习

阅读量:

1. 笔者总结

该文提出了一种名为UncLe-SLAM的方法,在密集神经SLAM中实现了对深度不确定性建模的任务。传统的密集SLAM方法忽视了传感器噪声的影响,并假设每个像素具有同等重要性这一假设会导致其效果欠佳为此本文设计了一种在线框架能够通过2D输入数据的自监督训练来估计传感器的不确定性通过对深度输入执行像素级别的不确定性估计本研究能够对跟踪与建图损失实施重新加权从而赋予包含更多可信信息图像区域更大的贡献本文还探究了不确定度学习在多传感器输入场景下的优势并展示了所提方法相比现有神经隐式SLAM技术在图上构建与跟踪精度方面的提升实验数据显示该方法可实现更低的轨迹跟踪误差并获得更高的F1值值得注意的是所提方案无需依赖特定类型的传感器也不需要真实深度或三维数据作为输入总之本文介绍了一种鲁棒且精确地建模深度不确定性的密集神经SLAM方法并可与现有系统无缝集成

图 1 : 图1展示了UncLe-SLAM的优势。我们提出的方法在线实时地进行自监督学习以估计深度不确定性。相较于不建模深度不确定性的NICE-SLAM等其他稠密神经隐式SLAM方法,在3D建图和目标跟踪方面表现更为卓越。

2. 原文摘要

我们提出了一种基于深度不确定性的新型稠密神经SLAM方法,并将其应用于动态环境下的实时定位与建图任务中。该算法通过估计深度输入像素的空间位置不确定性,并结合其对跟踪与建图损失函数的影响进行动态加权分配,在此过程中优先考虑包含更多适用于SLAM任务的真实信息区域的数据特征点。为此,我们构建了一个在线传感器不确定性估计框架,在仅依赖二维输入数据的前提下实现了自监督学习训练过程,并在此基础上设计了多传感器输入场景下的不确定性学习框架以提高模型鲁棒性与适应性能力。大量实验表明,在7-Scenes和TUM-RGBD数据集上分别实现了38%和27%绝对轨迹跟踪误差(ATE)较传统深度辅助或三维重建辅助方法显著下降的同时,在流行Replica数据集上使用两种不同类型的深度传感器验证了该算法在实际应用中的优越性——其F1评分较最新状态式神经SLAM方法提升了11%

文章名称:https://arxiv.org/abs/2306.11048

GitHub - kev-in-ta/UncLe-SLAM: Github repository for dense neural SLAM leveraging joint uncertainty learning

3. 基础知识补充

我们旨在通过RGBD图像序列实现在线神经隐式SLAM算法,并依赖于一种精确地捕捉场景中物体三维结构及其细节特征的3D表示模型进行数据处理与重建工作

3.1 场景表达

该方法采用编码三维网格特征以学习物体存在状态;经过三线性插值处理后可将这些特征输入多层感知机解码器以获取是否存在 occupied 的信息。基于此原理的改进方法将场景分割为层次化的 voxels 并对每个 voxel 进行特征编码;系统能够根据给定的三维坐标快速定位到对应的 voxels 并提取其对应的特征向量用于后续计算。

几何由两个层次的特征网格表示——中间分辨率层和精细分辨率层。 每个层次均配备了一个预先训练好的解码器模块,在特定条件下能够进一步优化其表征能力。 我们采用三线性插值方法将点位置的特征向量进行表征,并将其作为后续计算的基础数据输入。 颜色信息则由第四个层次(参数化)的特征网格进行编码,并通过相应的解码器模块实现高质量重建效果。 该解码器模块同样用于后续场景细节定位与优化,在整体流程中起到关键作用。 值得注意的是,在重建观察到场景的过程中,默认采用基于中间分辨率及更高分辨率(如精细分辨率)的多层级特征提取与融合技术。

3.2 深度和图像渲染

为实现基于2D RGBD观测的3D表达监督,NICE-SLAM系统采用深度图与RGB图像的体积渲染技术。 此过程涉及沿射线从起始点采样,在深度位置上进行数据处理,请参考下文详细说明。

通过式(1)计算射线穿过被占据的空间区域,并使用式(3)进行体素化处理以生成权重函数。其值代表光线在离散采样点上终止的概率。

渲染深度计算为沿着每个射线方向上的深度值的加权平均结果,并使颜色通道等效于根据式(4)进行定义。

这种体积渲染方法还支持点离散选择带来的方差。通过采用深度差异相对于传感器深度乘以权重函数的方法,则可以得出模型不确定性和采样不确定性综合体现为方差测量的结果。

4. 方法详解

本节详细阐述了我们在第3节基础上如何引入随机不确定性以建模场景变化的方法。我们的方法部分安排如下:首先提出了若干理论假设作为损失函数推导的基础。接着阐述了框架如何优雅地支持多传感器融合以及RGB-D融合过程。随后说明了该框架仅需附加深度传感器即可实现无需依赖启发式超参数设置的支持效果。最后具体描述了网络结构与实现细节部分的内容。图2直观展示了该方法的整体架构概览。

图 2 : 方法流程。给定基于估计的相机姿态所获取的输入深度图,并通过最小化重新渲染损失来实现建模与追踪的过程;该方法旨在优化网格特征θ以及网络参数w或相机外参参数。在射线方向上采样点后,并利用体积渲染器对几何多尺度特征进行解码以估计深度值;同时通过将携带相关信息的关键特征馈送到不确定性解码器中来估算不确定性量度;该架构设计可进一步扩展至多传感器配置或者基于RGB的信息输入场景中进行应用

4.1 理论假设

我们的公式基于假设每个射线均遵循拉普拉斯噪声分布而被推导得出,在视觉任务领域该假设相较于高斯噪声分布更为合理。我们假定噪声为异方差型即每个像素对应的噪声方差值各不相同 因此深度测量过程可从下述概率密度函数中进行采样:

p(z|x) = \prod_{i=1}^n \mathcal{N}(z_i; x_i, \sigma_i^2)

以一种系统化的角度考虑真实深度,并将每个特定像素处的深度读数的标准偏差视为其特征的一部分,在整合所有_depth_传感器的数据后形成关于各个光线上_depth_观测的整体概率分布模型:p(\mathbf{D}|\mathbf{Y})表示基于观测数据\mathbf{Y}计算出的真实场景中的三维空间点集合\mathbf{D}的概率分布模型

其中M代表像素读数总的数量。从而其深度最佳估计值可经由最大似然估计法求得:

4.2 建图

建图方法与Nicer-slam一致,但用修正后的损失函数

我们通过规范化处理关键帧数据库中的数据来构建图的损失函数。\x09这些关键帧以固定的间隔被选取,并且在每个构建阶段中都会选择那些与当前框架视锥体有较高重叠度的关键帧。\x09系统地从关键帧和当前框架中取样像素点来进行地图构建。\x09我们在这一过程中采用了分步优化策略用于改进图的质量。\x09首先对各个构建阶段中的中间网格进行细致优化;待收敛完成后,则进一步对包含边缘区域的网格进行处理

4.3 跟踪

跟踪方法与Nice-slam一致,但使用修正后的建图损失函数

在其中考虑了随机传感器的不确定因素,在跟踪过程中被采样的像素数量作为关键指标进行处理,并对相机标定参数优化工作进行了重点推进

4.4 多传感器深度融合和RGBD融合

我们之前探讨的方法都是间接地研究单个传感器的不确定性。该方法被扩展以涵盖包含两个传感器的情况。如果再次假设每个深度观测均为相互独立事件,则要最大化的目标即为所有传感器中各像素概率分布乘积的最大化。

假设两组传感器已实现同步对齐,在两组深度传感器上采集对应的像素数据后可以通过计算得到广义损失函数表达式

一种可能的理解是该目标函数间接估计了两个传感器观测之间的相对重要性。考虑到对数项的作用,在这种情况下损失函数会对较大的不确定性施加惩罚,并且会间接估计每组观测所对应的不确定度水平。这一约束条件源于模型架构的设计要求,在处理RGB图像与深度图像的一致性问题时同样适用。

其中," 和 "分别代表深度以及RGB传感器每个像素处的传感器不确定性。这一建模方法与NICE-SLAM有何不同?其采用基于预设经验法则来调整颜色通道与几何空间维度的权重分配。

4.5 结构细节

根据式(4)和式(5)渲染每个像素的深度和方差。

直接地将式(5)中的渲染方差应用于式(8)和式(9),将其视为不合理的。
不幸的是,这种方法缺乏动机不足之处在于所计算的方差与传感器特有的噪声无关,并非与其置信度有关。
我们致力于所建模的不确定性作为随机性,并将之与模型置信度区分开来。
对式(5)中所使用的方差的一种解释是对认识论不确定性的量化。
当观测数据量不断增加时,在这一情况下认识论不确定性会减小。
我们的方法借鉴了Kendall和Gal工作的思想,在此之上开发出一种基于图像块的学习框架。

在框架中存在另一个问题即计算复杂度较高。体积渲染作为较为耗时的操作之一,在每个传感器执行额外渲染的操作可能显得过于昂贵。基于此我们提出了一种更为简洁的方法通过引入包含相关信息的低维特征表示来获得特定射线的不确定性估计。为了捕获传感器噪声我们利用了可负担的元数据信息并聚焦于对每个像素(即光线方向)进行特征提取最终生成用于估计深度不确定性的输入数据集:测量并记录深度值以及入射角θ∈R其中θ代表光线方向与表面法线之间的夹角可通过中心差分从深度图中获取经过双边过滤处理后得到。对于RGB不确定性我们则采用颜色信息而非深度值来进行特征提取并引入了一个5×5像素窗口来增强光线的空间感受野这使得对局部上下文及其高频细节的捕捉更加精细进而提高了不确定性估计的效果最后我们将这些提取到的特征串联起来形成一个统一的特征表示ζ

MLP网络可表示为...其架构类似于被用于解码器位置的MLP网络结构。我们采用一个包含五个中间层的网络架构,在每一层均采用32个神经元单元进行计算,并且其中一层(最后一层)不执行ReLU激活函数处理;这一设计参考了NeRF-W的基本理念,在软plus激活函数中引入了最小不确定性的参数设置;从最终输出层得到的结果经过进一步处理:

通过引入最小不确定性来设置不确定性的边界为(∞),并以缓解数值不稳定的问题。最终,在优化过程的详细阶段进行更新;其中,在中间阶段采用与Nicer-slam相同的损失函数

5. 实验

实验结果表明,在多个实验测试中

实验结果表格和图片如下:

表 1 : 在Replica 上的重建效果:PSMNet. 我们的模型在仅构建图配置并启用追踪模式以及具备可访问颜色信息的情况下,在所有测试场景中均表现优于现有基准方法。

本表基于Replica平台展示了其重建性能指标为SGM。相较于基准方法,在大部分场景下,我们的模型表现更为突出;然而,在构建图相关场景中(该优势源于其能够捕获数据分布的内在特性),由于采用了预训练不确定性模型这一策略所带来的显著优势所导致的结果略逊一筹。

图 3 : 不确定性可视化(Uncertainty visualization)。每一行展示特定传感器捕获的不同深度图与其相应的不确定性估计(uncertainty estimation),其中数据来源于预先训练过的网络模型以及我们开发的新模型(our developed model)。作为参考依据(as a reference standard),最后一列展示了绝对真实深度误差(absolute depth error)。经过对比分析后发现(after detailed analysis),相较于现有的预训练网络方法(existing pre-trained network methods),我们的新方法能够生成更具细节(sharper)的深度估计结果,并且在某些情况下能够更精确地还原误差分布模式(error distribution patterns)。其中蓝色区域代表低不确定度区域(low uncertainty regions),而红色区域代表高不确定度区域(high uncertainty regions)。

图4展示了单传感器在Replit平台上的重建过程,在模拟存在噪声干扰的深度传感器输入下通过不确定性建模方法,在大多数情况下能够显著提升重建精度。而在Office0场景中仅依赖于深度信息作为输入数据,在Room2场景中则同时提供了RGBD数据以提高重建效果的基础上为了确保实验的一致性和可靠性,在所有测试中都采用了实时跟踪技术以保证数据采集的真实性和准确性。通过对比生成的颜色参考条纹与理想化的网格模型间的差异我们可以更直观地评估不同条件下重建算法的表现效果

表三:在7-Scenes平台上的目标跟踪评估。我们进行了5次运行,并记录了每个场景的平均ATE RMSE值(以厘米为单位)。这使得我们可以比较不同方法的表现。基于深度不确定性建模的方法相比NICE-SLA表现出色,并且在平均ATE指标上实现了38%的提升。

表 4 : 在TUM-RGBD上进行的跟踪评估实验中, 我们展示了每隔两帧构建图象的平均ATE RMSE(厘米)值. 通过对比分析, 我们的深度估计方法表现出显著优越的效果.

表 5

图 5 : Replica上的多传感器重建。中间两列展示了仅依靠单一传感器进行重建的情况;右侧一列则展示了通过将两个传感器的数据融合在同一几何模型中,并采用我们的UncLe-SLAM方法进行处理后的情况。通过引入不确定性建模,在多传感器协同工作时的整体表现相比单一传感器而言更加精确。右侧配色条对比展示了各重建结果与真实网格之间的偏差程度

6.结论

本文探讨了稠密神经SLAM中每个像素点深度不确定性的一种学习方法。基于传感器读数的可靠性程度,在实时调节跟踪与建图中的重投影损失方面取得显著效果。我们主张这种技术在提升跟踪精度方面的优势明显超越了传统稀疏SLAM方法的不足之处。研究表明,在建模深度不确定性方面具有显著优势的做法能够显著改善建图与跟踪性能,并且其表现通常优于那些依赖真实深度信息或三维数据的传统方法。

全部评论 (0)

还没有任何评论哟~