0. 这篇文章干了啥?
密集的视觉SLAM旨在构建环境的详细几何表示,从而实现各种应用,例如增强现实中的遮挡处理,机器人学中的规划和碰撞检查,或相机定位。通常采用体积场表示,因为它们非常适合在线数据集成。传统的体积场表示使用基于网格的结构,通常在实践中结合像八叉树或体素哈希这样的加速方法。然而,与稀疏基于关键点的地图相比,将回环闭合约束纳入体积地图中是困难的,后者可以轻松地变形。最近,由于其易于可微渲染优化,神经场已经成为内存高效的体积场表示。在第一个基于神经场的SLAM方法iMAP的基础上,提出了该方法的各种改编。这些改编主要集中在通过改变网络架构、采样方案和渲染公式来增强优化速度。然而,现有的大多数基于神经场的SLAM方法仍受到它们的单片数据结构的限制(即,单一固定大小的架构)。在这方面,神经场与其他体积场表示共享相同的限制,即在数据被集成之后,体积场不能轻松地变形以考虑回环闭合约束。
为了解决这个问题,我们提出了通过一组可扩展的轻量级神经场来表示场景。这些场被锚定到位姿图中的关键帧上,共同形成体积地图,同时随着关键帧姿态的变化而变形,以适应回环闭合。我们的设计允许将基于稀疏位姿图的SLAM方法的稳健、精确跟踪和高效回环处理与基于可微渲染的神经场表示的密集映射结合起来,同时保持与位姿图一致的体积场表示,而无需昂贵地重新集成以前的传感器数据。此外,我们的方法消除了现有基于神经场的SLAM方法普遍存在的固定场景边界的必要性。它通过在新的场景部分进入视野时动态分配额外的场来实现这一点。
下面一起来阅读一下这项工作~
1. 论文信息
标题:Neural Graph Mapping for Dense SLAM with Efficient Loop Closure
作者:Leonard Bruns, Jun Zhang, Patric Jensfelt
机构:KTH皇家理工学院、TU Graz
原文链接:https://arxiv.org/abs/2405.03633
代码链接:https://github.com/KTH-RPL/neural_graph_mapping
官方主页:https://kth-rpl.github.io/neural_graph_mapping/
2. 摘要
现有的基于神经场的SLAM方法通常使用单个整体场作为它们的场景表示。这阻碍了循环闭合约束的有效整合,并限制了可扩展性。为了解决这些缺点,我们提出了一个神经映射框架,将轻量级神经场锚定到稀疏视觉SLAM系统的姿态图上。我们的方法显示了整合大规模循环闭合的能力,同时限制了必要的重新整合。此外,我们通过在优化过程中考虑多个循环闭合来验证我们方法的可扩展性,并展示了我们的方法在大型场景中在质量和运行时方面优于现有的最先进方法。
3. 效果展示
我们提议用一组神经场(以蓝色球体表示的中心)来表示一个场景,这些场景被锚定到关键帧,这些关键帧位于一个姿态图中,每个场景都在其周围的球体内捕捉到。这允许在动态扩展场景的同时,也将闭环闭合变形纳入到体积场景表示中,而无需进行完全重新整合。
4. 主要贡献
我们的贡献包括:
一个新颖的SLAM框架,将稀疏视觉SLAM的强大、准确的跟踪和高效的回环处理与基于可微渲染的神经场表示的密集映射结合起来;
一个多场景表示,在这个表示中,神经场相对于位姿图锚定,从而实现了大规模地图变形,同时限制了必要的重新集成;
以及对多种最先进方法在不同规模的场景上进行彻底比较;包括为更大的Replica场景提供的一组新颖的序列,以评估其稳健性和可扩展性。
5. 基本原理是啥?
神经图映射框架概述。我们的框架可与任何基于姿势图的SLAM系统配合使用,并维护相对于SLAM系统姿势图的关键帧的一组神经场。每个场在局部坐标中捕捉其周围的场景。这些场的集合代表了一种可变形的体积场景表示,可以轻松适应并与姿势图保持同步。为了实现高效的优化和可伸缩性,这些场是独立且并行优化的。这种设计允许在3D中平均重叠场的输出,从而产生定义良好的查询(例如,网格提取和新视图合成)。
基于网格的实例化方案。一个新的关键帧(左上角)观察到世界点X(黑色和红色点)。未被任何现有场F(蓝色圆圈)覆盖的点X_unc(红色点)被确定。包含未覆盖点且没有现有场中心(带阴影的橙色)的单元格用于实例化新场F_new(橙色圆圈)。新场被放置在未覆盖单元格的中心,并锚定到关键帧。
多视角采样过程。(1)在下一次迭代中,从当前观察到的字段(橙色轮廓)中采样一半字段(橙色圆圈)以进行优化。(2)对于每个字段,根据字段边界上的样本(红色点)是否落入观察到的关键帧区域,近似确定观察关键帧(不透明视锥体)。然后从观察关键帧中采样用于监督该字段的射线段。(3)每个采样的射线段[lmin,lmax]都由覆盖整个字段的Nup个均匀采样查询点和在截断距离τ周围分布的Ndp个深度引导查询点近似表示,该距离约为观察到的距离lobs。
6. 实验结果
表1报告了所有数据集的定量结果。我们的方法在较小的场景(Replica、NRGBD)上取得了最先进的结果,同时在较大的场景(Replica-Big)上优于现有方法。图5中展示的Replica-Big上的定性结果进一步说明了各种方法之间的差异。NICE-SLAM和Co-SLAM都会偏离轨迹,并且在返回到之前的帧时无法纠正偏移,导致结果较差。GO-SLAM也受益于环路闭合,成功地映射了大部分区域;然而,在apt0的最后一个部分失败了,通常表现出更差的重建质量。虽然GO-SLAM在apt0上取得了定量上与我们的方法相似的结果,但我们注意到,在定性上,我们的方法表现出更好的场景完整性和鲁棒性。
在表2中,我们比较了我们的方法与基线方法在三个代表性场景的运行时间和模型大小。尽管并行训练多个场的开销较大,但我们的方法在运行时间上仍然有利可图。我们注意到,对于较长的序列,GO-SLAM的速度明显变慢,而我们的方法保持了一致的帧率。我们提出的多场表示对于更大的场景尤其需要更多的参数。我们怀疑这是由于哈希表使用效率较低,取决于场的内容,哈希表可能会变得不必要地大。在多个场之间共享哈希表可能是进一步减小模型大小的可行方向。
7. 总结 & 未来工作
在这项工作中,我们提出了一种新颖的体积建图方法,将轻量级神经场锚定到稀疏视觉SLAM系统的位姿图中。这个框架允许在体积地图中免费地整合环路闭合,从而提高了鲁棒性和可扩展性。与支持环路闭合的现有神经建图方法相比,我们的方法变形了地图,减少了重新整合的需求,同时仍然允许对几何查询(如网格提取)进行明确定义,而无需依赖于任何空间扭曲或图像空间融合。限制虽然我们的方法能够有效地整合环路闭合约束,但也不是没有缺点。特别是,与单块神经场表示相比,多场表示的内存效率较低,因为后者可以相对不受限制地使用可用的网络容量,而这种适应性在我们的方法中受限于局部球体。此外,神经场表示并未用于改进SLAM结果,密集建图和稀疏跟踪的更紧密整合可能会提高鲁棒性。
对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~
本文仅做学术分享,如有侵权,请联系删文。
计算机视觉工坊交流群
目前我们已经建立了3D视觉方向多个社群,包括
2D计算机视觉
、
大模型
、
工业3D视觉
、
SLAM
、
自动驾驶
、
三维重建
、
无人机
等方向,细分群包括:
2D计算机视觉:
图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等
大模型:
NLP、CV、ASR、生成对抗大模型、强化学习大模型、对话大模型等
工业3D视觉:
相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。
SLAM
:
视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。
自动驾驶:
深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、BEV感知、Occupancy、目标跟踪、端到端自动驾驶等。
三维重建:
3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等
无人机:
四旋翼建模、无人机飞控等
除了这些,还有
求职
、
硬件选型
、
视觉产品落地
、
最新论文
、
3D视觉最新产品
、
3D视觉行业新闻
等交流群
添加小助理: dddvision,备注:
研究方向+学校/公司+昵称
(如3D点云+清华+小草莓)
, 拉你入群。
▲长按扫码添加助理
3D视觉学习知识星球
3D视觉从入门到精通知识星球
、国内成立最早、6000+成员交流学习。包括:
星球视频课程近20门(价值超6000)
、
项目对接
、
3D视觉学习路线总结
、
最新顶会论文&代码
、
3D视觉行业最新模组
、
3D视觉优质源码汇总
、
书籍推荐
、
编程基础&学习工具
、
实战项目
&作业
、
求职招聘&面经&面试题
等等。欢迎加入3D视觉从入门到精通知识星球,一起学习进步。