【CVPR 2024】GART: Gaussian Articulated Template Models

【CVPR 2024】GART: Gaussian Articulated Template Models

  • 一、前言
  • Abstract
  • 1. Introduction
  • 2. Related Work
  • 3. Method
    • 3.1. Template Prior
    • 3.2. Shape Appearance Representation with GMM
    • 3.3. Motion Representation with Forward Skinning
    • 3.4. Reconstruct GART from Monocular Videos
  • 4. Experiments
  • 4.1. Comparison on Human Rendering
    • 4.2. Application on Dog Rendering
    • 4.3. Ablation Study
    • 4.4. Application: Text-to-GART
  • 5. Conclusions

一、前言

【Paper】 > 【Github_Code】 > 【Project】
GART 利用移动的 3D 高斯混合模型来显式地近似可变形主体的几何形状和外观。它利用了具有可学习前向蒙皮的分类模板模型先验(如 SMPL、SMAL 等),同时通过引入新的潜在骨骼进一步推广到更复杂的非刚性变形。

Abstract

介绍:我们介绍了高斯关节模板模型(GART),这是一种显式、高效且富有表现力的表示方法,用于从单目视频中捕捉和渲染非刚性关节主体。
方法:GART 利用移动的 3D 高斯混合模型来显式地近似可变形主体的几何形状和外观。它利用了具有可学习前向蒙皮的分类模板模型先验(如 SMPL、SMAL 等),同时通过引入新的潜在骨骼进一步推广到更复杂的非刚性变形。
实验:GART 可以通过可微渲染在几秒钟或几分钟内从单目视频中重建,并以超过 150fps 的速度在新姿态下进行渲染。

SMAL : A Skinned Multi-Animal Linear Model of 3D Animal Shape

1. Introduction

在这里插入图片描述

人类和动物是现实世界动态场景中最常见的可变形实体,因此存在大量的方法来建模它们的几何形状、外观和运动。本文研究了如何从单目视频中表示和重建这些可变形主体。由于它们共享类别级结构,变形模板模型得以开发并广泛应用,如用于人类的 SMPL [42] 和用于四足动物的 SMAL [95]。虽然这些模型对于姿态估计非常有用,但类别模板模型无法在各种变形过程中捕捉到详细的外观和几何形状。

最近的研究提出通过在模板上构建额外的隐式表示来解决这个问题,以建模几何变形和外观。这些表示大多基于神经场(neural fields)[46, 47, 50, 75]。虽然隐式表示增强了质量,但由于查询操作成本高,渲染速度较慢。对神经场进行动画处理具有挑战性,需要专门的前向或后向蒙皮技术 [8, 9]。此外,这些方法通常依赖于准确的模板姿态估计,因为在立体视觉错误时,它们很容易在空白空间中产生伪影。相比之下,显式表示 [1, 18, 89] 渲染效率高,易于变形,并且由于基于变形的优化过程,对姿态估计误差更具鲁棒性。然而,显式表示通常质量次优,并受到固定网格拓扑结构的限制 [1],受限于使用过多的点 [89],或严重依赖多视角工作室相机系统 [18]。

我们对关节建模的主要见解是,隐式辐射场的显式近似能够克服两者的弱点。我们提出了高斯关节模板模型(GART),这是一种用于非刚性关节主体的新型可渲染表示。GART 利用经典模板模型的运动学骨架,并通过在规范空间中使用高斯混合模型(GMM)来建模详细外观,该模型近似底层辐射场(见第3.2节)。由于 GMM 没有固定的拓扑结构,并且每个组件可以平滑地近似一个邻域,GART 具有与 NeRFs 一样的表现力,同时保持简单性和可解释性。

作为一种显式表示,GART 可以通过类似于模板网格的前向蒙皮进行动画处理。然而,预定义的骨架无法捕捉到宽松衣物(如长裙)的运动。我们通过一种新颖的潜在骨骼方法来解决这一挑战,其中一组未观察到的潜在骨骼及其驱动额外变形的蒙皮权重,可以从单目视频中同时学习(见第3.3节)。GMM 近似的另一个挑战是,缺乏相对于神经场的局部平滑性,这会在输入视图稀疏或输入人体姿态噪声较大时影响重建质量。我们引入了平滑性先验来建模关节主体,以使 GART 适应单目重建(见第3.4节)。

为了从单目视频中捕捉关节主体,我们使用估计的模板初始化 GART,并通过 3D 高斯点云[27, 96] 渲染 GMM 以重建每一帧。优化过程逐渐更新每个高斯参数,并像基于变形的方法一样,在模板姿态估计出现错误时表现得更加稳健。借助显式、高效且富有表现力的 GART,我们能够在30秒内从单目视频中重建一个人体头像,并以540×540的分辨率在笔记本电脑上以150+ FPS的速度渲染它,据我们目前所知,这比任何最先进的基于 NeRF 的人体渲染方法都要快。此外,我们还将 GART 作为一个通用框架,从野外的单目视频中重建动物,其保真度比之前的基于网格的方法更高。

总结来说,我们的主要贡献有:

  1. GART:一种通用且显式的表示方法,用于非刚性关节主体,通过高斯混合模型(GMM)来近似规范形状和外观的辐射场。

  2. 高效动画:GART 可以通过可学习的前向蒙皮高效地进行动画处理,并且通过一种新颖的潜在骨骼方法捕捉人类宽松衣物等具有挑战性的变形。

  3. 实验结果:我们的实验表明,GART 在单目人类重建和渲染方面在多个数据集上达到了最先进的性能,具有最佳的训练和推理效率,并能从野外的单目视频中生成高质量的动物重建。

2. Related Work

3D Human Reconstruction.
从单目观测中重建3D人类是一个困难的任务,因为存在深度模糊。参数化模板模型 [39, 42, 51, 58] 提供了一个强有力的人体先验知识,并且在最近的单目3D人体姿态和形状重建中起到了关键作用 [15, 26, 29, 30, 64, 65, 69]。然而,参数化网格的显式和预定义拓扑结构无法捕捉个性化的外观,例如纹理、头发和衣物 [1, 2, 18–20]。为了解决这个问题,最近的研究 [7–9, 11–13, 16, 17, 21–25, 31, 33, 38, 40, 49, 52, 53, 60, 62, 63, 68, 71, 76, 77, 86, 90, 92] 提出了使用神经表示(如NeRF)来从多个视角或视频中捕捉高保真度的人体。为了重建动态人类,神经表示与参数化模型相结合,以分离姿态和形状 [40, 55, 71]。外观可以在规范空间中建模,然后由关节模板进行姿态调整 [8, 9]。这些混合方法允许捕捉的虚拟人重新动画化,并展示了对建模个性化细节的高度灵活性。然而,其缺点是查询和渲染效率低下。我们提出的GART同样利用参数化模板来建模人体关节化。但与上述神经表示不同的是,外观由3D高斯分布 [27, 91, 96] 表示,渲染效率高。此外,3D高斯分布的显式性允许我们设计简单的变形和正则化规则。

3D Animal Reconstruction. 类似于人类建模,参数化模型也被提出用于不同的动物 [3, 4, 36, 59, 95],并且可以适配于图像和视频 [5, 93]。通过图像引导变形模板,可以以有限的保真度捕捉新的实例或更多的物种 [70, 94]。由于为多样的动物创建模板模型成本高昂,无模型方法通过变形一个球体来学习动物形状 [6, 14, 67, 73]。最近的方法旨在直接从视频中构建可动画的神经场 [74, 79, 80]。使用多视角RGB和Vicon相机阵列系统,已经展示了高质量的动物神经捕捉 [44]。然而,与所有这些方法不同,GART在D-SMAL [59] 模板上稳健地构建了详细的3D高斯分布,可以从野外单目视频中捕捉不同种类的狗。

3D Gaussian Splatting. 上述重建技术的关键在于可微渲染,其中网格 [34, 41]、点/表面 [35, 78, 84, 88] 和 NeRFs [37, 47, 48] 被广泛使用。最近在可微渲染方面的进展复兴了经典的 EWA 体积点绘技术 [96],其中使用 3D 高斯分布来近似底层辐射场,并通过基于点绘的渲染实现高效率和高保真度 [27]。3D-GS [27, 28] 技术最近被应用于建模一般动态场景 [43, 72, 81, 82],这些场景没有特定的结构(即关节化),并且也被应用于 3D 生成 [10, 66, 83]。

3. Method

在这里插入图片描述

3.1. Template Prior

不同于在工作室中使用多视角系统[19, 20]捕捉变形对象,从单目视频中进行捕捉极具挑战性,许多研究利用类别级模板模型作为强有力的先验知识来关联和累积跨时间的信息,以实现对人类和动物的单目重建。这些模板包括用于人类的SMPL [42, 51]系列和用于动物的SMAL [59, 95]。通常,一个模板模型由三个组件组成:
( M , B , W ) . \begin{equation} (\mathcal M, \mathcal B, \mathcal W). \end{equation} (M,B,W).模板网格 M = ( V c , F ) \mathcal{M} = (\mathcal{V}_c, \mathcal{F}) M=(Vc,F) 在规范空间中定义,用于建模对象的形状。类别的预定义运动结构(骨架) B \mathcal{B} B 具有 n b n_b nb 个关节,可以基于驱动姿态 θ \theta θ 返回一组刚性骨骼变换:
[ B 1 , B 2 , … , B n b ] = B ( θ ) , \begin{equation} [B_1, B_2, \ldots, B_{n_b}] = \mathcal B(\theta), \end{equation} [B1,B2,,Bnb]=B(θ),其中, B i ∈ S E ( 3 ) B_i \in SE(3) BiSE(3) 表示将规范关节坐标系移动到关节坐标系的刚性变换。规范空间中的表面点 x c x_c xc 可以通过线性混合蒙皮(LBS)变形到关节空间:
x = ( ∑ k = 1 n b W k ( x c ) B k ) x c , \begin{equation} x = \left(\sum_{k=1}^{n_b} \mathcal W_k(x_c) B_k \right)x_c, \end{equation} x=(k=1nbWk(xc)Bk)xc,其中, W k ( x c ) ∈ R \mathcal{W}_k(x_c) \in \mathbb{R} Wk(xc)R 用于查询规范空间中预定义的蒙皮权重。通常, W \mathcal{W} W 可以通过扩散网格蒙皮权重在整个 R 3 \mathbb{R}^3 R3 空间中预定义。

3.2. Shape Appearance Representation with GMM

高斯关节模板 (GART) 是一种用于可变形关节对象的表示方法,它结合了隐式和显式表示的优点。受到最近在静态场景渲染 \cite{kerbl20233d} 和经典基于点的图形学 \cite{zwicker2002ewa} 进展的启发,我们提出 \emph{使用三维高斯混合模型 (GMM) 在规范空间中\underline{显式}地近似\underline{隐式}的基础辐射场}。GMM 中的第 i i i 个分量由一个三维均值 μ ( i ) ∈ R 3 \mu^{(i)} \in \mathbb{R}^3 μ(i)R3、一个三维旋转 R ( i ) ∈ S O ( 3 ) R^{(i)} \in SO(3) R(i)SO(3)、各向异性的三维缩放因子 s ( i ) ∈ R 3 + s^{(i)} \in \mathbb{R}^{3+} s(i)R3+、一个不透明度因子 η ( i ) ∈ ( 0 , 1 ] \eta^{(i)} \in (0,1] η(i)(0,1]、以及由球谐函数编码的颜色辐射函数 f ( i ) ∈ R C f^{(i)} \in \mathbb{R}^C f(i)RC 参数化。给定规范空间中的查询位置 x c x_c xc,第 i i i 个分量的密度贡献为:
σ ( i ) ( x c ) = η exp ⁡ ( − 1 2 ( x c − μ ) T Σ − 1 ( x c − μ ) ) , \begin{equation} \sigma^{(i)}(x_c) =\eta \exp{\left( -\frac{1}{2 }(x_c-\mu)^T \varSigma^{-1} (x_c-\mu)\right)}, \end{equation} σ(i)(xc)=ηexp(21(xcμ)TΣ1(xcμ)),其中,协方差矩阵为 Σ = R diag ( s 2 ) R T \varSigma = R \text{diag}(s^2)R^T Σ=Rdiag(s2)RT,我们省略了索引 i i i。该分量的颜色贡献为:
c ( i ) ( x c , d ) = σ ( x c ) sph ( R T d , f ) , \begin{equation} c^{(i)}(x_c, d) = \sigma(x_c) \text{sph}(R^Td,f), \end{equation} c(i)(xc,d)=σ(xc)sph(RTd,f),其中, sph ( R T d , f ) \text{sph}(R^T d, f) sph(RTd,f) 表示在局部坐标系方向 R T d R^T d RTd 上,使用系数 f f f 来评估球谐函数,给定全局查询视角方向 d d d。总的辐射场是所有 N N N 个分量的总和:
σ ( x c ) = ∑ i = 1 N σ ( i ) ( x c ) , c ( x c , d ) = ∑ i = 1 N c ( i ) ( x c , d ) . \begin{equation} \sigma(x_c) = \sum_{i=1}^N\sigma^{(i)}(x_c), \quad c(x_c, d) = \sum_{i=1}^N c^{(i)}(x_c, d). \end{equation} σ(xc)=i=1Nσ(i)(xc),c(xc,d)=i=1Nc(i)(xc,d).方程 6 通过一系列高斯分量参数显式表示了规范几何和外观,可以写成:
G = { ( μ ( i ) , R ( i ) , s ( i ) , η ( i ) , f ( i ) ) } i = 1 N . \begin{equation} \mathcal G =\left\{ (\mu^{(i)}, R^{(i)}, s^{(i)}, \eta^{(i)}, f^{(i)}) \right\}_{i=1}^N. \end{equation} G={(μ(i),R(i),s(i),η(i),f(i))}i=1N.在 GART 中, G \mathcal{G} G 替代了方程 1中的 M \mathcal{M} M 三元组。请注意,在优化过程中(见第 3.4 节),每个分量可以独立移动,并且不受网格等固定拓扑结构的约束,这使得 GART 具有高度的灵活性。

3.3. Motion Representation with Forward Skinning

Learnable Forward Skinning
使用 G \mathcal{G} G 的一个关键优势是简单且显式的变形建模。由于模板中的预定义类别级蒙皮先验 W \mathcal{W} W 可能无法反映实际实例的变形,我们为每个高斯分量分配一个可学习的蒙皮校正:
W ^ ( μ ( i ) ) = W ( μ ( i ) ) + Δ w ( i ) , \begin{equation} \widehat{\mathcal W}(\mu^{(i)}) = \mathcal W (\mu^{(i)}) + \Delta w^{(i)}, \end{equation} W (μ(i))=W(μ(i))+Δw(i),
其中, Δ w ( i ) ∈ R n b \Delta w^{(i)} \in \mathbb{R}^{n_b} Δw(i)Rnb 是第 i i i 个高斯分量的可学习蒙皮。在 GART 中,可学习的 W ^ \widehat{\mathcal{W}} W 替代了方程1 中的 W \mathcal{W} W。给定一个姿态 θ \theta θ,第 i i i 个高斯分量的关节变换 A ( i ) A^{(i)} A(i) 为:
A ( i ) = ∑ k = 1 n b W k ^ ( μ ( i ) ) B k , \begin{equation} A^{(i)} = \sum_{k=1}^{n_b} \widehat{\mathcal W_k}(\mu^{(i)}) B_k, \end{equation} A(i)=k=1nbWk (μ(i))Bk,
高斯中心和旋转被表示为:
μ art ( i ) = A rot ( i ) μ ( i ) + A t ( i ) , R art ( i ) = A rot R ( i ) , \begin{equation} \mu_{\text{art}}^{(i)} = A^{(i)}_{\text{rot}}\mu^{(i)} + A_t^{(i)}, \quad R_{\text{art}}^{(i)} = A_{\text{rot}}R^{(i)}, \end{equation} μart(i)=Arot(i)μ(i)+At(i),Rart(i)=ArotR(i),
其中, A rot ( i ) A_{\text{rot}}^{(i)} Arot(i) A t ( i ) A_t^{(i)} At(i) 分别是 A ( i ) A^{(i)} A(i) 的左上 3 × 3 3 \times 3 3×3 块和右 3 × 1 3 \times 1 3×1 块。注意, A ( i ) A^{(i)} A(i) 可能不再是一个 S E ( 3 ) SE(3) SE(3) 变换。但变换后的 R a ( i ) R_a^{(i)} Ra(i) 仍然可以用于构造方程4中的协方差矩阵,并且通过使用方程 6 中的关节均值和协方差,可以直接从方程 10 中得到关节辐射场。这个前向蒙皮使得 GART 能够高效地建模运动,并避免了其他隐式表示中使用的反向蒙皮求根问题 \cite{snarf, fastsnarf}。

Latent Bones and Flexible Deformation
与特定人物无关的人体模型(如 SMPL)具有预定义的骨架 B \mathcal{B} B,能够很好地模拟人体运动,但无法捕捉松散衣物的运动。我们的目标是找到一种简单的近似方法,从单目视频中捕捉衣物的运动。我们的洞察是,关节主体的变形可以看作是由 n b n_b nb 个预定义骨骼加上 n l n_l nl 个未知潜在骨骼驱动的。我们可以将潜在骨骼的变换表示为姿态 θ \theta θ 的函数:
[ B ~ 1 , … , B ~ n l ] = B ~ ( θ ) \begin{equation} [\widetilde B_{1},\ldots, \widetilde B_{n_l}] = \widetilde{\mathcal{B}}(\theta) \end{equation} [B 1,,B nl]=B (θ)
其中, B ~ i ∈ S E ( 3 ) \widetilde{B}_{i} \in SE(3) B iSE(3),并且 B ~ ( θ ) \tilde{\mathcal{B}}(\theta) B~(θ) 可以用多层感知器(MLP)或每帧可优化的表格来参数化。同样地,我们可以在训练过程中为每个高斯函数学习潜在骨骼的蒙皮权重 W ~ ( μ ) ∈ R n l \widetilde{\mathcal{W}}(\mu) \in \mathbb{R}^{n_l} W (μ)Rnl。随着潜在骨骼的加入,来自 Eq.9的前向蒙皮变为:
A ( i ) = ∑ k = 1 n b W k ^ ( μ ( i ) ) B k + ∑ q = 1 n l W q ~ ( μ ( i ) ) B ~ q . \begin{equation} A^{(i)} = \sum_{k=1}^{n_b} \widehat{\mathcal W_k}(\mu^{(i)}) B_k + \sum_{q=1}^{n_l} \widetilde{\mathcal W_q}(\mu^{(i)}) \widetilde B_q. \end{equation} A(i)=k=1nbWk (μ(i))Bk+q=1nlWq (μ(i))B q.
请注意,这种变形模型在计算上高效且紧凑,因为变换 B \mathcal{B} B B ~ \widetilde{\mathcal{B}} B 在所有高斯函数中是全局共享的。
Summary
现在,我们全面介绍 GART:
( G , B , W ^ , B ~ , W ~ ) , \begin{equation} (\mathcal G, \mathcal B, \widehat{\mathcal W}, \widetilde{\mathcal B}, \widetilde{\mathcal W}), \end{equation} (G,B,W ,B ,W ),
它通过可学习的高斯混合模型(GMM) G \mathcal{G} G 明确地近似规范形状和外观,并通过先验骨架和可学习的潜在骨骼 B , B ~ \mathcal{B}, \widetilde{\mathcal{B}} B,B 及其可学习的蒙皮权重 W ^ , W ~ \widehat{\mathcal{W}}, \widetilde{\mathcal{W}} W ,W 紧凑地表示前向变形。给定一个姿态 θ \theta θ,使用 Eq.10, 12,关节辐射场近似为:
G art ( θ ) = { ( μ art ( i ) , R art ( i ) , s ( i ) , η ( i ) , f ( i ) ) } i = 1 N μ art ( i ) = A rot ( i ) μ ( i ) + A t ( i ) , R art ( i ) = A rot R ( i ) A ( i ) = ∑ k = 1 n b W k ^ ( μ ( i ) ) B k ( θ ) + ∑ q = 1 n l W q ~ ( μ ( i ) ) B ~ q ( θ ) \begin{align} \begin{split} \mathcal G_{\text{art}}(\theta) &= \left\{ (\mu_{\text{art}}^{(i)}, R_\text{art}^{(i)}, s^{(i)}, \eta^{(i)}, f^{(i)}) \right\}_{i=1}^N\\ \mu_{\text{art}}^{(i)} &= A^{(i)}_{\text{rot}}\mu^{(i)} + A_t^{(i)}, \quad R_{\text{art}}^{(i)} = A_{\text{rot}}R^{(i)}\\ A^{(i)} &= \sum_{k=1}^{n_b} \widehat{\mathcal W_k}(\mu^{(i)}) B_k(\theta) + \sum_{q=1}^{n_l} \widetilde{\mathcal W_q}(\mu^{(i)}) \widetilde B_q(\theta) \end{split} \end{align} Gart(θ)μart(i)A(i)={(μart(i),Rart(i),s(i),η(i),f(i))}i=1N=Arot(i)μ(i)+At(i),Rart(i)=ArotR(i)=k=1nbWk (μ(i))Bk(θ)+q=1nlWq (μ(i))B q(θ)

3.4. Reconstruct GART from Monocular Videos

Differentiable Rendering with Splatting
给定一个透视投影 π ( x ; E , K ) \pi(x; E, K) π(x;E,K),其中 E E E 是相机外参, K K K 是内参矩阵,3D 高斯的投影可以近似处理为具有以下均值和协方差的 2D 高斯:
μ 2 D = π ( μ ; E , K ) ; Σ 2 D = J E Σ E T J T , \begin{equation} \mu_{2D} = \pi(\mu; E,K) ; \ \varSigma_{2D} = J E \varSigma E^T J^T, \end{equation} μ2D=π(μ;E,K); Σ2D=JEΣETJT,
其中, J J J 是透视投影 π \pi π 的雅可比矩阵,详见 \cite{zwicker2002ewa} 中的方程 (26-31)。通过在投影过程中保持高斯分布的特性,我们可以高效地进行 splatting 并通过排序的颜色累积来近似体渲染 \cite{zwicker2002ewa}。
I ( u , d ) = ∑ i = 1 N α ( i ) sph ( R T d , f ( i ) ) ∏ j = 1 i − 1 ( 1 − α ( j ) ) α ( i ) = G 2 D ( u ∣ η ( i ) , μ 2 D ( i ) , Σ 2 D ( i ) ) , \begin{align}\begin{split} I(u,d) &= \sum_{i=1}^{N} \alpha^{(i)} \text{sph}(R^Td,f^{(i)}) \prod_{j=1}^{i-1} (1-\alpha^{(j)})\\ \alpha^{(i)} &= G_{2D}(u|\eta^{(i)}, \mu_{2D}^{(i)},\varSigma_{2D}^{(i)}), \end{split}\end{align} I(u,d)α(i)=i=1Nα(i)sph(RTd,f(i))j=1i1(1α(j))=G2D(uη(i),μ2D(i),Σ2D(i)),其中,索引按照深度方向排序,查询的像素坐标为 u u u,世界坐标系中的观察方向为 d d d G 2 D G_{2D} G2D 是类似于方程 4 的 2D 高斯密度评估。方程 16是可微的 \cite{kerbl20233d},可以通过 2D 观测提供监督来更新所有高斯参数,更多细节请参考 \cite{zwicker2002ewa,kerbl20233d}。

Optimization
给定来自单目视频的一组 M M M 张图像及模板的估计位姿 { ( I 1 ∗ , θ 1 ) , … , ( I M ∗ , θ M ) } \{(I^*_1, \theta_1), \ldots, (I^*_M, \theta_M)\} {(I1,θ1),,(IM,θM)},我们通过比较 G art ( θ ) \mathcal G_{\text{art}}(\theta) Gart(θ) 的渲染图像与真实图像来优化 G , W ^ , B ~ , W ~ \mathcal G, \widehat{\mathcal W}, \widetilde{\mathcal B}, \widetilde{\mathcal W} G,W ,B ,W 并细化 θ \theta θ。我们在模板网格上初始化 G \mathcal G G,并在优化过程中遵循 3D-GS 的 densify-and-prune 策略 \cite{kerbl20233d}。

将 {GART} 的渲染图像记为 I ^ ( G art ( θ ) ) \hat I(\mathcal G_{\text{art}}(\theta)) I^(Gart(θ)),训练损失为:
L = L 1 ( I ^ , I ∗ ) + λ SSIM L SSIM ( I ^ , I ∗ ) + L reg , \begin{equation} L = L_1(\hat I, I^*) + \lambda_{\text{SSIM}} L_{\text{SSIM}}(\hat I, I^*) + L_{\text{reg}}, \end{equation} L=L1(I^,I)+λSSIMLSSIM(I^,I)+Lreg,
其中, λ \lambda λ 是损失权重, L reg L_{\text{reg}} Lreg 将在下文介绍。

Regularization 3D高斯模型在{GART}中的灵活特性在2D观测稀疏时可能会受到约束不足的影响。与NeRF中的MLP所引入的平滑性不同,3D高斯混合模型在未观测空间中常常会产生伪影。受到\cite{snarf, fastsnarf}的启发,可学习的蒙皮权重 W ^ , W ~ \widehat{\mathcal{W}}, \widetilde{\mathcal{W}} W ,W 应该在空间上是平滑的,因此我们将它们提炼到一个粗糙的体素网格中,并且在方程8, 12中的每个高斯蒙皮 Δ w ( i ) , W ~ ( μ ( i ) ) \Delta w^{(i)}, \widetilde{\mathcal{W}}(\mu^{(i)}) Δw(i),W (μ(i))通过体素网格在 μ ( i ) \mu^{(i)} μ(i)处进行三线性插值。我们进一步对 μ \mu μ的KNN邻域中的高斯属性变化进行正则化,得到:
L S T D ( i ) = ∑ a t t r ∈ { R , s , η , f , W ^ , W ~ } λ a t t r STD i ∈ K N N ( μ ( i ) ) ( a t t r ( i ) ) , \begin{equation} L^{(i)}_{STD} = \sum_{attr \in \{R,s,\eta, f,\widehat{\mathcal W}, \widetilde{\mathcal W}\}} \lambda_{attr} \text{STD}_{i\in KNN(\mu^{(i)})}(attr^{(i)}), \end{equation} LSTD(i)=attr{R,s,η,f,W ,W }λattrSTDiKNN(μ(i))(attr(i)),
其中, STD \text{STD} STD 是标准差。
此外,我们鼓励拟合过程对原始运动结构进行小幅度的修改,以进一步利用模板模型的先验知识,并鼓励使用小高斯模型,因为非刚性主体是通过分段刚性移动的高斯模型来近似的,这导致了:
L n o r m ( i ) = λ W ^ ∥ Δ w ( i ) ∥ 2 + λ W ~ ∥ W ~ ( μ ( i ) ) ∥ 2 + λ s ∥ s ( i ) ∥ ∞ . \begin{equation} L^{(i)}_{norm} = \lambda_{ \widehat{\mathcal W}} \| \Delta w^{(i)} \|_2 + \lambda_{ \widetilde{\mathcal W}} \| \widetilde{\mathcal W}(\mu^{(i)}) \|_2 + \lambda_s \|s^{(i)}\|_{\infty}. \end{equation} Lnorm(i)=λW ∥Δw(i)2+λW W (μ(i))2+λss(i).
总的正则化损失为:
L r e g = 1 N ∑ i = 1 N L S T D ( i ) + L n o r m ( i ) . \begin{equation} L_{reg} = \frac{1}{N}\sum_{i=1}^N L^{(i)}_{STD} + L^{(i)}_{norm}. \end{equation} Lreg=N1i=1NLSTD(i)+Lnorm(i).
Inference
在推理过程中,{GART} 的所有属性都明确地存储在每个高斯上(不需要体素网格查询)。由于我们对外观和运动的高效建模,渲染一个关节模型与渲染一个静态场景一样快。在 People-Snapshot \cite{peopelsnap} 数据集上,以分辨率 540 × 540 540\times 540 540×540 进行推理时,帧率超过 150 150 150

4. Experiments

在这里插入图片描述

4.1. Comparison on Human Rendering

在本节中,我们验证了 GART 在单目人类重建和视图合成中的有效性、效率和表现力。我们使用 SMPL [42] 作为模板,训练时的输入是带有每帧视频估计的 SMPL 姿态的单目 RGB 视频。测试期间的评估是通过 PSNR、SSIM 和 LPIPS 指标进行的新视图合成。

在这个任务中,最新的基准是最近高效的基于 NeRF 的人类渲染方法 Instant-Avatar [24] 和 Instant-NVR [13],它们展示了比传统网格表示 [1] 更好的保真度。Instant-Avatar 在规范空间中使用 instant-NGP [48],并利用 Fast-SNARF [8],一种高度定制的 GPU 求解器,用于快速反向蒙皮根查找来建模变形。它还提出了一种特殊的不透明度缓存策略来加速体积渲染。Instant-NVR 使用单独的 NeRFs 来建模每个身体部位的外观,并利用精心设计的基于图表的反向蒙皮来建模变形。我们在三个数据集上进行了比较:ZJU-MoCap [55]、People-Snapshot [1] 和 UBC-Fashion [87]。与 Instant-Avatar [24] 类似,我们也在测试时对 SMPL 姿态进行了细化。

ZJU-MoCap [55] 我们在 ZJU-MoCap 数据集 [55] 上与 Instant-NVR [13] 及其他人类渲染方法进行了比较,设置与 [13] 相同。平均结果如表 1 所示。GART 在合成结果方面超越了其他方法,并且训练时间更少。得益于其高效的渲染 [27] 和前向蒙皮(第 3.3 节),GART 在不到 30 秒的训练后即可实现类似的定量性能。图 3 中的定性结果显示,我们的结果比 Instant-NVR [13] 捕捉到更多细节。
在这里插入图片描述
People-Snapshot [1] 另一个常用的人类头像数据集是 People-Snapshot [1],我们在相同的实验设置下将 GART 与 Instant-Avatar [24] 进行了比较。结果显示在表 2 和图 4 中。我们的方法在较短的训练时间内实现了可比的性能。除了训练效率外,GART 在推理过程中相较于 Instant-Avatar 具有独特的优势。在 540 × 540 的分辨率下,Instant-Avatar 可以以 15FPS [24] 的速度渲染,但 GART 在单个 RTX-3080-Laptop GPU 上可以以超过 150FPS 的速度渲染。
在这里插入图片描述
在这里插入图片描述
UBC-Fashion [87] 虽然 ZJU-MoCap [55] 和 People-Snapshot [1] 数据集被广泛用于基准测试,但这些数据集中的服装都比较紧身,与 SMPL 身体模型差异不大。我们进一步挑战更复杂的服装建模,如具有高度动态运动和变形的长裙。我们使用了 UBC-Fashion [87] 数据集中的六个视频,其中包含动态长裙和不同肤色。正如图 5 所示,每个单目视频捕捉到一个穿着宽松服装的模特在摄像机前转圈。
在这里插入图片描述

由于这些序列的姿态变化非常有限,并且仅捕捉到一个视角,我们从第 0 帧开始,以 4 帧的间隔选择帧进行训练,从第 2 帧开始,以相同的间隔选择帧进行测试。SMPL 姿态通过最先进的姿态估计器 ReFit [69] 获得。由于 GART 和 Instant-Avatar [24] 都可以在测试期间优化 SMPL 姿态,而长裙也给姿态估计器带来了挑战,导致估计结果噪声较大,我们发现如果在测试期间使用最近的训练姿态并进行优化,两个方法的结果都会更好。

定量比较如表3所示,我们评估了两种 {GART} 的变体:{GART}-MLP 使用 MLP 来表示方程11 中的潜在骨骼 B ~ ( θ ) \widetilde{\mathcal{B}}(\theta) B (θ),其中 MLP 的输入是 SMPL 姿态;{GART}-T-Table 直接优化每个时间帧的刚性变换列表,以表示潜在骨骼 [ B ~ 1 , … , B ~ n l ] [\widetilde B_{1},\ldots, \widetilde B_{n_l}] [B 1,,B nl]
在这里插入图片描述

如图5所示,Instant-Avatar 成功捕捉了上半身,但未能捕捉到动态服装。这可能有三个原因:

  1. 由于隐式建模,使用 Fast-SNARF \cite{fastsnarf} 解决反向蒙皮问题,在高度动态的裙子区域导致多个模糊对应关系。因此,我们观察到错误的蒙皮将裙子附着到手臂上。
  2. 使用 24 个 SMPL 骨骼和可学习的蒙皮权重不足以捕捉复杂的变形;
  3. 由于 NeRF 的灵活性和噪声姿态估计的有限表现力,在一些错误姿态下,由于其光度重要性,在空白空间中产生了许多伪影。

相反,我们的方法通过简单的前向蒙皮建模变形,如第3.3节所述,可以通过潜在骨骼进一步捕捉灵活的变形,并在基于变形的过程中使用 3D-GS \cite{kerbl20233d} 进行优化,从而实现更好的性能。

4.2. Application on Dog Rendering

在这一部分中,我们展示了 GART 作为一个通用框架,用于从单目野外视频中捕捉和渲染动物。具体来说,我们使用了为多种狗品种提出的新 D-SMAL [59] 模型作为基础模板。我们在总共 8 个新序列上进行了实验:6 个序列来自 2022 年全国狗展(6 个最佳展示参与者),以及 2 个从 Adobe Stock Videos 获取的绿屏拍摄序列。相比于人类,狗的姿态估计更具挑战性,因为训练数据稀缺且环境中存在遮挡。因此,我们选择了由 BITE [59] 估计出准确姿态且遮挡较少的部分。如图 6 所示,GART 能很好地捕捉不同的狗品种。与 D-SMAL 相比,GART 更好地重建了品种特有的外观特征,如尾巴、耳朵和有纹理的毛发。我们还将 InstantAvatar [24] 适配到 D-SMAL 模板中,并将其称为 InsAvat-Dog 进行比较。与 GART 相比,InsAvat-Dog 在这种具有挑战性的设定下可能会产生鬼影伪影,这可能是由于训练期间狗的姿态不准确且高度动态。我们为每个序列包括了一小部分测试帧,并在表 4 中报告了这些指标,作为野外神经动物重建的基准。
在这里插入图片描述
在这里插入图片描述

4.3. Ablation Study

为了验证我们的变形建模的有效性,我们将完整模型与以下两种情况进行了比较:1)去除潜在骨骼,2)去除可学习的蒙皮,比较对象是UBC-Fashion序列。结果如表5和图7所示。我们观察到完整模型效果最佳,并注意到没有潜在骨骼的模型仍然可以比Instant-Avatar [24]更少地重建连衣裙的伪影,显示了我们在噪声姿态和大变形下的鲁棒性和有效性。从图7中可以直观地看到,添加潜在骨骼后,裙子的独立运动比去掉潜在骨骼的模型捕捉得更好。我们还通过以下两种方式验证了注入平滑性的有效性:1)去除体素蒸馏的蒙皮权重,但将每个高斯的蒙皮权重存储为一个列表,2)去除Eq. 18中的KNN正则化。野外视频的定性比较如图7所示。我们注意到,没有KNN版本在背部产生了强烈的伪影,而没有体素版本在侧视图中在身体周围产生了噪声伪影。
在这里插入图片描述
在这里插入图片描述

4.4. Application: Text-to-GART

GART 是一个通用的关节化对象表示方法,不局限于真实单目视频重建。在本节中,我们进一步展示了一个应用——Text-to-GART,通过简单地将Eq.17中的渲染 L 1 L1 L1损失和SSIM损失替换为SDS损失 \cite{poole2022dreamfusion}。输入是一段描述用户希望生成内容的文本,输出是一个优化后的GART,表示该对象。

优化损失变为
L = L SDS + L reg , L = L_{\text{SDS}}+ L_{\text{reg}}, L=LSDS+Lreg,
其中 L SDS L_{\text{SDS}} LSDS通过前向传播一个微调的Stable-Diffusion \cite{rombach2022high}模型MVDream \cite{shi2023MVDream}计算。关于 L SDS L_{\text{SDS}} LSDS的更多细节,请参见Stable-Diffusion \cite{rombach2022high}和DreamGaussian \cite{tang2023dreamgaussian}。

由于没有从视频帧中估计的真实姿态,我们从AMASS \cite{AMASS:ICCV:2019}中随机采样一些合理的SMPL \cite{smpl}模板姿态,以在蒸馏过程中增强GART。

生成结果如图8所示。得益于GART的高效性,该应用的计算瓶颈主要在于2D扩散前向传播,典型的生成时间在单个GPU上每个对象大约为10分钟。
在这里插入图片描述

5. Conclusions

本文提出了一种简单且通用的表示方法——GART,通过高斯混合模型和新颖的蒙皮变形来处理非刚性关节对象。GART 在单目人类和动物的重建和渲染方面达到了最新的性能,同时保持了高效的训练和推理效率。
Limitations and future work 我们提出的方法有两个主要的局限性,未来可以进一步探索:

  1. 我们的方法依赖于模板姿态估计器,而对于更广泛的动物种类,可能不存在这样的估计器。
  2. GART 能够高效地拟合单个单目视频,下一个有趣的步骤是探索如何从野外视频集合中捕捉关节对象的类别级先验知识。

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

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

相关文章

Java--instanceof和类型转换

1.如图,Object,Person,Teacher,Student四类的关系已经写出来了,由于实例化的是Student类,因此,与Student类存在关系的类在使用instanceof时都会输出True,而无关的都会输出False&…

负载均衡技术怎么实现的,负载均衡策略

目录 负载均衡技术怎么实现的 负载均衡技术的实现方式 举例说明 负载均衡策略 1. 轮询(Round Robin) 2. 加权轮询(Weighted Round Robin) 3. 最少连接数(Least Connections) 4. 响应时间(Response Time) 总结 负载均衡技术怎么实现的 负载均衡技术主要通过多种…

数据结构 —— Dijkstra算法

数据结构 —— Dijkstra算法 Dijkstra算法划分集合模拟过程打印路径 在上次的博客中,我们解决了使用最小的边让各个顶点连通(最小生成树) 这次我们要解决的问题是现在有一个图,我们要找到一条路,使得从一个顶点到另一个…

对比学习和多模态任务

1. 对比学习 对比学习(Contrastive Learning)是一种自监督学习的方法,旨在通过比较数据表示空间中的不同样本来学习有用的特征表示。其核心思想是通过最大化同类样本之间的相似性(或降低它们之间的距离),同…

【Linux】网络新兵连

欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 引言 在上一篇博客中,我们简单的介绍了一些Linux网络一些比较基本的概念。本篇博客我们将开始正式学习Linux网络套接字的内容,那么我们开始吧! 1.网络中的地址管理 大家一…

GraphRAG——一个基于图的检索增强生成的开源项目【送源码】

GraphRAG 最近几天,微软团队开源了GraphRAG,这是一种基于图(Graph)的检索增强生成方法。 先说说RAG吧,检索增强生成,相当于是从一个给定好的知识库中进行检索,接入LLM模型,让模型生…

(十六)视图变换 正交投影 透视投影

视图变换 代码实验 #include <glad/glad.h>//glad必须在glfw头文件之前包含 #include <GLFW/glfw3.h> #include <iostream> #define STB_IMAGE_IMPLEMENTATION #include "stb_image.h"//GLM #include <glm/glm.hpp> #include <glm/gtc/m…

C++初探究(2)

引用 对于一个常量&#xff0c;想要将其进行引用&#xff0c;则使用普通的引用相当于权限扩大&#xff08;常量为只读&#xff0c;但此处的引用参数为可读可写&#xff09;&#xff0c;C编译器会报错. 例如&#xff1a; const int a 10;int& ra a;//权限放大&#xff0…

逻辑回归不是回归吗?那为什么叫回归?

RNN 逻辑回归不是回归吗&#xff1f;那为什么叫回归&#xff1f;逻辑回归的基本原理逻辑函数&#xff08;Sigmoid函数&#xff09;二元分类 为什么叫做“回归”&#xff1f;逻辑回归的应用场景总结 逻辑回归不是回归吗&#xff1f;那为什么叫回归&#xff1f; 逻辑回归&#x…

Python大数据分析——决策树和随机森林

Python大数据分析——决策树和随机森林 决策树决策树节点字段的选择信息熵条件熵信息增益信息增益率 基尼指数条件基尼指数基尼指数增益 决策树函数 随机森林函数 决策树 图中的决策树呈现自顶向下的生长过程&#xff0c;深色的椭圆表示树的根节点&#xff1b;浅色的椭圆表示树…

Java项目:基于SSM框架实现的农家乐信息管理平台含前后台【ssm+B/S架构+源码+数据库+答辩PPT+开题报告+毕业论文】

一、项目简介 本项目是一套基于SSM框架实现的农家乐信息管理平台 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;eclipse或者idea 确保可以运行&#xff01; 该系统功能完善、界面美观、操作简单、功…

招投标信息采集系统:让您的企业始终站在行业前沿

一、为何招投标信息如此关键&#xff1f; 在经济全球化的大背景下&#xff0c;招投标活动日益频繁&#xff0c;成为企业获取项目、拓展市场的主流方式之一。招投标信息采集&#xff0c;作为企业战略决策的前置环节&#xff0c;其重要性不言而喻。它不仅关乎企业能否第一时间发…

WPF 初识依赖属性

依赖属性的意义和作用 核心模块内存共享&#xff0c;节省空间数据绑定、样式、模板、动画。。。。如果没有依赖属性&#xff0c;这个框架就是一个控件框架 相当于Winform 依赖属性的基本定义 基本过程&#xff1a;声明、注册、包装 在需要写依赖属性的类中&#xff0c;继承…

快速将一个网址打包成一个exe可执行文件

一、电脑需要node环境 如果没有下面有安装教程&#xff1a; node.js安装及环境配置超详细教程【Windows系统安装包方式】 https://blog.csdn.net/weixin_44893902/article/details/121788104 我的版本是v16.13.1 二、安装nativefier 这是一个GitHub上的开源项目&#xff1a…

C 语言函数

1.0 函数的创建和使用 在C语言中&#xff0c;函数是一种封装了特定功能的代码块&#xff0c;可以被程序中的其他部分调用。函数可以接受输入参数&#xff0c;并且可以返回一个值。定义一个函数的基本语法如下 #define _CRT_SECURE_NO_WARNINGS #include "stdio.h" …

numpy、ffmpeg都在cpu上面跑

ffmpeg: ffmpeg不支持在GPU上运行。ffmpeg是一个用于处理多媒体数据的工具&#xff0c;它主要在CPU上运行。虽然某些特定的ffmpeg功能&#xff08;如某些视频编解码器&#xff09;可以利用GPU进行硬件加速&#xff0c;但这需要特定的硬件和驱动支持&#xff0c;并且并非所有操…

阿里云人工智能平台PAI部署开源大模型chatglm3之失败记录--update:最后成功了!

想学习怎么部署大模型&#xff0c;跟着网上的帖子部署了一个星期&#xff0c;然而没有成功。失败的经历也是经历&#xff0c;记在这里。 我一共创建了3个实例来部署chatglm3&#xff0c;每个实例都是基于V100创建的&#xff08;当时没有A10可选了&#xff09;&#xff0c;其显…

算法工程师第六天(● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和 ● 总结 )

参考文献 代码随想录 一、四数相加 II 给你四个整数数组 nums1、nums2、nums3 和 nums4 &#xff0c;数组长度都是 n &#xff0c;请你计算有多少个元组 (i, j, k, l) 能满足&#xff1a; 0 < i, j, k, l < nnums1[i] nums2[j] nums3[k] nums4[l] 0 示例 1&#…

x86芯片定制,Ethercat芯片定制,IP服务,适用于运动控制,工业总线等软硬一体机

x86芯片定制&#xff0c;Ethercat芯片定制 X86平台 我们的研发工程师已经积累了非常丰富的主板、整机设计经验&#xff0c;对接您的产品规格场景需求&#xff0c;快速交付样机&#xff0c;包含主板、BOX整机、平板电脑、CPCI等形态产品。降本、长生命周期、快速交付、及时响应…

C# 如何防止反编译?C#程序加密混淆保护方法大全

在C#开发中&#xff0c;由于.NET程序集&#xff08;assemblies&#xff09;是基于中间语言&#xff08;Intermediate Language, IL&#xff09;编译的&#xff0c;这些程序集可以被反编译回接近原始源代码的形式。为了保护代码不被轻易反编译&#xff0c;开发者可以采取以下几种…