目錄
技術革新:物體內部外表面的3D表示方法
基於X-Ray表示的3D模型產生
X-Ray 擴散生成模型
X-Ray 上取樣模型
實驗
未来展望:新表示带来无限可能
首頁 科技週邊 人工智慧 看透物體的3D表示與生成模型:NUS團隊提出X-Ray

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

May 06, 2024 pm 06:30 PM
git 模型 訓練

看透物體的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
  • 資料集:https://huggingface.co/datasets/yihouxiang/X-Ray

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

目前,人工智慧在人類智慧領域迅速發展。在電腦視覺中,影像和視訊生成技術已經日益成熟,如Midjourney、Stable Video Diffusion等模型廣泛應用。然而,三維視覺領域的生成模型仍面臨挑戰。

目前的3D模型生成技術通常基於多角度視訊生成和重建,例如SV3D模型,透過產生多角度視訊並結合神經輻射場(NeRF)或3D高斯光滑模型( 3D Gaussian Splatting技術)逐步建構3D物體。這種方法主要限制在只能產生簡單的、無自遮蔽的三維物體,無法呈現物體內部結構,使得整個生成過程複雜且不完美,顯示出該技術的複雜性和局限性。

究其原因,在於目前缺乏靈活高效且容易泛化的3D Representation (3D表示)。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

圖1. X-Ray序列化3D表示

新加坡國立大學(NUS)胡潤博士帶領研究團隊發布了一種全新的3D表現——X射線,它能夠順序化地表現從相機攝像角度看過去的物體的透層次的物體表面形狀和紋理,可以充分利用視頻生成功能來生成模型優勢來產生3D物體,可以同時產生物體的內外3D結構。

本文將詳細展示X-Ray技術的原理、優勢及其廣泛的應用前景。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

圖2. 與基於渲染的3D模型產生方法比較。

技術革新:物體內部外表面的3D表示方法

X-Ray表示:從相機中心開始朝向物體方向的H×W個矩陣點發射射線。在每條射線方向上,逐一記錄與物體的表面相交點的L個包含深度、法向量和顏色等的三維屬性數據,然後將這些數據組織成L×H×W的形式,實現任意3D模型的張量表示,這就是該團隊提出的X-Ray表示方法。

值得注意的是,此表示形式與影片格式一樣,因此可以用影片產生模型做3D生成模型。具體過程如下。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

圖3. X-Ray 不同層數的範例樣本。

1.編碼過程: 3D模型轉X-Ray

#給定一個3D模型,通常是三維網格,首先設定一個相機觀測模型,然後透過光線投影演算法(Ray Casting Algorithm)來記錄每個相機射線與物體相交的所有表面的屬性看透物體的3D表示與生成模型:NUS團隊提出X-Ray#,包括該表面的深度看透物體的3D表示與生成模型:NUS團隊提出X-Ray,法向量看透物體的3D表示與生成模型:NUS團隊提出X-Ray,顏色看透物體的3D表示與生成模型:NUS團隊提出X-Ray等,為了指示方便,用看透物體的3D表示與生成模型:NUS團隊提出X-Ray表示該位置是否存在表面。

然後,取得所有相機射線等相交表麵點,即可得到一個完整的X-Ray 3D表達,如下表達式和圖3所示。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

#

透過編碼過程,將一個任意的3D模型轉換為X-Ray,它和視訊格式是一樣的,並且具有不同的幀數,通常情況下,幀數L=8 足夠表示一個3D物體。

2.解碼過程:X-Ray轉3D模型

#給定一個X-Ray,也可以透過解碼過程轉換回3D模型,這樣只需要透過生成X-Ray即可產生3D模型。具體過程包括點雲生成過程和點雲重建表面兩個過程。

  • X-Ray到點雲:X-Ray很容易轉化為點雲,該點雲中的每個點除了有3D點的位置座標,還具有顏色和法向量資訊。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

#其中r_0,r_d分別是相機射線的起點和歸一化方向,透過每個相機射線的處理,就可以得到一個完整的點雲。

  • 點雲到立體網格:#接下來就是將點雲轉換為三維網格的過程,這是一個被研究了很多年的技術,因為這些點雲具有法向量,所以採用Screened Poisson 演算法直接將點雲轉換為三維網格模型,也就是最終的3D模型。

基於X-Ray表示的3D模型產生

為了產生高解析度的多樣化3D X-Ray模型,該團隊使用了與視訊格式相似的視訊擴散模型架構。這個架構可以處理連續的3D訊息,並透過上採樣模組來提高X-Ray的質量,產生高精度的3D輸出。擴散模型負責從雜訊資料逐步產生細節豐富的3D影像,上取樣模組則增強影像解析度和細節,以達到高品質標準。結構具體如圖4所示。

X-Ray 擴散生成模型

#擴散模型在X-Ray生成中使用潛在空間,通常需要自訂開發向量量化-變分自編碼器(VQ-VAE)[3] 進行資料壓縮,這缺少現成模型的過程增加了訓練負擔。

為有效訓練高解析度產生器,該團隊採用了級聯合成策略,透過技術如Imagen和Stable Cascaded,從低到高解析度逐步訓練,以適應有限的計算資源並提高X-Ray圖像品質。

具體而言,使用Stable Video Diffusion中的3D U-Net架構作為擴散模型,產生低解析度X-Ray,並透過時空注意機制從2D幀和1D時間序列中提取特徵,增強處理和解釋X-Ray能力,這對高品質結果至關重要。

X-Ray 上取樣模型

前一階段的擴散模型只能從文字或其他影像產生低解析度的X- Ray圖像。在隨後的階段,著重提升這些低解析度X-Ray至更高解析度。

該團隊探索了兩種主要方法:點雲上取樣和視訊上取樣。

由於已經獲得了形狀和外觀的粗糙表示,將這些資料編碼成帶有顏色和法線的點雲是一個很直接的過程。

然而,點雲表示結構過於鬆散,不適合進行密集預測,傳統的點雲上採樣技術通常只是簡單增加點的數量,這對於提升諸如紋理和顏色等屬性可能不夠有效。為了簡化流程並確保整個管道的一致性,選擇使用視訊上取樣模型。

這個模型改編自Stable Video Diffusion(SVD)的時空VAE解碼器,專門從頭開始訓練,以4倍的因子上採樣合成的X-Ray幀,同時保持原始的層數。解碼器能夠在幀級和層級上獨立進行注意力操作。這種雙層注意力機制不僅提高了分辨率,還顯著改善了影像的整體品質。這些功能使得視訊上取樣模型成為在高解析度X-Ray生成中更協調和有效的解決方案。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

圖4:基於X-Ray表示的3D模型產生框架,包括X-Ray擴散模型與X-Ray上取樣模型。

實驗

1.資料集:

實驗使用了Objaverse資料集的一個篩選子集,從中移除了缺少紋理和不充分提示的條目。

這個子集包含超過60,000個3D物件。對於每個對象,隨機選擇4個攝影機視角,涵蓋從-180到180度的方位角和從-45到45度的仰角,攝影機到對像中心的距離固定為1.5。

然後使用Blender軟體進行渲染,並透過trimesh庫提供的光線投射演算法產生對應的X-Ray。透過這些過程,可以創建超過240,000對圖像和X-Ray資料集來訓練生成模型。

2. 實作細節:

#

X-Ray扩散模型基于Stable Video Diffusion (SVD) 中使用的时空UNet架构,进行了轻微调整:模型配置为合成8个通道:1个命中通道,1个深度通道和6个法线通道,与原始网络的4个通道相比。

鉴于X-Ray成像与传统视频之间的显著差异,从头开始训练模型,以弥补X-Ray与视频领域之间的大差距。训练在8个NVIDIA A100 GPU服务器上进行了一周。在此期间,学习率保持在0.0001,使用AdamW优化器。

由于不同的X-Ray具有不同数量的层,将它们填充或裁剪到相同的8层,以便更好地批处理和训练,每层的帧尺寸为64×64。对于上采样模型,第L层的输出仍然是8,但每个帧的分辨率提高到256×256,增强了放大X-Ray的细节和清晰度,结果如图5和图6所示。

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

图5:图像到X-Ray并到3D模型生成

看透物體的3D表示與生成模型:NUS團隊提出X-Ray

图6:文本到X-Ray并到3D模型生成

未来展望:新表示带来无限可能

随着机器学习和图像处理技术的不断进步,X-Ray的应用前景无限广阔。

未来,这种技术可能会与增强现实(AR)和虚拟现实(VR)技术结合,为用户创造出完全沉浸式的3D体验。教育和训练领域也可以从中受益,例如通过3D重建提供更为直观的学习材料和模拟实验。

此外,X-Ray技术在医疗影像和生物技术领域的应用,可能改变人们对复杂生物结构的理解和研究方法。期待它如何改变与三维世界的互动方式。 

以上是看透物體的3D表示與生成模型:NUS團隊提出X-Ray的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1653
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1251
29
C# 教程
1224
24
git怎麼更新代碼 git怎麼更新代碼 Apr 17, 2025 pm 04:45 PM

更新 git 代碼的步驟:檢出代碼:git clone https://github.com/username/repo.git獲取最新更改:git fetch合併更改:git merge origin/master推送更改(可選):git push origin master

git怎麼下載項目到本地 git怎麼下載項目到本地 Apr 17, 2025 pm 04:36 PM

要通過 Git 下載項目到本地,請按以下步驟操作:安裝 Git。導航到項目目錄。使用以下命令克隆遠程存儲庫:git clone https://github.com/username/repository-name.git

git怎麼合併代碼 git怎麼合併代碼 Apr 17, 2025 pm 04:39 PM

Git 代碼合併過程:拉取最新更改以避免衝突。切換到要合併的分支。發起合併,指定要合併的分支。解決合併衝突(如有)。暫存和提交合併,提供提交消息。

git下載不動怎麼辦 git下載不動怎麼辦 Apr 17, 2025 pm 04:54 PM

解決 Git 下載速度慢時可採取以下步驟:檢查網絡連接,嘗試切換連接方式。優化 Git 配置:增加 POST 緩衝區大小(git config --global http.postBuffer 524288000)、降低低速限制(git config --global http.lowSpeedLimit 1000)。使用 Git 代理(如 git-proxy 或 git-lfs-proxy)。嘗試使用不同的 Git 客戶端(如 Sourcetree 或 Github Desktop)。檢查防火

git commit怎麼用 git commit怎麼用 Apr 17, 2025 pm 03:57 PM

Git Commit 是一種命令,將文件變更記錄到 Git 存儲庫中,以保存項目當前狀態的快照。使用方法如下:添加變更到暫存區域編寫簡潔且信息豐富的提交消息保存並退出提交消息以完成提交可選:為提交添加簽名使用 git log 查看提交內容

如何解決PHP項目中的高效搜索問題? Typesense助你實現! 如何解決PHP項目中的高效搜索問題? Typesense助你實現! Apr 17, 2025 pm 08:15 PM

在開發一個電商網站時,我遇到了一個棘手的問題:如何在大量商品數據中實現高效的搜索功能?傳統的數據庫搜索效率低下,用戶體驗不佳。經過一番研究,我發現了Typesense這個搜索引擎,並通過其官方PHP客戶端typesense/typesense-php解決了這個問題,大大提升了搜索性能。

git怎麼更新本地代碼 git怎麼更新本地代碼 Apr 17, 2025 pm 04:48 PM

如何更新本地 Git 代碼?用 git fetch 從遠程倉庫拉取最新更改。用 git merge origin/<遠程分支名稱> 將遠程變更合併到本地分支。解決因合併產生的衝突。用 git commit -m "Merge branch <遠程分支名稱>" 提交合併更改,應用更新。

git怎麼刪除倉庫 git怎麼刪除倉庫 Apr 17, 2025 pm 04:03 PM

要刪除 Git 倉庫,請執行以下步驟:確認要刪除的倉庫。本地刪除倉庫:使用 rm -rf 命令刪除其文件夾。遠程刪除倉庫:導航到倉庫設置,找到“刪除倉庫”選項,確認操作。

See all articles