新智元報道
編輯:KingHZ【新智元導(dǎo)讀】Stability AI推出3D重建方法:2D圖像秒變3D,還可以交互式實時編輯。新方法的原理、代碼、權(quán)重、數(shù)據(jù)全公開,而且許可證寬松,可以商用。新方法采用點擴展模型生成稀疏點云,之后通過Transformer主干網(wǎng)絡(luò),同時處理生成的點云數(shù)據(jù)和輸入圖像生成網(wǎng)格。以后,人人都能輕松上手3D模型設(shè)計。近日,Stability AI發(fā)布消息,公開3D重建新方法SPAR3D的設(shè)計原理、代碼、模型權(quán)重等。
SPAR3D可在一秒內(nèi)從單張圖像生成3D物體的完整結(jié)構(gòu)并且可以實時編輯。
文章亮點:新方法SPAR3D實現(xiàn)了實時編輯,在不到一秒內(nèi)可從單圖完成3D對象的結(jié)構(gòu)生成。
SPAR3D將點云采樣與網(wǎng)格生成技術(shù)相結(jié)合,可以完全的控制3D對象。
第一階段主要依賴擴散模型生成稀疏點云數(shù)據(jù),第二階段主要靠Transformer生成網(wǎng)格。
不確定性集中在點采樣階段,提高了計算效率。
用實驗證明了,新方法主要依賴輸入圖像重建正面,依賴點云生成背面。
基準測試,比SPAR3D快的沒它好,比它好的沒它快。
使用Stability AI Community License,可以免費商用。
論文鏈接:https://arxiv.org/pdf/2501.04689項目鏈接:https://spar3d.github.io/架構(gòu)設(shè)計
整個過程分為兩個階段:
點云生成階段:專門的點擴散模型生成詳細的點云,捕捉物體的基本結(jié)構(gòu)。
網(wǎng)格生成階段:三平面Transformer在處理原始圖像特征的同時處理點云,生成高分辨率的三平面數(shù)據(jù)。利用三平面數(shù)據(jù)進行3D重建,準確捕捉源圖像的幾何形狀、紋理和光照。
圖1:SPAR3D雙階段架構(gòu)圖
雙階段架構(gòu)
新方法結(jié)合了基于回歸建模的精確性與生成技術(shù)的靈活性,實現(xiàn)了精確的重建和全面的控制。
新方法是「既要也要」:既要享受擴散模型分布學(xué)習(xí)的好處,又要避免輸出保真度低和計算效率低的問題。
第一階段使用擴散模型生成稀疏點云。然后是網(wǎng)格劃分階段,將點云轉(zhuǎn)化為高度精細的網(wǎng)格。
主要想法是將不確定性建模集中到第一階段,在這一階段,點云的低分辨率允許快速迭代采樣。
隨后的網(wǎng)格劃分階段,利用局部圖像特征將點云轉(zhuǎn)換為高輸出保真度的詳細網(wǎng)格。
利用點云降低網(wǎng)格劃分的不確定性,進一步促進了反渲染的無監(jiān)督學(xué)習(xí),從而減少了紋理中的烘托照明。
關(guān)鍵設(shè)計
關(guān)鍵的設(shè)計選擇是使用點云來連接兩個階段。
為確?焖僦貥(gòu),中間表示只有足夠輕量級才能高效完成生成任務(wù)。但是,它也要為網(wǎng)格劃分階段提供足夠的指導(dǎo)。
這是因為點云可能是計算效率最高的三維表示方法,因為所有信息比特都被用來表示曲面。
此外,缺乏連通性通常被認為是點云的缺點,F(xiàn)在卻變成了兩階段方法進行編輯的優(yōu)勢。
當背面與用戶預(yù)期不一致時,可以輕松地對低分辨率點云進行局部編輯,而不必擔(dān)心拓撲結(jié)構(gòu)(見下圖)。
圖2:局部編輯
將編輯后的點云送入網(wǎng)格劃分階段,可生成更符合用戶要求的網(wǎng)格。比如在上圖中,通過在點云中修改了人物鼻子長度,之后輸出的網(wǎng)格后人物鼻子也變長了。
點采樣階段
點采樣階段生成稀疏點云,作為網(wǎng)格劃分階段的輸入。在點采樣階段,點擴散模型會根據(jù)輸入圖像學(xué)習(xí)點云的條件分布。
由于點云的分辨率較低,這一階段的計算效率較高。
之后的網(wǎng)格劃分階段將采樣點云轉(zhuǎn)換為與可見表面對齊的高精細網(wǎng)格。
點采樣的不確定性降低,有利于了在網(wǎng)格劃分階段以無監(jiān)督方式學(xué)習(xí)材質(zhì)和光照。
最后,使用稀疏點云作為中間表示,SPAR3D可以實現(xiàn)人工編輯。
此階段包括:點擴散框架、去噪器設(shè)計和反照率點云。
點擴散框架
該框架基于去噪擴散概率模型。其中包括兩個過程:
1)前向過程,在原始點云中添加噪聲。
2)后向過程,去噪器學(xué)習(xí)如何去除噪音。
在推理(inference)階段,使用去噪擴散隱式模型(Denoising diffusion implicit models,DDIM)生成點云樣本,并使用無分類器擴散指導(dǎo)(Classifier-free diffusion guidance,CFDG)改進抽樣的保真度。
去噪器設(shè)計
使用與Point-E類似的Transformer去噪器,將噪聲點云線性映射到一組點token中。
使用DINOv2將輸入圖像編碼為條件token。
然后將條件和點token串聯(lián)起來,作為Transformer的輸入,用來預(yù)測每個點上添加的噪聲。
反照率點云
在網(wǎng)格劃分階段,新方法同時估算幾何體、材質(zhì)和光照。
然而,這種分解本身就很模糊,因為相同的輸入圖像可以被多種光照和反照率組合解釋。
如果只在網(wǎng)格劃分階段學(xué)習(xí),非常難這種高度不確定的分解。
因此,在點采樣階段,通過擴散模型直接生成反照率點云,減少了不確定性。
將反照率點云采樣輸入到后續(xù)的網(wǎng)格生成階段,大大降低了反渲染的不確定性,并使分解學(xué)習(xí)穩(wěn)定了下來。
網(wǎng)格生成階段
網(wǎng)格生成階段根據(jù)輸入圖像和點云生成紋理網(wǎng)格。網(wǎng)格模型的主干是一個大型三平面Transformer,它能根據(jù)圖像和點云條件預(yù)測三平面特征。
在訓(xùn)練過程中,會將幾何圖形和材質(zhì)輸入可微分渲染器,以便應(yīng)用渲染損失來監(jiān)督新模型。
三平面Transformer
新方法的三平面Transformer由三個子模塊組成:點云編碼器、圖像編碼器和Transformer主干網(wǎng)絡(luò)。Transformer編碼器將點云編碼為一組點token。由于點云的分辨率較低,每個點都可以直接映射為一個token。新模型的圖像編碼器是DINOv2,它可以生成局部圖像嵌入。
三平面Transformer采用了與PointInfinity和SF3D相似的設(shè)計。
這種設(shè)計可以生成384×384高分辨率的三平面圖。
表面估計
為了估計幾何形狀,使用淺層MLP對三平面進行查詢,以生成密度值。
使用可變行進四面體(Deep marching tetrahedra,DMTet)將隱式密度場轉(zhuǎn)換為顯式曲面。
此外,還使用兩個MLP頭來預(yù)測點偏移和表面法線以及密度。
這兩個屬性減少了行進四面體所帶來的假象,使局部表面更加平滑。
材質(zhì)和光照度估算
反向渲染,與幾何圖形一起聯(lián)合估計材質(zhì)(反照率、金屬和粗糙度)和光照。
利用RENI++基于學(xué)習(xí)的光照先驗建立了光照估計器。
RENI++最初是一個用于HDR照明生成的無條件生成模型,因此需要學(xué)習(xí)編碼器,將三平面特征映射到RENI++的潛空間中。
這樣,就能估算出輸入圖像中的環(huán)境光照度。
反照率是通過與幾何類似的三平面來估算的,其中淺層MLP可預(yù)測每個三維位置的反照率值。
對于金屬和粗糙度,采用SF3D,并通過貝塔先驗學(xué)習(xí)以概率方法進行估計。
并用AlphaCLIP代替SF3D的CLIP編碼器,利用前景物體遮罩來緩解這一問題。
可微渲染
新方法實現(xiàn)了一個可微渲染器(renderer),它能根據(jù)預(yù)測的環(huán)境貼圖、PB材質(zhì)和幾何體表面渲染圖像(見圖3)。
圖3:可微分著色器
作者向可微網(wǎng)格光柵器(rasterizer)添加了可微著色器(shader)。由于使用RENI++重構(gòu)環(huán)境貼圖,因此需要明確整合傳入的輻照度。在此,使用了蒙特卡羅積分法。
由于在訓(xùn)練過程中樣本數(shù)較少,采用了平衡啟發(fā)式的多重重要度采樣(Multiple Importance Sampling,MIS),以減少整合方差。
此外,為了更好地模擬之前工作中通常忽略的自遮擋(self-occlusion)現(xiàn)象,利用可見度測試,更好地模擬了陰影。
作者從實時圖形學(xué)中汲取靈感,將可見度測試建模為一種屏幕空間方法。圖4是該測試的示意圖。
圖4:陰影建模
具體來說沿著MIS提出的所有采樣方向,在6個步驟內(nèi)進行短距離(0.25)的光線步進,并將位置投影回圖像空間。如果當前光線的深度比深度圖中采樣到的值更遠,則該光線會被標記為陰影光線。
損失函數(shù)
新模型的主要損失函數(shù)是渲染損失,它用于比較來自新視角的渲染結(jié)果與真實圖像(GT)。
具體來說,渲染損失是以下幾項的線性組合:1)渲染圖像與GT圖像之間的L2距離,2)通過LPIPS測量的渲染圖像與GT圖像之間的感知距離,3)渲染的透明度與GT前景遮罩(mask)之間的L2距離。
除了渲染損失外,還遵循SF3D并應(yīng)用網(wǎng)格與著色正則化,分別對表面光滑度和逆向渲染進行正則化。
交互式編輯
兩階段設(shè)計的一個獨特優(yōu)勢是,它自然支持對生成的網(wǎng)格中的不可見區(qū)域進行交互式編輯。
在大多數(shù)情況下,可見表面由輸入圖像決定,并保持高度精確,而未知表面主要基于采樣點云,可能與用戶意圖不一致。
在這種情況下,可以通過改變點云來編輯網(wǎng)格的未知表面。
如果只考慮編輯,點云可能是最靈活的三維表示方法之一,因為沒有拓撲約束。
由于點云分辨率較低,編輯點云非常高效和直觀。
用戶可以輕松刪除、復(fù)制、拉伸或重新著色點云中的點。
高效網(wǎng)格模型能夠在0.3秒內(nèi)生成調(diào)整后的網(wǎng)格,因此這一過程具有相當高的交互性。
實驗結(jié)果
這部分包含了定量比較、定性結(jié)果、編輯效果和實驗分析。文中也討論了消融實驗。
定量比較在GSO和Omniobject3D數(shù)據(jù)集上定量比較了SPAR3D與其他基準方法。
如表1和表2所示,SPAR3D在這兩個數(shù)據(jù)集的大多數(shù)指標上顯著優(yōu)于所有其他回歸或生成基準方法。
SPAR3D也是可以做到1秒內(nèi)完成重建的模型之一,每個物體的推理速度為0.7秒,顯著快于基于3D或多視圖的擴散方法。
簡而言之,比SPAR3D快的沒它好,比它好的沒它快。
定性結(jié)果純回歸方法如SF3D或TripoSR重建的網(wǎng)格與輸入圖像對齊良好,但背面往往不夠精確且過度平滑。
基于多視圖擴散的方法,如LGM、CRM和InstantMesh,在背面展示了更多的細節(jié)。然而,合成視角中的不一致性導(dǎo)致了明顯的偽影,整體效果更差。
純生成方法如Shap-E和LN3Diff能夠生成銳利的表面。然而,許多細節(jié)是錯誤的虛擬幻象,未能準確地遵循輸入圖像,且可見表面重建得也不正確。
與先前的工作相比,SPAR3D生成的網(wǎng)格不僅忠實地再現(xiàn)了輸入圖像,還展現(xiàn)了生成得當?shù)恼趽醪糠,細?jié)合理。
作者進一步展示了SPAR3D在自然圖像上的定性結(jié)果。
這些圖像通過文本-圖像模型生成,或來自ImageNet驗證集。高質(zhì)量的重建網(wǎng)格展示了SPAR3D的強泛化能力。
編輯效果使用顯式點云作為中間表示,能夠?qū)崿F(xiàn)對生成網(wǎng)格的交互式編輯。
用戶可以通過操控點云輕松地改變網(wǎng)格的不可見表面。
在圖7中,展示了一些使用SPAR3D進行編輯的示例,用戶可以通過添加主要物體部件來改進重建,或改善不理想的生成細節(jié)。
圖7:編輯效果
在左側(cè)的兩個例子中,通過復(fù)制現(xiàn)有點云,為馬克杯添加了把手,為大象添加了尾巴。在右側(cè)的兩個例子中,通過移動或刪除點云,修復(fù)了不完美之處,并改善了網(wǎng)格的局部細節(jié)。所有編輯耗時不到一分鐘。
實驗分析為了進一步了解SPAR3D的工作原理,作者設(shè)計了新的實驗。
設(shè)計SPAR3D時的核心假設(shè)是:兩階段設(shè)計有效地將單目三維重建問題中的不確定部分(背面建模)和確定部分(可見表面建模)分開。
理想情況下,網(wǎng)格化階段應(yīng)主要依賴輸入圖像重建可見表面,同時依賴點云生成背面表面。
為了驗證這一假設(shè),作者設(shè)計了一個實驗,特意使用與輸入圖像沖突的點云。
在圖8中,將一只松鼠的輸入圖像和一匹馬的點云輸入網(wǎng)格模型。
圖8:正面看像松鼠,側(cè)面看像馬。
如圖所示,重建的網(wǎng)格在可見表面上與松鼠圖像很好地對齊,而背面表面則主要遵循點云。這一結(jié)果驗證了假設(shè)。
在圖像和點云沖突的情況下,模型根據(jù)圖像重建可見表面,同時根據(jù)點云生成背面表面。
作者介紹
另外值得一提的是本文第一作者是中科大校友。
Zixuan Huang,伊利諾伊大學(xué)香檳分校在讀博士,在Stable AI主導(dǎo)了此次工作。
之前,在威斯康星大學(xué)麥迪遜分校獲得計算機科學(xué)碩士學(xué)位,在中國科學(xué)技術(shù)大學(xué)獲得學(xué)士學(xué)位。
參考資料:https://x.com/StabilityAI/status/1877079954267189664
https://stability.ai/news/stable-point-aware-3d?utm_source=x&utm_medium=social&utm_campaign=SPAR3D
https://arxiv.org/pdf/2501.04689