淘新聞

專家詳解Oculus攝像頭運作原理及駭客攻擊風險

OFweek VR網訊 此前有報導稱Oculus的感測器可以用於拍攝圖片,所以有人擔心駭客或許可以從此入手,記錄我們在虛擬世界中的一舉一動。
但我們是否是過分擔心呢?Motheboard日前採訪了Oculus Rift感測器可用來捕捉使用者圖像的發現者美國加州大學大衛斯分校的研究員Oliver Kreylos。下面是整理的採訪片段:
問:與Vive的Lighthouse感測器相比,Oculus的定位追蹤方法是否比較馬馬虎虎,還是說它具備自己的優點?Oculus是否值得在產品中冒這種風險呢?
Kreylos:這個問題涉及面很廣,所以我先進行一些背景說明。攝像頭和追蹤標識器(如Oculus的LED)在3自由度和6自由度追蹤中有著悠久的歷史。幾乎所有高端的動捕系統都基於這種方法。這是Wiimote(Wii手柄)追蹤的基礎,同時多年來一直以NaturalPoint的TrackIR頭部追蹤器形式用於PC遊戲。
這種方法之所以會如此流行(尤其是在業餘愛好者群體中),是因為它可以提供高品質的效果,同時不需要太多的定制硬體。攝像頭十分普遍,價格親民。其他唯一的剛性需求硬體是追蹤標識器,但即使是業餘愛好者也能製造,而其他的事情都是通過軟體實現。
當Oculus為Rift DK2尋找一套優秀而且廉價的6自由度追蹤系統時,攝像頭是一個明顯而又最為合適的選擇。但Oculus沒有採用標準的做法,而是通過可向攝像頭識別自己的追蹤LED來顯著降低標準演算法的計算負荷。因此,DK2追蹤系統超乎了許多人的預期,包括我自己。
當Oculus從DK2轉向CV1(第一代消費者版本)時,沿用已被證明的追蹤系統,並通過採用更好的硬體(高解析度攝像頭,使用全域快門而非滾動快門)來進行優化,這也是一個合理的工程決定。從純技術觀點上看,這是一個正確的選擇。雖然存在一定的問題,但Oculus的Constellation是一個優秀的6自由度追蹤系統。由於Constellation比較閉合,我並沒有像對Valve的Lighthouse系統一樣進行詳盡的分析,但我預期兩者在品質不相上下。
我認為Lighthouse更為優雅,它採集的原始資料更少,計算處理也更少,並能實現相同的效果。兩個系統的定位計算演算法的基本輸入是,從中心點(攝像頭焦點或Lighthouse基站中心)開始的三維射線,並指向空間中的追蹤LED或光電二極體。Constellation通過捕獲高解析度圖像,將它們傳輸至主機PC,找到這些圖像中的亮圖元的斑點,以及計算它們的中心(x,y)位置來得出這些射線。Lighthouse也是一樣:當掃描鐳射與光電二極體(將光轉換成電流的裝置)相遇,根據雷射器的已知角速度將時間轉換成角度,並將所得到的角度發送到主機PC時,然後Lighthouse系統就會進行相應地計算。Constellation需要向主機發送大約60MB的資料,這給主機的USB子系統帶來了嚴重的壓力,而Lighthouse發送的資料很少(我估計只有幾十KB),它可以實現無線傳輸同時不會導致什麼問題。
但這並不意味著Constellation是馬馬虎虎的系統。在開發出來時這是最先進的系統,但Valve後來推出了一套令人意想不到的,更為優雅的系統,而Oculus要更換已經太晚了。這是一個創新,我並不認為有任何人預見Lighthouse系統的到來。
Constellation的主要缺點是,由於較高的USB頻寬要求,導致某些用戶在使用過程中會出現問題。另一個非技術性的缺點是,從數個攝像頭向主機PC發送高解析度的圖像,而且這些攝像機必須被放置在幾乎理想的位置。我個人認為,一些駭客攻擊者獲得這些圖像的風險性很小,但我不能否認,這在理論上存在可能。
在這一點上Oculus可以採取不同的做法以避免這個問題。我之前提到的Wiimote同樣是通過攝像頭進行追蹤。但跟Constellation不同,Wiimote不會向主機發送圖像。將圖像轉換為(x,y)LED位置的步驟在攝像頭晶片本身內部進行,由定制的晶片完成。如果Oculus採用了這種方法,並將這樣的ASIC(專用積體電路或具有特定用途的定制電路)集成到攝像頭本身,他們就可以避免Constellation的問題。它可以把從攝像頭到主機的頻寬減少約1000倍(解決大多數用戶的問題),同時其他人不可能窺探發送的圖像,因為圖像將永遠不會被發送到主機PC。
我不知道你是否能將其稱作馬馬虎虎,在一定程度上Oculus的工程師忽略了可能存在的隱私問題,或者這是他們在經過衡量之後才做出的決定。但把圖像發送至主機存在多個好處:設計ASIC需要時間和金錢,軟體解決方案更靈活,更容易隨著時間進行改進。Oculus目前可能正在研究演算法,使用攝像頭圖像來追蹤LED之外的物件,例如通過Leap Motion或Kinect來把用戶的手部,或甚至是全身帶進VR。