3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

來源:新智元

導讀:給一個文本提示就能生成3D模型

自從文本引導的圖像生成模型火了以後,畫家群體迅速擴張,不會用畫筆的人也能發揮想象力進行藝術創作。

但目前的模型,如DALL-E 2, Imagen等仍然停留在二維創作(即圖片),無法生成360度無死角的3D模型。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

想要直接訓練一個text-to-3D的模型非常困難,因為DALL-E 2等模型的訓練需要吞噬數十億個圖像-文本對,但三維合成並不存在如此大規模的標註數據,也沒有一個高效的模型架構對3D數據進行降噪。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

最近Google研究員另闢蹊徑,提出一個新模型DreamFusion,先使用一個預訓練2D擴散模型基於文本提示生成一張二維圖像,然後引入一個基於概率密度蒸餾的損失函數,通過梯度下降法優化一個隨機初始化的神經輻射場NeRF模型。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

論文鏈接:https://arxiv.org/abs/2209.14988

訓練后的模型可以在任意角度、任意光照條件、任意三維環境中基於給定的文本提示生成模型,整個過程既不需要3D訓練數據,也無需修改圖像擴散模型,完全依賴預訓練擴散模型作為先驗。

,時長00:36

從文本到3D模型

以文本為條件的生成性圖像模型現在支持高保真、多樣化和可控的圖像合成,高質量來源於大量對齊的圖像-文本數據集和可擴展的生成模型架構,如擴散模型。

雖然二維圖像生成的應用場景十分廣泛,但諸如遊戲、電影等數字媒體仍然需要成千上萬的詳細的三維資產來填充豐富的互動環境。

目前,3D資產的獲取方式主要由Blender和Maya3D等建模軟件手工設計,這個過程需要耗費大量的時間和專業知識。

2020年,神經輻射場(NeRF)模型發布,其中體積光線追蹤器與從空間坐標到顏色和體積密度的神經映射相結合,使得NeRF已經成為神經逆向渲染的一個重要工具。

最初,NeRF被發現可以很好地用於「經典」的三維重建任務:一個場景下的不同角度圖像提供給一個模型作為輸入,然後優化NeRF以恢復該特定場景的幾何形狀,能夠從未觀察到的角度合成該場景的新視圖。

很多三維生成方法都是基於NeRF模型,比如2022年提出的Dream Fields使用預訓練的CLIP模型和基於優化的方法來訓練NeRF,直接從文本中生成3D模型,但這種方式生成的三維物體往往缺乏真實性和準確性。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

DreamFusion採用了與Dream Field類似的方法,但模型中的損失函數基於概率密度蒸餾,最小化基於擴散的前向過程的共享的高斯分佈族與預訓練的擴散模型所學習的分數函數之間的KL散度。

擴散模型是一個隱變量生成模型,學習如何逐步將一個樣本從簡單的噪聲分佈轉換到數據分佈。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

擴散模型的包括一個前向過程(forward process),緩慢地從數據中添加噪聲並移除結構,兩個時間步之間的過渡通常服從高斯分佈,並在反向過程(reverse process)或生成式模型中在噪聲上逐漸添加結構。

現有的擴散模型採樣方法產生的樣本與模型訓練的觀測數據類型和維度相同,儘管有條件的擴散採樣能夠實現相當大的靈活性,但在像素上訓練的擴散模型傳統上只用來對像素進行採樣。

但像素採樣並不重要,研究人員只希望創建的三維模型在從隨機角度渲染時,看起來像是一張好的圖像。

可微分圖像參數化(DIP)允許模型表達約束條件,在更緊湊的空間中進行優化(例如任意分辨率的基於坐標的MLPs),或利用更強大的優化算法來遍歷像素空間。

對於三維來說,參數θ是三維體積的參數,可微生成器g是體積渲染器,為了學習這些參數,需要一個可以應用於擴散模型的損失函數。

文中採用的方法是利用擴散模型的結構,通過優化實現可操作的取樣,當損失函數最小化時生成一個樣本,然後對參數θ進行優化,使x=g(θ)看起來像凍結擴散模型的樣本。

為了進行這種優化,還需要一個可微的損失函數,其中可信的圖像具有較低的損失,而不可信的圖像有高的損失,與DeepDream的過程類似。

在實踐中,研究人員發現即使是在使用一個相同的DIP時,損失函數也無法生成現實的樣本。但同期的一項工作表明,這種方法可以通過精心選擇的時間步長來實現,但這個目標很脆弱,其時間步長的調整也很困難。

通過觀察和分解梯度可以發現,U-Net Jacobian項的計算成本很高(需要通過擴散模型U-Net進行反向傳播),而且對於小的噪聲水平來說條件很差,因為它的訓練目標為近似於邊際密度的縮放Hessian

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

通過實驗,研究人員發現省略U-Net的Jacobian項可以帶來一個有效的梯度結果,能夠用於優化帶有擴散模型的DIPs

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

直觀來看,這個損失用對應於時間步長的隨機數量的噪聲來擾動輸入數據,並估計出一個更新方向,該方向遵循擴散模型的得分函數,以移動到一個更高密度的區域。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

雖然這種用擴散模型學習DIP的梯度可能看起來很特別,但實驗結果表明更新方向確實是從擴散模型學到的得分函數中得到的加權概率密度蒸餾損失的梯度。

研究人員將該採樣方法命名為得分蒸餾採樣(Score Distillation Sampling, SDS),因為該過程與蒸餾有關,但使用的是得分函數而不是密度。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

下一步就是通過將SDS與為該3D生成任務定製的NeRF變體相結合,DreamFusion可以為一組不同的用戶提供的文本提示生成了高保真的連貫的3D物體和場景。

文章中採用的預訓練擴散模型為Imagen,並且只使用分辨率為64×64的基礎模型,並按原樣使用這個預訓練的模型,不做任何修改。

然後用隨機權重初始化一個類似於NeRF的模型,從隨機的相機位置和角度反覆渲染該NeRF的視圖,用這些渲染結果作為環繞Imagen的分數蒸餾損失函數的輸入。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

給出一個預訓練好的文本到圖像的擴散模型,一個以NeRF形式存在的可w微分的圖像參數化DIP,以及一個損失函數(最小值代表好樣本),這樣無三維數據的文本到三維合成所需的所有組件就齊活了。

對於每個文本提示,都從頭開始訓練一個隨機初始化的NeRF。

DreamFusion優化的每次迭代都包含四步:

1、隨機採樣一個相機和燈光

在每次迭代中,相機位置在球面坐標中被隨機採樣,仰角範圍從-10°到90°,方位角從0°到360°,與原點的距離為1到1.5

同時還在原點周圍取樣一個看(look-at)的點和一個向上(up)的矢量,並將這些與攝像機的位置結合起來,創建一個攝像機的姿勢矩陣。同時對焦距乘數服從U(0.7, 1.35)進行採樣,點光位置是從以相機位置為中心的分佈中採樣的。

使用廣泛的相機位置對合成連貫的三維場景至關重要,寬泛的相機距離也有助於提高學習場景的分辨率。

2、從該相機和燈光下渲染NeRF的圖像

考慮到相機的姿勢和光線的位置,以64×64的分辨率渲染陰影NeRF模型。在照明的彩色渲染、無紋理渲染和沒有任何陰影的反照率渲染之間隨機選擇。

3、計算SDS損失相對於NeRF參數的梯度

通常情況下,文本prompt描述的都是一個物體的典型視圖,在對不同的視圖進行採樣時,這些視圖並不是最優描述。根據隨機採樣的相機的位置,在提供的輸入文本中附加與視圖有關的文本是有益的。

對於大於60°的高仰角,在文本中添加俯視(overhead view),對於不大於60°的仰角,使用文本embedding的加權組合來添加前視圖、側視圖 或 后視圖,具體取決於方位角的值。

4、使用優化器更新NeRF參數

3D場景在一台有4個芯片的TPUv4機器上進行了優化,每個芯片渲染一個單獨的視圖並評估擴散U-Net,每個設備的batch size為1。優化了15,000次迭代,大約需要1.5小時。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

實驗部分評估了DreamFusion從各種文本提示中生成連貫的3D場景的能力。

與現有的zero-shot文本到3D生成模型進行比較后可以發現,DreamFusion模型中能夠實現精確3D幾何的關鍵組件。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

通過對比DreamFusion和幾個基線的R-精度,包括Dream Fields、CLIP-Mesh和一個評估MS-COCO中原始字幕圖像的oracle,可以發現DreamFusion在彩色圖像上的表現超過了這兩個基線,並接近於ground-truth圖像的性能。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

雖然Dream Fields的實現在用無紋理渲染評估幾何圖形(Geo)時表現得很好,但DreamFusion在58.5%的情況里與標準一致。

3D版DALL-E來了!谷歌發布文本3D生成模型DreamFusion,重點是zero-shot

參考資料:

https://dreamfusion3d.github.io/

本文鏈接:https://www.8btc.com/article/6781134

轉載請註明文章出處

(0)
上一篇 2022-10-09 10:36
下一篇 2022-10-09 11:24

相关推荐