【论文解读】CP-SLAM: Collaborative Neural Point-based SLAM System_神经点云协同SLAM系统(下)

news2024/12/23 19:12:38

目录

4 CP-SLAM实验

4.1 两个智能体协作( Two-agent Collaboration)

 4.2 单智能体回环(Single Agent with Loop)

4.3  地图构建(Map Reconstruction)

4.4 消融实验

姿态图优化(Pose Graph Optimization)

地图细化(Map Refinement)

采样浓度(Sampling Concentration)

神经点密度(Neural Point Density)

内存和运行时分析(Memory and Runtime Analysis)

5 CP-SLAM 结论


接上篇

【论文解读 】CP-SLAM: Collaborative Neural Point-based SLAM System_神经点云协同SLAM系统(上)-CSDN博客文章浏览阅读2次。基于隐式神经网络的协同SLAM系统,包括完整的前端和后端模块,包括里程计、循环检测、子地图融合和全局优化。为了在一个统一的框架中实现所有这些模块,文章提出了一种新颖的基于神经网络的三维场景表示方法,其中每个点维护一个可学习的神经特征用于场景编码,并与特定的关键帧相关联。此外,我们提出了一种分布式到集中式的学习策略,用于协同隐式SLAM,以提高一致性和合作。还提出了一种新颖的全局优化框架,类似于传统的捆绑调整,以提高系统的准确性。https://blog.csdn.net/qq_35831906/article/details/134423466?spm=1001.2014.3001.5501a261d76cd2124ac8880a3687ada7b6c0.png

4 CP-SLAM 实验

        CP-SLAM系统支持单一智能体和多智能体模式。因此,我们在两个方面评估了我们提出的协作SLAM系统,即带有闭环的单一智能体实验和包含不同大小和复杂性的两个智能体实验。

        对于单一智能体方面,我们基于Replica [35]场景生成数据集,然后将我们的方法与最近的神经和传统RGB-D SLAM方法进行比较。对于两个智能体方面,由于迄今为止还没有出现协作神经SLAM工作,我们的方法与传统方法进行比较。我们还进行了消融研究,以展示所提出系统中各模块的重要性。

实施细节(Implementation Details)

        CP-SLAM系统在NVIDIA RTX3090 GPU上运行RGB-D序列。在两个智能体实验中,我们需要额外的RTX3090作为中央服务器。为了在推断期间对原始邻居特征fi和相对距离∥pi−x∥施加位置编码,我们使用1和7的顺序。我们利用FRNN库在GPU上查询K = 8个最近邻居。在我们的所有实验中,我们设置Nnear = 16,Nuni = 4,λ1 = 0.2,Dl = 0.001m,r = 0.15m,ρ = 0.14m,M1 = 3000,M3 = 3136,M2 = 1500。我们每50帧提取一个关键帧,并每10帧执行一次地图优化和点云补充。对于单一智能体实验,我们对神经场进行200次迭代的优化。对于两个智能体实验,考虑到锚定在神经点上的特征在子图融合后无需从头开始训练,我们将迭代步骤的数量减少到150。更多的实现细节可以在我们的补充材料中找到。

基线(Baselines)

        在单一智能体实验中,由于我们使用了渲染的闭环数据,我们主要选择最先进的神经SLAM系统,如NICE-SLAM [50],Vox-Fusion [44]和ORB-SLAM3 [4],以在闭环数据集上进行比较。对于两个智能体实验,我们将我们的方法与传统方法进行比较,例如CCM-SLAM [33],Swarm-SLAM [17]和ORB-SLAM3 [4]。

数据集(Datasets)

        为了进行重建评估,我们使用了合成数据集Replica [35],配备了高质量的RGB-D渲染SDK。我们生成了8个RGB-D序列的集合,其中4个代表单一智能体轨迹,每个包含1500个RGB-D帧。其余的4个集合设计用于协作SLAM实验。每个集合分为2部分,每个部分包含2500帧,其中Office-0-C每部分包含1950帧。

指标(Metrics)

        作为一种密集的神经隐式SLAM系统,我们定量和定性地测量其制图和跟踪能力。对于制图,我们评估了从我们的神经点场渲染的196个均匀采样的深度图与地面实况深度图之间的L1损失。此外,在3D三角网格方面,我们计算了网格重建精度。对于跟踪,我们使用ATE RMSE,均值和中值综合测量轨迹准确性,以防止极端异常值造成的负面影响。

        ATE RMSE代表平均轨迹误差的均方根误差(Root Mean Square Error)。ATE是Absolute Trajectory Error(绝对轨迹误差)的缩写,表示实际轨迹和估计轨迹之间的平均距离误差。

        RMSE是均方根误差,是一种用于度量估计值与真实值之间差异的指标。它通过计算误差的平方、取平均值,再开平方根来得到。对于轨迹误差,RMSE提供了平均误差的度量,即平均轨迹误差的平方根。

        在SLAM系统的评估中,ATE RMSE通常用于衡量SLAM算法对相机轨迹的准确性。它表示在整个轨迹上,实际相机轨迹和SLAM系统估计的相机轨迹之间的平均距离误差的均方根值。ATE RMSE的值越小,表示SLAM系统的相机轨迹估计越准确。

4.1 两个智能体协作( Two-agent Collaboration)

        我们提供了在四个场景(包括Replica [35]的Apartment-0、Apartment-1、Apartment-2(多房间)和Office-0-C(单房间))上进行的两个智能体实验的定量结果。我们选择RGB-CAM-SLAM [33]、RGBD-CAM-SLAM [17]和传统的ORB-SLAM3 [4]进行比较。表1报告了不同方法的定位准确性。

e188aa9425bf496180cec33a00d05216.png

        在复杂的多房间序列中,尽管受到环境的影响,提出的系统通常比其他方法表现更好。

        值得注意的是,ORB-SLAM3并不是一个协作SLAM系统。它缺乏同时处理多个序列的能力,因此无法克服在场景探索中的效率瓶颈。

        具体而言,我们将多个图像序列连接起来,输入到ORB-SLAM3中,利用其用于多序列处理的“atlas”策略。

        此外,可以看到CCM-SLAM在一些场景中失败,因为传统的基于RGB的方法在无纹理环境中特别容易出现特征匹配问题。

8fbb0b0164ef47b8a2ec0987ec316886.png

        图5展示了每个智能体的轨迹。一旦两个子图被融合,只需要进行低成本的微调,就可以将两个神经场和相应的MLP调整到一个共享的域中。然后,这两个智能体可以重复使用彼此的先前观测并继续进行准确的跟踪。共享的MLP、神经场以及接下来的全局位姿图优化使CP-SLAM系统成为一个紧密协作的系统。

 4.2 单智能体回环(Single Agent with Loop)

        在表2中,我们展示了我们的系统在单智能体模式下在4个回环闭环数据集上的定位性能。我们的方法在定位性能上明显优于最近的方法,包括基于NeRF的方法和传统方法,这主要归功于前端和后端处理的并发集成,以及神经点表示的引入。

efe214c0332b4123a2c01815a4001247.png

        在定性方面,我们在图6中展示了NeRF-based方法在Room-0-loop和Office-3-loop上的轨迹。实验结果表明,围绕采样点的密度能量的集中程度对神经SLAM至关重要。

ba6177ec622043bbab9fcfc280cf9f65.png         NICE-SLAM [50]使用密集的体素网格,其中包含大量的空白空间,并且在这些空白空间中的采样点几乎没有贡献梯度传播。

        Vox-Fusion [44]引入了一个重要的修改,实现了一个根据特定场景定制的稀疏网格,而不是一个密集的网格。然而,网格节点只能大致放置在物体附近,这对于跟踪是不利的。

        在我们的基于神经点的方法中,我们确保神经场很好地适应了真实场景。特征嵌入可以准确地包含场景信息。集中分布的采样点和基于神经点的表示为姿势反向传播提供了更精确的梯度,使我们能够在更低的分辨率和内存使用率下超越NICE-SLAM和Vox-Fusion。

        此外,我们在TUM-RGBD真实世界数据集上进行了实验,与Co-SLAM [39]和ESLAM [12]进行了比较。表3中的结果表明,我们的方法在真实世界环境中也取得了最先进的性能,并且回环检测和位姿图优化对于真实世界场景同样有效。

5e1cc2ecc5c64d51a8cb1d583ee8b86e.png

4.3  地图构建(Map Reconstruction)

        表4中的结果对比了我们提出的系统与NICE-SLAM [50]和Vox-Fusion [44]在几何重建方面的定量分析。

a8d8ec5c13a646c9a80bd3358dff9ecf.png

        在我们的方法中,我们在整个预测轨迹中的每10帧渲染深度图和彩色图,并利用TSDF-Fusion(Open3D [49]库中的内置函数)构建网格地图。

        在NICE-SLAM中,用于地图评估的有深度L1损失、网格准确性、完成度和完成度比等多个指标。

        在我们的回环数据集中,场景并没有完全被扫描到,导致了网格重建中的空洞。因此,我们的比较实验主要关注深度L1损失和网格准确性。

8400868390eb4330a11415670e6c7468.png

        图7在定性上比较了三种方法的单智能体重建结果,并展示了我们的协作映射结果。显然,我们的方法在所有数据集上都实现了更详细的几何重建。

4.4 消融实验

        我们对我们系统中的一些模块和设计进行了检查,以证明它们的重要性和我们流程的合理性。

姿态图优化(Pose Graph Optimization)

        在这一部分,我们对PGO模块进行了消融实验。

表1和表2分别报告了我们单一智能体和双智能体情况下的带PGO和不带PGO的结果。在PGO模块的帮助下,单一智能体实验中的平均定位精度下降了10%,而双智能体实验中的下降了13%。

3e82cdb2ac414c508c5ecd900f1792c9.png

25f0b356bac14b76b9affbc2c4fe1f83.png

地图细化(Map Refinement

        如图8(a)所示,我们在MeshLab中定性地展示了地图细化前后的神经点云布局。我们可以观察到,经过细化的神经点云更好地适应了地面真实的网格。

1e26709e12684cf68008d6430d91aff2.png

采样浓度(Sampling Concentration)

        采样点附近的密度浓度是决定神经SLAM性能的关键点。我们在Replica Room-0-Loop序列上设计了一组不同采样间隔长度的实验。

        如图8(b)所示,随着采样点逐渐分散,跟踪精度和深度L1损失持续下降至1.0厘米和0.6厘米。这个实验证明了第4.2节中的理论。

神经点密度(Neural Point Density

        在CP-SLAM中,我们采用了一个固定大小的立方体单元格,在过滤策略中调整神经点,即只保留距离一个立方体单元格中心最近的神经点。为了进一步探讨点云密度对跟踪精度的影响,我们在原始的Replica Room0场景中比较了不同尺寸的立方体网格的性能。

表5中的消融研究结果表明,当神经点数量较小时,由于场景表示不足,它们不足以编码详细的场景几何和颜色。相反,过多的神经点显然会延长学习时间以收敛。

aa7a952b350541a0b02a47bfa47d82a7.png

        我们经验性地发现,在我们的实验中,对于不同复杂性的所有测试场景,设置ρ = 14cm一直表现良好。

内存和运行时分析(Memory and Runtime Analysis

        我们在Replica Office-0-loop场景上评估了我们系统的运行时和内存消耗,与NICE-SLAM和Vox-Fusion进行了比较。我们报告了单帧跟踪和映射时间、MLP的大小以及整个神经场的内存占用量。表6中NICE-SLAM中巨大的特征大小是由于其密集的分层特征网格。

aec58a4243cc40ac8cfcbfd291a5784b.png

5 CP-SLAM 结论

        本文提出的CP-SLAM,这是第一个基于新颖的神经点表示的稠密协作神经SLAM框架,它保留了完整的前端和后端模块,就像传统的SLAM系统一样。

        系统的流程使我们的框架在定位和重建方面胜过了现有方法。

        我们方法的一个局限性是它需要大量的GPU资源来处理多个图像序列

        此外,我们的系统在未观察到的区域中的孔洞填充能力略弱于基于特征网格的方法,这是因为神经点分布在观察到的对象表面周围,在固定半径球内编码周围场景信息。

        此外,环路闭合中的相对姿态计算依赖于现有的基于渲染的优化,对于大视角变化可能不准确,从而导致地图融合漂移。因此,未来可以设计一个轻量级系统,进行从粗到细的姿态估计,这是一个有趣的方向。

 

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

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

相关文章

【献给过去的自己】栈实现计算器(C语言)

背景 记得在刚学C语言时,写了一篇栈实现计算器-CSDN博客文章。偶然间看到了文章的阅读量以及评论,居然有1.7w的展现和多条博友的点评,反馈。 现在回过头来看,的确有许多不严谨的地方,毕竟当时分享文章时,还…

实时人眼追踪、内置3D引擎,联想ThinkVision裸眼3D显示器创新四大应用场景

11月17日,在以“因思而变 智领未来”为主题的Think Centre和ThinkVision 20周年纪念活动上,联想正式发布了业内首款2D/3D 可切换裸眼3D显示器——联想ThinkVision 27 3D。该产品首次将裸眼2D、3D可切换技术应用在显示器领域,并拓展了3D技术多…

柯桥外语学校|西班牙语中关于金钱的俚语

01 Estar forrado(a) “Forrado(a)”源自动词“forrar”,该动词本意为“包;裹”的动作。 在口语中,则是形容一个人被金钱所包裹,可见这个人是多么地有钱(有点类似于我们的成语“腰缠万贯”所描绘的画面)。…

leetcode刷题日记:141. Linked List Cycle(环形链表)

这一题是给我们一个链表让我们判断这是否是一个环形链表,我们知道如果一个链表中有环的话这一个链表是没有办法访问到尾的, 假若有如图所示的带环链表: 我们从图示中很容易看出来这一个链表在访问的时候会在里面转圈,我们再来看看…

面试鸭 - 专注于面试刷题的网站

网上面试题有很多,但此套面试题真实、原创、高频,全网最强。 题目涵盖大中小公司,真实靠谱,有频率和难度的标记,助你成为Offer收割机。 面试鸭地址:https://mianshiya.skyofit.com/ 本套题是我原创&…

浙大恩特客户资源管理系统CustomerAction.entphone;.js 接口任意文件上传漏洞复现 [附POC]

文章目录 浙大恩特客户资源管理系统CustomerAction.entphone;.js 接口任意文件上传漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 浙大恩特客户资源管理系统CustomerAction.entphone;.js 接口任…

故障发现、定位提效超 70%,去哪儿可观测体系做了哪些优化?

一分钟精华速览 去哪儿网的原有监控系统在指标数量上展现出了强大实力——上亿指标量和百万级的告警量,但在故障数据方面却稍显不足——订单类故障平均发现时间长达 4 分钟,仅有 20%的订单类故障能在 1 分钟内被发现,近半数的故障处理时长超…

注册表单mvc 含源代码

总结 jsp给我们的ControllerServlet.java,ControllerServlet.java获取参数,信息封装给RegisterFormBean.java的对象看是否符合格式,符合格式再信息封装给UserBean对象,调用Dbutil插入方法查重.]]要创建一个user集合成功跳哪个界面,打印信息注意什么时候要加getsession失败跳哪…

超越视觉:探索The Foundry NUKE 15 的无限可能性

你是否曾被电影中那些令人震撼的特效所吸引?是否曾梦想过自己也能制作出这样的特效?现在,这个梦想即将成为现实。今天,我们将向你介绍一款引领影视后期特效制作潮流的软件——The Foundry NUKE 15。 The Foundry NUKE 15是一款专…

JVM类加载机制详解

JVM类加载运行全过程 运行Math类的main函数,启动程序时,首先需要通过类加载器把类加载到JVM。 package com.cold;public class Math {public int compute() {int a 1;int b 2;int c (a b) * 10;return c;}public static void main(String[] args) …

如何将中文翻译成荷兰语?

随着中国的崛起,荷兰与中国的交流日益频繁。越来越多的企业和个人需要荷兰语翻译服务。那么,如何将中文翻译成荷兰语,北京哪家翻译公司比较专业? 专业人士指出,要提供优质的荷兰语翻译服务,不仅需要扎实的荷…

【hive-解决】HiveAccessControlException Permission denied: CREATEFUNCTION

文章目录 一.任务描述二. 解决 一.任务描述 Error while compiling statement: FAILED: HiveAccessControlException Permission denied: Principal [nameroot, typeUSER] does not have following privileges for operation CREATEFUNCTION [ADMIN PRIVILEGE on INPUT, ADMIN…

CSGO的那些事儿:CS2这么差,为什么不改回CS1?

揭秘csgo饰品涨价背后的残酷真相 1、V社现在更新内容集中在游戏性的修复方面。 所以原来期望的新地图新大行动等,要等到游戏本体趋于稳定后才更新。但是,因为距离下一个大型活动,也就是丹麦major还有5个月时间,那这之间必然要有一…

百度智能小程序源码系统:打造极致用户体验的关键 带完整搭建教程

大家好啊,今天罗峰来给大家分享一款百度智能小程序系统源码。一起来看看吧。 百度智能小程序源码系统是百度从做智能小程序的第一天开始就致力于打造真正开源开放的生态的产物。作为目前业内唯一真正开源的平台,百度智能小程序将开放性放在重要位置&…

kubernetes 高可用集群

目录 一、haproxy负载均衡 二、pacemaker高可用 三、部署control-plane 四、部署worker node 实验环境 主机名 IP 角色 docker 192.168.67.10 harbor k8s1 192.168.67.11 control-plane k8s2 192.168.67.12 control-plane k8s3 192.168.67.13 control-plane k8s…

数字逻辑电路基础-组合逻辑电路之复用器

文章目录 一、复用器简介二、verilog源码三、综合及仿真结果一、复用器简介 本文介绍数字逻辑电路中一种常用的基础组合逻辑电路-两选一复用器,顾名思义,它的功能就是通过一个控制信号来选择两个输入中之一作为输出。 它的逻辑表达式为:out = ~sa + sb 它的逻辑真值表为:…

元宇宙数字展厅无代码编辑工具的功能特点

商场如战场,营销是每个企业都必须重视的环节。随着科技的发展,3D展示营销制作平台作为企业快速搭建3D互动展厅的SaaS平台,逐渐崭露头角,为企业提供了诸多便利,让营销变得更加高效和引人入胜。 为企业提供身临其境的产品…

IDEA 中设置 File Header 以及自定义类、方法注释模板的方法

目录 1 设置 File Header2 自定义类、方法注释生成类注解模板生成方法注解模板 1 设置 File Header File -> Settings -> File and Code Templates -> Includes -> File Header -> 编辑 2 自定义类、方法注释 File -> Settings -> Live Templates -&g…

2023年最新软件安装管家目录

最新软件安装管家目录 软件目录 ①【电脑办公】电脑系统(直接安装)Win7Win8Win10OfficeOffice激活office2003office2007office2010office2013office2016office2019office365office2021wps2021Projectproject2007project2010project2016project2019projec…

二层、三层交换机之间到底有什么区别?

简单地说 二层交换机,没有充当三层网关角色的能力(Capability)。三层交换机,首先也是二层交换机。但是,它有一个额外的能力(Capability),软件配置一下,可以充当三层网关…