這般絲滑的美食展示,是否讓跟隨鏡頭移動的你食指大動?

再看這放大鏡里流暢變化的彈簧,你敢相信,這完全是用靜態圖像合成的嗎?

沒錯,這樣的動圖並非截自視頻,而是來自AI的合成大法。
甚至只需手機隨手拍攝的十幾張2D照片,就能實時渲染生成。
比起大名鼎鼎的谷歌前輩NeRF,這隻名為NeX的AI,能直接把每秒渲染幀數從0.02幀提升到60幀。

也就是說,渲染速度能提升3個數量級。
細節之處,也更加接近真實效果。

這項已經入選CVPR 2021 Oral的研究,是怎麼做到的?
像素參數與基函數結合
多平面圖像(MPI)視圖合成技術,使得不用3D建模,只用少數幾張圖像還原多視角逼真3D效果成為可能。
不過,此前的MPI主要採用的是標準RBGα表示法,簡單說就是把圖像轉換成RGBα平面,以進行後續的計算。
這樣做的局限性在於,其表示出的物體外觀僅與漫反射表面有關,與視角無關。
這就極大地限制了MPI可以捕捉的物體和場景類型。
為此,來自泰國科學技術研究所VISTEC的研究人員提出:將每個像素的參數轉化為基函數的係數,進行線性組合,並以此創建與視圖相關的效果模型。

就如上圖所示,多平面圖像中每個像素都由alpha透明值、基色k0和視圖相關的反射係數k1…kn組成。
將這些係數和神經網絡預測的基函數進行線性組合,就產生了最終的顏色值。
如此一來,像金屬勺子在不同視角下的反射效果這樣的信息,都能在合成圖像中顯示出來。

具體到整個NeX的結構,對於輸入圖像,首先根據不同平面深度,對像素坐標(x,y)進行採樣,以構建出MPI中的每個像素。
然後,把這個數據餵給多層感知機(MLP),得到alpha透明度,以及和視圖相關的基礎係數(k1,k2,…,kn)。
這些係數再與顯式的k0一起,與另一個MLP預測的基函數相乘,生成RGB值。
輸出圖像,如公式1所示,為所有平面複合運算的結果。

而在細節效果的提升方面,研究人員人員發現,通過比較渲染圖像和真實值之間的差距,對基色k0進行優化,就可以得到很好的效果,顯著減輕網絡壓縮和細節重現的負擔,減少迭代次數。
研究人員還補充說,NeX可以被理解成是隱式輻射場函數的離散抽樣。

至於實時渲染,論文指出,NeX MPI中的每一個模型參數都可以轉換為圖像。而給定預先計算好的圖像,就可以在OpenGL/WebGL的片段着色器中實現上述公式1,實現捕獲場景的實時渲染。
實驗結果
有NeRF珠玉在前,NeX具體到數據上,到底有怎樣的提升?
在運行時間方面,輸入17張分辨率為1008×756的照片,批量大小為1的情況下,使用單個英偉達V100訓練,NeX的耗時大概為18小時。
使用WebGL,此場景可以以每秒60幀的速度被渲染出來。
而在同一台機器上運行,NeRF則需要大約55秒才能生成一幀。
也就是說,NeX的渲染速度比NeRF要快1000倍以上。

與SRN、LLFF和NeRF相比,在峰值信噪比、結構相似性和圖像感知相似度這三個指標上,NeX都達到了最佳。

而在定性比較中,可以看到,與NeRF相比,在顏色均勻的區域,NeX細節更清晰,噪聲更少,更接近真實值。
LLFF雖然細節表現也很好,但當結果以視頻形式呈現時,會產生跳躍和扭曲偽影。
可上手試玩
對了,如果你對NeX感興趣,還可以到項目官網親自感受一下實時渲染Demo。

還有手機版和VR版喲。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/268667.html
微信掃一掃
支付寶掃一掃