NGM-SLAM:首创融合神经辐射场子图的3DGS-SLAM,问鼎SOTA!

news2024/11/15 13:00:09

论文标题:

NGM-SLAM: Gaussian Splatting SLAM with Radiance Field Submap

论文作者:

Mingrui Li, Jingwei Huang, Lei Sun Aaron, Xuxiang Tian, Tianchen Deng, Hongyu Wang

导读:

3DGS技术因其性能卓越而备受关注,3DGS-SLAM系统应运而生。然而,当前3DGS-SLAM系统通常在大场景表示、有效的闭环校正和场景泛化能力方面存在缺陷。为此,论文作者设计了NGM-SLAM,这是第一个利用神经辐射场子图用于渐进式场景表示的GS-SLAM系统,有效地结合了神经辐射场和3DGS的优势,实现了最先进的场景重建和跟踪性能。©️【深蓝AI】编译

1. 背景简介

长期以来,SLAM技术一直是机器人学与AR/VR领域的核心议题。密集SLAM系统因广泛的应用潜力而备受重视。传统密集SLAM系统利用体素、点云和TSDF等显式表示,在追踪方面表现出色,但受限于高保真建模、空缺填补及纹理细节的处理,其应用范围受到一定局限。神经隐式SLAM系统,基于NERF的隐式表示,显著增强了SLAM系统的感知能力,但依旧面临实时性、运行速度和内存需求的瓶颈。

近期,3DGS-SLAM系统在保持NERF-SLAM系统的建图精度同时,在渲染速度和精度上取得了突破,挑战了神经隐式 SLAM 在密集重建中的主导地位。然而,值得注意的是,与NERF相比,3DGS-SLAM系统依赖点云输入,在空缺填补能力上有所欠缺,且未充分利用神经网络的泛化能力。此外,它缺乏稳健的闭环检测机制,导致在大场景中累积漂移问题凸显,影响了地图的稳定性和准确性。

2. 方案提出

针对上述挑战,作者创新性地设计了融合神经子图与3DGS表示的SLAM体系。

首先,构建以神经辐射场为基础的子图与一个全局关键帧索引。当达到地图构建阈值时,基于前序子图作为先验,将会创建新的神经子图,并实施高斯渲染。随后,执行局部捆绑调整(BA),并在子图间实施融合策略及高斯体修剪。闭环一旦被识别,即刻启用实时由粗到细的闭环校正,通过调整对应锚框的地图姿态,并运用全局BA及高斯渲染损失函数,以最小的计算成本有效修正累积漂移。

实验结果表明,本方法在跟踪和建图方面实现了SOTA性能,并且可扩展到大规模场景。

在这里插入图片描述
▲图1|NGM-SLAM系统架构©️【深蓝AI】编译

3. 细节解析

图1展示了NGM-SLAM的系统架构。该系统包括跟踪和建图两个模块。在初始子图开始建立后,跟踪模块持续估计相机姿态并检测环路,同时将子图的关键帧传递给建图模块。建图模块首先构造神经子图,该神经子图也用作多尺度GS(高斯抛雪球)子图的先验,并在子图之间执行并行渲染。在子图内执行局部束缚调整(BA)以校正姿态和建图误差,一旦检测到闭环,就对所有锚框执行全局BA。最后,生成的GS地图被缝合在一起。

■3.1 先验神经子图渲染

考虑到3DGS-SLAM系统在泛化推理能力上的不足,本文引入了基于数据驱动的增量神经子图作为基础监督机制,来填补空白并增强地图表示。基于ORB特征点追踪,仅在当前帧提取特征,减少了与子图创建和空缺填充相关的漂移问题。通过设立局部与全局关键帧列表,优化了局部与全局BA流程,并在子图积累至预设关键帧阈值时新建局部子图。为优化地图融合并减少融合误差,借助DBOW模型评估关键帧间的共视关系,确保地图结构的稳定性。

■3.2 多尺度高斯子图渲染

利用神经子图提供的先验信息,采用一组各向异性3DGS分布来描绘场景,利用位置、不透明度、三阶球谐系数、3D尺度及四元数描述的3D旋转来丰富场景细节。通过多尺度渲染技术,解决了小高斯体渲染中的锯齿问题,通过不同分辨率下的高斯体聚合,提高了渲染质量,同时在保证渲染速度的前提下,通过射线引导的高斯体修剪策略进一步提升了精度与效率。

■3.3 高效子图融合策略

为适应大规模场景并有效管理内存资源,本文提出了一套高效的子图融合机制。场景被划分为多个局部子图,每个子图依据关键帧的空间位置进行定位。在每次局部BA后,地图的中心姿态得到更新,以确保子图间的良好对齐。为了避免子图边界处出现视觉上的重叠或缝隙,从每个子图的边缘剔除了多余的高斯体,从而减轻了拼接时可能出现的伪影现象。接下来,采用高斯聚合技术,将相邻子图边界的较小高斯体合并为更大的单元,以实现无缝过渡。这一系列操作确保了子图间的平滑拼接,即使在多次闭环校正和全局BA之后,也能维持地图的一致性和完整性,同时控制了内存占用的增长。

■3.4 闭环检测与全局优化

闭环检测是确保地图整体一致性的关键步骤。采用局部与全局相结合的策略,首先在每个子图内部进行局部BA,专注于局部关键帧的校正。对于全局一致性,利用词袋模型(BoW)来检测全局关键帧之间的关联性,一旦发现闭环条件满足,即启动一个由粗到精的全局调整流程。这一过程首先通过BA优化锚定子图的姿态,接着执行子图融合,以消除边界漂移。在此之后,保持锚定子图姿态固定,基于全局关键帧列表执行全局BA,进一步细化姿态调整,并再次进行子图融合,以最终完成闭环校正。通过在整个过程中整合射线采样,能够指导高斯体的生成与融合,进而利用高斯渲染损失进一步细化地图,确保了全局地图的一致性和准确性,同时保持了系统的实时性。

4. 实验

实验结果表明,与现有基于3DGS的SLAM方法相比,本方法在多个维度上实现了显著提升,不仅提高了跟踪和建图的精度,还优化了系统运行效率,特别是在处理大规模多房间序列时展现了其优越性能。

在这里插入图片描述
▲图2|展示了在Replica数据集房间序列上,单目与RGB-D重建技术的对比结果©️【深蓝AI】编译

在这里插入图片描述
▲图3|展示了在Replica数据集四个大型公寓序列上的重建结果,证明了本方法有效避免了灾难性遗忘,并且能够实现背景的合理填充及场景的广泛适应性©️【深蓝AI】编译

在这里插入图片描述
▲图4|在ScanNet数据集的大规模多房间序列上,本方法展现了其在累积误差校正方面,相较于传统基于高斯抛雪球的方法有着更优的表现©️【深蓝AI】编译

在这里插入图片描述
▲表1|在Replica数据集的8个小房间序列上,本方法在平均PSNR(dB)、SSIM、LPIPS、ATE(cm)、跟踪FPS、系统FPS和GPU使用情况等方面的表现©️【深蓝AI】编译

在这里插入图片描述
▲表2|在Replica数据集的5个大规模场景序列上,本方法在ATE RMSE(cm)性能方面的表现©️【深蓝AI】编译

在这里插入图片描述
▲表3|在ScanNet数据集的6个大规模场景序列上,本方法在ATE RMSE(cm)性能方面的表现©️【深蓝AI】编译

在这里插入图片描述
▲表4|在TUM RGB-D数据集上,本方法在ATE RMSE(cm)性能方面的表现©️【深蓝AI】编译

在这里插入图片描述
▲表5|在EuRoC数据集上,使用立体视觉相机输入时,本方法在ATE RMSE(cm)性能方面的表现©️【深蓝AI】编译

5. 总结

总的来说,作者提出的NGM-SLAM系统成功地将神经辐射场的表达力与3DGS的高效渲染能力相结合,通过创新性的子图管理和闭环检测策略,克服了大场景建图和实时性要求的挑战,并以其稳健的跟踪性能和监督精度,展现出广泛的应用前景,这无疑将开启一股融合NeRF与3DGS技术的SLAM系统研究新浪潮。

编译|Deep蓝同学

审核|Los

移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1678795.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GPT-4o 炸裂发布!你竟然还没用上?(附详细教程)

今天AI界的爆炸新闻非chatgpt-4o莫属,从早上到现在随处可见的文章推送,视频推送。 大家或多或少都有耳闻了,今天主要讲一讲我们普通人到底怎么用?如果不氪金行不行?我就想体验一下可不可以?带着问题往下看 …

Python 海龟画图(Turtle)命令大全

移动和绘制 forward() | fd() 使用语法: ​​turtle.forward(距离)​​ ​​turtle.fd(距离)​​ 参数说明: 距离 一个数字 (整数 或者 浮点) (注:单位是像素) 代码示例: import turtle turtle.forward(200) 效果: backward () | bk() | back() 使用语法: ​…

掏心经验分享,软考中项0基础入门篇!

想备考下半年中项(系统集成项目管理工程师)的朋友,不知道如何了解软考中项,今天给大家整理一篇关于我自己在备考软考时的一些考量和踩过的一些坑。(无广,放心看) 很多小伙伴总是听大家说软考中…

你是学会了还是学废了:Elasticsearch 7 集群拷贝到其它环境如何重置密码

欢迎您关注我的公众号【尚雷的驿站】 公众号:尚雷的驿站 CSDN :https://blog.csdn.net/shlei5580 墨天轮:https://www.modb.pro/u/2436 PGFans:https://www.pgfans.cn/user/home?userId4159 前言 本文描述了将生产ES集群打包拷贝…

线性模型之岭回归的用法

实战:使用岭回归模型 完整代码: import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression from sklearn.datasets import make_regression from sklearn.model_selection import train_test_split fro…

平芯微PW4056HH中文规格书

概述 PW4056HH 是一款完整的采用恒定电流/恒定电压的高压、大电流、单节锂离子电池线性充电 IC。充电电流可达 1A。输入 MAX 低工作电压 3.75V,降低充电功耗,提高效率。 PW4056HH 采用了内部 PMOS 架构,加上防反充电路,不需要外部…

Java开发大厂面试第04讲:深入理解ThreadPoolExecutor,参数含义与源码执行流程全解

线程池是为了避免线程频繁的创建和销毁带来的性能消耗,而建立的一种池化技术,它是把已创建的线程放入“池”中,当有任务来临时就可以重用已有的线程,无需等待创建的过程,这样就可以有效提高程序的响应速度。但如果要说…

Linux服务器lvm磁盘管理fdisk和df磁盘大小不同修改

服务器端由于硬盘是通过VCenter原来100G磁盘复制的虚拟机,复制完成后,原来100G的磁盘通过选择 磁盘重新复制出150G的磁盘,开机后发现还是原来的100G的磁盘,通过fdisk -l 查看有个sdb是150G, 但是已经划转的lvm盘只有100G, 通过df查看也是原来的100G: pvs查看pv里也是10…

【链路层和局域网】

文章目录 链路层和局域网网络节点的连接方式数据链路层和局域网链路层导论链路层:上下文链路层服务链路层在哪里实现?适配器通信错误检测奇偶校验校验和:CRC(循环冗余校验)多点访问链路和协议多路访问协议MAC&#xff…

立创EDA绘制PCB电路板

1、绘制好原理图后,点击设计---原理图转PCB,生成PCB文件 2、将元器件拖入电路板方框内,摆放布局并使用工具栏布线、放置过孔及丝印 3、然后顶层和底层铺铜 4、后面就可以生成制板文件发送嘉立创制板了。

基于国产LoRa的智慧农业解决方案--ASR6601、SX1278

我国《数字乡村发展战略纲要》明确指出“要推进农业数字化转型”,加快推广云计算、大数据、物联网、人工智能在农业生产经营管理中的运用。 然而,目前我国的农业数字化转型还面临着诸多挑战。我国整体农业机械化程度和自动化控制水平仍然较低。由于农田面…

ubuntu quota配置磁盘配额

安装quota工具:sudo apt-get install quota这条命令会安装quota工具&#xff0c;它用于在Linux系统中管理和强制执行磁盘配额。编辑用户quota:sudo edquota -u <username> /data这条命令会打开默认的文本编辑器&#xff0c;允许你为用户liushenshen在/data文件系统上设置…

三.Ubuntu安装MySql数据库

三.Ubuntu安装MySql数据库 1.首先进入Console,登录Ubuntu系统后,更新源,命令:apt update,如图所示。 安装MySQL命令:apt install mysql-server 执行期间按回车,进行下一步,执行过程如图所示: 选择yes或no,此步选择yes 安装完成。 2.提高MySQL安全性,该命令…

代码行数统计工具cloc

Release v2.00 AlDanial/cloc GitHub 代码量代码行数统计工具cloc的正确使用(windows平台亲测有效&#xff0c;本人踩过坑&#xff0c;文中提到&#xff01;)_cloc代码统计工具-CSDN博客

libssh C++封装之六(Dir)

1 概述 libssh是一个在客户端和服务器端实现SSHv2协议的多平台C库。使用libssh,您可以远程执行程序、传输文件、使用安全透明的隧道、管理公钥等等。本文描述的对libssh客户端功能的C++封装。 libssh下载地址 3 实现 3.5 Dir Dir类型管理远程路径,通过SFTP和Channel实现(有…

so-vits-svc:AI翻唱,语音克隆

前言 这个项目是为了让开发者最喜欢的动画角色唱歌而开发的&#xff0c;任何涉及真人的东西都与开发者的意图背道而驰。 项目地址&#xff1a;https://github.com/svc-develop-team/so-vits-svc/blob/4.1-Stable/README_zh_CN.md 安装 可以自行配置&#xff0c;应该也不难 …

做简单易用的GIS资源管理软件

在室外资源管理领域&#xff0c;采用基于GIS的解决方案已成为主流趋势&#xff0c;旨在实现资源的高效利用和管理。GIS技术结合资源对象的规划、定位和监控&#xff0c;为企业提供全面的管理方案&#xff0c;从而优化资源使用、提高运营效率和降低成本。 然而&#xff0c;许多资…

新手也能看懂的前端单元测试框架:Vitest

单元测试的概念及作用 1.什么是单元测试&#xff1f; 单元测试是测试中的一个重要环节&#xff0c;它针对软件中的最小可测试单元进行验证&#xff0c;通常是指对代码中的单个函数、方法或模块进行测试。 单元测试旨在确定特定部分代码的行为是否符合预期&#xff0c;通过针…

618值得入手的数码好物如何选?热门爆款数码好物清单分享

618购物节即将到来&#xff0c;作为年中最重要的购物狂欢盛会之一&#xff0c;各大电商平台将推出众多优惠活动。如果你正准备购买数码产品&#xff0c;那么不要错过这个机会。在本文中&#xff0c;我们将为你介绍几款值得关注的热门数码产品&#xff0c;帮助你在618购物节中做…