高亮反光終結(jié)者?谷歌NeRF-Casting:光線追蹤就能搞定!
NeRF不再“畏懼”近處高光反射
早期的NeRF變體使用多層感知器(MLPs)從三維坐標(biāo)映射到體積密度和視點(diǎn)相關(guān)的顏色,但是表示詳細(xì)的三維幾何和顏色所需的大型MLPs訓(xùn)練和評估速度極慢。最近的工作專注于通過用類似體素網(wǎng)格的數(shù)據(jù)結(jié)構(gòu)或網(wǎng)格和小型MLPs的組合替代大型MLPs,使NeRF更加高效。雖然可以擴(kuò)展到表示詳細(xì)的大規(guī)模場景,但其優(yōu)勢僅限于三維幾何和主要的漫反射顏色。
擴(kuò)展NeRF建?,F(xiàn)實(shí)的視點(diǎn)相關(guān)外觀的能力仍然是一個(gè)挑戰(zhàn)。當(dāng)前先進(jìn)的用于閃亮物體視圖合成的模型在兩個(gè)方面存在限制:
- 只能合成遠(yuǎn)處環(huán)境光照的準(zhǔn)確反射,而在渲染近處場景內(nèi)容的逼真反射方面表現(xiàn)不佳。
- 依賴大型MLPs來表示任何點(diǎn)的視點(diǎn)相關(guān)出射輻射,難以擴(kuò)展到具有詳細(xì)反射的更大現(xiàn)實(shí)場景。
NeRF-Casting是一種通過將光線追蹤引入NeRF渲染模型來解決這些問題的方法。其主要涉及3個(gè)領(lǐng)域:
- 反射建模:傳統(tǒng)的反射建模方法使用物理定律和基于圖像的技術(shù)來表示表面反射特性。近年來,神經(jīng)網(wǎng)絡(luò)被用于學(xué)習(xí)反射特性,特別是在復(fù)雜材料和光照條件下。
- 光線追蹤:光線追蹤是一種廣泛使用的計(jì)算機(jī)圖形技術(shù),通過模擬光線與物體表面的交互來生成逼真的圖像。光線追蹤技術(shù)已被用于生成高質(zhì)量的反射和折射效果,但計(jì)算復(fù)雜度高。
- 三維成像:三維成像技術(shù)涉及從多視圖數(shù)據(jù)生成三維表示。NeRF和其他神經(jīng)網(wǎng)絡(luò)方法通過學(xué)習(xí)場景的三維幾何和顏色分布,生成新視圖,從而在三維成像領(lǐng)域取得了重大進(jìn)展。
NeRF-Casting不是在每個(gè)相機(jī)射線的點(diǎn)上查詢昂貴的MLP以獲得視點(diǎn)相關(guān)的外觀,而是從這些點(diǎn)投射反射射線到NeRF幾何中,采樣正確抗鋸齒的反射場景內(nèi)容特征,并使用一個(gè)小型MLP將這些特征解碼為反射顏色。將光線投射到恢復(fù)的NeRF中自然地合成了近處和遠(yuǎn)處內(nèi)容的一致反射。此外,通過光線追蹤計(jì)算外觀減少了在場景中的每個(gè)點(diǎn)用大型MLP表示高度詳細(xì)的視點(diǎn)相關(guān)函數(shù)的負(fù)擔(dān)。
感興趣的朋友可以看視頻效果:https://nerf-casting.github.io
模型細(xì)節(jié)
NeRF-Casting的三個(gè)主要目標(biāo):
- 希望在不依賴計(jì)算量大的MLP評估的情況下建模出準(zhǔn)確、詳細(xì)的反射。
- 希望僅投射少量的反射光線。
- 希望最小化在這些反射光線的每個(gè)點(diǎn)上查詢我們表示所需的計(jì)算量。
三維體積密度和特征表示基于Zip-NeRF[2]:使用多尺度哈希網(wǎng)格來存儲三維特征,一個(gè)小型MLP(1層,寬度64)將這些特征解碼為密度,一個(gè)較大的MLP(3層,寬度256)將這些特征解碼為顏色。這意味著沿光線查詢樣本的密度和特征相對便宜??紤]到這些約束,按照以下流程來渲染鏡面外觀:
- 沿每條相機(jī)光線查詢體積密度,以計(jì)算光線的預(yù)期終止點(diǎn)和表面法線。
- 在反射方向上通過預(yù)期終止點(diǎn)投射一個(gè)反射錐。
- 使用一個(gè)小型MLP將累積的反射特征與其他采樣量(例如漫反射顏色特征和每個(gè)樣本的混合權(quán)重)結(jié)合起來,為沿光線的每個(gè)樣本生成一個(gè)顏色值。
- 將這些樣本和密度進(jìn)行阿爾法合成,得到最終顏色。
反射錐追蹤
然后通過反射初始光線關(guān)于表面法線來構(gòu)建一個(gè)新的反射光線方向
圓錐形反射特征
現(xiàn)在已經(jīng)定義了一個(gè)vMF分布,涵蓋了反射射線,目標(biāo)是估計(jì)在vMF分布上的預(yù)期體積渲染特征,然后將其解碼為反射顏色。這個(gè)預(yù)期特征可以寫成:
使用蒙特卡洛方法對隨機(jī)采樣的射線進(jìn)行積分估計(jì)是非常昂貴的,因?yàn)槊總€(gè)樣本都需要沿著射線進(jìn)行體積渲染。受Zip-NeRF的啟發(fā),使用一小組代表性樣本結(jié)合特征減權(quán)來近似這個(gè)積分。然而與Zip-NeRF不同的是,我們將這兩個(gè)操作都在二維方向域中執(zhí)行,而不是在三維歐幾里得空間中。
方向采樣
反射特征降權(quán)
上文描述的方向采樣有助于選擇一個(gè)小的代表性射線集合進(jìn)行平均。然而,對于具有高粗糙度的表面,采樣的射線可能相對于底層的3D網(wǎng)格單元格之間距離較遠(yuǎn)。這意味著方程9中的特征可能存在偽影,并且反射射線方向的微小變化可能導(dǎo)致外觀上的大幅變化。
為了防止這種情況發(fā)生,將Zip-NeRF中的“特征降權(quán)”技術(shù)調(diào)整到方向設(shè)置中。通過將與vMF錐相比較小的體素對應(yīng)的特征乘以一個(gè)小的乘數(shù)來實(shí)現(xiàn)這一點(diǎn),減小它們對渲染顏色的影響。按照Zip-NeRF的做法,定義點(diǎn) x 處的降權(quán)特征為:
顏色解碼器
顏色解碼器的作用是為沿射線的每個(gè)采樣點(diǎn)分配一種顏色,使用兩種顏色分量的凸組合:
第一個(gè)顏色分量Cv類似于典型的 NeRF 視角相關(guān)外觀模型:
第二個(gè)分量Cr,旨在模擬光澤外觀,計(jì)算如下:
幾何表示和正則化
效果欣賞
總結(jié)一下
NeRF-Casting是一種使用神經(jīng)輻射場(NeRF)渲染包含高光物體的場景的方法。
方法:將反射錐從場景中的表面反射并通過NeRF進(jìn)行追蹤,并結(jié)合了一套新穎的技術(shù)來抗鋸齒這些反射,從而能夠合成遠(yuǎn)處和近場內(nèi)容的準(zhǔn)確詳細(xì)反射,這些反射在表面上始終如一且平滑地移動(dòng)。
討論:在定量上優(yōu)于現(xiàn)有的視圖合成技術(shù),特別是對于顯示詳細(xì)鏡面反射的光滑表面。定性的視覺改進(jìn)在圖像指標(biāo)方面的定量改進(jìn)遠(yuǎn)遠(yuǎn)超過了。尤其值得注意的是,該方法合成的反射平滑而一致的運(yùn)動(dòng),比基線方法呈現(xiàn)的視角相關(guān)外觀更加逼真。這表明標(biāo)準(zhǔn)的圖像誤差度量(PSNR、SSIM等)不足以評估視角相關(guān)外觀的質(zhì)量。