神經(jīng)輻射場(chǎng)去掉“神經(jīng)”,訓(xùn)練速度提升100多倍,3D效果質(zhì)量不減

沒(méi)有了神經(jīng)網(wǎng)絡(luò),輻射場(chǎng)(Radiance Fields)也能達(dá)到和神經(jīng)輻場(chǎng)(Neural Radiance Fields,NeRFs)相同的效果,但收斂速度快了 100 多倍。
2020 年,加州大學(xué)伯克利分校、谷歌、加州大學(xué)圣地亞哥分校的研究者提出了一種名為「NeRF」的 2D 圖像轉(zhuǎn) 3D 模型,可以利用少數(shù)幾張靜態(tài)圖像生成多視角的逼真 3D 圖像。其改進(jìn)版模型 NeRF-W (NeRF in the Wild)還可以適應(yīng)充滿光線變化以及遮擋的戶外環(huán)境,分分鐘生成 3D 旅游觀光大片。
NeRF 模型 demo。
NeRF-W 模型 demo。
然而,這些驚艷的效果是非常消耗算力的:每幀圖要渲染 30 秒,模型用單個(gè) GPU 要訓(xùn)練一天。因此,后續(xù)的多篇論文都在算力成本方面進(jìn)行了改進(jìn),尤其是渲染方面。但是,模型的訓(xùn)練成本并沒(méi)有顯著降低,使用單個(gè) GPU 訓(xùn)練仍然需要花費(fèi)數(shù)小時(shí),這成為限制其落地的一大瓶頸。
在一篇新論文中,來(lái)自加州大學(xué)伯克利分校的研究者瞄準(zhǔn)了這一問(wèn)題,提出了一種名為 Plenoxels 的新方法。這項(xiàng)新研究表明,即使沒(méi)有神經(jīng)網(wǎng)絡(luò),從頭訓(xùn)練一個(gè)輻射場(chǎng)(radiance field)也能達(dá)到 NeRF 的生成質(zhì)量,而且優(yōu)化速度提升了兩個(gè)數(shù)量級(jí)。
他們提供了一個(gè)定制的 CUDA 實(shí)現(xiàn),利用模型的簡(jiǎn)單性來(lái)達(dá)到可觀的加速。在有界場(chǎng)景中,Plenoxels 在單個(gè) Titan RTX GPU 上的典型優(yōu)化時(shí)間是 11 分鐘,NeRF 大約是一天,前者實(shí)現(xiàn)了 100 多倍的加速;在無(wú)界場(chǎng)景中,Plenoxels 的優(yōu)化時(shí)間大約為 27 分鐘,NeRF++ 大約是四天,前者實(shí)現(xiàn)了 200 多倍的加速。雖然 Plenoxels 的實(shí)現(xiàn)沒(méi)有針對(duì)快速渲染進(jìn)行優(yōu)化,但它能以 15 幀 / 秒的交互速率渲染新視點(diǎn)。如果想要更快的渲染速度,優(yōu)化后的 Plenoxel 模型可以被轉(zhuǎn)換為 PlenOctree。
具體來(lái)說(shuō),研究者提出了一個(gè)顯式的體素表示方法,該方法基于一個(gè)不含任何神經(jīng)網(wǎng)絡(luò)的 view-dependent 稀疏體素網(wǎng)格。新模型可以渲染逼真的新視點(diǎn),并利用訓(xùn)練視圖上的可微渲染損失和 variation regularizer 對(duì)校準(zhǔn)的 2D 照片進(jìn)行端到端優(yōu)化。
他們把該模型稱為 Plenoxel(plenoptic volume elements),因?yàn)樗上∈梵w素網(wǎng)格組成,每個(gè)體素網(wǎng)格存儲(chǔ)不透明度和球諧系數(shù)信息。這些系數(shù)被 interpolated,以在空間中連續(xù)建模完整的全光函數(shù)。為了在單個(gè) GPU 上實(shí)現(xiàn)高分辨率,研究者修剪了空體素,并遵循從粗到細(xì)的優(yōu)化策略。雖然核心模型是一個(gè)有界體素網(wǎng)格,但他們可以通過(guò)兩種方法來(lái)建模無(wú)界場(chǎng)景:1)使用標(biāo)準(zhǔn)化設(shè)備坐標(biāo)(用于 forward-facing 場(chǎng)景);用多球體圖像圍繞網(wǎng)格來(lái)編碼背景(用于 360° 場(chǎng)景)。
Plenoxel 在 forward-facing 場(chǎng)景中的效果。
Plenoxel 在 360° 場(chǎng)景中的效果。
該方法表明,我們可以使用標(biāo)準(zhǔn)工具從反問(wèn)題中進(jìn)行逼真體素重建,包括數(shù)據(jù)表示、forward 模型、正則化函數(shù)和優(yōu)化器。這些組件中的每一個(gè)都可以非常簡(jiǎn)單,并且仍然可以實(shí)現(xiàn) SOTA 結(jié)果。實(shí)驗(yàn)結(jié)果表明,神經(jīng)輻射場(chǎng)的關(guān)鍵要素不是神經(jīng)網(wǎng)絡(luò),而是可微分的體素渲染器。
框架概覽
Plenoxel 是一個(gè)稀疏體素網(wǎng)格,其中每個(gè)被占用的體素角存儲(chǔ)一個(gè)標(biāo)量不透明度σ和每個(gè)顏色通道的球諧系數(shù)向量。作者將這種表征稱為 Plenoxel。任意位置和觀察方向上的不透明度和顏色是通過(guò)對(duì)存儲(chǔ)在相鄰體素上的值進(jìn)行三線性插值并在適當(dāng)?shù)挠^察方向上評(píng)估球諧系數(shù)來(lái)確定的。給定一組校準(zhǔn)過(guò)的圖像,直接使用 training ray 上的渲染損失來(lái)優(yōu)化模型。模型的架構(gòu)如下圖 2 所示。
上圖 2 是稀疏 Plenoxel 模型框架的概念圖。給定一組物體或場(chǎng)景的圖像,研究者在每個(gè)體素處用密度和球諧系數(shù)重建一個(gè):(a)稀疏體素(Plenoxel)網(wǎng)格。為了渲染光線,他們(b)通過(guò)鄰近體素系數(shù)的三線性插值計(jì)算每個(gè)樣本點(diǎn)的顏色和不透明度。他們還使用(c)可微體素渲染來(lái)整合這些樣本的顏色和不透明度。然后可以(d)使用相對(duì)于訓(xùn)練圖像的標(biāo)準(zhǔn) MSE 重建損失以及總 variation regularizer 來(lái)優(yōu)化體素系數(shù)。
實(shí)驗(yàn)結(jié)果
研究者在合成的有界場(chǎng)景、真實(shí)的無(wú)界 forward-facing 場(chǎng)景以及真實(shí)的無(wú)界 360° 場(chǎng)景中展示了模型效果。他們將新模型的優(yōu)化時(shí)間與之前的所有方法(包括實(shí)時(shí)渲染)進(jìn)行了對(duì)比,發(fā)現(xiàn)新模型速度顯著提升。定量比較結(jié)果見(jiàn)表 2,視覺(jué)比較結(jié)果如圖 6、圖 7、圖 8 所示。
另外,新方法即使在優(yōu)化的第一個(gè) epoch 之后,也能獲得高質(zhì)量結(jié)果,用時(shí)不到 1.5 分鐘,如圖 5 所示。
使用 NVIDIA Riva 快速構(gòu)建企業(yè)級(jí) ASR 語(yǔ)音識(shí)別助手
NVIDIA Riva 是一個(gè)使用 GPU 加速,能用于快速部署高性能會(huì)話式 AI 服務(wù)的 SDK,可用于快速開(kāi)發(fā)語(yǔ)音 AI 的應(yīng)用程序。Riva 的設(shè)計(jì)旨在幫助開(kāi)發(fā)者輕松、快速地訪問(wèn)會(huì)話 AI 功能,開(kāi)箱即用,通過(guò)一些簡(jiǎn)單的命令和 API 操作就可以快速構(gòu)建高級(jí)別的語(yǔ)音識(shí)別服務(wù)。該服務(wù)可以處理數(shù)百至數(shù)千音頻流作為輸入,并以最小延遲返回文本。