「單張圖像重建3D網(wǎng)格」告別卡頓,從30分鐘提速到45秒!浙大、加州大學等聯(lián)合發(fā)布One-2-3-45:在線Demo可試玩
基于單幅圖像進行三維重建是一項具有重要應用價值的任務,但實現(xiàn)起來也非常困難,需要模型對對自然世界具有廣泛的先驗知識。
之前有工作通過在2D擴散模型的引導下優(yōu)化神經輻射場來解決這個問題,但仍存在優(yōu)化時間過長、3D結果不一致以及幾何形狀不佳等問題。
最近,來自加州大學圣迭戈分校、加州大學洛杉磯分校、康奈爾大學、浙江大學、印度理工學院馬德拉斯分校以及Adobe的研究人員聯(lián)合提出一個新模型One-2-3-45,以任意物體的單張圖像作為輸入,只需45秒即可在一次前饋過程中生成一個完整的360度的3D紋理網(wǎng)格。
圖片
論文鏈接:https://arxiv.org/pdf/2306.16928.pdf
項目主頁:https://one-2-3-45.github.io/
在線Demo:https://huggingface.co/spaces/One-2-3-45/One-2-3-45
圖片
One-2-3-45主要包括三個組件:
1. 多視角合成:使用視圖條件的二維擴散模型Zero123,以兩階段的方式生成多視圖圖像,輸入包括單幅圖像和相對相機變換,參數(shù)為相對球面坐標;
2. 姿態(tài)估計:根據(jù)Zero123生成的4個鄰近視圖估計輸入圖像的仰角,再將指定的相對位置與輸入視圖的估計位置相結合,獲得多視圖圖像的位置;
3. 三維重建:將多視圖姿態(tài)圖像輸入基于SDF的通用神經曲面重建模塊,進行360°網(wǎng)格重建
由于無需使用開銷較大的優(yōu)化操作,該方法在重建3D形狀時相比其他方法耗時顯著縮短。
此外,該方法還可以生成更好的幾何形狀,產生3D一致性更好的結果,并更忠實于輸入圖像。
在實驗部分,研究人員對該方法在合成數(shù)據(jù)和全新圖像上都進行了實驗,證明了該方法在網(wǎng)格質量和運行時間上的優(yōu)勢。
該方法也可以通過集成與現(xiàn)成的文本到圖像的擴散模型,無縫地支持文本到3D的任務。
One-2-3-45
Zero123:以視圖為條件的2D擴散模型
通過在互聯(lián)網(wǎng)規(guī)模的數(shù)據(jù)上進行訓練,二維擴散模型可以學習到通用的視覺概念,并且控制條件也從文本擴展到其他模態(tài),例如可視邊緣、用戶涂鴉、深度和法線圖等。
Zero123模型采用類似的思路,將條件設為視點(viewpoint)來控制圖像生成,具體來說,給定一個物體的RGB圖像和一個相對的相機變換,Zero123可以控制擴散模型在變換后的相機視角下合成一個新的圖像。
Zero123根據(jù)大規(guī)模三維數(shù)據(jù)集來合成一對圖像及其相對相機變換對穩(wěn)定擴散進行了微調。
在創(chuàng)建微調數(shù)據(jù)集的過程中,Zero123假設物體以坐標系的原點為中心,并使用球形攝像機,即攝像機放置在球面上并始終看著原點,相機位置參數(shù)包括極角、方位角和半徑,兩個點的差值即為相對攝像機變換參數(shù)。
目標是學習一個模型f,使得f在輸入「初始視角,相機變換參數(shù)」時與輸入「變換后視角」時感知相似。
實驗結果發(fā)現(xiàn),這種微調方式可以使Stable Diffusion模型用于學習控制攝像機視點的通用機制,對微調數(shù)據(jù)集之外的物體進行推斷。
NeRF優(yōu)化能否將多視圖預測提升至三維?
給定一個物體的單張圖像,可以利用Zero123生成多視圖圖像,但能否使用傳統(tǒng)的基于NeRF或基于SDF的方法從這些預測中重建高質量的三維網(wǎng)格呢?
給定單幅圖像后,研究人員首先使用Zero123從球面均勻采樣相機姿態(tài),生成32幅多視角圖像,然后將預測結果輸入基于NeRF的方法(TensoRF)和基于SDF的方法(NeuS),分別優(yōu)化密度場和SDF場。
圖片
不過這兩種方法都沒有取得令人滿意的結果,生成結果中包含大量的失真和浮點,主要是由于Zero123預測不一致導致的。
圖片
2階段源視圖選擇和真實預測混合訓練
SparseNeuS論文中只演示了正面視圖重構,但研究人員通過在訓練過程中以特定方式選擇源視圖并添加深度監(jiān)督,將其擴展到在一次前饋傳遞中重構360度網(wǎng)格。
凍結Zero123模型的參數(shù)后,在三維物體數(shù)據(jù)集上訓練。
按照Zero123對訓練形狀進行歸一化處理,并使用球形相機模型;對于每個形狀,首先渲染來自球面上均勻分布的n個攝像機姿態(tài)的n幅真實RGB和深度圖像;對于每個視圖,使用Zero123預測附近的四個視圖。
在訓練過程中,將所有4×n的預測結果和真實姿態(tài)輸入到重建模塊中,并隨機選擇n個真實RGB圖像中的一個視圖作為目標視圖,然后使用真實RGB值和深度值進行有監(jiān)督訓練,從而可以讓模型學會處理來自Zero123的不一致預測,并重建一致的360°網(wǎng)格。
相機位置估計
研究人員提出了一個仰角估計模塊來推斷輸入圖像的仰角。
首先使用Zero123預測輸入圖像的四個鄰近視圖,然后以從粗到細的方式列舉所有可能的仰角。
對于每個仰角候選角,計算四幅圖像對應的相機姿態(tài),并計算這組相機姿態(tài)的重投影誤差,以衡量圖像與相機姿態(tài)之間的一致性。
重投影誤差最小的仰角被用于通過組合輸入視圖的姿態(tài)和相對姿態(tài)來生成所有4×n源視圖的相機姿態(tài)。
實驗結果
圖片
從定性實驗結果來看,在對比現(xiàn)有zero-shot圖像三維重建方法時,包括Point-E、Shap-E等在數(shù)百萬三維數(shù)據(jù)上訓練得到的模型,以及基于Stable Diffusion先驗的優(yōu)化方法,可以看到One-2-3-45模型在處理合成圖像和真實圖像時都非常有效。
圖片
研究人員還在Objaverse和GoogleScannedObjects(GSO)數(shù)據(jù)集上對這些方法進行了定量比較。
對于每個數(shù)據(jù)集,隨機選擇20個形狀,并為每個形狀渲染一張圖像進行評估。
為了使預測結果與真實網(wǎng)格對齊,線性搜索縮放因子和旋轉角度,對采樣點云應用迭代最鄰近點(ICP),并選擇離群值最多的點云。
遵循RealFusion測量了F-score(閾值為0.05)和CLIP相似度,以及在A100 GPU上的運行時間。
圖片
從實驗結果中可以看到,該方法在F-Score方面優(yōu)于所有基線方法;在CLIP相似度方面,除了Shap-E之外,超越了所有方法。
還可以發(fā)現(xiàn),CLIP相似度對顏色分布非常敏感,而對局部幾何變化(如凳子的腿數(shù)、杯子的把手數(shù))的區(qū)分度較低。
在運行時間方面,與基于優(yōu)化的方法相比,該方法具有明顯優(yōu)勢,其性能與Point-E和Shap-E等三維原生擴散模型相當,即三維重建模塊只需要大約5秒鐘就可以重建一個三維網(wǎng)格,剩余時間主要用于Zero123預測,在A100 GPU上每幅圖像大約需要1秒鐘。