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

目录

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.rhkb.cn/news/195724.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JUC工具类_CyclicBarrier与CountDownLatch

最近被问到CyclicBarrier和CountDownLatch相关的面试题,CountDownLatch平时工作中经常用到,但是CyclicBarrier没有用过,一时答不上来,因此简单总结记录一下 1.什么是CyclicBarrier? 1.1 概念 CyclicBarrier&#xff…

简单漂亮的首页

效果图 说明 这个首页我也是构思了很久&#xff0c;才想出这个界面&#xff0c;大家喜欢的话&#xff0c;可以拿走去使用 技术的话&#xff0c;采用的就是vue的语法&#xff0c;但是不影响&#xff0c;很多样式我都是直接手敲出来的 代码实现 标语 <!-- 标语 start-->&…

hive sql 取当周周一 str_to_date(DATE_FORMAT(biz_date, ‘%Y%v‘), ‘%Y%v‘)

select str_to_date(DATE_FORMAT(biz_date, %Y%v), %Y%v)方法拆解 select DATE_FORMAT(now(), %Y%v), str_to_date(202346, %Y%v)

【7】Spring Boot 3 集成组件:缓存组件 spring cache + spring data redis

目录 【7】Spring Boot 3 集成组件&#xff1a;缓存组件 spring cache spring data redis什么是缓存抽象声明式注解JSR-107对应SpEL上下文数据 引入依赖cache 支持的缓存类型缓存类型配置NONESIMPLEREDIS自定义配置 CAFFEINE Hazelcast...总结 个人主页: 【⭐️个人主页】 需要…

01Urllib

1.什么是互联网爬虫&#xff1f; 如果我们把互联网比作一张大的蜘蛛网&#xff0c;那一台计算机上的数据便是蜘蛛网上的一个猎物&#xff0c;而爬虫程序就是一只小蜘蛛&#xff0c;沿着蜘蛛网抓取自己想要的数据 解释1&#xff1a;通过一个程序&#xff0c;根据Url(http://www.…

DMA原理和应用

目录 1.什么是DMA 2.DMA的意义 3.DMA搬运的数据和方式 4.DMA 控制器和通道 5.DMA通道的优先级 6.DMA传输方式 7.DMA应用 实验一: 内存到内存搬运 CubeMX配置&#xff1a; ​编辑用到的库函数&#xff1a; 代码实现思路&#xff1a; 实验二: 内存到外设搬运 CubeMX…

一文看分布式锁

为什么会存在分布式锁&#xff1f; 经典场景-扣库存&#xff0c;多人去同时购买一件商品&#xff0c;首先会查询判断是否有剩余&#xff0c;如果有进行购买并扣减库存&#xff0c;没有提示库存不足。假如现在仅存有一件商品&#xff0c;3人同时购买&#xff0c;三个线程同时执…

MySQL内部组件与日志详解

MySQL的内部组件结构 MySQL 可以分为 Server 层和存储引擎层两部分。 Server 层主要包括连接器、查询缓存、分析器、优化器、执行器等&#xff0c;涵盖 MySQL 的大多数核心服务功能&#xff0c;以及所有的内置函数&#xff08;如日期、时间、数学和加密函数等&#xff09;&am…

Linux网络之传输层协议tcp/udp

文章目录 目录 一、再谈端口号 1.端口号划分 2.知名端口号 3.netstat&#xff0c;pidof 二、UDP协议 1.udp协议格式 2.udp特点 3.基于udp的应用层协议 三、TCP协议 1.tcp报头 确认应答机制&#xff08;ACK) 超时重传机制 连接管理机制&#xff08;三次握手四次挥…

Java JVM虚拟机

加载字节码文件.class 1字节一般为8位 字节码结构: 第一部分 4字节 cafebaby 第二部分 版本号 00 00 00 32, 第三部分 常量数量 count 第四部分常量池 常量类型表示: 继承关系改变 1.1以后 后面是属性方法 等参数 通过javap 反编译class ,javap xx.class javap -c xxx.…

php中RESTful API使用

1、RESTful AP是什么 RESTful API是一种软件架构风格 RESTful API基于HTTP协议&#xff0c;并遵循一系列约定和原则。它的设计理念是将资源&#xff08;Resource&#xff09;作为核心概念&#xff0c;并通过一组统一的接口对资源进行操作。API的资源通常通过URL进行标识&…

​软考-高级-系统架构设计师教程(清华第2版)【第11章 未来信息综合技术(P384~P419)-思维导图】​

软考-高级-系统架构设计师教程&#xff08;清华第2版&#xff09;【第11章 未来信息综合技术&#xff08;P384~P419&#xff09;-思维导图】 课本里章节里所有蓝色字体的思维导图

SpringEvent事件通知机制

“Spring Event” 是 Spring 框架通过事件驱动的编程模型来处理应用程序中的事件。开发者可以定义自己的事件&#xff0c;然后在应用程序中触发这些事件。Spring 框架提供了用于发布和监听事件的机制&#xff0c;以实现松散耦合的组件间通信。 有两个核心组件&#xff1a; 事…

PCL_点云分割_基于法线微分分割

一、概述 PCL_点云分割_基于法线微分分割_点云法向量微分-CSDN博客 利用不同的半径&#xff08;大的半径、小半径&#xff09;来计算同一个点的法向量差值P。判断P的范围&#xff0c;从而进行分割。 看图理解&#xff1a; 二、计算流程 1、计算P点小半径的法向量Ns 2、计…

基于乌燕鸥算法优化概率神经网络PNN的分类预测 - 附代码

基于乌燕鸥算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于乌燕鸥算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于乌燕鸥优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xff1a;针对PNN神经网络…

Linux上使用Python源码编译安装Python

安装python apt install python3-dev python3 python3-venv yum install python38-devel源码安装Python 1.下载需要的Python版本 Python源码地址&#xff1a;https://www.python.org/downloads/source/ 2.安装gcc&#xff08;yum install gcc&#xff09; 3.解压&#xff0c…

最新自动定位版本付费进群系统源码

更新内容&#xff1a; 1.在网站首页增加了付款轮播功能。 2.新增了城市定位功能&#xff0c;方便用户查找所在城市的相关信息。 3.对域名库及支付设置进行了更新和优化。 4.增加了一种图模板设置模式&#xff0c;简化了后台模板设置流程。 5.此外还进行了前后台的其他优化…

缩点+图论路径网络流:1114T4

http://cplusoj.com/d/senior/p/SS231114D 重新梳理一下题目 我们先建图 x → y x\to y x→y&#xff0c;然后对点分类&#xff1a;原串出现点&#xff0c;原串未出现点。 假如我们对一个原串出现点进行了操作&#xff0c;那么它剩余所有出边我们立刻去操作必然没有影响。所…

汽车以太网IOP测试新利器

IOP测试目的 汽车以太网物理层IOP&#xff08;Interoperability &#xff09;测试&#xff0c;即测试被测对象以太网物理层之间的互操作性。用于验证车载以太网PHY能否在有限时间内建立稳定的链路&#xff1b;此外&#xff0c;还用于验证车载以太网PHY可靠性相关的诊断特性&am…

23111701[含文档+PPT+源码等]计算机毕业设计javaweb点餐系统全套餐饮就餐订餐餐厅

文章目录 **项目功能简介:****点餐系统分为前台和后台****前台功能介绍&#xff1a;****后台功能介绍&#xff1a;** **论文截图&#xff1a;****实现&#xff1a;****代码片段&#xff1a;** 编程技术交流、源码分享、模板分享、网课教程 &#x1f427;裙&#xff1a;77687156…