博客專欄

EEPW首頁 > 博客 > SceneRF:具有輻射場的自監(jiān)督單目三維場景重建

SceneRF:具有輻射場的自監(jiān)督單目三維場景重建

發(fā)布人:計算機視覺工坊 時間:2022-12-22 來源:工程師 發(fā)布文章
作者丨泡椒味的口香糖

來源丨 GiantPandaCV

之前一直都是在基于ColMap、OpenMVG、OpenMVS這些傳統(tǒng)多視圖幾何的方法進行三維重建,但這些框架一方面無法在線端到端得完成重建,另一方面需要很多張高質(zhì)量的RGB圖。深度學習三維重建的方案往往又需要大量的標簽來訓練,泛化能力也比較弱,自監(jiān)督3D重建方案一般也是去重建某個目標物體,直接對場景進行重建的工作還比較少。偶然間看到了SceneRF這篇論文,它可以基于單幀圖像進行三維重建,感覺很神奇!

SceneRF這項工作是基于NeRF的,其實將NeRF應(yīng)用到三維重建領(lǐng)域的工作已經(jīng)有很多了,但應(yīng)用到單目三維重建上的文章還比較少。因此筆者希望能夠帶領(lǐng)讀者一起閱讀一下這篇文章。當然筆者水平有限,若有理解不當?shù)牡胤剑瑲g迎各位一起探討,共同學習。

注意,這篇論文也是2022 CVPR論文"MonoScene: Monocular 3D Semantic Scene Completion"同一作者的工作,其實兩項工作的思路相同,只不過MonoScene是監(jiān)督方案,SceneRF是自監(jiān)督方案。MonoScene和SceneRF這兩項工作都開源,讀者可以在它們的基礎(chǔ)上完成自己的工作。

1. 論文信息

標題:SceneRF: Self-Supervised Monocular 3D Scene Reconstruction with Radiance Fields

作者:Anh-Quan Cao, Raoul de Charette

機構(gòu):Inria (法國國家信息與自動化研究所)

原文鏈接:https://arxiv.org/abs/2212.02501v1

代碼鏈接:https://astra-vision.github.io/SceneRF

2. 摘要

在文獻中,從二維圖像進行三維重建已經(jīng)得到了廣泛的研究,但往往仍然需要幾何監(jiān)督。在本文中,我們提出了SceneRF,一種自監(jiān)督的單目場景重建方法,該方法使用神經(jīng)輻射場(NeRF)從多個帶有姿態(tài)的圖像序列中學習。為了改進幾何預(yù)測,我們引入了新的幾何約束和一種新的概率采樣策略,有效地更新了輻射場。由于后者是基于單幀的,場景重建是通過融合多個合成的新深度視圖來實現(xiàn)的。這是由我們的球形****實現(xiàn)的,它允許超出輸入幀視場的幻覺。深入的實驗表明,我們在新的深度視圖合成和場景重建的所有指標上都優(yōu)于所有基線。

3. 算法分析

如圖1所示是SceneRF的具體效果,也就是輸入單幀圖像,輸出新深度/視點,并進行復(fù)雜場景的3D重建。

圖片

圖1 SceneRF自監(jiān)督單目場景重建結(jié)果

SceneRF首先給定序列的第一個輸入幀(I1)并提取特征體積W。然后隨機選擇一個源幀Ij,從中隨機采樣像素。給定已知位姿和相機內(nèi)參,沿著經(jīng)過這些像素的射線有效地采樣N個點。然后將每個采樣點投影到一個球面上,這樣就可以通過雙線性插值檢索出對應(yīng)的輸入圖像特征向量。再傳遞給NeRF的MLP層,伴隨觀察方向和位置編碼,就可以預(yù)測輸入幀坐標中的體素密度和RGB顏色。

SceneRF這篇文章的主要創(chuàng)新點在于,在訓練每條射線r時,顯式地用重投影損失Lreproj來優(yōu)化深度D,引入概率射線采樣策略(PrSamp)來更有效地采樣點,并提出了一個帶有球形****的U-Net。

圖片

圖2 SceneRF框架

綜上所述,作者提出了一個完全自監(jiān)督的3D重建模型,主要貢獻如下:

(1) 在PixelNeRF的基礎(chǔ)上明確優(yōu)化深度,并提出了一個高效的球面U網(wǎng)(SU-Net),使得可以使用NeRF進行場景重建

(2) 介紹了一種概率射線采樣策略(PrSamp)學習用高斯混合表示連續(xù)密度體積,提高性能和效率,

(3) 提出了第一個使用單視圖作為輸入的自監(jiān)督大場景重建方法。在具有挑戰(zhàn)性的駕駛場景上的結(jié)果表明,該方法甚至優(yōu)于深度監(jiān)督的基線。

3.1 用于新深度合成的NeRF

NeRF主要是優(yōu)化連續(xù)的體積輻射場f,使得對于給定的三維點和方向,可以返回一個體素密度和RGB顏色。在SceneRF中,作者主要是基于PixelNeRF來實現(xiàn)NeRF的,這個過程可以表達為:

圖片

這個公式中規(guī)中矩,SceneRF主要創(chuàng)新點之一是在NeRF中引入一種新的深度損失。與大多數(shù)NeRF不同,SceneRF尋求從輻射體積中顯式地解出深度,因此定義深度估計D為:

圖片

其中di為i點到采樣位置的距離。

那么具體是什么深度損失呢?為了實現(xiàn)深度的無監(jiān)督訓練,作者借鑒了MonoDepth的思想。也就是在目標深度估計圖像和源圖像的變換之間添加了一個光度損失:

圖片

這個損失其實沒有多新,大多數(shù)單目自監(jiān)督深度估計網(wǎng)絡(luò)都會使用這個損失,但是在NeRF中應(yīng)用這個損失的文章還比較少。

3.2 概率射線采樣

到這里問題就開始有意思了。

SceneRF是一個無監(jiān)督3D重建網(wǎng)絡(luò),但需要注意的是,在沒有真實深度的大型城市場景中,高效采樣并不簡單。因此,作者用一種概率射線采樣策略(PrSamp)來解決這個問題,該策略實質(zhì)上是將每條射線上的連續(xù)密度近似為引導采樣點的一維高斯混合。由于混合體中的大值與表面位置相關(guān),這使得每條射線上的點數(shù)顯著減少,從而獲得更好的采樣效果。具體來說,作者只用了64個點來優(yōu)化一條100m長的射線。

圖片

圖3 概率射線采樣步驟

具體的采樣步驟是,對于給定的射線r,首先在近、遠邊界之間均勻采樣k個點(藍色點),然后:

(1) 將點及其對應(yīng)的特征作為輸入,用專門的MLP預(yù)測k個一維高斯混合。

(2) 在每一個高斯(橙色)上均勻采樣m個點,再沿射線均勻采樣32個點(綠色三角)。

(3) 將所有點傳遞給NeRF表達式,對顏色C和深度D進行預(yù)測。

(4) 渲染過程中推斷的密度作為3D表面位置的線索,來獲得新的高斯混合。

(5) 利用概率自組織映射(PrSOM)進行求解,更新高斯。簡而言之,PrSOM從前者被后者觀測到的可能性中為高斯分配點,同時嚴格保留了潛在的混合拓撲。

(6) 根據(jù)當前高斯和新高斯之間的KL散度的均值更新高斯預(yù)測器g:

圖片

作者還添加了另一個損失,即最小化深度和最近高斯之間的距離,最終損失是兩者相加:

圖片

此外,NeRF表達式中的f的有效域被限制在特征體積W內(nèi),對于簡單的U-Net,特征體積W在圖像FOV內(nèi),無法在FOV外估計顏色和深度,這不適合場景重建。因此,作者為SU-Net設(shè)計了一個在球面域卷積的****。由于球面投影比平面投影具有更小的畸變,因此可以將視場(120°)放大,在源圖像視場之外實現(xiàn)顏色和深度的幻覺

3.3 場景重建

到這一步,SceneRF已經(jīng)具備了深度合成能力,可以利用這種能力將場景重建框定為多個深度視圖的組合。如圖4所示,給定一個輸入幀,沿著一條假想的直線路徑合成新的深度,然后將合成深度轉(zhuǎn)換為TSDF。

圖片

圖4 對輸入圖像的深度合成原理

4. 實驗

作者評估了SceneRF的兩個主要任務(wù):新深度合成和場景重建,以及一個輔助任務(wù):新視點合成。對于主要任務(wù),SceneRF在所有指標上都優(yōu)于所有基線,而對于新視圖合成,取得了和其他單目NeRF相競爭的結(jié)果。三個任務(wù)都是在SemanticKITTI上進行評估的,使用左目圖像并調(diào)整分辨率為1220x370。

3D重建的評價指標使用占用體素的IoU、精度和召回率。深度估計使用傳統(tǒng)的評價指標AbsRel、SqRel、RMSE、RMSE log、以及三個閾值精度。在視圖合成上,使用結(jié)構(gòu)相似性指數(shù)SSIM、PSNR和LPIPS感知相似性來評估。

在訓練設(shè)置上,進行端到端訓練,優(yōu)化器為Adam W,batch size為4,GPU為4個Tesla v100。主要結(jié)果訓練了50個epoch (5天),消融實驗訓練20個epoch (2天)。初始學習率設(shè)置為1e-5,衰減指數(shù)0.95。深度合成的對比基線為PixelNeRF、VisionNeRF和MINE,三維重建的對比基線為MonoScene、LMSCNetrgb、3DSketchrgb和AICNetrgb。

4.1 新深度合成

如表1所示,SceneRF在新深度合成上優(yōu)于所有基線,并與次優(yōu)方法VisionNeRF有顯著差距。在新視點合成上,SceneRF與其他場景大致相當。具體來說,SceneRF在2個指標上優(yōu)于PixelNeRF,這表明SceneRF的幾何目標不會降低視圖合成質(zhì)量。

表1 在SemanticKITTI(val)上的深度/視圖結(jié)果

圖片

在圖5中,展示了新深度和不同輸入幀、多個位置和角度的新視圖。注意,SceneRF的深度邊緣更銳利,遠處質(zhì)量更好。

圖片

圖5 SemanticKITTI (val)的定性結(jié)果

4.2 3D重建結(jié)果

如表2所示是三維重建的結(jié)果對比,其中3D表達的是使用來自激光雷達深度監(jiān)督,Depth使用來自監(jiān)督AdaBins方法的深度序列的TSDF融合作為監(jiān)督。其中,3D這一系列的基線比其他任何基線都要好兩倍,這很容易理解,不高才不正常呢。

然而,在比較Image和Depth監(jiān)督基線時,可以發(fā)現(xiàn)SceneRF優(yōu)于所有基線,這表明SceneRF可以有效地從圖像序列中學習幾何線索。有趣的是,與"Depth"基線相比,SceneRF的"in-FOV"和"Whole Scene"之間的IoU差距更大。但即便如此,所有方法的數(shù)值都很低,這也說明了這些方法還有很大的提升空間。

表2 SemanticKITTI (val)上的場景重建結(jié)果

圖片

4.3 消融實驗

表3所示是針對損失、球形U-Net和概率射線采樣的消融實現(xiàn)。其中SU-Net的消融實驗是將球形****替換為標準****。結(jié)果顯示每個模塊都對性能提升有所幫助,特別是Lreproj和PrSamp對近距離深度估計有良好的效果。

表3 消融實驗結(jié)果

圖片

5. 結(jié)論

這兩年在各個領(lǐng)域,基本上都多了很多自監(jiān)督、弱監(jiān)督、半監(jiān)督方面的工作,這應(yīng)該是個研究是大趨勢,畢竟數(shù)據(jù)標注很貴。本文帶領(lǐng)讀者閱讀了文章"SceneRF: Self-Supervised Monocular 3D Scene Reconstruction with Radiance Fields",是一種使用NeRF進行自監(jiān)督3D重建的工作。如果讀者想深入了解的話,建議和2022 CVPR論文"MonoScene: Monocular 3D Semantic Scene Completion"一起學習。

此外,SceneRF的作者也提出他們的工作有兩個主要問題,讀者可以嘗試去解決。首先,由于逐點推理而導致的耗時的深度/視圖合成,可以通過射線推理來解決。第二,SceneRF對旋轉(zhuǎn)的抵抗能力很差。

本文僅做學術(shù)分享,如有侵權(quán),請聯(lián)系刪文。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉