SplatFormer: Point Transformer for Robust3D Gaussian Splatting 论文解读

目录

一、概述

二、相关工作

1、NVI新视角插值

2、稀疏视角重建

3、OOD-NVS

4、无约束重建下的正则化技术

5、基于学习的2D-to-3D模型

6、3D点云处理技术

三、SplatFormer

1、Point Transformer V3

2、特征解码器

3、损失函数

四、数据集

五、实验


一、概述

        该论文提出一种新的模型SplatFormer用于减少训练数据分布之外的视角数据(Out-of-Distribution,OOD)下进行新视图合成情况下的泛化性差,存在视角伪影的情况。SplatFormer通过利用PointTransformer学习输入视角中的包含的多视角信息,学习一个3D渲染先验来提高最终渲染质量。

(1)提出了一个OOD-NVS实验协议,对于新视角合成任务在处理训练数据分布之外的测试数据中遇到困难的情况,被定义为OOD-NVS。

(2)提出一种基于学习的SplatFormer模型,改进3DGS在OOD情况下存在的伪影,并首次将Point Transformer引入3DGS处理中,有效地利用从输入视角集中得到的多视角信息来学习3D渲染先验,这是以往3DGS方法缺乏的。

(3)SplatFormer在OOD-NVS任务中显著提高了3DGS方法的性能,在以对象为中心的场景中取得了实质性进展,并且在无边界环境下存在应用潜力。

二、相关工作

1、NVI新视角插值

        Novel View Interpolation(NVI)主要利用已有图像之间的几何和纹理信息,通过中间插值的方法生成新的视角。

        NVI是NVS领域的一种方法,一般应用于VR,AR领域,使用插值算法进行生成图像,而不是使用CNNs或者GANs的方法。

        在近期的NVS领域专注于NeRF和3DGS,但在OOD任务中渲染新视图中遇到了很大困难。

2、稀疏视角重建

        从稀疏视角重建一般少于4张图像,比如Zero123等方法从单输入图像中预测NeRF或者多视图图像。要么就是生成多视图输入之后传递到二维扩散模型中,用于创造性任务,要么就是直接从稀疏视图中预测三维参数pixelsplat和latentsplat。

3、OOD-NVS

        与标准的插值设定不同,Nerfbusters沿着不同的轨迹捕获输入和测试视图,并基于DSDS损失来减少NeRF优化中的伪影和几何缺陷,使得模型在wild scene中更具鲁棒性,但是貌似对鬼影的定义不太明确,但与该论文的OOD-NVS问题紧密一致。但是该方法的输入和测试视图观测角度保持相对相似,但该论文认为伪影由“不可见问题”引起,也就是测试视图在观测视角之外。

4、无约束重建下的正则化技术

        几何先验方法:SuGaR、2DGS、GeoGaussian,应用人工定义的自我监督损失,使得高斯溅射与表面几何形状对齐。

        空间正则化约束:SplatFields,ZeroRF,整合深度图像先验,规范3DGS和NeRF重建。

        数据驱动的先验:FSGS、DNGaussian,吸取上述两种方法缺少外部数据的不足,通过使用深度立体模型监督深度图,但存在尺度模糊问题。

                InstantSplat,通过密集点云来初始化3DGS,但难以收敛。

                Nerfbusters通过扩散模型预训练后处理NeRF,但没解决鬼影的本质。

                Appearance priors的方法使用2D扩散模型来规范新视图渲染,但难以保证多视图一致性。SSDNeRF,HypNeRF利用对象为中心的数据集进行预训练,但在多类别情况下表现不佳。

5、基于学习的2D-to-3D模型

        SyncDreamer和ViewDiff对预训练扩散模型进行微调,从一个或多个输入视图生成多视角图像。

        PixelNeRF和MVSplat由于计算资源约束,只能同时处理少量输入视图,不能利用更多的多视图来提高新视图合成的性能。

6、3D点云处理技术

        从稀疏卷积到MLPs到最近的Transformer的方法。Point Transformer通过关注模型的空间关系,被证明特别有效。该论文使用Point Transformer来细化3DGS,并且通过捕捉原始点云不规则的空间关系,来提高新视图合成的保真度。

三、SplatFormer

        SplatFormer框架的原理:首先利用低仰角图像训练3DGS初始化高斯参数,再利用Point Transformer v3将高斯参数输入,用于修正3DGS的参数,更加关注与空间结构中的多视角信息。

1、Point Transformer V3

        PTV3定义为f_{\theta},首先我们利用低仰角图像训练3DGS初始化参数得到\left \{G_k \right \}^K,之后利用PTV3模型通过一个2D的损失来训练一个3D的参数,具体来说:通过PTV3f_{\theta}将高斯参数编码为一个v维向量\left \{ v_k \right \}^K

        PTV3结构由5个注意力块和下采样网格池化作为编码器,4个注意力块和上采样网格池化层恢复分辨率,而在该论文中,不采用传统的MLP块,而是使用注意力机制来构造空间关系,这更好地捕捉点云的不规则性和稀疏性。

2、特征解码器

        特征解码器g_{\theta},通过五个MLP特征头,分别输出位姿,尺度,不透明度,旋转,颜色偏差,这里提到最后一个MLP层的权重和偏置设为0,用来将初始输出紧密匹配于3DGS。

                \left \{ \Delta G_k={(\Delta p_k,\Delta s_k,\Delta \alpha_k,\Delta q_k,\Delta a_k)} \right \} =g_{\theta}(\left \{ v_k \right \}^K_{k=1})

        最后将所有的参数偏差用于更新初始的3DGS参数。

                \left \{ G_k' \right \}_{k=1}^K=\left \{ G_k+\Delta G_k \right \}_{k=1}^K

3、损失函数

        SplatFormer模块作为一个用于精炼前馈模型,使用L1范数和LPIPS损失的和作为总损失。

四、数据集

        使用ShapeNet和Objaverse-1.0的三维资产数据集用于渲染低仰角(10到20度)每一个场景32张和高仰角(大于等于70度)每一个场景9张的多视角图像。渲染分辨率为256*256。

五、实验

        主要就是对于OOD视角下的性能对比。

        OOD视角下的渲染效果。 

        交叉数据集上的性能指标。(交叉数据集使用GSO和作者采集的真实世界,在原有数据集下训练后,能够在这两者数据集下仍然表现良好,说明该模型可以泛化到不同的数据分布,而不是针对某一个特定数据集下的先验) 

        交叉数据集下的渲染可视化。 

 

参考项目路径:SplatFormer: Point Transformer for Robust 3D Gaussian Splatting

    

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

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

相关文章

c++视频图像处理

打开视频或摄像头 打开指定视频 /*VideoCapture(const String &filename, apiPreference);filename:读取的视频或者图像序列的名称apiPreference:读取数据时设置的属性*/ VideoCapture video; //定义一个空的视频对象 video.open("H:/BaiduNetdiskDownlo…

前端三剑客(二):CSS

目录 1. CSS 基础 1.1 什么是 CSS 1.2 语法格式 1.3 引入方式 1.3.1 行内样式 1.3.2 内部样式 1.3.3 外部样式 1.4 CSS 编码规范 2. 选择器 2.1 标签选择器 2.2 id 选择器 2.3 class 选择器(类选择器) 2.4 复合选择器 2.5 通配符选择器 3. 常用 CSS 样式 3.1 c…

udp_socket

文章目录 UDP服务器封装系统调用socketbind系统调用bzero结构体清0sin_family端口号ip地址inet_addrrecvfromsendto 新指令 netstat -naup (-nlup)包装器 的两种类型重命名方式包装器使用统一可调用类型 关键字 typedef 类型重命名系统调用popen关于inet_ntoa UDP服务器封装 系…

【LLM训练系列02】如何找到一个大模型Lora的target_modules

方法1:观察attention中的线性层 import numpy as np import pandas as pd from peft import PeftModel import torch import torch.nn.functional as F from torch import Tensor from transformers import AutoTokenizer, AutoModel, BitsAndBytesConfig from typ…

解!决!vscode!Path Intellisense 失效!不起作用问题!!

第一步:找到path Intellisense插件 点击设置 第二步:打开settings.json文件: 第三步:配置settings.json文件内容: "path-intellisense.mappings": {"": "${workspaceRoot}/src",&qu…

力扣 LeetCode 110. 平衡二叉树(Day8:二叉树)

解题思路: 等于 -1 时,直接 return -1 class Solution {public boolean isBalanced(TreeNode root) {return getHeight(root) ! -1;}public int getHeight(TreeNode root) {if (root null) return 0;int leftDepth getHeight(root.left);if (leftDep…

ros2学习日记_241124_ros相关链接

前言 提醒: 文章内容为方便作者自己后日复习与查阅而进行的书写与发布,其中引用内容都会使用链接表明出处(如有侵权问题,请及时联系)。 其中内容多为一次书写,缺少检查与订正,如有问题或其他拓展…

【TEST】Apache JMeter + Influxdb + Grafana

介绍 使用Jmeter发起测试,测试结果存入Influxdb,Grafana展示你的测试结果。 环境 windows 10docker desktopJDK17 安装 Apache JMeter 访问官网(Apache JMeter - Apache JMeter™)下载JMeter(目前最新版本5.6.3&a…

【隐私计算大模型】联邦深度学习之拆分学习Split learning原理及安全风险、应对措施以及在大模型联合训练中的应用案例

Tips:在两方场景下,设计的安全算法,如果存在信息不对等性,那么信息获得更多的一方可以有概率对另一方实施安全性攻击。 1. 拆分学习原理 本文介绍了一种适用于隐私计算场景的深度学习实现方案——拆分学习,又称分割…

汽车HiL测试:利用TS-GNSS模拟器掌握硬件性能的仿真艺术

一、汽车HiL测试的概念 硬件在环(Hardware-in-the-Loop,简称HiL)仿真测试,是模型基于设计(Model-Based Design,简称MBD)验证流程中的一个关键环节。该步骤至关重要,因为它整合了实际…

Vue——响应式数据,v-on,v-bind,v-if,v-for(内含项目实战)

目录 响应式数据 ref reactive 事件绑定指令 v-on v-on 鼠标监听事件 v-on 键盘监听事件 v-on 简写形式 属性动态化指令 v-bind iuput标签动态属性绑定 img标签动态属性绑定 b标签动态属性绑定 v-bind 简写形式 条件渲染指令 v-if 遍历指令 v-for 遍历对象的值 遍历…

Redis 常用数据类型插入性能对比:循环插入 vs. 批量插入

Redis 是一款高性能的键值数据库,其支持多种数据类型(String、Hash、List、Set、ZSet、Geo)。在开发中,经常会遇到需要插入大量数据的场景。如果逐条插入,性能会显得较低,而采用 Pipeline 批量插入 能大幅提…

开源动态表单form-create-designer 扩展个性化配置的最佳实践教程

在开源低代码表单设计器 form-create-designer 的右侧配置面板里,field 映射规则为开发者提供了强大的工具去自定义和增强组件及表单配置的显示方式。通过这些规则,你可以简单而高效地调整配置项的展示,提升用户体验。 源码地址: Github | G…

Java语言编程,通过阿里云mongo数据库监控实现数据库的连接池优化

一、背景 线上程序连接mongos超时,mongo监控显示连接数已使用100%。 java程序报错信息: org.mongodb.driver.connection: Closed connection [connectionId{localValue:1480}] to 192.168.10.16:3717 because there was a socket exception raised by…

深入浅出分布式缓存:原理与应用

文章目录 概述缓存分片算法1. Hash算法2. 一致性Hash算法3. 应用场景Redis集群方案1. Redis 集群方案原理2. Redis 集群方案的优势3. Java 代码示例:Redis 集群数据定位Redis 集群中的节点通信机制:Gossip 协议Redis 集群的节点通信:Gossip 协议Redis 集群的节点通信流程Red…

Loom篇之java虚拟线程那些事儿

我们在之前的文章中提到了java推出纤程的背景和原因。在近三十年来,Java 开发人员一直依赖线程作为并发服务器应用程序的构建块。每个方法中的每个语句都在线程内执行,并且由于 Java 是多线程的,因此多个执行线程会同时发生。线程是 Java 的并…

自然语言处理: RAG优化之Embedding模型选型重要依据:mteb/leaderboard榜

本人项目地址大全:Victor94-king/NLP__ManVictor: CSDN of ManVictor git地址:https://github.com/opendatalab/MinerU 写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!! 写在前面: 笔者更新不易,希望走过路…

如何选择服务器

如何选择服务器 选择服务器时应考虑以下几个关键因素: 性能需求。根据网站的预期流量和负载情况,选择合适的处理器、内存和存储容量。考虑网站是否需要处理大量动态内容或高分辨率媒体文件。 可扩展性。选择一个可以轻松扩展的服务器架构,以便…

Spring 框架七大模块(Java EE 学习笔记03)

​ ​核心容器模块(Core Container) 核心容器模块在Spring的功能体系中起着支撑性作用,是其他模块的基石。核心容器层主要由Beans模块、Core模块、Contex模块和SpEL模块组成。 (1)Beans模块。它提供了BeanFactory类&…

2025-2026财年美国CISA国际战略规划(下)

文章目录 前言四、加强综合网络防御(一)与合作伙伴共同实施网络防御,降低集体风险推动措施有效性衡量 (二)大规模推动标准和安全,以提高网络安全推动措施有效性衡量 (三)提高主要合作…