GS-SLAM论文阅读--High-Fidelity SLAM Using Gaussian Splatting

前言

这篇文章是几个月之前的IROS2024了,之前忘记看了,但是最近看到,觉得有一些值得参考的部分,接下来仔细阅读一下。


我是红色


文章目录

  • 前言
  • 1.背景介绍
  • 2.关键内容
    • 2.1 建图
    • 2.2 跟踪
    • 2.3总体流程
  • 3.文章贡献


1.背景介绍

3DGS的连续建图存在“遗忘”问题,即高斯参数倾向于过拟合最新帧,导致前一帧的重建质量下降。

2.关键内容

2.1 建图

高斯建图致密化:与原始3D高斯飞溅中对所有图像初始化高斯参数不同,我们处理顺序RGBD帧输入。对于具有估计姿态的最新RGBD输入帧,我们需要向地图添加新的高斯,以完成未观察到的区域(complete unobserved regions)或提高先前建图区域的渲染质量(improve the rendering quality of previously mapped regions)。

首先,对于未观测到的区域,我们需要添加新的高斯来填补空洞。我们通过渲染不透明度来判断孔洞。也就是说,当接收到一个新帧时,我们在估计的姿态下渲染不透明度图像。
在这里插入图片描述
在不透明度图像中,如果渲染值低于某个预定义的不透明度阈值 τ o p a τ_{opa} τopa(即O(x, y) < τ o p a τ_{opa} τopa),则需要对相应区域进行致密化以填充孔洞。

其次,由于例如遮挡和照明的变化,渲染的图像通常依赖于视图。此外,优化后的高斯参数可能会陷入局部最小值以适应某些帧。为了解释这种与视图相关的错误,我们提出了一个由渲染误差引导的致密化步骤。在给出估计姿态时,我们渲染该姿态的彩色图像 C ~ \tilde{C} C~和深度图像 D ~ \tilde{D} D~;当前参考颜色图像和深度图像分别为C和D。当渲染图像和输入图像之间的误差较大时,我们添加新的高斯,其中颜色误差和深度误差分别为:
E c o l o r ( x , y ) E_{color}(x, y) Ecolor(x,y) = | C ~ ( x , y ) \tilde{C}(x, y) C~(x,y)−C(x, y)|
E d e p t h ( x , y ) E_{depth}(x, y) Edepth(x,y) = | D ~ ( x , y ) \tilde{D}(x,y) D~(x,y)−D(x, y)|
我们将对那些 E c o l o r ( x , y ) E_{color}(x, y) Ecolor(x,y) > τ c o l o r τ_{color} τcolor E d e p t h ( x , y ) E_{depth}(x, y) Edepth(x,y) > τ d e p t h τ_{depth} τdepth的区域进行密集化,其中 τ c o l o r τ_{color} τcolor τ d e p t h τ_{depth} τdepth是预定义的阈值。在比较 τ d e p t h τ_{depth} τdepth时,我们除以 D ( x , y ) D(x,y) D(x,y)以补偿不同的尺度。

连续性建图:我们通过最小化渲染的颜色和深度图像与输入帧之间的损失来优化高斯参数。
在这里插入图片描述
作为一个连续学习问题,我们工作中的增量建图也存在遗忘问题:在多个相机姿势中可能会“看到”相同的高斯分布,并且高斯参数往往会被优化(过拟合)以适应最新的帧,从而导致前几帧的性能下降(见下图)。
在这里插入图片描述
为了缓解过拟合问题,先前的工作维护了一个关键帧缓冲区,从中选择先前的关键帧(基于与当前帧的重叠比例等标准),然后选择的关键帧与当前帧一起优化。在原始的三维高斯飞溅中,所有帧都被排队并随机挑选,进行多次迭代以优化高斯参数。
当然,当我们优化当前帧时,我们可以选择许多以前的帧;然而,多帧优化导致处理时间较长,不适合在线连续建图。相反,为了防止高斯参数遗忘,我们在建图时增加了一个额外的正则化项 L r e g L_{reg} Lreg
在这里插入图片描述
其中G为当前框架优化中涉及的高斯集; s i t s^t_i sit r i t r^t_i rit z i t z^t_i zit分别为步骤 t 需要优化的尺度、颜色和深度; s i ∗ s^*_i si r i ∗ r^*_i ri z i ∗ z^*_i zi是当前参数值,即步骤 t − 1 t−1 t1之后的值。Ω是不同参数的重要权重。这样,我们只需要保持一个较小的关键帧缓冲区,就可以获得更好的重建质量。

为了计算重要性权重,对于每个高斯分布,我们额外添加以下参数:
在这里插入图片描述
其中 N i s e e n N^{seen}_i Niseen记录了每个高斯的“被看到的次数”; Σ Σ Σ L m a p p i n g L_{mapping} Lmapping相对于参数的梯度之和,表示对变化的敏感性。在每一帧训练之后,我们通过平均建图损失相对于参数的梯度来更新重要性权重。以第i尺度参数 s i s_i si为例,用 N i s e e n N^{seen}_i Niseen帧训练后,其重要权值 Ω i s Ω ^s_i Ωis为:
在这里插入图片描述
建图中使用的最终损失函数为:
在这里插入图片描述

2.2 跟踪

我们以类似于iNeRF的渲染和比较方式对每个输入帧进行摄像机跟踪。相机姿态由T = (T, q)参数化,包括3D平移T和旋转四元数q。在跟踪新帧时,我们初始化相机姿态,假设相机速度恒定。由于彩色图像会受到光线的影响,我们在跟踪过程中将亮度与图像解耦,。具体来说,设ρ表示将图像从RGB空间转换为LAB空间的操作,在比较两幅图像时,我们放弃光通道(L通道)。
在这里插入图片描述

2.3总体流程

给定RGBD帧和估计的相机姿势,我们通过比较渲染图像和地面真相来更新地图,以识别未观察到的区域和需要改进的区域。正则化项被纳入到优化过程中,以减轻建图过程中的遗忘问题节)。我们通过最小化颜色和深度重渲染损失来跟踪高斯图中的相机姿态。
在这里插入图片描述

3.文章贡献

  1. 引入了一种基于渲染的新型致密化策略。我们直接利用渲染损失对地图进行密度化,使我们能够有效地绘制未观测区域,并提高重新观测区域的渲染质量。
  2. 建图过程中的正则化优化。为了缓解遗忘问题,引入了额外的参数来监督学习过程,我们的实验表明,我们的方法可以保持先前访问区域的渲染质量。

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

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

相关文章

App渠道来源追踪方案全面分析(iOS/Android/鸿蒙)

一、App 渠道来源追踪概述 渠道来源统计/追踪&#xff0c;其原理都可以称之为归因&#xff0c;归因是用于判断用户在什么原因、什么时间、什么场景下载了 App&#xff0c;以及打通他们在激活 App 后进行的一系列操作&#xff08;比如注册、付费、加购等&#xff09;。 渠道来…

group_concat配置影响程序出bug

在 ThinkPHP 5 中&#xff0c;想要临时修改 MySQL 数据库的 group_concat_max_len 参数&#xff0c;可以使用 原生 SQL 执行 来修改该值。你可以通过 Db 类来执行 SQL 语句&#xff0c;从而修改会话&#xff08;Session&#xff09;级别的变量。 步骤 设置 group_concat_max_l…

物联网赋能的人工智能图像检测系统

一、引言 在数字化时代&#xff0c;物联网&#xff08;IoT&#xff09;技术已经成为我们生活中不可或缺的一部分&#xff0c;极大地优化了我们的交通出行和医疗服务。物联网的核心优势在于其卓越的连接能力&#xff0c;它能够构建和连接庞大的资源数据库&#xff0c;为智能化图…

【python笔记】os库中ctime、mtime和atime的区别

ctime Creation Time文件或目录的创建时间 返回秒级时间戳 os.path.getctime(file_path) os.stat(file_path).st_ctime 返回纳秒级时间戳 os.stat(file_path).st_ctime_ns mtime Modification Time文件或目录的最后修改时间 返回秒级时间戳 os.path.getmtime(file_path) os.sta…

3DE 知识工程 —— EKL 函数重用与功能扩展

目录 1、简介 2、EKL 函数重用 2.1 直接调用 2.2 本地库重用 2.3 全局库重用 3、EKL 功能扩展 1、简介 本文介绍两种方法以展示 EKL 更为强大的能力&#xff1a;一是重用 EKL 函数&#xff0c;二是使用 EKL 调用 VB Script 宏中的函数以扩展其功能。 2、EKL 函数重用…

【GESP】C++一级真题练习(202309)luogu-B3864,小明的幸运数

GESP一级真题练习。为2023年9月一级认证真题。应该是两道题中略难的一道。 题目题解详见&#xff1a;https://www.coderli.com/gesp-1-luogu-b3864/ 【GESP】C一级真题练习(202309)luogu-B3864&#xff0c;小明的幸运数 | OneCoderGESP一级真题练习。为2023年9月一级认证真题…

从0开始学习机器学习--Day18--评估模型

在很多时候&#xff0c;构建并优化完模型并不代表这个问题就被解决了。事实上&#xff0c;很多时候&#xff0c;在第一次优化结束并进行预测时&#xff0c;其与真实值之间的误差都会提醒你这个模型需要继续优化。那么&#xff0c;我们应该怎么优化它呢&#xff1f; 选择更多的…

【Hadoop】【hdfs】【大数据技术基础】实验二 熟悉常用的HDFS操作

实验二&#xff1a; 熟悉常用的HDFS操作 一、实验题目 熟悉常用的HDFS操作。 二、实验目的 &#xff08;1&#xff09; 理解HDFS在Hadoop体系结构中的角色&#xff1b; &#xff08;2&#xff09; 熟练使用HDFS操作常用的Shell命令&#xff1b; &#xff08;3&#xff09;…

SpringSecurity的使用

文章目录 原理使用自定义权限校验 主要类通过debug的方式查看security有哪些过滤器配置类UsernamePasswordAuthenticationFilterUserDetailsServiceExceptionTranslationFilter自定义认证和授权异常处理 FilterSecurityInterceptor权限校验创建拦截器获取用户权限并传递给secur…

第30周:彩色图片分类(Tensorflow实战第二周)

目录 前言 一、前期工作 1.1 设置GPU 1.2 导入数据 1.3 数据归一化 1.4 数据可视化 二、构建CNN网络 2.1 基本概念 2.2 代码实现 三、编译 四、训练模型 五、预测 六、模型评估 总结 前言 &#x1f368; 本文为[&#x1f517;365天深度学习训练营]中的学习记录博…

【Linux】信号

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;https://blog.csdn.net/qinjh_/category_12625432.html 目录 信号和信号量 信号 信号的处理 信号捕捉 信号的产生 系统调用 signal rais…

【国内中间件厂商排名及四大中间件对比分析】

国内中间件厂商排名 随着新兴技术的涌入&#xff0c;一批国产中间件厂商破土而出&#xff0c;并在短时间内迅速发展&#xff0c;我国中间件市场迎来洗牌&#xff0c;根据市占率&#xff0c;当前我国中间件厂商排名依次为&#xff1a;东方通、宝兰德、中创股份、金蝶天燕、普元…

【题解】CF2033G

题目 CF2033G 分析 一道很显然是树形dp的题&#xff0c;但非常恶心QwQ。   先不管复杂度&#xff0c;找找递推关系&#xff0c;一种很直接的想法如下&#xff08;我觉得是错误的&#xff09;&#xff1a; d p [ i ] [ k ] m a x ( d p [ f a i ] [ k − 1 ] , d p [ s o …

SpringBoot之定时任务

1. 前言 本篇博客是个人的经验之谈&#xff0c;不是普适的解决方案。阅读本篇博客的朋友&#xff0c;可以参考这里的写法&#xff0c;如有不同的见解和想法&#xff0c;欢迎评论区交流。如果此篇博客对你有帮助&#xff0c;感谢点个赞~ 2. 场景 我们讨论在单体项目&#xff0c…

【日志】力扣58.最后一个单词的长度//14.最长公共前缀//28. 找出字符串中第一个匹配项的下标

2024.11.6 【力扣刷题】 58. 最后一个单词的长度 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/length-of-last-word/?envTypestudy-plan-v2&envIdtop-interview-150 int lengthOfLastWord(char* s) {int count 0;for (int i strlen(s) - 1; i…

智能家居的未来:AI让生活更智能还是更复杂?

内容概要 智能家居的概念源于将各种家居设备连接到互联网&#xff0c;并通过智能技术进行控制和管理。随着人工智能的迅速发展&#xff0c;这一领域也迎来了前所未有的机遇。从早期简单的遥控器到如今可以通过手机应用、语音助手甚至是环境感应进行操作的设备&#xff0c;智能…

1. 初步认识 Java 虚拟机

一、前言 其实一直都想系统性的学习一下 JVM&#xff0c;尝试过很多次&#xff0c;最终没能坚持下来&#xff0c;现在已经工作多年&#xff0c;发现对于 JVM这块知识还是很薄弱&#xff0c;不利于职业长远发展&#xff0c;并且之前掌握的都是一些零散的知识&#xff0c;没能形…

数据结构之二叉树的链式结构——递归的暴力美学

1. 实现链式的二叉树结构 我们之前用顺序表里面数组的底层结构实现了二叉树中堆的结构&#xff0c;但是不是所有的二叉树都具有着堆的性质&#xff0c;所以我们现在需要一个链式结构来描述普遍的二叉树。其底层结构类似一个链表&#xff0c;但是每一个结点由单个区域&#xff…

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-31

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-31 目录 文章目录 计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-31目录1. Large Language Models for Manufacturing摘要创新点算法模型实验效果&#xff08;包含重要数据与结论&#xff09;推荐…

利用SpringBoot构建城镇住房保障平台

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理城镇保障性住房管理系统的相关信息成为必然…