论文阅读笔记——Deformable 3DGS,4DGS

Deformable 3DGS

Deformable 3DGS 论文

3DGS 只能解决静态场景,对于动态场景只能逐帧重建,浪费时间,存储开销大,无连续性;在 3DGS 基础上,引入变形场使高斯分布随时间变化,从而支持动态内容。该方法类似在 4D 空间压缩数据,故事“记录”动态信息,不能让静态场景“变得动态”。(变形场调整适合规则运动)

在这里插入图片描述
通过一个 变形场(类似 NeRF) 和三维高斯分布来 解耦运动和几何结构(动态三维高斯分布可以映射到规范空间中)。
输入一组单目动态场景图像,SfM 校准的时间标签、相机姿态和稀疏点云,由此创建一组高斯分布 G ( x , r , s , σ ) G(x,r,s,\sigma) G(x,r,s,σ)
给定时间 t 和三维高斯中心 x 作为输入,通过 MLP 产生偏移量将规范空间转换到变形高斯空间:
在这里插入图片描述
( δ x , δ r , δ s ) = F θ ( γ ( s g ( x ) ) , γ ( t ) ) γ ( p ) = ( s i n ( 2 k π p ) , c o s ( 2 k π p ) ) k = 0 L = 1 \begin{aligned} (\delta x,\delta r, \delta s)=F_\theta(\gamma(sg(x)), \gamma(t)) \\\gamma(p)=(sin(2^k\pi p),cos(2^k\pi p))_{k=0}^{L=1} \end{aligned} (δx,δr,δs)=Fθ(γ(sg(x)),γ(t))γ(p)=(sin(2kπp),cos(2kπp))k=0L=1
其中 s g ( ⋅ ) sg(·) sg() 为停止梯度, γ \gamma γ 表示位置编码(实验表明:作用于输入可以增强细节)(个人感觉是让规范场和变形场交替迭代优化)

因为 colmap 从数据集中估计的姿态不准确,(显示渲染会放大这种抖动,MLP 因其连续性会缩小这种扰动),本文提出 AST 机制——在训练过程中向时间维度注入线性衰减的高斯噪声,模拟位姿误差的扰动:(使得训练出来的变形场在时域上平滑,减少抖动)
Δ = F θ ( γ ( s g ( x ) ) , γ ( t ) + χ ( i ) ) χ ( i ) = N ( 0 , 1 ) ⋅ β ⋅ Δ t ⋅ ( 1 − i r ) \begin{aligned} \Delta = \mathcal{F}_\theta(\gamma(sg(x)), \gamma(t)+\chi(i)) \\\chi(i)=\mathbb{N}(0,1)·\beta·\Delta t·(1-\frac{i}{r}) \end{aligned} Δ=Fθ(γ(sg(x)),γ(t)+χ(i))χ(i)=N(0,1)βΔt(1ri)

实验结果

在这里插入图片描述

4DGS

4DGS 论文

解决动态场景的高效建模与实时渲染,避免逐帧独立重建(同 Deformable 3DGS)。但采用 4D 时空体素分解(HexPlane)联合优化高斯,相比于 Deformable 3DGS,适合复杂非刚性运动(质量高),但速度相比会慢一点,开销会增大(处理 4D 体素)。

在这里插入图片描述
本文于 Deformable 3DGS 相似,采用了规范空间+变形场的思路,但 4DGS 的变形场是通过学习的方式得到。
输入数据为 4D 数据 ( x , y , z , t ) (x,y,z,t) (x,y,z,t) ,初始化一组标准 3D 高斯函数,通过 HexPlane 对高斯函数编码得到时空特征,一个编码的 MLP,3 个解码的 MLP,生成高斯函数的变形值 ( Δ x , Δ y , Δ z , Δ r , Δ s ) (\Delta x,\Delta y, \Delta z, \Delta r,\Delta s) (Δx,Δy,Δz,Δr,Δs)

HexPlane

将四维体素分解到 { ( x , y ) , ( x , z ) , ( y , z ) , ( x , t ) , ( y , t ) , ( z , t ) } \{(x,y),(x,z),(y,z),(x,t),(y,t),(z,t)\} {(x,y),(x,z),(y,z),(x,t),(y,t),(z,t)} 6 个 2D 平面组合,每个平面用不同分辨率 l 记录格点待编码属性(低分辨率整体,高分辨率细节),对每个平面进行双线性插值编码。
f h = ⋃ l ∏ i n t e r p ( R l ( i , j ) ) ( i , j ) ∈ { ( x , y ) , ( x , z ) , ( y , z ) , ( x , t ) , ( y , t ) , ( z , t ) } f d = ϕ d ( f h ) \begin{aligned} &f_h = \bigcup_l \prod interp(R_l(i,j)) \quad (i,j)\in\{(x,y),(x,z),(y,z),(x,t),(y,t),(z,t)\} \\&f_d = \phi_d(f_h) \end{aligned} fh=linterp(Rl(i,j))(i,j){(x,y),(x,z),(y,z),(x,t),(y,t),(z,t)}fd=ϕd(fh)
将每个隐藏元素的双线性插值结果进行分别乘积,然后对每个分辨率进行级联,得到一个 l ∗ h l*h lh 的特征向量。 l l l 代表不同分辨率, h h h 代表编码的维度(位置偏移3+scale偏移3+rotation偏移4)
损失函数:
L = ∣ I ^ − I ∣ + L t v L T V ( P ) = 1 ∣ C ∣ n 2 ∑ c , i , j ( ∣ ∣ P c i , j − P c i − 1 , j ∣ ∣ 2 2 + ∣ ∣ P c i , j − P c i , j − 1 ∣ ∣ 2 2 ) \begin{aligned} &\mathcal{L} = |\hat{I}-I|+\mathcal{L}_{tv} \\&\mathcal{L}_{TV}(P)=\frac{1}{|C|n^2}\sum_{c,i,j}(||\boldsymbol{P}_c^{i,j}-\boldsymbol{P}_c^{i-1,j}||_2^2+||\boldsymbol{P}_c^{i,j}-\boldsymbol{P}_c^{i,j-1}||_2^2) \end{aligned} L=I^I+LtvLTV(P)=Cn21c,i,j(∣∣Pci,jPci1,j22+∣∣Pci,jPci,j122)

L T V \mathcal{L}_{TV} LTV 从 K-planes 中截取,P 与本文 R 相同。

实验结果

在这里插入图片描述

总结

4DGS将四维空间中的特征属性投影到多个二维平面并栅格化,类似数据压缩,但处理稀疏输入如单目视频时,可能因信息不足导致恢复结果有歧义。而deformable 3DGS的MLP模型直接在四维空间压缩数据,对单目视频更友好,效果可能更好。

### Deformable 3D Gaussians (3DGS): 高保真单目动态场景重建 #### 背景与动机 随着计算机视觉技术的发展,高精度三维场景重建成为研究热点之一。然而,在处理动态场景时,传统方法往往面临计算复杂度高、实时性差以及难以适应快速变化环境等问题。为此,《Deformable 3D Gaussians for High-Fidelity Monocular Dynamic Scene Reconstruction》提出了基于可变形3D高斯分布的方法来解决这些问题[^1]。 #### 方法概述 该论文的核心思想是利用参数化的3D高斯函数表示物体表面及其属性(如颜色)。通过优化这些高斯分布的位置、方向和形状,可以实现对动态场景的高度逼真的建模。具体来说: - **模型结构**: 使用一组稀疏控制点定义整个场景中的几何信息,并结合局部形变场调整每个高斯核的具体形态。 - **能量最小化框架**: 提出了一个新的目标函数用于联合估计全局运动轨迹与个体对象的状态更新规则。 - **高效渲染管线**: 设计了一种新颖的前向传播机制以加速最终图像合成过程的同时保持高质量输出效果。 #### 技术贡献 相比之前的工作,本文主要有以下几个方面的改进: 1. 引入了灵活可控的变形策略使得系统能够更好地捕捉到复杂的非刚体动作序列; 2. 开发了一个端到端训练流程从而简化了先前依赖手工设定超参的操作步骤 ; 3. 实验验证表明新方案不仅具备更强泛化能力而且运行效率也得到了显著提升. ```python import numpy as np def deform_gaussian(mean, cov_matrix, deformation_field): """ Apply a deformation field to modify the mean and covariance matrix of a Gaussian. Args: mean (np.ndarray): Original mean vector of shape (n,) cov_matrix (np.ndarray): Covariance matrix of shape (n,n) deformation_field (function): Function that takes position vectors and returns modified ones Returns: tuple: Modified mean and covariance after applying deformation """ new_mean = deformation_field(mean) jacobian = compute_jacobian(deformation_field, mean) # Jacobian at 'mean' new_cov = jacobian @ cov_matrix @ jacobian.T return new_mean, new_cov def compute_jacobian(func, point): """Numerically approximate the Jacobian.""" epsilon = 1e-6 dims = len(point) jac = np.zeros((dims,dims)) for i in range(dims): delta = np.zeros_like(point);delta[i]=epsilon f_plus=func(point+delta) f_minus=func(point-delta) jac[:,i]=(f_plus-f_minus)/(2*epsilon) return jac ``` 上述代码片段展示了如何应用给定的变形字段去改变一个标准正态随机变量的行为特性——即其均值位置以及协方差矩阵形式都会受到影响而发生变化。 --- ### SC-GS: Sparse-Controlled Gaussian Splatting 的补充说明 除了《Deformable 3D Gaussians...》之外,《SC-GS: Sparse-Controlled Gaussian Splatting for Editable Dynamic Scenes》同样值得关注。它进一步探讨了通过引入稀疏约束条件改善编辑友好型动态场景的表现力问题[^2]。这种方法允许用户更方便地修改已构建好的虚拟世界内容而不破坏整体一致性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值