DreamTech聯合南大和牛津發布最強3D內容生成大模型——Direct3D
文章鏈接:https://arxiv.org/pdf/2405.14832
github鏈接:https://nju-3dv.github.io/projects/Direct3D/
從文本和圖像生成高質量的3D資產一直是一項挑戰,主要是由于缺乏能夠捕捉復雜幾何分布的可擴展3D表示。在這項工作中,介紹了Direct3D,這是一種可擴展到in-the-wild輸入圖像的原生3D生成模型,不需要多視角擴散模型或SDS優化。
方法包括兩個主要組件:Direct 3D Variational Auto-Encoder(D3D-VAE)和 Direct 3D Diffusion Transformer (D3D-DiT)。D3D-VAE高效地將高分辨率3D形狀編碼到緊湊且連續的三平面潛在空間中。
值得注意的是,該方法直接使用半連續表面采樣策略對解碼的幾何形狀進行監督,區別于依賴渲染圖像作為監督信號的先前方法。D3D-DiT對編碼的3D潛在分布建模,專門設計用于融合來自三平面潛在空間的三個特征圖的位置信息,從而實現一個可擴展到大規模3D數據集的原生3D生成模型。
此外,還引入了一種創新的圖像到3D生成pipeline,結合了語義和像素級圖像條件,使模型能夠生成與提供的條件圖像輸入一致的3D形狀。大量實驗表明,大規模預訓練的Direct3D相比以往的圖像到3D方法具有顯著的優勢,顯著提升了生成質量和泛化能力,從而確立了3D內容創建的新標桿。
介紹
近年來,通過利用擴散模型,3D形狀生成取得了實質性進展。受文本到2D圖像生成中高效性的啟發,這些方法試圖通過在多樣化的3D數據集上進行廣泛訓練,將擴散模型的能力擴展到3D形狀生成領域。各種方法探索了不同的3D表示形式,包括點云、體素和符號距離函數(SDFs),不僅旨在真實捕捉物體的外觀,還要保留復雜的幾何細節。然而,現有的大規模3D數據集,如ObjverseXL,在形狀的數量和多樣性上都受到了限制,相比之下,其2D對標數據集如Laion5B包含了50億張圖像,而ObjverseXL僅包含1000萬個3D形狀。
為了解決這一限制,許多現有方法采用了一個流程:首先使用多視圖擴散模型從單張圖像生成物體的多視圖圖像,然后應用稀疏視圖重建方法或評分蒸餾采樣(SDS)優化將這些多視圖圖像融合為3D形狀。雖然這個流程可以產生高質量的3D形狀,但通過多視圖圖像間接生成的方法引發了效率問題。此外,生成形狀的質量嚴重依賴于多視圖圖像的保真度,往往導致細節丟失或重建失敗。
本文摒棄了間接生成多視圖圖像的傳統方法,轉而倡導通過原生3D擴散模型直接從單視圖圖像生成3D形狀。受到潛在擴散模型在2D圖像生成中成功經驗的啟發,我們提出使用3D變分自編碼器(VAE)將3D形狀編碼到潛在空間,然后使用diffusion transformer model(DiT)從該潛在空間生成3D形狀,并以圖像輸入作為條件。然而,高效地將3D形狀編碼到適合擴散模型訓練的潛在空間中,以及將潛在表示解碼回3D幾何形狀,都是具有挑戰性的任務。先前的方法通過可微渲染使用多視圖圖像作為間接監督,但仍然面臨準確性和效率問題。
為了解決這些挑戰,研究者們采用transformer模型將高分辨率點云編碼為顯式三平面潛在空間,這在3D重建方法中被廣泛使用,因為其效率高。雖然三平面潛在空間的分辨率故意設置較低,但引入卷積神經網絡來上采樣潛在分辨率并將其解碼為高分辨率的3D占用網格。此外,為了確保對3D占用網格的精確監督,我們采用半連續表面采樣策略,能夠在連續和離散方式下對表面點進行采樣和監督。這種方法有助于在緊湊且連續的顯式潛在空間中編碼和重建3D形狀。
在圖像到3D生成方面,研究者們進一步利用圖像作為3D擴散Transformer的條件輸入,將3D潛在空間安排為3D形狀的三個正交視圖的組合。特別地,將像素級圖像信息集成到每個DiT塊中,以確保生成的3D模型與條件圖像之間的高頻細節對齊。在每個DiT塊中引入了交叉注意力層,以融合語義級圖像信息,從而促進生成與條件圖像語義一致的高質量3D形狀。
通過廣泛的實驗,展示了所提出的Direct3D方法的高質量3D生成和強大的泛化能力。下圖1展示了我們的方法在野外圖像生成的3D結果,這些圖像來自Hunyuan-DiT??偨Y起來,
主要貢獻:
- 提出了Direct3D,是第一個原生3D生成模型,能夠擴展到in-the-wild 輸入圖像。這使得高保真度的圖像到3D生成成為可能,而不需要多視圖擴散模型或SDS優化。
- 提出了D3D-VAE,一種新穎的3D變分自編碼器,有效地將3D點云編碼為三平面潛在空間。我們不使用渲染圖像作為監督信號,而是通過半連續表面采樣策略直接監督解碼幾何形狀,以保留潛在三平面中的詳細3D信息。
- 提出了D3D-DiT,一種可擴展的圖像條件3D Diffusion Transformer,能夠生成與輸入圖像一致的3D形狀。D3D-DiT特別設計為更好地融合來自潛在三平面的位置信息,并有效整合輸入圖像的像素級和語義級信息。
- 通過廣泛的實驗表明,大規模預訓練Direct3D模型在生成質量和泛化能力方面超越了以往的圖像到3D方法,為3D內容創建任務設立了新的標桿。
相關工作
3D生成的神經3D表示
神經3D表示對于3D生成任務至關重要。神經輻射場(NeRF)的引入顯著推動了3D生成的發展。在此基礎上,DreamFusion引入了評分蒸餾采樣(SDS)方法,使用現成的2D擴散模型從任意文本提示生成3D形狀。許多后續方法探索了各種表示形式,以提升3D生成的速度和質量。例如,Magic3D通過引入第二階段使用DMtet表示來改善生成質量,該表示將符號距離函數(SDF)與四面體網格結合以表示3D形狀。
除了基于SDS的方法,一些方法使用直接訓練的網絡生成不同的表示形式。例如,LRM使用三平面NeRF表示作為網絡輸出,顯著加快了生成過程,盡管有一定的質量損失。另一種方法,One-2-3-45++,提出使用3D占用網格作為輸出表示,以提升幾何質量。
多視圖擴散
在使用擴散模型進行新視圖預測方法取得成功之后,如Zero123——該方法從單張圖像和文本指導生成物體的不同未知視圖——MVDream將新視圖擴散擴展為一次生成物體的多個視圖,從而提高了視圖間的一致性。Imagedream通過引入新的圖像條件模塊進一步提升了生成質量。一些方法采用這種方法,先生成物體的多視圖圖像,然后使用稀疏重建從這些視圖重建3D形狀。Instant3D提出了一種重建模型,該模型以四個多視圖圖像作為輸入,重建3D形狀的NeRF表示。許多后續方法通過增強多視圖或重建模型進行了改進。
直接3D擴散
盡管直接訓練3D擴散模型面臨諸多挑戰——如缺乏可擴散的3D表示——各種策略已被探索。一類工作是擬合多個NeRF以獲得3D數據集的神經表示,然后應用擴散模型從這種學習到的表示中生成NeRF。然而,NeRF的單獨訓練可能會阻礙擴散模型對更多樣化的3D形狀的泛化能力。3DGenNeural提出聯合訓練三平面擬合3D形狀,并以占用為直接監督來訓練三平面重建模型。
另一類工作利用VAE將3D形狀編碼到潛在空間,并在該潛在空間上訓練擴散模型以生成3D形狀。例如,Shap-E使用純TransformerVAE將3D形狀的點云和圖像編碼到隱式潛在空間,然后恢復為NeRF和SDF場。3DGen僅將3D形狀的點云編碼到顯式三平面潛在空間,從而提高了生成效率。類似于之前擬合多個NeRF的工作,3DTopia擬合多個三平面NeRF并將其編碼到潛在空間,為擴散模型生成3D形狀進行訓練。Michelangelo使用3D占用作為VAE的輸出表示,但使用多個1D向量作為隱式潛在空間,而不是三平面。
然而,這些方法通常依賴渲染損失來監督VAE重建,導致次優的重建和生成質量。此外,使用未設計為高效編碼的隱式潛在表示,并缺乏用于擴散的緊湊顯式3D表示,進一步限制了它們的性能。我們的D3D-VAE結合了顯式3D潛在表示和直接3D監督的優勢,實現了高質量的VAE重建,確保了穩健的3D形狀生成。此外,我們的擴散架構設計專門解決了條件3D潛在生成問題。我們的D3D-DiT促進了像素級和語義級的3D特定圖像條件,使擴散過程能夠生成與條件圖像一致的高細節3D形狀。
方法
受LDM的啟發,在3D潛在空間內訓練了一種潛在擴散模型用于3D生成。與通常依賴于1D隱式潛在空間的生成模型不同,本文的方法解決了兩個關鍵限制:
- 1)隱式潛在表示難以捕捉3D空間中固有的結構化信息,導致解碼出的3D形狀質量欠佳;
- 2)隱式潛在空間缺乏結構和約束,訓練和采樣潛在分布具有挑戰性。
為了緩解這些問題,采用了顯式三平面潛在表示,利用三張特征圖來表示3D幾何潛在空間。這種設計的靈感來自LDM,它使用特征圖來表示2D圖像潛在空間。下圖2展示了本文提出的方法的整體框架,包括兩個步驟的訓練過程:
- 1)首先訓練D3D-VAE將3D形狀轉換為3D潛在表示;
- 2)然后訓練圖像條件的D3D-DiT生成高質量的3D資產。
Direct 3D Variational Auto-Encoder
提出的D3D-VAE包含三個組件:點到潛在編碼器、潛在到三平面解碼器和幾何映射網絡。同時,設計了一種半連續表面采樣策略,利用連續和離散監督確保解碼的3D形狀的高頻幾何細節。
其中 sdf(x) 表示 x 的有符號距離函數(Signed Distance Function,SDF)值。
基于圖像條件的直接3D Diffusion Transformer
在訓練完D3D-VAE之后,可以獲得一個連續且緊湊的潛在空間,基于這個空間訓練潛在擴散模型。由于3D數據相對于擁有數十億圖像的2D數據集來說非常稀缺,訓練一個具有強大泛化能力的文本條件的3D擴散模型具有挑戰性。此外,文本到圖像的生成模型已經取得了顯著的成熟度,因此選擇訓練一個圖像條件的3D擴散模型,以獲得更好的泛化能力和更高的質量。
由于獲得的潛在embedding是一個顯式的三平面表示,一個簡單的方法是直接使用一個精心設計的2D U-Net作為擴散模型。然而,這樣做會導致三個平面之間缺乏交流,從而無法捕捉生成3D所需的結構化和固有屬性。因此,基于 Diffusion Transformer(DiT)的架構構建了生成模型,利用變換器更好地提取平面之間的空間位置信息。同時,我們建議在每個DiT塊中合并圖像的像素級和語義級信息,從而將圖像特征空間和潛在空間對齊,以生成與條件圖像內容一致的3D資產。我們的潛在擴散模型框架如前面圖2(b)所示,每個DiT塊的架構如下圖3所示。
實驗
實現細節
圖像和文本到3D生成
圖像到3D。在GSO數據集上對Direct3D與其他基線方法進行了圖像到3D任務的定性比較,如下圖4所示。
Shap-E是一個在數百萬個3D資產上訓練的3D擴散模型,能夠生成合理的幾何形狀,但在網格中存在偽影和孔洞。Michelangelo在一個1D隱式潛在空間上執行擴散過程,無法將生成的網格與條件圖像的語義內容對齊?;诙嘁暯堑姆椒?,如One-2-3-45和InstantMesh,嚴重依賴于多視角2D擴散模型的性能。One-2-3-45直接使用SparseNeuS進行重建,導致幾何形狀粗糙。InstantMesh生成的網格質量不錯,但在某些細節上與輸入圖像的一致性缺失,比如水槽上的水龍頭和校車的窗戶。它還產生了一些失敗案例,比如將馬的后腿合并在一起,這是由于多視角擴散模型的限制。相比之下,Direct3D在大多數情況下都能產生與條件圖像一致的高質量網格。
文本到3D。Direct3D可以通過結合像Hunyuan-DiT這樣的文本到圖像模型,從文本提示生成3D資產。下圖5展示了Direct3D與其他基線方法在文本到3D任務上的定性比較。
為了確保公平比較,所有方法都使用相同的生成圖像作為輸入。可以看出,這些基線方法在幾乎所有情況下都失敗了,而Direct3D仍然能夠生成高質量的網格,展示了本文方法的廣泛適用性。研究者們還進行了用戶研究,以定量比較D3D-DiT與其他方法。渲染了每種方法生成的網格旋轉360度的視頻,并請46名志愿者根據網格的質量和與輸入圖像的一致性進行評分。下表1的結果表明,D3D-DiT在網格質量和一致性方面優于其他基線方法。
生成紋理網格。得益于Direct3D生成的平滑和細致的幾何形狀,可以利用現有的紋理合成方法輕松裝飾網格。如下圖6所示,使用SyncMVD獲得了精美的紋理網格。
結論
本文介紹了一種新穎的方法,可以直接從單個圖像生成3D形狀,無需多視角重建。利用混合架構,提出的D3D-VAE能夠高效地將3D形狀編碼為緊湊的潛在空間,增強了生成形狀的保真度。本文的圖像條件3D Diffusion Transformer(D3D-DiT)通過在像素級和語義級別集成圖像信息,進一步提高了生成質量,確保了生成的3D形狀與條件圖像的高一致性。在圖像到3D和文本到3D任務上進行的大量實驗表明,Direct3D在3D生成方面表現優異,優于現有方法的質量和泛化能力。
局限性。盡管Direct3D能夠生成高保真度的3D資產,但目前僅限于生成單個或多個對象,無法生成大規模場景。
本文轉自 AI生成未來 ,作者:Shuang Wu等
