只需400ms!英偉達(dá)提出LATTE3D:大規(guī)模高質(zhì)量的Amortized文本到增強(qiáng)3D 合成
文章鏈接:https://arxiv.org/pdf/2403.15385
工程地址:https://research.nvidia.com/labs/toronto-ai/LATTE3D/
最近的文本到3D生成方法產(chǎn)生了令人印象深刻的3D結(jié)果,但需要對耗時進(jìn)行優(yōu)化,每個提示可能需要長達(dá)一小時。像ATT3D的Amortized方法同時優(yōu)化多個提示以提高效率,實(shí)現(xiàn)了快速文本到3D合成。然而,它們無法捕獲高頻幾何和紋理細(xì)節(jié),并且難以擴(kuò)展到大型提示集,因此泛化能力較差。
本文介紹了Latte3D,解決了這些限制,實(shí)現(xiàn)了在顯著更大的提示集上快速生成高質(zhì)量的結(jié)果。方法的關(guān)鍵在于:
- 構(gòu)建了一個可擴(kuò)展的架構(gòu)
- 通過3D感知擴(kuò)散先驗、形狀正則化和模型初始化,在優(yōu)化過程中利用3D數(shù)據(jù),實(shí)現(xiàn)對各種復(fù)雜訓(xùn)練提示的魯棒性
Latte3D Amortizes了神經(jīng)場和紋理表面生成,可以在單次前向傳遞中生成高度詳細(xì)的紋理網(wǎng)格。Latte3D在400ms內(nèi)生成3D對象,并可以通過快速測試時優(yōu)化進(jìn)一步增強(qiáng)。
介紹
通過預(yù)訓(xùn)練圖像擴(kuò)散模型進(jìn)行文本到3D合成的最新進(jìn)展,標(biāo)志著使用自然語言大眾化3D內(nèi)容創(chuàng)作方面取得了重大進(jìn)步。然而,這些方法通常涉及昂貴且耗時的優(yōu)化,從文本提示生成單個3D對象可能需要長達(dá)一小時的時間。為了加速這些工具,需要一些技術(shù)來實(shí)時生成各種高質(zhì)量的3D對象,從而實(shí)現(xiàn)對輸出的快速迭代,提升用戶在3D內(nèi)容創(chuàng)作中的創(chuàng)造力。本文的目標(biāo)是實(shí)現(xiàn)針對多樣化文本提示的實(shí)時文本到3D合成,并在需要進(jìn)一步提升質(zhì)量時支持快速的測試時間優(yōu)化。
開創(chuàng)性工作[39]提出了使用分?jǐn)?shù)蒸餾采樣(SDS)損失來優(yōu)化神經(jīng)場以生成3D資源。這解鎖了開放詞匯的3D內(nèi)容創(chuàng)建,但存在以下問題:(a)缺乏高頻幾何和紋理細(xì)節(jié),(b)成本高,(c)容易生成不符合預(yù)期的對象。后續(xù)研究引入了基于表面的微調(diào)階段來生成高頻細(xì)節(jié)。盡管這種兩階段流程定義了大多數(shù)當(dāng)前最先進(jìn)的文本到3D方法,但它仍然成本高且容易出現(xiàn)提示失敗。
ATT3D是第一個通過同時訓(xùn)練單個模型處理一組提示的過程(稱為Amortized優(yōu)化)來加速文本到3D生成的方法。Amortized通過優(yōu)化一組提示上的共享文本條件模型來減少訓(xùn)練時間,使模型能夠在推理時推廣到新的提示。盡管在精心策劃的提示上取得了有希望的結(jié)果,但ATT3D和基礎(chǔ)的逐提示方法仍然容易在一般提示上失敗。ATT3D的簡單架構(gòu)容量有限,缺乏強(qiáng)大的歸納偏差用于3D生成,難以隨著數(shù)據(jù)集大小和渲染分辨率的增加而擴(kuò)展,從而限制了該方法僅適用于小規(guī)模(100至1000個)提示集和低保真度的紋理。此外,ATT3D只Amortize 3D合成的第一階段,生成神經(jīng)場表示,因此無法生成高頻細(xì)節(jié)。
為了解決這些問題,本文引入了Latte3D,一種大規(guī)模Amortized文本到增強(qiáng)3D合成的方法,可以實(shí)時生成高質(zhì)量的3D內(nèi)容。通過以下技術(shù)貢獻(xiàn)來提升文本到3D生成模型的質(zhì)量、魯棒性、規(guī)模和速度:
- 提出了一種新穎的文本到3DAmortized架構(gòu),可以擴(kuò)展到數(shù)量級更大的提示集。
- 利用3D數(shù)據(jù)進(jìn)行訓(xùn)練,通過3D感知擴(kuò)散先驗、正則化損失和通過使用3D重建進(jìn)行預(yù)訓(xùn)練的權(quán)重初始化來提高質(zhì)量和魯棒性。
- Amortized了基于表面的細(xì)化階段,極大地提升了質(zhì)量。
相關(guān)工作
早期的3D對象合成工作通常局限于從給定類別中生成對象,例如汽車或椅子。最近的擴(kuò)展使用帶標(biāo)題的3D形狀來訓(xùn)練文本到3D模型,生成來自不同類別的形狀,但需要3D監(jiān)督,限制了它們在合成過程中使用合成數(shù)據(jù)集的大小、多樣性和視覺保真度。
可微分渲染的出現(xiàn),無論是體積還是基于表面,打開了逆向圖像渲染的大門,解鎖了在3D合成過程中使用強(qiáng)大的文本到圖像生成模型。DreamFusion提出了使用SDS損失來優(yōu)化神經(jīng)場,使用文本到圖像擴(kuò)散模型來生成3D資源。后續(xù)工作引入了基于表面的細(xì)化階段,允許合成高頻細(xì)節(jié)。這種兩階段優(yōu)化流程現(xiàn)在定義了大多數(shù)最先進(jìn)的文本到3D方法。
最近發(fā)布的大規(guī)模3D數(shù)據(jù)集Objaverse-XL促使研究人員探索在合成過程中使用3D監(jiān)督的好處。到目前為止,最成功的方法使文本條件圖像擴(kuò)散模型具有3D感知能力,通過使用渲染的多視圖圖像來微調(diào)2D擴(kuò)散模型。然后使用多視圖擴(kuò)散模型的SDS來獲取3D形狀。然而,這些方法需要冗長的逐提示優(yōu)化過程,限制了其在實(shí)際內(nèi)容創(chuàng)建中的適用性。
為了解決這個問題,人們進(jìn)行了兩種類型的工作。第一種方法使用文本到圖像到3D的方法,通過使用文本到圖像擴(kuò)散模型生成圖像,并訓(xùn)練圖像到3D提升網(wǎng)絡(luò)。它們在速度上有所提高,但與優(yōu)化方法相比,質(zhì)量細(xì)節(jié)有限,但仍需要每個提示5-20秒的時間來從圖像擴(kuò)散模型中進(jìn)行采樣。
在另一種工作路線中,ATT3D提出了一種Amortized框架,可以同時優(yōu)化多個提示的統(tǒng)一模型。后續(xù)工作擴(kuò)展了網(wǎng)絡(luò)架構(gòu)以獲得更好的質(zhì)量。Latte3D擴(kuò)展了這一工作路線,通過在訓(xùn)練過程中引入3D知識來實(shí)現(xiàn)提示的魯棒性,以及其他設(shè)計改進(jìn),如更好的架構(gòu)。Amortized式文本到3D提供了一種具有吸引力的質(zhì)量與速度之間的權(quán)衡,因為它使用單個前向傳遞架構(gòu),而不需要對擴(kuò)散模型進(jìn)行采樣-見下圖2。
并行工作 同時,AToM還Amortized了兩階段訓(xùn)練,采用三面圖表示,但他們使用DeepFloyd,并且不會擴(kuò)展到ATT3D中數(shù)千個提示的較小集。相比之下,我們將規(guī)模擴(kuò)展到約100,000個提示,使用了諸如MVDream之類的3D感知技術(shù)。ET3D的另一個并行工作通過訓(xùn)練GAN模型實(shí)現(xiàn)了快速生成,但它僅在一個規(guī)模較小的構(gòu)成性數(shù)據(jù)集上進(jìn)行了訓(xùn)練,該數(shù)據(jù)集包含5000個提示,并且僅顯示了類似ATT3D和AToM的構(gòu)成性泛化結(jié)果。此外,它不保證視圖一致的3D輸出,因為它使用了2D神經(jīng)上采樣器。最后,LGM同時在文本到圖像到3D方向上工作,可以在5秒內(nèi)生成Gaussian splats,代表了最新的最先進(jìn)技術(shù)。在實(shí)驗中將我們的方法與該方法進(jìn)行了比較,并展示了競爭性能。
方法論
一個已建立的高質(zhì)量文本到3D生成的流程包括兩個階段,每個階段都使用SDS損失和文本到圖像擴(kuò)散模型進(jìn)行逐提示優(yōu)化。第一階段優(yōu)化體積表示,通常是神經(jīng)輻射場。通常使用粗分辨率來加快渲染速度。網(wǎng)格可以實(shí)現(xiàn)實(shí)時渲染,但僅通過圖像監(jiān)督很難從頭開始進(jìn)行優(yōu)化。第二階段使用神經(jīng)場的輸出來初始化有符號距離場(SDF)和紋理場,從中可以使用可微分等值面提取得到網(wǎng)格。然后,通過可微分光柵化對這種基于表面的表示進(jìn)行優(yōu)化,即使在1024渲染圖像分辨率下也很快,從而能夠從更高分辨率的文本到圖像擴(kuò)散模型獲得監(jiān)督。
ATT3D將神經(jīng)場的優(yōu)化Amortize到一組提示上,其中一個超網(wǎng)絡(luò)將文本提示映射到神經(jīng)場,該超網(wǎng)絡(luò)在一個被稱為已見提示的提示集上使用SDS損失進(jìn)行訓(xùn)練。Latte3D引入了一種新的架構(gòu),Amortized了生成過程的兩個階段,旨在實(shí)時生成高質(zhì)量的紋理網(wǎng)格。我們通過在Amortize循環(huán)中利用3D知識,將該方法擴(kuò)展到數(shù)量級更大、更多樣化的提示集。
本文的方法如下圖4所示。通過一個重建預(yù)訓(xùn)練步驟初始化Latte3D以穩(wěn)定訓(xùn)練。該架構(gòu)由兩個網(wǎng)絡(luò)組成,一個用于幾何,另一個用于紋理。通過一個兩階段pipeline進(jìn)行具有擴(kuò)散先驗的Amortized模型訓(xùn)練,包括基于體積的第一階段和基于表面的第二階段。為了協(xié)調(diào)重建預(yù)訓(xùn)練(使用3D幾何作為輸入)與文本到3D生成的任務(wù),我們在第一階段調(diào)整網(wǎng)絡(luò)的輸入,逐漸完全替換對3D輸入的依賴,使用單個虛擬輸入。在推理過程中,我們的模型僅通過文本提示在400ms內(nèi)生成一個3D紋理網(wǎng)格,并允許選擇性的輕量級測試時間細(xì)化以增強(qiáng)幾何和紋理的質(zhì)量)。
預(yù)訓(xùn)練以重建形狀。
盡管SDS損失可以從頭開始合成與文本對齊的3D特征,但經(jīng)驗上發(fā)現(xiàn)它由于高方差而不是一個穩(wěn)健的監(jiān)督來源。一個良好的初始化可以穩(wěn)定優(yōu)化過程。發(fā)現(xiàn)首先對模型進(jìn)行預(yù)訓(xùn)練,使其能夠編碼解碼3D形狀,可以更容易地使用Amortize SDS進(jìn)行優(yōu)化。通過在包含3D資源的數(shù)據(jù)集上對模型M進(jìn)行預(yù)訓(xùn)練,使用圖像重建損失,類似于[12]中使用的重建階段,并在下圖3中顯示了流程。
模型架構(gòu)
模型M由兩個網(wǎng)絡(luò)組成,G和T,分別用于預(yù)測幾何和紋理。在預(yù)訓(xùn)練之后,通過添加交叉注意力層引入了文本條件。使用CLIP embeddings來對文本提示p進(jìn)行編碼。在第一階段訓(xùn)練中,將幾何和紋理網(wǎng)絡(luò)的權(quán)重綁定在一起(除了單獨(dú)的MLP解碼器頭部),有效地訓(xùn)練了一個單一的輸入編碼器。
在第二階段,凍結(jié)幾何網(wǎng)絡(luò)G,并使用額外的可訓(xùn)練上采樣層對紋理網(wǎng)絡(luò)T進(jìn)行細(xì)化。推理中使用的最終模型M是來自第一階段的凍結(jié)G和來自第二階段的經(jīng)過細(xì)化的T。
幾何網(wǎng)絡(luò)G由三平面表示上的U-Net編碼器組成,后跟包含另一個三平面U-Net和神經(jīng)體積密度場的解碼器,后者從三平面特征中預(yù)測輸出形狀。具體地,點(diǎn)云通過PointNet,并通過基于幾何投影到每個平面的平均散射將特征轉(zhuǎn)換為三平面表示。
在訓(xùn)練過程中,點(diǎn)云來自3D數(shù)據(jù),而在推理過程中,點(diǎn)云被一個球形點(diǎn)云的虛擬輸入替換。三平面表示通過編碼器和解碼器U-Net進(jìn)行處理。Text embedding被饋送到編碼器中的每個殘差U-Net塊中,通過交叉注意力。對于3D空間中的任意點(diǎn),通過投影到每個平面并雙線性插值特征圖來提取三平面特征。然后,一個MLP在該點(diǎn)預(yù)測密度值。
紋理網(wǎng)絡(luò)T和幾何網(wǎng)絡(luò)G在預(yù)訓(xùn)練和第一階段中共享相同的編碼器和解碼器U-Net架構(gòu)。使用另一個非共享的MLP神經(jīng)紋理場來預(yù)測query點(diǎn)處的RGB值。在第二階段,將編碼器產(chǎn)生的三平面特征上采樣到更高分辨率,以獲得額外的容量來生成高頻紋理細(xì)節(jié)。具體來說,首先將潛在的三平面從128分辨率雙線性上采樣到480,然后添加一個殘差MLP,將text-embedding映射到三平面特征的殘差,模仿ATT3D的映射(超)網(wǎng)絡(luò)。解碼器然后以這個上采樣的三平面作為輸入。細(xì)節(jié)見附錄。
渲染。為了訓(xùn)練模型,我們使用不同的方法將生成的3D對象渲染成2D圖像,在第一和第二階段使用不同的方法。在第一階段,輸出的3D幾何是基于三平面的神經(jīng)場,使用來自VolSDF的公式進(jìn)行體積渲染,以獲得256分辨率的圖像,允許通過近似的有符號距離場參數(shù)化密度,其zero-level集定義了對象的幾何形狀。這種選擇使得簡單地轉(zhuǎn)換為基于表面的渲染成為可能。對于幾何網(wǎng)絡(luò),與表面渲染相比,使用SDS進(jìn)行體積渲染的訓(xùn)練更穩(wěn)定。在第二階段,使用Marching Cubes從密度場中提取等值面,并通過光柵化渲染圖像。網(wǎng)格可以實(shí)時以1024圖像分辨率渲染,有助于捕捉更細(xì)的紋理細(xì)節(jié)。
Amortized學(xué)習(xí)
Amortized學(xué)習(xí)將圖像擴(kuò)散先驗中的知識融入到我們的模型中。按順序?qū)w積幾何訓(xùn)練(第一階段)和表面紋理訓(xùn)練(第二階段)進(jìn)行Amortized訓(xùn)練。通過以下方式將3D信息納入訓(xùn)練過程中:
- 通過3D感知的2D SDS損失隱式地
- 顯式地進(jìn)行正則化。
篩選提示集。使用基于規(guī)則的文本生成或ChatGPT創(chuàng)建大量的提示集進(jìn)行訓(xùn)練。對于前者,從Objaverse 的標(biāo)題中開始,設(shè)計規(guī)則,比如“風(fēng)格B的對象A正在做C”,并提供一組風(fēng)格和活動。
或者,將標(biāo)題輸入到ChatGPT中,并要求其提供詳細(xì)且多樣的提示,描述類似的3D對象。如前圖4所示,當(dāng)生成“戴著禮帽的鉤針小螃蟹”,通過檢索與螃蟹相關(guān)的3D形狀,并將其用于正則化損失,引導(dǎo)形狀合成以使其更像螃蟹。
Amortized第一階段生成
在這個階段,使用我們的數(shù)據(jù)集對模型M進(jìn)行訓(xùn)練。使用SDS損失與3D感知2D先驗和與配對的3D形狀的正則化,詳細(xì)解釋一下:
3D感知SDS損失 在第一階段訓(xùn)練中,利用一個3D感知擴(kuò)散先驗,提供了更強(qiáng)的、多視角一致的監(jiān)督信號。具體來說,使用了MVDream中的模型,該模型是通過修改Stable Diffusion 來生成多視角一致的圖像,對Objaverse數(shù)據(jù)集中的對象進(jìn)行四次渲染視圖進(jìn)行訓(xùn)練的。
正則化損失 雖然使用MVDream的3D感知SDS損失提供了強(qiáng)大的多視角先驗,但對于一些提示,它仍然可能無法正確捕獲完整的3D幾何,因為MVDream僅監(jiān)督四個視圖,并且可能會在形狀中創(chuàng)建放大的幾何或浮標(biāo)。如下圖10右側(cè)所示,一些失敗案例。
將使用3D形狀的正則化與SDS損失相結(jié)合有助于訓(xùn)練并改善幾何。如前圖4所示,對于每個訓(xùn)練提示,我們通過比較其渲染的mask與從3D數(shù)據(jù)集中檢索的形狀s的mask來對輸出形狀o進(jìn)行正則化。
輸入點(diǎn)云退火為了彌合訓(xùn)練中實(shí)際點(diǎn)云輸入和推理中虛擬點(diǎn)云之間的差距,在第一階段的訓(xùn)練過程中逐漸將輸入點(diǎn)云退火為虛擬點(diǎn)云。具體地,在最后5000個訓(xùn)練迭代中線性增加一個概率,隨機(jī)地用虛擬點(diǎn)云中的點(diǎn)替換輸入點(diǎn)云中的子集。通過點(diǎn)云退火,當(dāng)使用虛擬點(diǎn)云時,模型在推理過程中可以獲得更好的結(jié)果。
Amortized第二階段生成
在第二階段的訓(xùn)練中,凍結(jié)了幾何網(wǎng)絡(luò),并僅調(diào)整紋理,因為同時訓(xùn)練兩者會導(dǎo)致不穩(wěn)定性。使用深度條件的ControlNet來進(jìn)行SDS引導(dǎo),允許更高的512分辨率監(jiān)督。深度條件鼓勵SDS損失指導(dǎo)紋理與幾何網(wǎng)絡(luò)中的幾何對齊,從而提高3D紋理的一致性。
推理
測試時間優(yōu)化
本文的方法支持測試時間優(yōu)化,如果用戶希望提高特定提示的質(zhì)量。如果用戶的提示與已見提示顯著偏離,則這可能很有用。與第二階段訓(xùn)練類似,凍結(jié)幾何并用深度條件的SDS引導(dǎo)微調(diào)紋理網(wǎng)絡(luò)T。與MVDream或其他基于優(yōu)化的文本到3D方法相比,本文的測試時間優(yōu)化收斂速度顯著更快,因為我們優(yōu)化的是Amortized網(wǎng)絡(luò)而不是隨機(jī)初始化的網(wǎng)絡(luò)。
3D風(fēng)格化
Latte3D還可以作為3D風(fēng)格化方法進(jìn)行訓(xùn)練和部署,使用戶可以從現(xiàn)有的3D資源中廉價地創(chuàng)建變體。在訓(xùn)練過程中,跳過輸入點(diǎn)云退火步驟,以保持對點(diǎn)云的依賴,并在一個數(shù)據(jù)集上Amortized,其中每個3D形狀對應(yīng)于許多樣式提示。結(jié)合正則化和SDS引導(dǎo)的方式驅(qū)動模型產(chǎn)生結(jié)構(gòu)上與原始形狀相似但語義上與樣式提示對齊的形狀。與分別優(yōu)化每對形狀-提示相比,Amortized顯著降低了每對形狀-提示的計算成本。在推理過程中,可以將來自訓(xùn)練集的點(diǎn)云與新的提示組合作為輸入,以產(chǎn)生原始形狀的變體。
實(shí)驗
首先,描述了實(shí)驗設(shè)置,包括數(shù)據(jù)集、指標(biāo)和基線比較。然后,展示定量和定性結(jié)果,展示了Latte3D的性能和泛化能力,隨后是設(shè)計選擇的消融實(shí)驗。
實(shí)驗設(shè)置
現(xiàn)在討論數(shù)據(jù)集構(gòu)建、模型預(yù)訓(xùn)練和評估指標(biāo)。
數(shù)據(jù)集
訓(xùn)練集 為了研究Amortized優(yōu)化的規(guī)?;?,超出了先前工作的范圍,如下表1,構(gòu)建了一個新的數(shù)據(jù)集 gpt-101k,其中包含 101k 個文本提示和 34k 個形狀。對于形狀,使用 Objaverse中的“l(fā)vis”子集,其中包含 50k 個經(jīng)過人工驗證的形狀。濾除了質(zhì)量較差的形狀,例如扁平圖像和掃描圖像,并保留了 34k 個形狀用于數(shù)據(jù)集。使用 ChatGPT 對每個對象的標(biāo)題進(jìn)行增強(qiáng),以收集每個對象的 3 個提示。
評估集 使用兩個提示集進(jìn)行評估。為了評估方法中Amortized優(yōu)化的好處,在 gpt-101k 上評估模型。然而,由于運(yùn)行基線的計算成本較高,從 gpt-101k 中隨機(jī)選擇了一個包含 50 個提示的子集,形成了用于基準(zhǔn)測試的已見提示集。此外,為了評估Amortized模型的泛化能力,構(gòu)建了一個未見提示集,通過篩選與 lvis 類別分布接近的 DreamFusion子集中的 67 個提示。
基線和評估方案
基線。將Latte3D與以下基線進(jìn)行比較:ATT3D、MVDream、Instant3D和 LGM。重新實(shí)現(xiàn)了ATT3D],使用了超網(wǎng)絡(luò)。使用開源的threestudio實(shí)現(xiàn)了MVDream。對于MVDream,對每個3D模型進(jìn)行了10000次迭代訓(xùn)練,使用了單個A100 GPU,批量大小為8,并采用了提供的默認(rèn)設(shè)置。由于Instant3D的源代碼尚未發(fā)布,我們使用了來自3DTopia1的重新實(shí)現(xiàn)。對于LGM,我們使用了官方開源實(shí)現(xiàn)。
評估指標(biāo)。通過評估生成的3D內(nèi)容的保真度以及其與文本提示的一致性來定量比較我們的模型與基線。使用三個指標(biāo)來評估保真度。
- Render-FID:計算生成的3D內(nèi)容的渲染圖像與從 Stable Diffusion 中采樣的圖像集之間的FID。該指標(biāo)衡量生成的形狀與2D先驗中的形狀在視覺質(zhì)量上的對齊程度。
- CLIP Score:計算文本提示與每個渲染圖像之間的平均CLIP分?jǐn)?shù),以指示生成的3D形狀與輸入文本提示的對齊程度。
- 用戶研究:通過Amazon Mechanical Turk用戶研究來評估整體3D幾何形狀和紋理。對于每個基線,將由我們的方法和一個基線生成的渲染3D形狀的視頻并排展示,同時呈現(xiàn)相應(yīng)的文本提示,并詢問用戶的偏好。將每個比較呈現(xiàn)給三個用戶,并將用戶和提示的平均偏好進(jìn)行平均,以獲取相對于Latte3D的每個基線的平均用戶偏好。
- 計時:通過每個提示的GPU時間來測量我們的優(yōu)化成本,以評估每個提示的總計算成本。將預(yù)訓(xùn)練、階段1和階段2的總掛鐘時間除以提示集的大小,然后乘以所使用的GPU數(shù)量。通過模型從接收文本輸入到輸出最終三平面特征之間所用的時間來衡量Instant3D、LGM和Latte3D的推理時間。對于MVDream,測量了在A100 GPU上優(yōu)化單個提示的平均時間。
實(shí)驗結(jié)果
觀察到Latte3D在gpt-101k數(shù)據(jù)集上訓(xùn)練后對未見提示(來自DreamFusion 的df)具有強(qiáng)大的泛化能力,這通過定性(下圖6)和定量(前圖2,下表2)結(jié)果得到了證明。在圖2中突出顯示了相對于不同基線的推理時間的Latte3D相對用戶偏好。Latte3D在獨(dú)特的快速推理時間內(nèi)產(chǎn)生了與SOTA基線相競爭的結(jié)果。
在表2中的定量比較中,在已見和未見提示上的表現(xiàn)與基線相當(dāng),而推理時間至少快了一個數(shù)量級。注意到,從四個輸入視圖重建3D表示的3DTopia和LGM在基于圖像的指標(biāo)(FID和CLIP分?jǐn)?shù))上具有優(yōu)勢,因為它們傾向于產(chǎn)生從靜態(tài)圖像中不明顯的3D不一致結(jié)果。感興趣的讀者可以參考補(bǔ)充材料中所有方法的渲染視頻。
總優(yōu)化成本 Amortized優(yōu)化在許多提示上的好處是我們在 gpt-101k 上的總優(yōu)化成本要比針對每個提示進(jìn)行 MVDream 優(yōu)化低得多。下圖7說明了為了達(dá)到與 Latte3D 相當(dāng)?shù)挠脩羝?,MVDream 需要每個提示36個GPU分鐘,而 Latte3D 每個提示僅花費(fèi)了215個GPU秒,代表了優(yōu)化成本的10×降低。
應(yīng)用
通過測試時間優(yōu)化展示了 Latte3D 提升質(zhì)量的能力,以及如何調(diào)整 Latte3D 來實(shí)現(xiàn)對 3D 內(nèi)容的風(fēng)格化。
逐個提示的測試時間優(yōu)化
通過實(shí)驗證明 Latte3D 在測試時間內(nèi)快速適應(yīng)新的提示以提高質(zhì)量。在下圖8中,對比了 Latte3D 的質(zhì)量與多達(dá) 600 步的情況。
每次優(yōu)化迭代在 A100 GPU 上平均需要 0.98 秒,使每個prompt的總計算預(yù)算不到 10 GPU 分鐘。即使進(jìn)行了測試時間優(yōu)化,我們的方法仍然比每個提示優(yōu)化方法(如表2 中所示)快一個數(shù)量級。測試時間優(yōu)化在未見提示上特別有益,其中 FID 降低了 11.6,而在已見提示上為 8.8,并且 CLIP 分?jǐn)?shù)在未見提示上增加了 0.04,而在已見提示上為 0.02。
3D 內(nèi)容風(fēng)格化
說明了 Latte3D 架構(gòu)如何為我們提供增強(qiáng)質(zhì)量的靈活性,以及如何將其調(diào)整為定向 3D 內(nèi)容風(fēng)格化。為了測試這一點(diǎn),手動策劃了一個基于 Objaverse 的 100 個動物形狀數(shù)據(jù)集,并將每個動物形狀名稱的物種名稱與活動(例如“滑板騎行”)和風(fēng)格(例如“體素風(fēng)格”)的組合相結(jié)合,以創(chuàng)建我們的 12000 個提示動物風(fēng)格數(shù)據(jù)集。我們在動物風(fēng)格上訓(xùn)練了一個 Latte3D 模型(stage-1 和 stage-2),沒有點(diǎn)云退火階段。在下圖5中,每行包含給定不同提示的 Latte3D 輸出,同時固定點(diǎn)云輸入,展示了 Latte3D 在文本控制風(fēng)格上的有效性。
在圖11中,進(jìn)行了一項用戶研究,比較了 Latte3D 在動物風(fēng)格上的輸出與 MVDream,并發(fā)現(xiàn)在進(jìn)行了 4000 步優(yōu)化的情況下,Latte3D 與 MVDream 競爭力相當(dāng),優(yōu)化成本減少了 10×(與為每個提示運(yùn)行 MVDream 相比)。
Latte3D 在動物風(fēng)格上還可以推廣到包含動物活動和風(fēng)格的保留組合,質(zhì)量下降很小,這表明其與 MVDream 的相似相對偏好。因此,Latte3D 使用戶能夠通過Amortized優(yōu)化廉價地創(chuàng)建其 3D 資源的變體,甚至在測試時間探索新的提示組合。附加的定量和定性結(jié)果可以在補(bǔ)充材料中找到。
消融研究
現(xiàn)在分析了在 Latte3D 中引入的每個組件的價值,附錄中有更多結(jié)果。
階段-1 消融。下表3 總結(jié)了我們對以下消融的定量比較:使用超網(wǎng)絡(luò)的 ATT3D 基線,ATT3D+MV 使用 MVDream 作為擴(kuò)散引導(dǎo)。ATT3D+UNet+MV 用我們的模型架構(gòu)替換超網(wǎng)絡(luò),但是從頭開始初始化,并給予虛擬點(diǎn)云作為輸入。ATT3D+UNet+MV+PT 從重建預(yù)訓(xùn)練(PT)模型初始化。引入了 Mask-FID 指標(biāo),以定量評估幾何形狀與形狀數(shù)據(jù)集的一致性,通過計算生成的形狀的渲染二值掩模與 3D 數(shù)據(jù)集的掩模之間的 FID。
發(fā)現(xiàn)引入的每個組件都提高了性能。比較 ATT3D 與 ATT3D+MV,看到使用 MVDream 引導(dǎo)的好處,因為它減輕了幾何圖形上的缺陷,比如Janus faces。比較 ATT3D+MV 與 ATT3D+UNet+MV,看到了我們的架構(gòu)帶來的性能提升。此外,添加預(yù)訓(xùn)練(ATT3D+UNet+MV+PT)有所幫助,特別是在恢復(fù)精細(xì)的幾何和紋理細(xì)節(jié)方面。最后,添加形狀正則化(完整的 Latte3D)使生成的幾何形狀更好地符合 3D 數(shù)據(jù),這可以從 Mask-FID 的下降中看出。表3 中還展示了額外的用戶研究。我們將在附錄中展示收斂速度。
使用階段-2 細(xì)化的消融。階段-2 的細(xì)化可以大大提高紋理細(xì)節(jié),超過階段-1 的訓(xùn)練。在下圖9中展示了比較。
正則化 現(xiàn)在調(diào)查了在方程3 中如何加權(quán) α 來平衡 SDS 損失和正則化損失的設(shè)計選擇。在表3中,展示了添加正則化損失如何改善定量結(jié)果。在下圖10,定性地對比了在不同固定權(quán)重下的訓(xùn)練。通過增加形狀正則化的混合因子 α,看到與輸入形狀更一致的情況。
訓(xùn)練中的退火和推理中的不同輸入點(diǎn)云 在訓(xùn)練中,將來自數(shù)據(jù)集的檢索到的點(diǎn)云作為輸入,并將輸入退火成固定的虛擬點(diǎn)云。在推理中,只使用虛擬點(diǎn)云作為輸入。在下表4中,定量地消融了這個點(diǎn)云退火過程在 gpt-101k 上 LATTE3D 行為上的作用。
我們的模型在訓(xùn)練時沒有退火,對點(diǎn)云輸入有些敏感。與在推理中使用檢索到的點(diǎn)云相比,在推理中使用虛擬點(diǎn)云時會有輕微的性能下降。然而,通過引入點(diǎn)云退火,使模型以虛擬輸入進(jìn)行訓(xùn)練,進(jìn)而減小了性能差距。此外,在圖12中展示了定性結(jié)果,顯示點(diǎn)云退火在推理中使用虛擬輸入時會改善結(jié)果。
結(jié)論與局限性
本文提出了一種可擴(kuò)展的方法來進(jìn)行Amortized文本到增強(qiáng)型 3D 生成。為了成功將Amortized擴(kuò)展到更大的數(shù)據(jù)集,我們通過以下方式利用了 3D 數(shù)據(jù):
- 3D 感知的 2D SDS
- 預(yù)訓(xùn)練
- 3D 正則化的Amortized過程
本文進(jìn)一步改進(jìn)了模型架構(gòu),使其更具可擴(kuò)展性。模型在 400ms 內(nèi)生成高質(zhì)量的形狀。此外,通過快速的測試時間優(yōu)化,質(zhì)量和泛化能進(jìn)一步提高。我們的模型也存在局限性。首先,模型使用了 SDS,因此依賴于對文本到圖像模型的理解,這些模型通常無法尊重諸如部件描述之類的細(xì)粒度細(xì)節(jié)。其次,幾何圖形在階段2 和測試時間優(yōu)化中被凍結(jié),因此階段1 中的幾何缺陷無法修復(fù)。為了穩(wěn)定階段 2 中的幾何變化,開發(fā)Amortized訓(xùn)練留待未來工作。
本文轉(zhuǎn)自 AI生成未來 ,作者:Tianshi Cao等
