首頁 > AI資訊 > 最新資訊 > 本科生新算法打敗NeRF,不用神經(jīng)網(wǎng)絡(luò)照片也能動起來,提速100倍

本科生新算法打敗NeRF,不用神經(jīng)網(wǎng)絡(luò)照片也能動起來,提速100倍

新火種    2023-09-20
函擎 發(fā)自 凹非寺量子位 報道 | 公眾號 QbitAI萬萬沒想到,把照片變3D這件事,離了神經(jīng)網(wǎng)絡(luò)也是這般絲滑。而在此之前,新視角合成這方面的“大牛”,是近兩年大火的NeRF(神經(jīng)輻射場)。它是一個簡單的全連接神經(jīng)網(wǎng)絡(luò),使用2D圖像的信息作為訓(xùn)練數(shù)據(jù),還原擁有體積的3D場景。但最近,來自伯克利大學(xué)的研究人員提出了一個叫做Plenoxels的方法。不需要神經(jīng)網(wǎng)絡(luò),僅僅通過梯度下降和正則化便實現(xiàn)了同樣的效果,而且速度還快了100倍!那么他們是如何做到這點(diǎn)的呢?由NeRF到Plenoxels的進(jìn)化為了幫助大家理解Plenoxels,我們先來簡單介紹一下NeRF模型。要準(zhǔn)備NeRF的數(shù)據(jù),我們首先需要一部相機(jī)。拍了很多張各個角度的照片后,沿相機(jī)射線將每一張2D圖片的坐標(biāo)與視圖方向構(gòu)成一個5D向量 (x, y, z, θ, φ)作為mlp (多層全連接神經(jīng)網(wǎng)絡(luò))的輸入。我們從圖(b)上可以看到,射線上的點(diǎn)有了顏色,每點(diǎn)的顏色c = (r, g, b)和密度(σ)就是輸出向量。接著NeRF使用體積渲染技術(shù)將得到的顏色與密度進(jìn)行3D渲染。由于渲染函數(shù)是可導(dǎo)的,我們可以最小化合成效果與實際效果的誤差,從而進(jìn)行神經(jīng)網(wǎng)絡(luò)參數(shù)的優(yōu)化。其中mlp使用的參數(shù)多可達(dá)到5MB,實際訓(xùn)練起來就會發(fā)現(xiàn)訓(xùn)練時間十分漫長,通常要1-4天。這個速度與Plenoxels的11分鐘相比確實是無法接受的。2D圖片變3D,聽起來不是個小工程,Plenoxels不用神經(jīng)網(wǎng)絡(luò)是如何實現(xiàn)的呢?其實并不復(fù)雜。Plenoxels發(fā)現(xiàn)NeRF成功的秘訣其實是它的體積渲染方程,與其最耗時的神經(jīng)網(wǎng)絡(luò)關(guān)系不大。那么你一定會好奇這個體積渲染方程究竟是何方神圣,我們就先來看一下。σi代表不透明度,ci代表顏色,δi代表距離。Ti代表有多少光經(jīng)過射線上的點(diǎn)i,是通過密度和距離計算的。這個體積渲染方程其實就是將射線上每個點(diǎn)的顏色,不透明度,光,還有距離進(jìn)行了一個整合處理。體積渲染方程介紹過了,那么不需要神經(jīng)網(wǎng)絡(luò)的Plenoxels是如何表示圖片的呢?Plenoxels首先重建了一個稀疏的體素表格,每個被占用的體素都帶有不透明度和球諧系數(shù)。我們的顏色信息就存儲在這些球諧系數(shù)中,每個顏色通道需要9個系數(shù)表示,一共有三個顏色,那么每個體素就需要27個球諧系數(shù)來表示它的顏色。相機(jī)射線經(jīng)過的每個點(diǎn)的顏色和不透明度,就是通過其最近處的8個體素的三線性插值計算的。接著與NeRF一樣,使用體積渲染技術(shù)將得到的顏色與不透明度進(jìn)行3D渲染。Plenoxels通過對渲染的像素的平均平方誤差(MSE)進(jìn)行最小化,來優(yōu)化體素的不透明度和球諧系數(shù),并且使用TV正則化幫助消除噪聲。我們可以看出,是否使用TV正則化的效果區(qū)別還是很大的!提速100倍,僅需11分鐘我們用最直觀的方法對比一下兩個模型速度上的差距。看到了嗎,只用幾秒Plenoxels就可以達(dá)到一個比較清晰的效果,而NeRF只有一個模糊的影子。同樣是單個場景,NeRF使用型號為v100的單個GPU訓(xùn)練需要耗時1-2天,而Plenoxels使用單個GPU通常只需要11分鐘。這時有一個問題一定縈繞在你的腦海里,速度提升了這么多,效果真的不會受影響嗎?空口無憑,我們還是要用數(shù)據(jù)說話。PSNR(峰值信噪比):是最普遍,最廣泛使用的評鑒畫質(zhì)的客觀量測法,PSNR值越大,就代表失真越少。SSIM(結(jié)構(gòu)相似性):衡量實際圖像和合成圖像的相似度,當(dāng)兩張圖像一模一樣時,SSIM的值等于1。LPIPS(學(xué)習(xí)感知圖像塊相似度):用于度量實際圖像和合成圖像之間的差別,值越低代表圖片越相似。可以看到Plenoxels對比其他模型的表現(xiàn)不說樣樣最好,但也絕不落后他人,關(guān)鍵在于它的速度整整快了兩個數(shù)量級!正因為Plenoxels速度上的大幅提升,使得一些目前處于瓶頸的下游應(yīng)用變得可能,例如多次反射照明(multi-bounce lighting)和大型場景的3D建模(3D generative models)。如果能在相機(jī)和體素散列上進(jìn)行有效優(yōu)化,模型甚至可以讓端到端三維重建成為擁有pipeline的實際應(yīng)用。相信Plenoxels的潛力不僅于此,讓我們一起期待它落地后的成果吧!UC伯克利本科生一作效果強(qiáng)勁的Plenoxels來自UC伯克利的學(xué)生團(tuán)隊,一作Alex Yu還是一名本科生。在大學(xué)里,他不僅同時學(xué)習(xí)計算機(jī)和應(yīng)用數(shù)學(xué)兩門專業(yè),還在伯克利的BAIR( Berkeley Artificial Intelligence Research)實驗室進(jìn)行3D計算機(jī)視覺的相關(guān)研究。Alex計劃在2022的秋季開始他的PhD旅程,讓人不禁感嘆AI界真是人才輩出。在未來經(jīng)過PhD的學(xué)習(xí)后,他又會迸發(fā)出怎樣的能量呢,讓我們一起拭目以待吧!GitHub代碼開源目前,Plenoxels項目的代碼已經(jīng)在GitHub上開源。小伙伴們要注意的是,拍攝照片的時候要盡可能環(huán)繞物體,并且嘗試不同的高度哦。快來試試效果如何吧!參考鏈接:[1]/uploads/pic/20230919/Plenoxels-explained
相關(guān)推薦
免責(zé)聲明
本文所包含的觀點(diǎn)僅代表作者個人看法,不代表新火種的觀點(diǎn)。在新火種上獲取的所有信息均不應(yīng)被視為投資建議。新火種對本文可能提及或鏈接的任何項目不表示認(rèn)可。 交易和投資涉及高風(fēng)險,讀者在采取與本文內(nèi)容相關(guān)的任何行動之前,請務(wù)必進(jìn)行充分的盡職調(diào)查。最終的決策應(yīng)該基于您自己的獨(dú)立判斷。新火種不對因依賴本文觀點(diǎn)而產(chǎn)生的任何金錢損失負(fù)任何責(zé)任。

熱門文章