Sora發布後出現了一些bug,網路上的用戶發現了一些問題,儘管模型對物理世界的了解並不充分,但小狗在行走時,兩條前腿就會出現交錯問題,讓人意外出現遊戲。
關於生成影片的真實感來說,物體的互動非常重要,但目前來說,合成真實3D物件在互動中的動態行為仍然非常困難。
動作條件動力學是一個研究領域,需要對物體的物理材料屬性進行感知,並建立在這些屬性(例如物體剛度)的基礎上進行3D運動預測。
由於缺乏數據支持,評估物理材料屬性仍然是一個棘手且未解決的問題,因為測量真實物體的物理材料屬性非常困難。
最近,MIT、史丹佛大學、哥倫比亞大學和康乃爾大學聯合提出了一種基於物理的模型PhysDreamer,利用視訊生成模型學習到的物件動力學學習先驗,為靜態3D物件賦予互動式動力學學習。
論文連結:https://arxiv.org/pdf/2404.13026.pdf
項目首頁:https://physdreamer.github.io/
透過提煉先驗知識,PhysDreamer 能夠實現實體物件對全新互動的回應,例如外力或智能體操作,並且透過在彈性物體的不同範例上展現了此方法的效果,利用使用者研究評估了合成互動的真實性。
給定一個由3D高斯表示的靜態物件(其中xp表示位置,αp表示不透明度,Σp表示協方差矩陣,cp表示粒子的顏色),最終目標是估計物體的物理材料屬性場,以實現真實的互動式運動合成。
具體性質包括質量m、楊氏模數E和泊鬆比ν,其中楊氏模量用來測量材料的剛度,決定物體響應外力作用的運動軌跡:較高的楊氏模量會帶來更小的形變,以及更剛性和更高頻率的運動。
花在相同的作用力下但具有不同楊氏模量的模擬運動
所以研究者將問題形式化為,估計3D物體的空間變化楊氏模量場E(x),可以用查詢粒子的楊氏模量,以進行粒子模擬。
至於其他物理性質,粒子的質量m_p可以預先計算為恆定密度(ρ)和粒子體積Vp的乘積;粒子體積可以透過將「背景單元的體積」除以「本單元所包含的粒子數」來估計得到;泊鬆比νp對物體運動的影響可以忽略不計,可以假設為常數。
PhysDreamer可以估計靜態3D物件的材質場,其關鍵想法在於生成運動中物體的可信視頻,然後優化材料場E(x )以匹配合成運動。
給定一個表示為3D高斯的對象,首先從某個視點進行渲染(帶背景),然後使用圖像到視頻生成模型來生成運動中物體的參考視頻,再使用可微分材質點方法(MPM,Material Point Methods)和可微分渲染,對空間變化的材質場和初始速度場進行最佳化,旨在最小化渲染影片和參考影片之間的差異。
虛線箭頭代表梯度流
1. 基礎知識
3D高斯採用一組各向異性的3D高斯核來表示3D場景的輻射場,雖然其主要是作為3D新視圖合成方法引入的,但由於3D高斯具有拉格朗日性質,所以能夠直接適用於粒子的物理模擬器。
與PhysGaussian方法類似,研究人員使用材質點方法(MPM,Material Point Methods)直接在高斯粒子上模擬物體動力學。
由於3D高斯分佈主要位於物件表面,因此可以應用可選的內部填充過程來提高模擬真實感。
連續介質力學(Continuum mechanics)和彈性材料
在連續介質力學中,材料的變形是透過一個映射函數ϕ來模擬的,可以將材料在未變形狀態下的空間點X轉換為變形後的世界空間中的點x,這個過程可以用公式
為了測量材料變形中的局部旋轉和應變(strain),引入了形變梯度(deformation gradient)的概念,為映射函數ϕ的雅可比矩陣F,即
#形變梯度是理解和描述材料應力-應變關係的關鍵,涉及材料的局部變形狀態。
在高彈性材料中,Cauchy應力(stress)的計算依賴應變能密度函數ψ(F),可以對材料非剛性變形的程度進行量化;通常來說,該函數由材料科學家根據材料的對稱性和旋轉不變性原則設計,並與實驗數據相匹配。
此外,固定旋轉超彈性模型中的能量密度函數可以透過變形梯度的一個奇異值σi來表示,並且模型參數μ和λ與材料的楊氏模量E和泊鬆比ν有直接關係,這些參數對於理解材料在受力時的表現至關重要。
#材質點方法Material Point Method (MPM)
研究人員使用移動最小二乘材料點法(MLS-MPM)來求解「彈性材料動態」的控制方程,其中ρ代表密度,v(x, t)代表世界空間的速度場,f代表外部力。
MPM是用於模擬各種材料動力學的計算方法,結合了歐拉和拉格朗日方法的優點,特別適合模擬固體、流體、沙子、布料等材料的動態行為,能夠有效處理材料的拓樸變化,並且在圖形處理單元(GPU)上容易並行化。
透過將物體視為一系列高斯粒子來進行空間離散化,每個粒子p代表物體的一小部分體積,並攜帶體積、質量、位置、速度、變形梯度和局部速度場梯度等屬性。
MPM的計算過程包括粒子到網格(P2G)和網格到粒子(G2P)的轉換循環(transfer loop):
在P2G階段,動量從粒子傳遞到網格,更新網格上的速度,然後這些更新後的速度資訊被傳回粒子,用於更新粒子的位置和速度,同時,粒子的局部速度梯度和變形梯度也會隨之更新,以反映材料的當前狀態。
MPM方法可以對材料的複雜動態行為進行精確模擬,包括材料的變形、斷裂和交互作用。
2. 估計物理屬性
#研究人員使用移動最小二乘材質點法(MLS-MPM)作為實體模擬器,並採用固定旋轉超彈性材料模型來模擬三維物體的過程。
MLS-MPM模擬過程
#模擬器使用MLS-MPM來模擬物件的物理行為,模擬函數接收目前時間步t的粒子位置x、速度v、形變梯度F和局部速度場梯度C,以及粒子的物理屬性集合θ(包含所有粒子的質量、楊氏模量、泊鬆比和體積)和時間步長Δt(1×10^-4)作為輸入,並輸出下一個時間步t 1的對應值。
為了模擬相鄰影片影格之間的動態,通常需要迭代數百個子步驟。
模擬與渲染
#在模擬後,使用可微分渲染函數Frender來渲染每個影格的高斯粒子,其中Rt表示從模擬步驟中獲得的所有粒子的旋轉矩陣。
然後使用產生的影片作為參考,透過每幀的損失函數來最佳化空間變化的楊氏模量E和初始速度v0,其中損失函數結合了L1損失和D-SSIM損失,權重參數λ設定為0.1
參數化和正規化
材質場和速度場透過兩個三平面(triplanes)和三層多層感知器(MLP)來進行參數化,為了提升空間平滑性,對這兩個場的所有空間平面都應用了總變分正規化(total variation regularization)。
#優化過程
#優化過程被分成兩個階段以提高穩定性並加快收斂速度:
1. 在第一階段,對每個高斯粒子的楊氏模量進行隨機初始化並固定,然後僅使用參考影片的前三個幀來優化每個粒子的初始速度。
2. 在第二階段,固定初始速度並最佳化空間變化的楊氏模量。為了防止梯度爆炸或消失,梯度訊號隻流向前一幀。
透過這種方式,模擬器能夠模擬物體的物理行為,並根據參考影片最佳化材料屬性和初始條件,以產生逼真的動態效果。
3. 用子取樣(subsampling)加速模擬
使用三維高斯粒子進行高保真渲染通常需要數百萬個粒子才能表示出一個場景,給運行模擬帶來了巨大的計算負擔。
為了提高效率,模型引入了一個子取樣過程,在大幅減少運算量的同時,還能保持渲染結果的高保真度:只用少量的驅動粒子(driving particle)進行模擬,然後透過插值驅動粒子來獲得高斯粒子的位置和旋轉,有效地平衡了計算效率和渲染品質。
具體來說,模型使用K-Means聚類演算法在t=0時刻創建一組驅動粒子,其中每個驅動粒子由一組物理屬性表示,包括位置、速度、形變梯度、局部速度場梯度、楊氏模量、質量、泊鬆比和體積。
驅動粒子的初始位置是其所有聚類成員位置的平均值,其中驅動粒子的數量遠小於三維高斯粒子的數量。
在渲染過程中,透過插值驅動粒子的位置和旋轉來計算每個三維高斯粒子的位置和旋轉:對於每個三維高斯粒子,首先找到它在t=0時刻的八個最近鄰驅動粒子,然後擬合這些八個驅動粒子在t=0時刻和當前時間戳之間的剛體變換T,以決定粒子的當前位置和旋轉。
資料集
透過捕捉多視角圖像,研究人員收集了八個真實世界的靜態場景,其中每個場景包括一個物體和一個背景,物品包括五朵花(一朵紅玫瑰、一朵康乃馨、一朵橙玫瑰、一朵鬱金香和一朵白玫瑰)、一株海芋、一根電話線和一頂無簷帽;然後捕捉四個交互視頻來說明其在交互後的自然運動,例如戳或拖,再使用真實視頻作為額外的對比參考。
實驗結果
#關於空間變化的楊氏模數(一種衡量材料彈性的物理量)的定性分析結果
在用戶研究中,與基線方法和真實世界捕捉的視頻對比後可以看到,有超過80%的參與者在兩個選擇實驗(2AFC)中更傾向於PhysDreamer模型,認為在運動的真實性上更勝一籌;在視覺品質方面,也有65%的參與者更偏好PhysDreamer
#要注意的是,由於比較的靜態場景本身是一致的,因此視覺品質的評估也在一定程度上也依賴生成物體的運動效果。
從運動模式在不同時間點上的切片中可以觀察到,PhysGaussian由於缺少對材料屬性進行原理性估計,導致其生成的運動幅度過大且速度過慢,與現實不符。
而與DreamGaussian4D相比,有70%和63.5%的2AFC樣本在視覺品質和運動真實性上更傾向於PhysDreamer模型,從上圖可以看到,DreamGaussian4D產生的運動是週期性的,且幅度保持在一個較小的恆定值,相較之下,PhysDreamer能夠模擬出運動中的衰減效果。
以上是硬核解決Sora的物理bug!美國四所頂尖高校聯合發布:為視頻生成器裝個實體引擎的詳細內容。更多資訊請關注PHP中文網其他相關文章!