最近,由Meta和卡內基美隆大學提出的6-DoF視訊表徵模型-HyperReel,可能預示著一個全新的VR「殺手級」應用即將誕生!
所謂「六自由度影片」(6-DoF),簡單來說就是一個超高清的4D體驗式回放。
其中,使用者可以完全「置身於」動態場景裡面,並且可以自由地移動。而當他們任意改變自己的頭部位置(3 DoF)和方向(3 DoF)時,與之對應的視野也會隨之產生。
#論文網址:https://arxiv.org/abs/2301.02238
與先前的工作相比,HyperReel最大的優勢在於記憶體和運算效率,而這兩點對於便攜式VR頭顯來說都至關重要。
而且只要採用vanilla PyTorch,HyperReel就能在單張英偉達RTX 3090上,以每秒18幀的速度實現百萬像素解析度的渲染。
太長不看版本:
1 . 提出一種可在高分辨率下實現高保真度、高幀率的渲染的光線條件採樣預測網絡,以及一種緊湊且內存高效的動態體積表徵;
2. 6-DoF視訊表徵方法HyperReel結合了以上兩個核心部分,可以在即時渲染百萬像素解析度的同時,實現速度、品質和記憶體之間的理想平衡;
3. HyperReel在記憶體需求、渲染速度等多個方面均優於其他方法。
論文介紹
體積場景表徵(volumetric scene representation)能夠為靜態場景提供逼真的視圖合成,並構成了現有6-DoF視訊技術的基礎。
然而,驅動這些表徵的體積渲染程序,需要在質量、渲染速度和記憶體效率方面,進行仔細的權衡。
現有的方法有一個弊端——不能同時實現即時效能、小記憶體佔用和高品質渲染,而在極具挑戰性的真實場景中,這些都是極為重要的。
為了解決這些問題,研究人員提出了HyperReel——一種基於NeRF技術(神經輻射場)的6-DoF視訊表徵方法。
其中,HyperReel的兩個核心部分是:
1. 一個光線條件下的取樣預測網絡,能夠在高分辨率下進行高保真、高幀率的渲染;
2. 一個緊湊且記憶體高效的動態體積表徵。
與其他方法相比,HyperReel的6-DoF視訊管線不僅在視覺品質上表現極佳,而且記憶體需求也很小。
同時,HyperReel不需要任何客製化的CUDA程式碼,就能在百萬像素解析度下實現18幀/秒的渲染速度。
具體來說,HypeReel透過結合樣本預測網路和基於關鍵影格的體積表徵法,從而實現了高渲染品質、速度和內存效率之間的平衡。
其中的樣本預測網絡,既能加速體積渲染,又能提高渲染質量,特別是對於具有挑戰性的視圖依賴性的場景。
而在基於關鍵影格的體積表徵方面,研究人員採用的是TensoRF的擴展。
這種方法可以在記憶體消耗與單一靜態影格TensoRF大致相同的同時,湊地表徵了一個完整的視訊序列。
即時示範
接下來,我們就即時示範一下,HypeReel在512x512像素解析度下動態和靜態場景的渲染效果。
值得注意的是,研究人員在Technicolor和Shiny場景中使用了較小的模型,因此渲染的幀率大於40 FPS。對於其餘的資料集則使用完整模型,不過HypeReel仍能提供即時推理。
Technicolor
#Shiny
Stanford
#Immersive
##DoNeRF
#實作方法#為了實作HeperReel,首先要考慮的問題,就是要最佳化靜態視圖合成的體積表徵。
像NeRF這樣的體積表徵,就是對靜態場景在3D空間中的每一個點的密度和外觀,進行建模。
更具體地說,透過函數將位置x和方向沿著⼀條射線映射到顏色和密度σ(x)。
此處的可訓練參數θ,可以是神經網路權重、N維數組條目,或兩者的組合。
然後就可以渲染靜態場景的新視圖
其中#表徵從o到的透射率。
在實務上,可以透過沿著給定射線取得多個樣本點,然後使用數值求積來計算方程式1:
###其中權重指定了每個樣本點的顏色對輸出的貢獻。
體積渲染的網格範例
在靜態場景的HyperReel中,給定一組圖像和相機姿勢,而訓練目標就是重建與每條光線相關的測量顏色。
大多數場景是由實體物件組成的,這些物件的表面位於3D場景體積內的一個2D流形上。在這種情況下,只有一小部分樣本點會影響每條光線的渲染顏色。
因此,為了加速體積渲染,研究人員希望只對非零的點,查詢顏色和不透明度。
如下圖所示,研究人員使用前饋網路來預測一組樣本位置。具體來說,就是使用樣本預測網路,將射線對應到樣本點,以取得體積等式2中的渲染。
這裡,研究人員使用Plucker的參數化來表徵光線。
但是這其中有一個問題:給予網路太多的彈性,可能會對視圖合成品質產生負面影響。例如,如果(x1, . . . , xn) 是完全任意的點,那麼渲染可能看起來不是多視圖⼀致的。
為了解決這個問題,研究人員選擇用樣本預測網路來預測一組幾何基元G1, ..., Gn的參數,其中基元的參數可以根據輸入射線的不同而變化。為了得到樣本點,將射線與每個基元相交。
如圖a所示,給定源自相機原點o並沿方向ω傳播的輸入光線後, 研究人員首先使用Plucker座標,重新對光線進行參數化。
如圖b所示,一個網路將此射線作為輸入,輸出一組幾何基元{}(如軸對齊的平面和球體)和位移向量{##}的參數。
如圖c所示,為了產生用於體積渲染的樣本點{},研究人員計算了射線和幾何基元之間的交點,並將位移向量加入結果。預測幾何基元的好處是使取樣訊號平滑,易於內插。
位移向量為取樣點提供了額外的靈活性,能夠更好地捕捉複雜的視線依賴的外觀。
如圖d所示,最終,研究人員透過公式2進行體積渲染,產生一個像素顏色,並根據對應的觀察結果,對它進行了監督訓練。
透過上述辦法,就可以有效地對3D場景體積進行取樣。
如何表徵體積呢?在靜態情況下,研究人員使用的是記憶體有效的張量輻射場(TensoRF)方法;在動態情況下,就將TensoRF擴展到基於關鍵幀的動態體積表徵。
下圖解釋了從基於關鍵影格的表徵中,提取動態的樣本點表徵的過程。
如圖1所示,首先,研究者使用從樣本預測網路輸出的速度{},將時間處的樣本點{#}平移到最近的關鍵影格 #中。
然後,如圖2所示,研究人員查詢了時空紋理的外積,產生了每個樣本點的外觀特徵,然後透過公式10將其轉換成顏色。
透過這樣的過程,研究人員提取了每個樣本的不透明度。
結果對比
在此,研究人員將HyperReel與現有的靜態視圖合成方法(包括NeRF、InstantNGP和三種基於採樣網路的方法)進行了比較。
#DoNeRF資料集包含六個合成序列,影像解析度為800×800像素。
如表1所示,HyperReel的方法在品質上優於所有基線,並在很大程度上提高了其他取樣網路方案的效能。
同時,HyperReel是用vanilla PyTorch實現的,可在單張RTX 3090 GPU上以6.5 FPS的速度渲染800×800像素的圖像(或者用Tiny模型實現29 FPS的渲染)。
此外,與R2L的88層、256個隱藏單元的深度MLP相比,研究人員提出的6層、256個隱藏單元的網絡外加TensoRF體積骨幹的推理速度更快
#LLFF資料集包含8個具有1008×756像素影像的真實世界序列。
如表1所示,HyperReel的方法優於DoNeRF、AdaNeRF、TermiNeRF和InstantNGP,但取得的品質比NeRF略差。
由於錯誤的相機校準和輸入視角的稀疏性,這個資料集對顯式體積表徵來說是一個巨大的挑戰。
#Technicolor資料集
Technicolor光場資料集包含了由時間同步的4×4攝影機裝置拍攝的各種室內環境的視頻,其中每個視頻流中的每張圖片都是2048×1088像素。
Neural 3D Video資料集
Neural 3D Video資料集包含6個室內多視圖視訊序列,由20台攝影機以2704×2028像素的解析度拍攝。
如表2所示,HyperReel在這個資料集上的表現超過了所有的基準方法,包括NeRFPlayer和StreamRF等最新工作。
GoogleImmersive資料集
#GoogleImmersive資料集包含了各種室內和室外環境的光場影片。
如表2所示,HyperReel在品質上比NeRFPlayer的要好1 dB,同時渲染速度也更快。
有些遺憾的是,HyperReel目前還沒有達到VR所要求的渲染速度(理想情況下為72FPS,立體聲)。
不過,由於該方法是在vanilla PyTorch中實現的,因此可以透過例如自訂的CUDA核心等工作,來進一步優化效能。
作者介紹
######論文一作Benjamin Attal,目前在卡內基美隆機器人研究所攻讀博士學位。研究興趣包括虛擬現實,以及計算成像和顯示。 ################以上是Meta、CMU聯手推出VR史詩級升級!最新HyperReel模型實現高保真6自由度視訊渲染的詳細內容。更多資訊請關注PHP中文網其他相關文章!