360度無(wú)死角!UC伯克利華人發(fā)布3DHM框架:一張圖片即可模仿任意視頻動(dòng)作
輸入一張任意姿勢(shì)的照片,想讓照片里的人跟隨「指定視頻」來(lái)進(jìn)行動(dòng)作模仿并不簡(jiǎn)單,除了肢體動(dòng)作的模仿外,模型還需要對(duì)運(yùn)動(dòng)過(guò)程中衣服、人物外觀的變化進(jìn)行建模。
圖片
如果輸入圖像是正面的,而模仿的視頻動(dòng)作包括轉(zhuǎn)身的話,模型還需要「想象」出衣服的背面樣子,以及衣服在轉(zhuǎn)動(dòng)過(guò)程中飄起的樣子。
為了解決這個(gè)問(wèn)題,來(lái)自加州大學(xué)伯克利分校的研究人員提出了一個(gè)兩階段的、基于擴(kuò)散模型的框架3DHM,通過(guò)從單個(gè)圖像完成紋理圖來(lái)合成3D人體運(yùn)動(dòng),然后渲染3D人體以模仿視頻中actor的動(dòng)作。
圖片
論文地址:https://arxiv.org/abs/2401.10889
3DHM模型中包含兩個(gè)核心組件:
1. 學(xué)習(xí)人體和服裝中不可見(jiàn)部分的先驗(yàn)知識(shí)。
研究人員使用填充擴(kuò)散(in-filling diffusion)模型,在給定的單張圖像中想象(hallucinate)出不可見(jiàn)部分,然后在紋理圖空間(texture map space)上訓(xùn)練該模型,在姿勢(shì)和視點(diǎn)不變的條件下提升采樣效率。
2. 使用適當(dāng)?shù)姆b和紋理渲染出不同的身體姿勢(shì)。
研究人員開(kāi)發(fā)了一個(gè)基于擴(kuò)散模型的渲染pipeline,由3D人體姿勢(shì)控制,從而可以生成目標(biāo)人物在不同姿勢(shì)下的逼真渲染,包括衣服、頭發(fā)和看不見(jiàn)區(qū)域下的合理填充。
該方法可以生成一系列忠實(shí)于目標(biāo)運(yùn)動(dòng)的3D姿態(tài)、在視覺(jué)上與輸入更相似的圖像;3D控件還能夠使用各種合成相機(jī)軌跡來(lái)渲染人物。
實(shí)驗(yàn)結(jié)果表明,相比以前的方法,該方法在生成長(zhǎng)時(shí)間運(yùn)動(dòng)和各種高難度的姿勢(shì)上更有彈性(resilient)。
合成運(yùn)動(dòng)中的人物
圖片
紋理貼圖涂色(Texture map Inpainting)
第一階段模型的目標(biāo)是通過(guò)涂色模仿者的不可見(jiàn)區(qū)域,生成可信的完整紋理貼圖。
研究人員首先將三維網(wǎng)格渲染到輸入圖像上,然后按照4DHumans的方法對(duì)每個(gè)可見(jiàn)三角形進(jìn)行顏色采樣,從而提取部分可見(jiàn)的紋理圖。
輸入(input)
先利用一種常用的方法來(lái)推斷像素到表面的對(duì)應(yīng)關(guān)系,從而建立一個(gè)不完整的UV紋理圖,用于從單張RGB圖像中提取三維網(wǎng)格紋理。同時(shí)計(jì)算可見(jiàn)性掩碼,以顯示哪些像素在3D中可見(jiàn),哪些不可見(jiàn)。
目標(biāo)(target)
由于建模的目的是生成完整的紋理貼圖,因此使用視頻數(shù)據(jù)生成偽完整紋理貼圖。
由于4DHumans可以隨著時(shí)間的推移追蹤人物,因此會(huì)不斷更新其內(nèi)部紋理圖,將其表示為可見(jiàn)區(qū)域的移動(dòng)平均值。
但為了生成更清晰的圖像,研究人員發(fā)現(xiàn)中值濾波比移動(dòng)平均法更適合生成任務(wù);雖然該技術(shù)可以應(yīng)用于任何視頻中,但在本階段使用的是2,205個(gè)人類(lèi)視頻,對(duì)于每段人類(lèi)視頻,首先從每幀視頻中提取部分紋理圖。
由于每段視頻都包含360度的人類(lèi)視角,因此從整段視頻中計(jì)算出一個(gè)偽完整紋理圖,并將其設(shè)置為第1階段的目標(biāo)輸出,具體來(lái)說(shuō)是提取視頻紋理圖可見(jiàn)部分的整體中值。
模型(Model)
研究人員直接在Stable Diffusion Inpainting模型上進(jìn)行微調(diào),該模型在圖像補(bǔ)全任務(wù)中表現(xiàn)出色。
圖片
輸入部分紋理貼圖和相應(yīng)的可見(jiàn)度掩碼,然后得到復(fù)原的人類(lèi)預(yù)測(cè)貼圖;鎖定文本編碼器分支,并始終將「真人」(real human)作為固定穩(wěn)定擴(kuò)散模型的輸入文本。訓(xùn)練好的模型稱(chēng)為 Inpainting Diffusion
人體渲染(Human Rendering)
第二階段的目標(biāo)是獲得一個(gè)模仿actor動(dòng)作的人的逼真渲染效果。
雖然中間渲染(根據(jù)演員的姿勢(shì)和階段1中的紋理貼圖渲染)可以反映人體的各種動(dòng)作,但這些SMPL網(wǎng)格渲染是緊貼人體的,無(wú)法表現(xiàn)出服裝、發(fā)型和體形的逼真渲染效果。
例如,如果輸入一個(gè)女孩穿著裙子跳舞的場(chǎng)景,中間的渲染可能是「跳舞」,但SMPL網(wǎng)格渲染卻無(wú)法將裙子做成動(dòng)畫(huà)。
為了以完全自監(jiān)督的方式訓(xùn)練模型,研究人員假定actor就是模仿者,畢竟一個(gè)好的actor應(yīng)該是一個(gè)好的模仿者;然后就可以從4DHumans中獲取任意視頻和姿勢(shì)序列,再獲取任意單幀,并從階段1中獲取完整的紋理貼圖,通過(guò)在三維姿勢(shì)上渲染紋理貼圖來(lái)獲取中間渲染圖。
有了中間渲染圖和真實(shí)RGB圖像的配對(duì)數(shù)據(jù)后,就可以收集大量的配對(duì)數(shù)據(jù)作為條件來(lái)訓(xùn)練第二階段擴(kuò)散模型。
輸入(Input)
首先將第1階段生成的紋理貼圖(完全完整)應(yīng)用到actor的三維身體網(wǎng)格序列中,并對(duì)模仿者執(zhí)行演員動(dòng)作的過(guò)程進(jìn)行中間渲染。
需要注意的是,此時(shí)的中間渲染只能反映與三維網(wǎng)格相匹配的服裝(貼身衣物),而無(wú)法反映SMPL身體以外的紋理,如裙子、冬季夾克或帽子的膨脹區(qū)域。
為了獲得具有完整服裝紋理的人體,研究人員將獲得的中間渲染圖和人體原始圖像輸入到渲染擴(kuò)散中,以渲染出具有逼真外觀的人體新姿勢(shì)。
目標(biāo)(Target)
由于在收集數(shù)據(jù)時(shí)假定actor是模仿者,所以基于中間渲染圖和真實(shí)RGB圖像的配對(duì)數(shù)據(jù),可以在大量數(shù)據(jù)上訓(xùn)練該模型,而不需要任何直接的3D監(jiān)督信號(hào)。
模型(Model)
與ControlNet類(lèi)似,研究人員直接克隆穩(wěn)定擴(kuò)散模型編碼器的權(quán)重作為可控分支(可訓(xùn)練副本)來(lái)處理3D條件。
凍結(jié)預(yù)先訓(xùn)練好的穩(wěn)定擴(kuò)散模型,并輸入噪聲潛點(diǎn)(64×64),同時(shí)將時(shí)間t的紋理映射三維人體和原始人體照片輸入到固定的VAE編碼器中,得到紋理映射三維人體潛碼(64 × 64)和外觀潛碼(64 × 64)作為條件潛碼(conditioning latents)。
然后將這兩個(gè)條件潛碼輸入渲染擴(kuò)散可控分支,該分支的主要設(shè)計(jì)原則是從人類(lèi)輸入中學(xué)習(xí)紋理,并在訓(xùn)練過(guò)程中通過(guò)去噪處理將其應(yīng)用于紋理映射的三維人類(lèi)。
目標(biāo)是從第1階段生成(紋理映射)的三維人體中渲染出具有生動(dòng)紋理的真人。
圖片
通過(guò)擴(kuò)散步驟程序和固定VAE解碼器獲得輸出潛像,并將其處理為像素空間。
與第1階段相同,鎖定了文本編碼器分支,并始終將「真人正在表演」(a real human is acting)作為固定穩(wěn)定擴(kuò)散模型的輸入文本。
將訓(xùn)練好的模型稱(chēng)為渲染擴(kuò)散(Rendering Diffusion)模型,逐幀預(yù)測(cè)輸出。
實(shí)驗(yàn)結(jié)果
對(duì)比基線
用于對(duì)比的sota模型包括DreamPose、DisCo和ControlNet(姿勢(shì)準(zhǔn)確性比較)。
公平起見(jiàn),所有方法的推理步驟都設(shè)為50步。
幀生成質(zhì)量(Frame-wise Generation Quality)
研究人員在2K2K測(cè)試數(shù)據(jù)集上對(duì)比了3DHM和其他方法,該數(shù)據(jù)集由50個(gè)未見(jiàn)過(guò)的人體視頻組成,分辨率為256×256。
每個(gè)人物視頻拍攝30幀,代表每個(gè)未見(jiàn)者的不同視角,角度范圍涵蓋0度到360度,每12度取一幀,可以更好地評(píng)估每個(gè)模型的預(yù)測(cè)和泛化能力。
圖片
從結(jié)果中可以看到,3DHM在不同指標(biāo)上都優(yōu)于其他基線方法。
視頻級(jí)生成質(zhì)量(Video-level Generation Quality)
為了驗(yàn)證3DHM的時(shí)間一致性,研究人員還報(bào)告了與圖像級(jí)評(píng)估相同的測(cè)試集和基線實(shí)施的結(jié)果。
與圖像級(jí)對(duì)比不同的是,將每連續(xù)的16個(gè)幀串聯(lián)起來(lái),形成每個(gè)未見(jiàn)過(guò)的人在具有挑戰(zhàn)性的視角上的樣本。
角度范圍從150度到195度,每3度取一幀,可以更好地評(píng)估每個(gè)模型的預(yù)測(cè)和泛化能力。
根據(jù)50個(gè)視頻的總體平均得分結(jié)果中可以看到,盡管3DHM是按每幀進(jìn)行訓(xùn)練和測(cè)試的,但與之前的方法相比仍具有顯著優(yōu)勢(shì),也表明3DHM在保持三維控制的時(shí)間一致性方面表現(xiàn)出色。
姿勢(shì)準(zhǔn)確率(Pose Accuracy)
為了進(jìn)一步評(píng)估模型的有效性,研究人員首先通過(guò)先進(jìn)的三維姿勢(shì)估計(jì)模型 4DHumans從不同方法生成的人類(lèi)視頻中估計(jì)三維姿勢(shì),然后使用相同的數(shù)據(jù)集設(shè)置,并將提取的姿勢(shì)與目標(biāo)視頻中的三維姿勢(shì)進(jìn)行比較。
由于ControlNet不輸入圖像,所以研究人員選擇輸入了相同的提示「真人正在活動(dòng)」(a real human is acting)和相應(yīng)的openpose作為條件。
圖片
從結(jié)果中可以看到,3DHM能夠按照所提供的三維姿勢(shì)非常準(zhǔn)確地合成出活動(dòng)的人;同時(shí),以前的方法可能無(wú)法通過(guò)直接預(yù)測(cè)姿勢(shì)到像素的映射達(dá)到同樣的性能。
還可以注意到,即使DisCO和ControlNet由Openpose控制,DreamPose由DensePose控制,3DHM也能在2D指標(biāo)和3D指標(biāo)上取得優(yōu)異的結(jié)果。
參考資料: