Facebook新VR相機詳解:深度信息如何產生?6DOF如何實現?

巫盼 8年前 (2017-04-27)

和Lytro的光場相機原理類似,Facebook的x24和x6的關鍵在于收集被攝畫面的RGB信息和深度信息。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

上周Facebook開發者大會F8上,除了小扎對于AR的預測外,公司發布的兩款能夠記錄深度信息的360°相機x24和x6也是獨領風騷。Facebook工程部門主管Brian Cabral在一段長達半小時的視頻中,講述了Surround 360相機的工作原理,制作生態以及應用,透露了不少關鍵信息。至少對于Facebook如何利用相機創建6自由度VR視頻,下面是筆者從視頻中獲得的一些關鍵信息,推薦有興趣的同學可以看一下。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

Facebook 360 Surround x24和x6的特點:

1. 6自由度

2. 無限的輸出可能

3. 和后期制作無縫融合

4. 方便攜帶

5. 畫質提升

為什么要做x6,因為想要證明6自由度的360相機解決方案對于不同設定的硬件都是可行的。不同的相機有不同的直徑、鏡頭分辨率、FOV以及感應器位置等等。這些配置不同的相機能夠給Facebook Surround 360相機的結構給出例證。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

球面對極幾何深度測算 Spherical Epipolar Depth Estimation

原理和多年以來地理上的三角測量法類似。使用球面相機是因為這樣可以制作一個平面的sampling,在空間中的任意一點,都可以被多個相機觀測到,可以進行三角測量。根據Epipolar的知識,假設我們想測量的X點的深度信息,由于我們已經知道X點在相機1圖像平面上的坐標,同時也知道其在相機2圖像平面上的坐標,根據原理,我們就能推算出X點的坐標信息。當然前提條件是你要知道兩臺相機之間的距離。

Facebook x24和x6設置了多個重合區域,有了這些重合區域就能最大化的記錄圖像信息,就有更多的信息來處理和測算被攝物體的深度信息。

和Lytro的光場相機原理類似,Facebook的x24和x6的關鍵在于收集被攝畫面的RGB信息和深度信息。從視頻可以看出,離相機越近的物體,相機能夠捕捉到的信息越多,反之則越少,這是為什么相機的深度信息圖是離得越近的物體呈現黑色,而離得遠的物體呈現白色,因為后者能夠提供的可用信息很少。

關于Epipolar Geometry的基礎知識請看文章下方的補充。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

Facebook VR相機拍攝制作流程

使用Facebook surround 360的拍攝和制作流程:

1. 使用x24和x6相機進行拍攝

2. 將內容上傳至云端服務器進行拼接和深度信息處理

3. 導出的具有深度信息的360°視頻可以導入到Adobe、Nuke、Mettle等工具進行制作

4. 輸出的6DOF的3D 360°視頻到Facebook和Oculus平臺

Facebook不是硬件或者軟件公司,他們的目的是構建完整的生態,這就是為什么他們會和OTOY、Adobe、Foundry、Mettle等公司合作,將帶有深度信息的360°視頻拍攝融入到傳統影視后期工具的Pipeline中,因為后者能夠更好的利用深度信息帶來的優勢。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

用途:讓特效制作更容易

記錄畫面的深度信息,第一個好處自然就是能夠讓3D 360°視頻呈現6自由度的體驗感,這也是所有VR影視行業想要達到的一個目的。

另一個好處就是可以讓制作人員更方便的加入逼真的后期特效。傳統的2D 360°視頻由于本質上還是一個平面,所以即使加入CG效果也不好,因為不夠真實。而在有了深度信息之后,制作人員就可以根據深度信息,更精準的為每個層級加入不同的逼真的特效。

如視頻所示,你可以在海洋館的畫面中加入類似“哈利·波特魔法結界”一樣的電流特效,更有用的是,可以將大場景畫面的背景整個抽離,換成需要的背景,這點在好萊塢大片中常用,不過之前需要用綠幕來摳圖,使用能夠記錄深度信息的相機,則免去了搭建綠幕。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

由于有了深度信息,制作人員可以在視頻中加入真實的3D物品,而看起來又不像平面圖像一樣違和。還有光照效果,制作人員可以像游戲一樣,將整個場景的光照調低,給觀眾一個手持火把的效果,讓他們能夠拿著VR控制器去探索一個真人實拍的3D 360°視頻,就像在玩一個CG制作的探險類游戲,例如《古墓麗影》。

總結

仍在如火如荼舉行的NAB Show上,谷歌推出了自家的Jump系統的升級版Halo。這款和小蟻聯手推出的17000美元的相機依然是一個單純的相機陣列產品,相比于Facebook的x24和x6似乎矮了一頭。不過谷歌的工作人員也表示,自家的產品本來就主打中端,臉書的相機走的是和Lytro一樣的高端制作者路線。對于谷歌的這個說法,IN2略表不同意,作為VR制作的關鍵因素,深度信息的紀錄絕對是拍攝設備和運處理端的趨勢,谷歌也在研究,只不過目前還沒有成型的產品出來而已。

同樣是在NAB上,來自Adobe研究部門人員曝光了根據運動的普通2D 360度視頻推算出深度信息的算法,從純軟件層面讓6自由度真人視頻體驗成為可能。據IN2所知,國內也有團隊在嘗試類似的解決方案,IN2也將在之后進行詳細報道。

關于Epipolar Geometry的知識補充

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

對于雙目視覺系統,即有兩個攝像機,定義兩個攝像機的光學中心點為C、C‘,在三維空間中存在一個場景點X,這個點與兩個攝像機光學中心點共同構成的平面就是極平面π(epipolar plane),每個攝像機都有一個圖像平面,分別為Image1和Image2,CX交Image1于x點,C’X交Image2于x’點,而CC’連線分別交兩個圖像平面于e和e’,這兩個點稱為極點(epipoles),CC’稱為基線(baseline)。極平面與圖像平面相交于兩條極線(epipolar line)l和l’,這兩條極線的關系是對應的(correspondence),而x、e、x’、e’分別位于l和l’上。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

隨著三維場景點的移動,極平面將繞著基線轉動,這些極平面共同構成一個極平面束(an epipolar pencil),這些極平面與圖像平面所交匯成的極線族分別都交于兩個極點e和e’。

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

假如我們只知道X投射在圖像平面Image1上的投射點x,我們如何去獲知在另一個圖像平面上(也就是Image2)x的相應點x’呢,這個相應點x’符合什么樣一種幾何規則呢?

 Facebook新VR相機詳解:深度信息如何產生 6DOF如何實現

我們知道,極平面是由基線和xX共同構成的,從上面的介紹我們知道了這個相應點(現在還是未知點)也一定位于極平面π上,因此可以得出x’點位于極平面π與另一個圖像平面Image2的交線l’上,也即l’是投射點x的反向投影在第二個視角(第二個圖像平面)上的圖像。這種關系在立體對應算(stereo correspondence algorithm)中有很大的好處,那就是不需要在整幅圖像上尋找x的對應點(correspondence points),而只需要把范圍限定在極線l’上即可。(圖片文字來自百度百科)

編者按:本文轉載自IN2

最后,記得關注微信公眾號:鎂客網(im2maker),更多干貨在等你!

鎂客網


科技 | 人文 | 行業

微信ID:im2maker
長按識別二維碼關注

硬科技產業媒體

關注技術驅動創新

分享到