博客專欄

        EEPW首頁 > 博客 > CVPR 2021 | pixelNeRF:一種基于NeRF的多視圖三維重建網絡

        CVPR 2021 | pixelNeRF:一種基于NeRF的多視圖三維重建網絡

        發布人:計算機視覺工坊 時間:2021-05-14 來源:工程師 發布文章

        概述

        作者提出了pixelNeRF,一個只需要輸入單張或多張圖像,就能得到連續場景表示的學習框架。由于現存的構建神經輻射場【1】的方法涉及到獨立優化每個場景的表示,這需要許多校準的視圖和大量的計算時間,因此作者引入了一種新的網絡架構。實驗結果表明,在所有情況下,pixelNeRF在新視圖合成和單圖像三維重建方面都優于當前最先進的工作。

        簡介

        該項目主要研究的問題是如何從一個稀疏的輸入視圖集中合成這個場景的新視圖,在可微神經渲染出現之前,這個長期存在的問題一直沒有得到進展。同時,最近的神經渲染場NeRF通過編碼體積密度和顏色,在特定場景的新視圖合成方面表現出很好的效果。雖然NeRF可以渲染非常逼真的新視圖,但它通常是不切實際的,因為它需要大量的位姿圖像和冗長的場景優化。

        在這篇文章中,作者對上述方法進行了改進,與NeRF網絡不使用任何圖像特征不同的是,pixelNeRF將與每個像素對齊的空間圖像特征作為輸入。這種圖像調節允許框架在一組多視圖圖像上進行訓練,學習場景先驗,然后從一個或幾個輸入圖像中合成視圖,如下圖所示。

        1.png

        PixelNeRF具有很多特點:首先,Pixel可以在多視圖圖像的數據集上面進行訓練,而不需要任何額外的監督;其次,PixelNeRF預測輸入圖像的攝像機坐標系中的NeRF表示,而不是標準坐標系,這是泛化看不見的場景和物體類別的必要條件,因為在有多個物體的場景中,不存在明確的規范坐標系;第三,它是完全卷積的,這允許它保持圖像和輸出3D表示之間的空間對齊;最后,PixelNeRF可以在測試時合并任意數量的輸入視圖,且不需要任何優化。

        相關工作

        新視圖合成:這是一個長期存在的問題,它需要從一組輸入視圖中構建一個場景的新視圖。盡管現在有很多工作都已經取得了逼真的效果,但是存在比較多的問題,例如需要密集的視圖和大量的優化時間。

        其他方法通過學習跨場景共享的先驗知識,從單個或少數輸入視圖進行新的視圖合成,但是這些方法使用2.5D表示,因此它們能夠合成的攝像機運動范圍是有限的。在這項工作中,作者提出了PixelNeRF,能夠直接從相當大的基線中合成新視圖。

        基于學習的三維重建:得益于深度學習的發展,單視圖或多視圖的三維重建也得到快速的發展。問題是,很多表示方法都需要3D模型進行監督,盡管多視圖監督限制更小、更容易獲取,其中的很多方法也需要物體的mask。相比之下,PixelNeRF可以單獨從圖像中訓練,允許它應用到含有兩個對象的場景而不需要修改。

        以觀察者為中心的三維重建:對于3D學習任務,可以在以觀察者為中心的坐標系(即視圖空間)或以對象為中心的坐標系(即規范空間)中進行預測。大多數現存的方法都是在規范空間中進行預測,雖然這使得學習空間規律更加容易,但是會降低不可見對象和具有多個對象場景的預測性能。PixelNeRF在視圖空間中操作,這在【2】中已經被證明可以更好地重建看不見的對象類別,并且不鼓勵對訓練集的記憶。下表是PixelNeRF和其他方法的對比:

        2.png

        背景介紹:NeRF

        NeRF【1】將場景編碼為顏色和密度的連續體積輻射場f。特別地,對于一個3D點x和

        觀察方向單位向量d,f返回微分密度σ和RGB顏色c:f(x, d) = (σ, c)。體積輻射場可以通過下面的函數渲染成2D圖像:

        3.png

        其中T(t)處理遮擋。對于具有姿態P的目標視圖,相機光線可以參數化為r(t)=o+td,o為光線原點(相機中心)。沿著相機光線在預定義的深度邊界[tn,tf]之間計算積分。在實踐中,這種積分是通過沿每個像素射線采樣點的數值求積來近似的。

        然后,將攝影機光線r的渲染像素值與對應的真實像素值C(r)進行比較,最后的loss定義如下:

        4.png

        其中R(P)是具有目標姿態的所有相機光線的集合。雖然NeRF實現了最新的視圖合成,但它是一種基于優化的方法,每個場景必須單獨優化,場景之間沒有知識共享。這種方法不僅耗時,而且在單個或極稀疏視圖的限制下,無法利用任何先驗知識來加速重建或完成形狀。

        基于圖像的NeRF

        為了克服上面提到的關于NeRF的問題,作者提出了一種基于空間圖像特征的NeRF結構。該模型由兩個部分組成:一個完全卷積的圖像編碼器E(將輸入圖像編碼為像素對齊的特征網格)和一個NeRF網絡f(給定一個空間位置及其對應的編碼特征,輸出顏色和密度)。

        單視圖pixelNeRF:首先固定坐標系為輸入圖像的視圖空間,并在這個坐標系中指定位置和攝像機光線。給定場景的輸入圖像I,首先提取出它的特征量W=E(I)。然后,對于相機光線上的一個點x,通過使用已知的內參,將x投影到圖像坐標π(x)上,然后在像素特征之間進行雙線性插值來提取相應的圖像特征向量W(π(x))。最后把圖像特征連同位置和視圖方向(都在輸入視圖坐標系統中)傳遞到NeRF網絡:

        5.png

        其中γ()是x上的位置編碼。

        6.png

        合并多個視圖:多個視圖提供了有關場景的附加信息,并解決了單視圖固有的三維幾何歧義。作者擴展了該模型,不同于現有的在測試時只使用單個輸入視圖的方法,它允許在測試時有任意數量的視圖。

        在有多個輸入視圖的情況下,只假設相對的相機姿態是已知的,為了便于解釋,可以為場景任意固定一個世界坐標系。把輸入圖像記為I,其相關聯的攝像機記為P=[R t]。對于新的目標攝影機光線,將視圖方向為d的點x轉換到每個輸入視圖i的坐標系,轉換如下:

        7.png

        為了獲得輸出的密度和顏色,作者獨立地處理每個視圖坐標幀中的坐標和相應的特征,并在NeRF網絡中聚合視圖。將NeRF網絡的初始層表示為f1,它分別處理每個輸入視圖空間中的輸入,并將最終層表示為f2,它處理聚合視圖。

        和單視圖類似,作者將每個輸入圖像編碼成特征體積W(i)=E(I(i))。對于點x(i),在投影圖像坐標π(x(i))處從特征體W(i)中提取相應的圖像特征,然后將這些輸入傳遞到f1,以獲得中間向量:

        8.png

        最后用平均池化算子ψ將中間向量V(i)聚合并傳遞到最后一層f2,得到預測的密度和顏色:

        9.png

        效果和對比

        10.png

        特定類別的單視圖重建

        11.png

        特定類別的雙視圖重建

        12.png

        特定類別的單視圖和雙視圖重建結果對比

        參考文獻:

        【1】Ben Mildenhall, Pratul P. Srinivasan, Matthew Tancik,Jonathan T. Barron, Ravi Ramamoorthi, and Ren Ng. Nerf: Representing scenes as neural radiance fields for view synthesis. In Eur. Conf. Comput. Vis., 2020

        【2】Daeyun Shin, Charless Fowlkes, and Derek Hoiem. Pixels, voxels, and views: A study of shape representations for single view 3d object shape prediction. In IEEE Conf. Comput.Vis. Pattern Recog., 2018.

        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 昭平县| 永泰县| 钟祥市| 赤壁市| 潼关县| 普安县| 余姚市| 盈江县| 二连浩特市| 巴林右旗| 新郑市| 海口市| 周口市| 汕尾市| 萨嘎县| 岗巴县| 衡南县| 宜城市| 武义县| 家居| 搜索| 资阳市| 莱州市| 涞源县| 兴业县| 柘荣县| 湖州市| 石嘴山市| 昌邑市| 玛纳斯县| 蓝山县| 巴彦淖尔市| 潮州市| 海淀区| 巫溪县| 灵寿县| 砀山县| 连江县| 永顺县| 中牟县| 竹山县|