看透物體的3D表示和生成模型:NUS團隊提出X-Ray
- 項目主頁:https://tau-yihouxiang.github.io/projects/X-Ray/X-Ray.html
- 論文地址:https://arxiv.org/abs/2404.14329
- 代碼地址:https://github.com/tau-yihouxiang/X-Ray
- 數(shù)據(jù)集:https://huggingface.co/datasets/yihouxiang/X-Ray
如今的生成式AI在人工智能領(lǐng)域迅猛發(fā)展,在計算機視覺中,圖像和視頻生成技術(shù)已日漸成熟,如Midjourney、Stable Video Diffusion [1]等模型廣泛應(yīng)用。然而,三維視覺領(lǐng)域的生成模型仍面臨挑戰(zhàn)。
目前的3D模型生成技術(shù)通?;诙嘟嵌纫曨l生成和重建,如SV3D模型[2],通過生成多角度視頻并結(jié)合神經(jīng)輻射場(NeRF)或者3D高斯渲染模型(3D Gaussian Splatting技術(shù)逐步構(gòu)建3D物體。這種方法主要限制在只能生成簡單的、無自遮擋的三維物體,且無法呈現(xiàn)物體內(nèi)部結(jié)構(gòu),使得整個生成過程復(fù)雜而且不完美,顯示出該技術(shù)的復(fù)雜性和局限性。
究其原因,在于目前缺乏靈活高效且容易泛化的3D Representation (3D表示)。
圖1. X-Ray序列化3D表示
X射線能夠穿透并記錄關(guān)鍵物體內(nèi)外表面信息,受到這個啟發(fā),新加坡國立大學(xué)(NUS)胡濤博士帶領(lǐng)研究團隊發(fā)布了一種全新的3D表示—X-Ray,它能夠序列化地表示從相機攝像角度看過去的物體的逐層次的物體表面形狀和紋理,可以充分利用視頻生成模型的優(yōu)勢來生成3D物體,可以同時生成物體的內(nèi)外3D結(jié)構(gòu)。
本文將詳細(xì)展示X-Ray技術(shù)的原理、優(yōu)勢及其廣泛的應(yīng)用前景。
圖2. 與基于渲染的3D模型生成方法比較。
技術(shù)革新:物體內(nèi)外表面的3D表示方法
X-Ray表示:從相機中心開始朝向物體方向的H×W個矩陣點發(fā)射射線。在每條射線方向上,逐個記錄與物體的表面相交點的L個包含深度、法向量和顏色等的三維屬性數(shù)據(jù),然后將這些數(shù)據(jù)組織成L×H×W的形式,實現(xiàn)任意3D模型的張量表示,這就是該團隊提出的X-Ray表示方法。
值得注意的是,該表示形式與視頻格式一樣,因此可以用視頻生成模型做3D生成模型。具體過程如下。
圖3. 不同層數(shù)的X-Ray示例樣本。
1.編碼過程: 3D模型轉(zhuǎn)X-Ray
給定一個3D模型,通常是三維網(wǎng)格,首先設(shè)置一個相機觀測該模型,然后通過光線投影算法(Ray Casting Algorithm)來記錄每個相機射線與物體相交的所有表面的屬性,包括該表面的深度
,法向量
,顏色
等,為了指示方便,用
表示該位置是否存在表面。
然后,獲取所有相機射線等相交表面點,即可得到一個完整的X-Ray 3D表達,如下表達式和圖3所示。
通過編碼過程,將一個任意的3D模型轉(zhuǎn)化為X-Ray,它和視頻格式是一樣的,并且具有不同的幀數(shù),通常情況下,幀數(shù)L=8 足夠表示一個3D物體。
2.解碼過程:X-Ray轉(zhuǎn)3D模型
給定一個X-Ray,也可以通過解碼過程轉(zhuǎn)化回3D模型,這樣只需要通過生成X-Ray即可生成3D模型。具體過程包括點云生成過程和點云重建表面兩個過程。
- X-Ray到點云:X-Ray很容易轉(zhuǎn)化為點云,該點云中的每個點除了有3D點的位置坐標(biāo),還具有顏色和法向量信息。
其中r_0,r_d分別是相機射線的起點和歸一化方向,通過對每個相機射線的處理,就可以獲得一個完整的點云。
- 點云到三維網(wǎng)格:接下來就是將點云轉(zhuǎn)化為三維網(wǎng)格的過程,這是一個被研究了很多年的技術(shù),因為這些點云具有法向量,所以采用Screened Poisson 算法直接將點云轉(zhuǎn)化為三維網(wǎng)格模型,即最終的3D模型。
基于X-Ray表示的3D模型生成
為了生成高分辨率的多樣3D X-Ray模型,該團隊使用了與視頻格式相似的視頻擴散模型架構(gòu)。這個架構(gòu)可以處理連續(xù)的3D信息,并通過上采樣模塊來提高X-Ray的質(zhì)量,生成高精度的3D輸出。擴散模型負(fù)責(zé)從噪聲數(shù)據(jù)逐步生成細(xì)節(jié)豐富的3D圖像,上采樣模塊則增強圖像分辨率和細(xì)節(jié),以達到高質(zhì)量標(biāo)準(zhǔn)。結(jié)構(gòu)具體如圖4所示。
X-Ray 擴散生成模型
擴散模型在X-Ray生成中使用潛在空間,通常需要自定義開發(fā)向量量化-變分自編碼器(VQ-VAE)[3] 進行數(shù)據(jù)壓縮,這一缺少現(xiàn)成模型的過程增加了訓(xùn)練負(fù)擔(dān)。
為有效訓(xùn)練高分辨率生成器,該團隊采用了級聯(lián)合成策略,通過技術(shù)如Imagen和Stable Cascaded,從低到高分辨率逐步訓(xùn)練,以適應(yīng)有限的計算資源并提高X-Ray圖像質(zhì)量。
具體而言,使用Stable Video Diffusion中的3D U-Net架構(gòu)作為擴散模型,生成低分辨率X-Ray,并通過時空注意機制從2D幀和1D時間序列中提取特征,增強處理和解釋X-Ray能力,這對高質(zhì)量結(jié)果至關(guān)重要。
X-Ray 上采樣模型
前一階段的擴散模型僅能從文本或其他圖像生成低分辨率的X-Ray圖像。在隨后的階段,著重提升這些低分辨率X-Ray至更高分辨率。
該團隊探索了兩種主要方法:點云上采樣和視頻上采樣。
由于已經(jīng)獲得了形狀和外觀的粗糙表示,將這些數(shù)據(jù)編碼成帶有顏色和法線的點云是一個很直接的過程。
然而,點云表示結(jié)構(gòu)過于松散,不適合進行密集預(yù)測,傳統(tǒng)的點云上采樣技術(shù)通常只是簡單增加點的數(shù)量,這對于提升諸如紋理和顏色等屬性可能不夠有效。為了簡化流程并確保整個管道的一致性,選擇使用視頻上采樣模型。
這個模型改編自Stable Video Diffusion(SVD)的時空VAE解碼器,專門從頭開始訓(xùn)練,以4倍的因子上采樣合成的X-Ray幀,同時保持原始的層數(shù)。解碼器能夠在幀級和層級上獨立進行注意力操作。這種雙層注意力機制不僅提高了分辨率,還顯著改善了圖像的整體質(zhì)量。這些功能使得視頻上采樣模型成為在高分辨率X-Ray生成中更加協(xié)調(diào)和有效的解決方案。
圖4:基于X-Ray表示的3D模型生成框架,包括X-Ray擴散模型與X-Ray上采樣模型。
實驗
1. 數(shù)據(jù)集:
實驗使用了Objaverse數(shù)據(jù)集的一個篩選子集,從中移除了缺少紋理和不充分提示的條目。
這個子集包含超過60,000個3D對象。對于每個對象,隨機選擇4個攝像機視角,覆蓋從-180到180度的方位角和從-45到45度的仰角,攝像機到對象中心的距離固定為1.5。
然后使用Blender軟件進行渲染,并通過trimesh庫提供的光線投射算法生成相應(yīng)的X-Ray。通過這些過程,可以創(chuàng)建超過240,000對圖像和X-Ray數(shù)據(jù)集來訓(xùn)練生成模型。
2. 實現(xiàn)細(xì)節(jié):
X-Ray擴散模型基于Stable Video Diffusion (SVD) 中使用的時空UNet架構(gòu),進行了輕微調(diào)整:模型配置為合成8個通道:1個命中通道,1個深度通道和6個法線通道,與原始網(wǎng)絡(luò)的4個通道相比。
鑒于X-Ray成像與傳統(tǒng)視頻之間的顯著差異,從頭開始訓(xùn)練模型,以彌補X-Ray與視頻領(lǐng)域之間的大差距。訓(xùn)練在8個NVIDIA A100 GPU服務(wù)器上進行了一周。在此期間,學(xué)習(xí)率保持在0.0001,使用AdamW優(yōu)化器。
由于不同的X-Ray具有不同數(shù)量的層,將它們填充或裁剪到相同的8層,以便更好地批處理和訓(xùn)練,每層的幀尺寸為64×64。對于上采樣模型,第L層的輸出仍然是8,但每個幀的分辨率提高到256×256,增強了放大X-Ray的細(xì)節(jié)和清晰度,結(jié)果如圖5和圖6所示。
圖5:圖像到X-Ray并到3D模型生成
圖6:文本到X-Ray并到3D模型生成
未來展望:新表示帶來無限可能
隨著機器學(xué)習(xí)和圖像處理技術(shù)的不斷進步,X-Ray的應(yīng)用前景無限廣闊。
未來,這種技術(shù)可能會與增強現(xiàn)實(AR)和虛擬現(xiàn)實(VR)技術(shù)結(jié)合,為用戶創(chuàng)造出完全沉浸式的3D體驗。教育和訓(xùn)練領(lǐng)域也可以從中受益,例如通過3D重建提供更為直觀的學(xué)習(xí)材料和模擬實驗。
此外,X-Ray技術(shù)在醫(yī)療影像和生物技術(shù)領(lǐng)域的應(yīng)用,可能改變?nèi)藗儗?fù)雜生物結(jié)構(gòu)的理解和研究方法。期待它如何改變與三維世界的互動方式。