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