一句話搞定3D模型紋理貼圖,全程只需30秒
本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
用上擴(kuò)散模型,3D物體生成紋理一句話就能搞定!
像是輸入“一張帶有棕色和黑色幾何圖案的椅子”,擴(kuò)散模型就能立刻給它復(fù)個(gè)古,貼上頗具年代感的紋理:
甚至只是丟給它一張看不出桌面長啥樣的“截圖”,AI也能立刻憑借想象力,給桌面加上木質(zhì)的細(xì)節(jié)紋理:
要知道,給3D物體加上紋理,可不只是“變變顏色”這么簡單。
它包含粗糙度、反射、透明、漩渦、泛光等大量參數(shù),要想設(shè)計(jì)好不僅需要了解材質(zhì)、燈光、渲染等知識(shí),還需要反復(fù)測試渲染效果并修改。如果材質(zhì)有變,更是可能“重頭來過”。
△游戲場景中紋理丟失的效果
然而,此前用AI設(shè)計(jì)出來的紋理又“不太能看”,因此設(shè)計(jì)紋理一直費(fèi)時(shí)費(fèi)力,成本也比較高。
現(xiàn)在,來自港大、港中文和TCL的研究人員,搞出了一種AI設(shè)計(jì)3D物體紋理的新方法,不僅完美保留物體之前的形狀,而且設(shè)計(jì)出來的紋理真實(shí)感更強(qiáng)、完美貼合物體表面。
目前這項(xiàng)研究已經(jīng)被ICCV 2023收錄Oral論文。
這究竟是怎么做到的?我們一起來看看。
用上擴(kuò)散模型,3D紋理一句話搞定
此前用AI設(shè)計(jì)3D紋理,主要存在兩類問題。
一類是生成的紋理不真實(shí),細(xì)節(jié)有限:
另一類是生成過程中會(huì)對(duì)3D物體本身的幾何做特殊處理,使得生成的紋理無法和原物體完美貼合,會(huì)“冒出”奇怪的形狀:
因此,為了能確保3D物體結(jié)構(gòu)穩(wěn)定、同時(shí)生成細(xì)節(jié)逼真的紋理,這項(xiàng)研究設(shè)計(jì)了一個(gè)名叫Point-UV diffusion的框架。
這個(gè)框架包含“粗設(shè)計(jì)”和“精加工”兩個(gè)模塊,都基于擴(kuò)散模型打造,不過二者用到的擴(kuò)散模型有所不同。
首先在“粗設(shè)計(jì)”模塊中,訓(xùn)練一個(gè)以形狀特征(包括表面法線、坐標(biāo)和遮罩)為輸入條件的3D擴(kuò)散模型,用來預(yù)測物體形狀中每個(gè)點(diǎn)的顏色,從而生成一個(gè)粗糙紋理圖像效果:
然后在“精加工”模塊中,又設(shè)計(jì)了一個(gè)2D擴(kuò)散模型,進(jìn)一步將之前生成的粗糙紋理圖像和物體形狀作為輸入條件,用來生成更加精細(xì)的紋理:
之所以采取這種設(shè)計(jì)結(jié)構(gòu),是因?yàn)橹暗母叻直媛庶c(diǎn)云生成方法,計(jì)算成本通常過高。
用這種兩階段生成的方法,不僅節(jié)省了計(jì)算成本,讓兩個(gè)擴(kuò)散模型“各司其職”,而且相比之前的方法,不僅保留了原來3D物體的結(jié)構(gòu),生成的紋理也要更加精細(xì)。
至于通過輸入文字或圖片控制生成效果,則是CLIP的“功勞”。
針對(duì)輸入,作者會(huì)先用預(yù)訓(xùn)練的CLIP模型提取文本或圖像embeddings,然后將它輸入一個(gè)MLP模型中,最終將條件整合進(jìn)“粗設(shè)計(jì)”和“精加工”兩階段的網(wǎng)絡(luò)中。
這樣一來,就能實(shí)現(xiàn)通過文字和圖像控制生成的紋理,從而得到最終輸出結(jié)果。
所以,這樣的模型實(shí)現(xiàn)效果究竟如何?
生成速度從10分鐘縮短至30秒
先來看看Point-UV diffusion的生成效果。
從效果圖中可見,除了桌椅,Point-UV diffusion同樣還能生成汽車等物體的紋理,種類更豐富:
不僅能根據(jù)文字生成紋理:
也能根據(jù)一張圖像生成對(duì)應(yīng)物體的紋理效果:
除此之外,作者們還將Point-UV diffusion生成紋理效果與之前的方法做了個(gè)對(duì)比。
從圖中可見,與Texture Fields、Texturify、PVD-Tex等其他紋理生成模型相比,Point-UV diffusion在結(jié)構(gòu)和精細(xì)度上都表現(xiàn)出了更好的效果。
作者還提到,同樣硬件配置下,相比Text2Mesh需要10分鐘的計(jì)算,Point-UV diffusion只需要30秒。
不過,作者也提到了Point-UV diffusion目前還存在的一些局限之處,例如當(dāng)UV貼圖存在太多“碎片化”的部分時(shí),它還是無法生成無縫的紋理效果。此外,由于依賴3D數(shù)據(jù)進(jìn)行訓(xùn)練,而3D 數(shù)據(jù)的精細(xì)化質(zhì)量和數(shù)量目前還不能達(dá)到2D 數(shù)據(jù)的水平,生成的效果暫時(shí)還無法達(dá)到像2D圖像生成那么精細(xì)化的效果。
對(duì)這項(xiàng)研究感興趣的小伙伴,可以戳下方論文看看~
論文地址:https://cvmi-lab.github.io/Point-UV-Diffusion/paper/point_uv_diffusion.pdf
項(xiàng)目地址(還在施工中):https://github.com/CVMI-Lab/Point-UV-Diffusion