GS-SLAM论文阅读--RGBDS-SLAM

前言

最近GS-SLAM领域的工作层出不穷,有很多不错的工作出现。接下来慢慢写一下相关博客。
在这里插入图片描述


文章目录

  • 前言
  • 1.背景介绍
  • 2.关键内容
    • 2.1 3D多层次金字塔高斯喷溅
    • 2.2 紧密耦合多特征重构优化
    • 2.3总体流程
  • 3.文章贡献
  • 4.个人思考


1.背景介绍

  1. 高保真重建是密集SLAM的关键。最近流行的方法利用3D高斯溅射(3D GS)技术进行场景的RGB、深度和语义重建。然而,这些方法忽略了场景不同部分的细节和一致性问题。
  2. 3D GS技术以其高效的优化框架和实时渲染能力,弥补了NeRF的不足。因此,出现了许多基于3D gis的SLAM解决方案。然而,这些方法通常只使用原始图像特征进行训练,这些特征不足以完全捕获某些场景部分的细粒度细节,导致重建一致性差。而且,这些方法在进行多特征重构时,没有通过合理的约束进行有效的特征融合和优化,无法相互增强。
  3. 大部分的相机跟踪模块都依赖于图像损失的梯度优化,因此系统的实时性相对较差PhotoSLAM引入ORB-SLAM3作为基本框架来改善这个问题。

2.关键内容

2.1 3D多层次金字塔高斯喷溅

与标准的三维高斯溅射过程不同,我们参考[26]-[30]中提出的渐进式训练过程,并引入三维多层次金字塔高斯溅射。在这个过程中,各种特征图像(RGB、深度、语义图像)的分辨率在训练过程中逐渐提高。这不仅减少了训练时间和难度,而且可以在不同分辨率下逐步重建不同特征的多尺度信息。
在这里插入图片描述
因此,我们为RGB、深度和语义图像构建了一个n层图像金字塔。

RGB金字塔图像的第i层可以表示为:
在这里插入图片描述
深度金字塔图像的第i层可以表示为:
在这里插入图片描述
语义金字塔图像的第i层可以表示为:
在这里插入图片描述
在训练过程中,为了保证对图像金字塔的每个视点和每一层进行全面的训练,在每次迭代中,我们随机选取一组多特征图像{ I r g t ( I ) I^{gt}_r (I) Irgt(I), I d g t ( I ) I^{gt}_d(I) Idgt(I), I s g t ( I ) I^{gt}_s (I) Isgt(I)}。我们提取该视点的所有相关信息(如姿态、图像大小等),并基于这些信息,参照渲染公式,对RGB、深度和语义图像执行渲染操作。通过我们提出的MLP-GS渐进式训练过程,我们可以最大程度地逐步还原场景细节。

2.2 紧密耦合多特征重构优化

在上一节中,我们对地图中的3D高斯基元执行MLP-GS操作,得到一组渲染图像{ I r r d ( I ) I^{rd}_r (I) Irrd(I), I d r d ( I ) I^{rd}_d(I) Idrd(I), I s r d ( I ) I^{rd}_s (I) Isrd(I)}。这是高斯喷溅的前向渲染过程。我们现在需要计算渲染图像和真实地面图像之间的损失,并执行反向传播来优化地图中的3D高斯原语。

参考上文中渲染图像和groundtruth图像的L1损耗和SSIM损耗的计算,我们对上一节获得的第I个金字塔视角的渲染图像{ I r g t ( I ) I^{gt}_r (I) Irgt(I), I d g t ( I ) I^{gt}_d(I) Idgt(I), I s g t ( I ) I^{gt}_s (I) Isgt(I)}进行类似的损耗计算:
对于RGB图像,我们考虑L1和SSIM损失:
在这里插入图片描述
对于深度图像,我们只考虑L1损耗:
在这里插入图片描述
对于语义图像,我们同样考虑L1和SSIM损失:
在这里插入图片描述
最后,我们将多个特征紧密耦合到一个重构优化框架中进行联合优化:
在这里插入图片描述

2.3总体流程

在这里插入图片描述

3.文章贡献

  1. 本文介绍了一种三维多层次金字塔高斯喷溅(MLP-GS)方法,该方法提取多层次图像金字塔进行高斯喷溅训练,恢复场景细节,并保证重建过程中的一致性。
  2. 设计了一种紧密耦合多特征重构优化(TCMF-RO)机制,在优化绘制过程中促进RGB、深度和语义图重构精度的相互提高。

4.个人思考

本文应该是在Photo-SLAM的基础上添加了语义信息。至于多层金字塔,我记得原始的Photo-SLAM代码应该也有,只不过本文金字塔层数更多。我个人的观点,觉得本文的创新点不是那么强,但是能实现语义的添加,也是很不错的工作。但是他的实验结果非常的好,在Replica代码上可以达到38.85。然后我看了实验相关部分,从下面的消融实验可以看出,其中提升最大的应该是加上深度损失后。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用EventLog Analyzer进行Apache日志监控和日志分析

一、什么是Apache日志分析 Apache日志分析是网站管理和维护的重要部分,通过分析Apache服务器生成的日志文件,可以了解网站的访问情况、识别潜在的安全问题、优化网站性能等。 二、Apache日志类型 Apache日志主要有两种类型:访问日志&a…

[计算机网络]IP地址推行的“书同文,车同轨”

硬件地址无法直接转换的故事 在很久很久以前,网络世界就像一个庞大的帝国,各个村落(网络)都有自己的语言(硬件地址)。每个村落都有自己的规则和习惯,村里的每户人家(设备&#xff0…

鸿蒙NEXT开发案例:九宫格随机

【引言】 在鸿蒙NEXT开发中,九宫格抽奖是一个常见且有趣的应用场景。通过九宫格抽奖,用户可以随机获得不同奖品,增加互动性和趣味性。本文将介绍如何使用鸿蒙开发框架实现九宫格抽奖功能,并通过代码解析展示实现细节。 【环境准…

idea 配置 git .gitignore文件配置

.gitignore 内容 .idea/ *.iml target/ *.class *.log .iml在idea项目里面创建一个.gitignore名字的文件,然后把这个文件提交到git上。我一般是放到.idea同级目录。 我遇到了几种情况这个文件配置了但是不生效的情况 第一种 Git的缓存可能会导致配置不生效。尝试…

H.323音视频协议

概述 H.323是国际电信联盟(ITU)的一个标准协议栈,该协议栈是一个有机的整体,根据功能可以将其分为四类协议,也就是说该协议从系统的总体框架(H.323)、视频编解码(H.263)、…

快速掌握Quartz.Net计划任务调度框架,轻松实现定时任务

前言 Quartz.Net是一个开源的作业调度框架,可以用于管理计划任务和定期执行。Quartz.Net提供了丰富的作业计划选项,例如精确或模糊时间表达式、日期和时间限制等。Quartz.Net采用分布式架构,允许在多个计算机上运行任务。 Quartz.Net架构设…

【开源大屏】玩转开源积木BI,从0到1设计一个大屏

积木 BI 重磅推出免费大屏设计器!功能超强大,操作超流畅,体验超酷炫。快来体验一下吧。 让我们一起来看一下如何从0到1设计一个大屏。 一、积木BI大屏介绍 积木BI可视化数据大屏 是一站式数据可视化展示平台,旨在帮助用户快速通…

【JVM】JVM基础教程(四)

上一章:【JVM】JVM基础教程(三)-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收? 可以给对象引用赋值null,切断引用 引用计数法 循环引用缺点 查…

数据结构(Queue队列)

前言: 在计算机科学中,数据结构是构建高效算法和程序的基础,而队列(Queue)作为一种经典的线性数据结构,具有重要的地位。与栈(Stack)不同,队列遵循“先进先出”&#xf…

DevExpress WPF中文教程:Grid - 如何移动和调整列大小?(一)

DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

语言模型(序列模型)

终于快要毕业了,乘着还在还在研究室,把最后一章sequence模型也学完吧。 Sequence Model 一:基础知识1:符号的定义2:词典(Vocabulary) 与编码(Encoding) 二:RNN(Recurrent Neural Networks) 循环神经网络1&…

MySQL(表的约束)

目录 1. 空属性(NULL) 2. 默认值(default) 3. 列描述(comment) 4. zerofill 5. 主键(primary_key) 6. 自增长(auto_increment) 7. 唯一键(uniqie) 8. 外键(foreign key (字段名) references 主表(列) 表的约束:表中有各种类型,每个类型插入的数据…

笔记本电脑升级硬盘存储、Windows10系统安装及后续步骤(以联想ThinkPad X1 Carbon Gen10为例)

文章目录 1.前言2.材料准备3.Win10系统安装盘制作3.1 系统下载3.2 系统启动U盘刻录 4.拆机更换硬盘5.开机启动项修改6.系统安装(以Win10为例)7.系统安装后可能需要的步骤7.1 缺少WIFI等网络驱动7.2 系统激活7.3 办公软件安装 8.旧硬盘变废为宝参考文献 1…

高效利用资源:分布式有状态服务的高可靠性设计

在分布式系统设计中,实现有状态服务的高可靠性通常采用主备切换的方式。当主服务停止工作时,备服务接管任务,例如通过Keepalive实现VIP的切换以保证可用性。然而,这种方式存在资源浪费的问题,因为备服务始终处于空转状…

解读数据资产管理实践白皮书(5.0版)深入学习掌握数据资产管理知识体系。

本文介绍了数据资产管理的重要性及其概述,详细阐述了数据资产管理的活动职能包括数据模型管理、数据标准管理、数据质量管理等,并强调了数据安全管理的重要性。文章还讨论了数据资产管理的保障措施和实践步骤,以及发展趋势和总结展望。 重点内…

使用IP自签名SSL证书

最近需要创建WebSocket服务器并使用SSL证书,由于是内网测试,所以需要使用指定IP的自签SSL证书。 其实笔者前面博文 使用nexus3作为Docker镜像仓库 解决nexus3登录x509: certificate has expired or is not yet valid 中有创建过相应的证书,这…

location和重定向、代理

location匹配的规则和优先级 在nginx当中,匹配的对象一般是URI来匹配 http://192.168.233.62/usr/local/nginx/html/index.html 182.168.233.61/ location匹配的分类: 多个location一旦匹配其中之一,不在匹配其他location 1、精确匹配 …

Maven学习(传统Jar包管理、Maven依赖管理(导入坐标)、快速下载指定jar包)

目录 一、传统Jar包管理。 (1)基本介绍。 (2)传统的Jar包导入方法。 1、手动寻找Jar包。并放置到指定目录下。 2、使用IDEA的库管理功能。 3、配置环境变量。 (3)传统的Jar包管理缺点。 二、Maven。 &#…

【Java笔记】LinkedList 底层结构

一、LinkedList 的全面说明 LinkedList底层实现了双向链表和双端队列特点可以添加任意元素(元素可以重复),包括null线程不安全,没有实现同步 二、LinkedList 的底层操作机制 三、LinkedList的增删改查案例 public class LinkedListCRUD { public stati…

Linux中的线程

目录 线程的概念 进程与线程的关系 线程创建 线程终止 线程等待 线程分离 原生线程库 线程局部存储 自己实现线程封装 线程的优缺点 多线程共享与独占资源 线程互斥 互斥锁 自己实现锁的封装 加锁实现互斥的原理 死锁 线程同步 线程的概念 回顾进程相关概念 …