【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 作為一個通用框架,從野外的單目視頻中重建動物,其保真度比之前的基于網格的方法更高。
總結來說,我們的主要貢獻有:
-
GART:一種通用且顯式的表示方法,用于非剛性關節主體,通過高斯混合模型(GMM)來近似規范形狀和外觀的輻射場。
-
高效動畫:GART 可以通過可學習的前向蒙皮高效地進行動畫處理,并且通過一種新穎的潛在骨骼方法捕捉人類寬松衣物等具有挑戰性的變形。
-
實驗結果:我們的實驗表明,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) Bi?∈SE(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=1∑nb??Wk?(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=1∑N?σ(i)(xc?),c(xc?,d)=i=1∑N?c(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=1∑nb??Wk? ?(μ(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)?=Arot?R(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 i?∈SE(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=1∑nb??Wk? ?(μ(i))Bk?+q=1∑nl??Wq? ?(μ(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)?=Arot?R(i)=k=1∑nb??Wk? ?(μ(i))Bk?(θ)+q=1∑nl??Wq? ?(μ(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=1∑N?α(i)sph(RTd,f(i))j=1∏i?1?(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?)+λSSIM?LSSIM?(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 }∑?λattr?STDi∈KNN(μ(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?+λs?∥s(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?=N1?i=1∑N?LSTD(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 成功捕捉了上半身,但未能捕捉到動態服裝。這可能有三個原因:
- 由于隱式建模,使用 Fast-SNARF \cite{fastsnarf} 解決反向蒙皮問題,在高度動態的裙子區域導致多個模糊對應關系。因此,我們觀察到錯誤的蒙皮將裙子附著到手臂上。
- 使用 24 個 SMPL 骨骼和可學習的蒙皮權重不足以捕捉復雜的變形;
- 由于 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 我們提出的方法有兩個主要的局限性,未來可以進一步探索:
- 我們的方法依賴于模板姿態估計器,而對于更廣泛的動物種類,可能不存在這樣的估計器。
- GART 能夠高效地擬合單個單目視頻,下一個有趣的步驟是探索如何從野外視頻集合中捕捉關節對象的類別級先驗知識。