一秒內從單個圖像生成3D對象,Stability AI推出3D生成新方法
2025 年來了,3D 生成也迎來了新突破。
剛剛,Stability AI 在 CES 上宣布為 3D 生成推出一種兩階段新方法 ——SPAR3D(Stable Point Aware 3D),旨在為游戲開發者、產品設計師和環境構建者開拓 3D 原型設計新方式。
無論是精致的藝術品,還是紋理復雜的日常用品,SPAR3D 都能提供精確的幾何形狀和完整的 360 度視圖的詳細預測,包括通常隱藏的區域(例如物體的背面):
值得一提的是,SPAR3D 還引入了實時編輯功能,能在不到一秒的時間內從單個圖像生成 3D 對象的完整結構。
SPAR3D 是一種新穎的兩階段方法:第一階段使用輕量級點擴散模型生成稀疏 3D 點云,采樣速度快;第二階段使用采樣點云和輸入圖像來創建高度詳細的網格。
這種兩階段設計能夠對不適定的單圖像 3D 任務進行概率建模,同時保持高計算效率和出色的輸出保真度。使用點云作為中間表征還進一步允許交互式用戶編輯。在不同的數據集上進行評估后,SPAR3D 表現出了優于 SOTA 方法的性能。
- 論文標題:SPAR3D: Stable Point-Aware Reconstruction of 3D Objects from Single Images
- 論文鏈接:https://static1.squarespace.com/static/6213c340453c3f502425776e/t/677e3bc1b9e5df16b60ed4fe/1736326093956/SPAR3D+Research+Paper.pdf
簡單來說,SPAR3D 具有如下優勢:
- 前所未有的控制:允許用戶通過刪除、復制、拉伸、添加特征或重新著色點來直接編輯點云。
- 完整的結構預測:通過提供精確的幾何形狀和完整的 360 度視圖的詳細預測來增強 3D 構建。
- 閃電般快速生成:僅需 0.3 秒即可將編輯后的點云轉換為最終網格,實現無縫實時編輯。從單個輸入圖像,SPAR3D 僅需 0.7 秒即可為每個對象生成高度詳細的 3D 網格。
SPAR3D
基于點云采樣的單圖像三維物體重建
從一張圖像重建 3D 物體是一個具有挑戰性的逆向工程問題:盡管可以通過分析圖像中的光影來推測物體的可見表面形狀,但要準確預測被遮擋的部分,需要豐富的 3D 先驗知識作為支撐。
目前該領域主要有兩個發展方向:前饋回歸和基于擴散的生成。基于回歸的模型雖然推理速度快,但對重建有遮擋的區域效果不佳。而基于擴散的方法通過迭代采樣可以生成多樣化的 3D 結果,但計算效率低且與輸入圖像的對齊效果較差。
為了既能充分利用擴散模型在分布式學習方面的優勢,又能避免輸出質量差和計算效率低的問題,Stability AI 的研究團隊設計了一個兩階段重建系統:SPAR3D。這個系統將 3D 重建過程分為點采樣和網格化兩個階段,實現了高效率與高質量的平衡。
當輸入一張圖像時,該方法可以生成一個包含 PBR 材質的 3D 網格模型,其中包括反照率、金屬度、粗糙度和表面法線等屬性。
該團隊設計了一個包含點采樣和網格化兩個階段的模型(如圖 2 所示)。在點采樣階段,系統將使用點擴散模型來學習輸入圖像對應的點云分布。由于點云的分辨率較低,這個階段能快速完成迭代采樣。
在網格化階段,系統通過回歸方法將采樣得到的點云轉換為高細節網格,并利用局部圖像特征確保與輸入圖像的準確匹配。
這種設計將復雜的不確定性計算集中在點采樣階段,讓網格化階段能夠專注于生成高質量的細節。這不僅提升了整體效果,有效減少了紋理中不必要的光照影響,特別是在處理反光表面時效果更好。
選擇點云作為連接兩個階段的中間表示是該方法的關鍵設計。點云不僅是計算效率最高的 3D 表示,因為所有信息都用于表示表面,其缺乏連接性的特點還為用戶編輯提供了優勢。
當 3D 生成的結果與用戶期望不符時,可以在低分辨率點云上輕松進行局部編輯,無需擔心拓撲結構。將編輯后的點云輸入網格化階段即可生成更符合用戶需求的網格。這也使得 SPAR3D 在保持高計算效率和輸入觀察保真度的同時,顯著優于以往的回歸方法。
實驗
主要結果
該團隊在 GSO 和 Omniobject3D 數據集上對 SPAR3D 與其他基線方法進行了定量比較。如表 1 和表 2 所示,SPAR3D 在兩個數據集的大多數評估指標上都顯著優于其他回歸或生成式基線方法。
圖 5 展示了不同方法的定性結果對比:基于回歸的方法 (如 SF3D、TripoSR) 生成的 3D 資產雖然與輸入的圖像保持了較好的一致性,但背面過于平滑;基于多視圖擴散的方法(如 LGM、CRM)生成的 3D 資產雖然在背面保留了較多細節,但存在明顯偽影;而純生成方法(如 Shap-E、LN3Diff)雖然能生成清晰的表面輪廓,但細節經常出錯。
相比之下,SPAR3D 不僅能忠實重現輸入圖像,還能合理生成被遮擋部分的細節。
圖 6 進一步展示了其在真實場景圖像上的出色泛化性能。
可編輯的結果
SPAR3D 采用顯式點云作為中間表示,為用戶提供了進一步編輯模型的能力。通過點云,用戶可以靈活地修改重建網格的不可見部分。
圖 7 展示了幾個編輯示例,比如為 3D 模型添加關鍵組件,還能優化生成效果不理想的細節部分。
這種編輯方式簡單高效,讓用戶能夠根據需求輕松調整重建結果。
消融實驗
研究團隊通過消融實驗驗證了點采樣階段的關鍵作用。他們將 SPAR3D 簡化為純回歸模型 SPAR3D w/o Point(移除點采樣階段),并在 GSO 和 Omniobject3D 數據集上進行對比。
實驗結果顯示,完整的 SPAR3D 明顯優于簡化版本,驗證了該設計的有效性。
分析
該團隊設計了實驗來進一步理解 SPAR3D 的工作原理。在設計 SPAR3D 時,其核心假設是兩階段設計能有效分離單目 3D 重建中的不確定部分 (背面建模) 和確定性部分 (可見表面建模)。
理想情況下,網格化階段應主要依靠輸入圖像重建可見表面,同時依靠點云生成背面。為驗證這一點,研究團隊進行了一個特殊的實驗:故意將不匹配的數據輸入系統(一張松鼠的圖片配上一匹馬的點云數據),以測試系統如何處理這種沖突的輸入。
如圖 8 所示,實驗結果很有意思:重建模型的正面與松鼠對齊,而背面則遵循了點云馬的形狀。這個結果證實了系統確實能夠分別處理可見和不可見部分的重建工作。
更多研究細節,請參閱原論文。