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