當前位置: 華文問答 > 數位

Magic Leap 和微軟的 HoloLens 相比有哪些異同點?

2015-10-28數位

最近看到國內網路上突然Magic Leap的話題火了,並且跟著很多人無理由和根據的贊或黑Magic Leap。我在史丹佛電腦系上學的時候,對Magic Leap很好奇,正好在學校能接觸到各路和Magic Leap相關的大神,所以在這方面做了些研究,我覺得可以分享點技術性幹貨,解釋一些原理,讓大家有點材料來贊或黑。

目前Magic Leap只有一個公開視訊是實際拍攝的: https://www. youtube.com/watch? v=kw0-JRa9n94 (桌腿後的機器人和太陽系)(youku: Magic Leap Demo),本文只以這個視訊的例子來做闡釋。

-------------------------

先說一下我關於Magic Leap的資訊來源: 1. 2014年11月10日,Magic Leap在2014年9月融了5個億以後,來Stanford招人,開了一個Info Session,標題是"The World is Your New Desktop」 (世界就是你的新桌面)多麽霸氣!當時是Magic Leap 感知研究的高級副總裁 (VP of Perception) Gary Bradski 和 計算視覺的技術負責人 (Lead of Computer Vision) Jean-Yves Bouguet 來作演講。Gary是電腦視覺領域的領軍人物,在Intel和柳樹車庫(Willow Garage)創造並行展了OpenCV(計算視覺工具庫),也是ROS(機器人作業系統)的創始團隊之一,同時也是Stanford顧問教授。Jean-Yves原來在Google負責谷歌模組屋車(Street View Car)的制造,是計算視覺技術的大牛。他們加入Magic Leap是非常令人震驚的。我參加了這次Info Session, 當時Gary來介紹Magic Leap在感知部份的技術和簡單介紹傳說中的數位光場Cinematic Reality的原理,並且在允許錄影的部份都有拍照記錄。本文大部份的幹貨來自這次演講。





2. 我今年年初上了 Stanford 計算攝影和數位光場顯示的大牛教授Gordon Wetzstein的一門課:EE367 Computational Imaging and Display(計算影像和顯視器) :其中第四周的Computational illumination,Wearable displays 和 Displays Blocks(light field displays) 這三節都講到Magic Leap的原理。現在大家也可以去這個課程網站上看到這些資料,EE367 / CS448I: Computational Imaging and Display

順便介紹一下 Gordon 所在的Stanford 計算圖形組,由Marc Levoy(後來跑去造Google Glass的大牛教授)一直致力於光場的研究,從Marc Levoy提出光場相機,到他的學生Ren Ng開創Lytro公司制造光場相機,到現在Gordon教授制造光場顯視器(裸眼光場3D顯視器),這個組在光場方面的研究一直是世界的領頭羊。而Magic Leap可能正在成為光場顯視器的最大套用。 Computational Imaging Research Overview



3. 今年參加了光場影像技術的研討會 Workshop on Light Field Imaging ,現場有很多光場技術方面的展示,我和很多光場顯示技術的大牛交流了對Magic Leap的看法。特別的是,現場體驗了接近Magic Leap的光場技術Demo,來自Nvidia的Douglas Lanman的 Near-Eye Light Field Displays 。Near-Eye Light Field Displays



4. 今年年中去了微軟研究院Redmond存取,研究院的首席研究員Richard Szeliski (電腦視覺大神,電腦視覺課本的作者,Computer Vision: Algorithms and Applications)讓我們試用了Hololens。感受了Hololens牛逼無比的定位感知技術。有保密協定,本文不提供細節,但提供與Magic Leap原理性的比較。

========== 下面是幹貨。

首先呢,科普一下 Magic Leap 和 Hololens 這類AR眼鏡裝置,都是為了讓你看到現實中不存在的物體和現實世界融合在一起的影像並與其互動。從技術上講,可以簡單的看成兩個部份:1. 對現實世界的感知 (Perception) 2. 一個頭戴式顯視器以呈現虛擬的影像 (Display) 。

我會分感知部份和顯示部份來分別闡釋Magic Leap的相關技術。

先簡單回答這個問題:

==== 顯示部份 ===== Q1. Hololens和Magic Leap有什麽區別?Magic Leap的本質原理是什麽?


感知部份其實Hololens和Magic Leap從技術方向上沒有太大的差異,都是空間感知定位技術。本文之後會著重介紹。Magic Leap 與 Hololens 最大的不同應該來自顯示部份,Magic Leap是用光纖向視網膜直接投射整個數位光場(Digital Lightfield)產生所謂的Cinematic Reality(電影級的現實)。Hololens采用一個半透玻璃,從側面DLP投影顯示,虛擬物體是總是實的,與市場上Espon的眼鏡顯視器或Google Glass方案類似,是個2維顯視器,視角還不大,40度左右,沈浸感會打折扣。

本質的物理原理是:光線在自由空間中的傳播,是可以由4維光場唯一表示的。成像平面每個像素中包含到這個像素所有方向的光的資訊,對於成像平面來講方向是二維的,所以光場是4維的。平時成像過程只是對四維光場進行了一個二維積分(每個像素上所有方向的光的資訊都疊加到一個像素點上),傳統顯視器顯示這個2維的影像,是有另2維方向資訊損失的。而Magic Leap是向你的視網膜直接投射整個4維光場, 所以人們透過Magic Leap看到的物體和看真實的物體從數學上是沒有什麽區別的,是沒有資訊損失的。理論上,使用Magic Leap的裝置,你是無法區分虛擬物體和現實的物體的。

使用Magic Leap的裝置,最明顯的區別於其他技術的效果是 人眼可以直接選擇聚焦 (主動選擇性聚焦)。比如我要看近的物體,近的物體就實,遠的就虛。註意這不需要任何的人眼跟蹤技術,因為投射的光場還原了所有資訊,所以使用者直接可以做到人眼看哪實哪,和真實物體一樣。舉個例子:在虛擬太陽系視訊的27秒左右(如這個gif圖),攝影機失焦了,然後又對上了,這個過程只發生在攝影機裏,和Magic Leap的裝置無關。換句話說,虛擬物體就在那,怎麽看是觀察者自己的事。這就是Magic Leap牛逼的地方,所以Magic Leap管自己的效果叫Cinematic Reality。




Q2. 主動選擇性聚焦有什麽好處?傳統的虛擬顯示技術中,為什麽你會頭暈?Magic Leap是怎麽解決這個問題的?

眾所周知,人類的眼睛感知深度主要是靠兩只眼睛和被觀察物體做三角定位(雙目定位, triangulation cue)來感知被觀察物體的與觀察者的距離的。但三角定位並不是唯一的人類感知深度的線索,人腦還整合了另一個重要的深度感知線索:人眼對焦引起的物體銳度(虛實)變化(sharpness or focus cue) 。但傳統的雙目虛擬顯示技術(如Oculus Rift或Hololens) 中的物體是沒有虛實的。舉個例子,如下圖,當你看到遠處的城堡的時候,近處的虛擬的貓就應該虛了,但傳統顯示技術中,貓還是實的,所以你的大腦就會引起錯亂,以為貓是很遠的很大的一個物體。但是這和你的雙目定位的結果又不一致,經過幾百萬年前進演化的大腦程式一會兒以為貓在近處,一會兒以為貓在遠處,來來回回你大腦就要燒了,於是你要吐了。而Magic Leap投影了整個光場,所以你可以主動選擇性聚焦,這個虛擬的貓就放在了近處,你看它的時候就是實的,你看城堡的時候,它就是虛的,和真實情況一樣,所以你不會暈。演講中Gary調侃對於Jean-Yves這種帶10分鐘Oculus就吐的家夥來說,現在他一天帶16個小時Magic Leap都不會暈。誰用誰知道,巴紮嘿!



補充:有人問為什麽網上說虛擬現實頭暈是因為幀率不夠原因? 幀率和延時雖然是目前的主要問題,但都不是太大的問題,也不是導致暈得決定性因素。這些問題用更快的顯卡,好的IMU和好的螢幕,還有頭部動作預測演算法都能很好解決。我們要關心一些本質的暈眩問題。

這裏要說到虛擬現實和增強現實的不同。 虛擬現實中,使用者是看不到現實世界的,頭暈往往是因為人類感知重力和加速度的內耳半規管感受到的運動和視覺看到的運動不匹配導致的。所以虛擬現實的遊戲,往往會有暈車想吐的感覺。這個問題的解決不是靠單一裝置可以搞定的,如果使用者的確坐在原定不動,如果影像在高速移動,什麽裝置能騙過你的內耳半規管呢?一些市場上的方案,比如Omni VR,或者HTC Vive這樣的帶Tracking的VR系統讓你實際行走才解決這個不匹配的問題,但這類系統是受場地限制的。不過THE VOID的套用就很好的利用了VR的局限,不一定要跑跳,可以用很小的空間做很大的場景,讓你以為你在一個大場景裏就好了。現在大部份虛擬現實的體驗或全景電影都會以比較慢得速度移動視角,否則你就吐了。

但是Magic Leap是AR增強現實,因為本來就看的到現實世界,所以不存在這個內耳半規管感知不匹配的問題。對於AR來講,主要挑戰是在解決眼前投影的物體和現實物體的銳度變化的問題。所以Magic Leap給出的解決方案是很好的解決這個問題的。但都是理論上的,至於實際工程能力怎麽樣就靠時間來證明了。

Q3. 為什麽要有頭戴式顯視器?為什麽不能裸眼全像?Magic Leap是怎麽實作的?

人類希望能憑空看到一個虛擬物體,已經想了幾百年了。各種科幻電影裏也出現了很多在空氣中的全像影像。 但其實想想本質就知道,這事從物理上很難實作的:純空氣中沒有可以反射或折射光的介質。顯示東西最重要的是介質。很多微信上的瘋傳,以為Magic Leap不需要眼鏡,我估計是轉譯錯誤導致的,視訊中寫了Shot directly through Magic Leap tech.,很多文章錯誤的轉譯成」 直接看到」或」裸眼全像", 其實視訊是相機透過Magic Leap的技術拍的。

目前全像基本還停留在全像底片的時代(如下圖,我在光場研討會上看到的這個全像底片的小佛像),或者初音未來演唱會那種用投影陣列向特殊玻璃(只顯示某一特定角度的影像,而忽略其他角度的光線)做的偽全像。


Magic Leap想實作的是把整個世界變成你的桌面這樣的願景。所以與其在世界各個地方造初音未來那樣的3D全像透明屏做介質或弄個全像底片,還不如直接從人眼入手,直接在眼前投入整個光場更容易。其實Nvidia也在做這種光場眼鏡,


Nvidia采用的方法是在一個二維顯視器前加上一個微鏡頭陣列 Microlens array 來生成4維光場。相當於把2維的像素對映成4維,自然分辨率不會高,所以這類光場顯視器或相機(Lytro) 的分辨率都不會高。本人親測,效果基本就是在看馬賽克畫風的圖案。

而 Magic Leap 采用完全不同的一個方法實作光場顯示,它采用光纖投影。不過,Magic Leap用的光纖投影的方式也不是什麽新東西。在Magic Leap做光纖投影顯示( Fiber optic projector) 的人是Brian Schowengerdt ,他的導師是來自華盛頓大學的教授Eric Seibel,致力於做超高分辨率光纖內窺鏡8年了。簡單原理就是光纖束在一個1mm直徑管道內高速旋轉,改變旋轉的方向,然後就可以掃描一個較大的範圍。Magic Leap的創始人比較聰明的地方,是找到這些做高分辨率光纖掃描器的,由於光的可逆性,倒過來就能做一個高分辨率投影機。如圖,他們6年前的論文,1mm寬9mm長的光纖就能投射幾寸大的高畫質蝴蝶影像。現在的技術估計早就超過那個時候了。

而這樣的光纖高分辨率投影機還不能還原光場,需要在光纖的另一端放上一個微鏡頭陣列microlens array,來生成4維光場。你會疑問這不就和Nvidia的方法一樣了麽?不,因為光纖束是掃描性的旋轉,這個microlens array不用做的很密很大,只要顯示掃描到的區域就好了。相當與把大量數據在時間軸上分布開了,和通訊中的分時一樣,因為人眼很難分辨100幀上的變化,只要掃描幀率夠高,人眼就分辨不出顯視器是否旋轉顯示的。所以Magic Leap的裝置可以很小,分辨率可以很高。



他本人也來Stanford給過一個Talk,Near-to-Eye Volumetric 3D Displays using Scanned Light。這個Talk講的應該就是Magic Leap早期的原型。參考: Fiber Scanned Displays


=== 感知部份 ===

Q4. 首先為什麽增強現實要有感知部份?

是因為裝置需要知道自己在現實世界的位置(定位),和現實世界的三維結構(地圖構建),才能夠在顯視器中的正確位置擺放上虛擬物體。舉個最近的Magic Leap Demo視訊的例子,比如桌子上有一個虛擬的太陽系,裝置佩戴者的頭移動得時候,太陽系還呆在原地,這就需要裝置即時的知道觀看者視角的精確位置和方向,才能反算出應該在什麽位置顯示影像。同時,可以看到桌面上還有太陽的反光,這就要做到裝置知道桌子的三維結構和表面資訊,才能正確的投射一個疊加影像在桌子的影像層上。難點是如何做到整個感知部份的即時計算,才能讓裝置穿戴者感覺不到延時。如果定位有延時,佩戴者會產生暈眩,並且虛擬物體在螢幕上漂移會顯得非常的虛假,所謂Magic Leap宣稱的電影級的真實(Cinematic Reality)就沒有意義了。



三維感知部份並不是什麽新東西,電腦視覺或機器人學中的SLAM(Simultaneous Localization And Mapping,即時定位與地圖構建)就是做這個的,已經有30年的歷史了。裝置透過各種傳感器(雷射雷達,光學網路攝影機,深度網路攝影機,慣性傳感器)的融合將得出裝置自己在三位空間中的精確位置,同時又能將周圍的三位空間即時重建。



最近 SLAM 技術尤其火爆,去年到今年兩年時間內巨頭們和風投收購和布局了超級多做空間定位技術的公司。因為目前最牛逼的3大科技技術趨勢:無人車,虛擬現實,無人機,他們都離不開空間定位。SLAM是完成這些偉大計畫基礎中的基礎。我也研究SLAM技術,所以接觸的比較多,為了方便大家了解這個領域,這裏簡單提幾個SLAM界最近的大事件和人物:

1. (無人車)Stanford的機器人教授Sebastian Thrun是現代SLAM技術的開創者,自從贏了DARPA Grand Challenge的無人車大賽後,去了Google造無人車了。SLAM學術圈的大部份研究派系都是Sebastian徒子徒孫。 2. (無人車)Uber在今年拿下了卡耐基梅隆CMU的NREC(國家機器人工程研發中心),合作成立高等技術研發中心ATC。 這些原來做火星車的定位技術的研究人員都去Uber ATC做無人車了。 3. (虛擬現實)最近Surreal Vision被Oculus Rift收購,其中創始人Richard Newcombe是大名鼎鼎的DTAM,KinectFusion(HoloLens的核心技術)的發明人。Oculus Rift還在去年收購了13th Labs(在手機上做SLAM的公司)。 4.(虛擬現實)Google Project Tango 今年釋出世界上第一台到手就用的商業化SLAM功能的平板。Apple五月收購Metaio AR,Metaio AR 的 SLAM 很早就用在了AR的app上了。Intel 釋出Real Sense,一個可以做SLAM的深度網路攝影機,在CES上Demo了無人機自動壁障功能和自動巡線功能。 5. (無人機)由原來做Google X Project Wing 無人機的創始人MIT機器人大牛Nicholas Roy 的學生Adam Bry創辦的Skydio,得到A16z的兩千萬估值的投資,挖來了Georgia Tech的SLAM大牛教授Frank Dellaert 做他們的首席科學家。http://www. cc.gatech.edu/~dellaert /FrankDellaert/Frank_Dellaert/Frank_Dellaert.html

SLAM作為一種基礎技術,其實全世界做SLAM或傳感器融合做的好的大牛可能不會多於100人,並且大都互相認識。這麽多大公司搶這麽點人,競爭激烈程度可想而知,所以Magic Leap作為一個創業公司一定要融個大資,才能和大公司搶人才資源。

Q5. Magic Leap的感知部份的技術是怎麽樣的?

這張照片是Gary教授在Magic Leap Stanford 招聘會中展示了Magic Leap在感知部份的技術架構和技術路線。可以看到以Calibration為中心,展開成了4支不同的電腦視覺技術棧。



1. 從圖上看,整個Magic Leap感知部份的核心步驟是Calibration(影像或傳感器校準),因為像Magic Leap或Hololens這類主動定位的裝置,在裝置上有各種用於定位的網路攝影機和傳感器, 網路攝影機的參數和網路攝影機之間關系參數的校準是開始一切工作的第一步。這步如果網路攝影機和傳感器參數都不準,後面的定位都是無稽之談。從事過電腦視覺技術的都知道,傳統的校驗部份相當花時間,需要用網路攝影機拍攝Chess Board,一遍一遍的收集校驗用的數據。但Magic Leap的Gary,他們發明了一種新的Calibration方法,直接用一個形狀奇特的結構體做校正器,網路攝影機看一遍就完成了校正,極為迅速。這個部份現場不讓拍照。

2. 有了Calibration部份後,開始最重要的三維感知與定位部份(左下角的技術棧),分為4步。

2.1 首先是 Planar Surface Tracking (平面表面跟蹤)。大家可以在虛擬太陽系的Demo中看到虛擬太陽在桌子上有反光,且這個反光會隨著裝置佩戴者的移動而改變位置,就像是太陽真的懸在空中發出光源,在桌子表面反射產生的。這就要求裝置即時的知道桌子的表面在哪裏,並且算出虛擬太陽與平面的關系,才能將太陽的反光的位置算出來,疊在裝置佩戴者眼鏡相應的位子上,並且深度資訊也是正確的。難點在平面檢測的即時性和給出平面位置的平滑性(否則反光會有跳變)從Demo中可以看出Magic Leap在這步上完成的很好。



2.2 然後是 Sparse SLAM(稀疏SLAM); Gary在Info Session上展示了他們即時的三維重構與定位演算法。為了演算法的即時性,他們先實作了高速的稀疏或半稀疏的三維定位演算法。從效果上看,和目前開源的LSD 演算法差不了太多。



2.3 接著是 Sensors; Vision and IMU(視覺和慣性傳感器融合 )。

飛彈一般是用純慣性傳感器做主動定位,但同樣的方法不能用於民用級的低精度慣性傳感器,二次積分後一定會漂移。而光靠視覺做主動定位,視覺部份的處理速度不高,且容易被遮檔,定位魯棒性不高。將視覺和慣性傳感器融合是最近幾年非常流行的做法。

舉例: Google Tango在這方面就是做IMU和深度網路攝影機的融合,做的很好;大疆的無人機Phantom 3或Inspire 1將光流單目相機和無人機內的慣性傳感器融合,在無GPS的情況下,就能達到非常驚人的穩定懸停;Hololens可以說在SLAM方面是的做的相當好,專門客製了一個芯片做SLAM,演算法據說一脈相承了KinectFusion的核心,親自測試感覺定位效果很贊(我可以面對白色無特征的墻壁站和跳,但回到場中心後定位還是很準確的,一點都不飄。)

2.4 最後是 3D Mapping and Dense SLAM (3D地圖重建 )。下圖展示了Magic Leap 山景城辦公室的3D地圖重建:僅僅是帶著裝置走了一圈,就還原了整個辦公室的3D地圖,並且有很精致的貼圖。書架上的書都能重建的不變形。



因為AR的互動是全新的領域,為了讓人能夠順利的和虛擬世界互動,基於機器視覺的辨識和跟蹤演算法成了重中之重。全新人機互動體驗部份需要大量的技術儲備做支持。

接下來的三個分支,Gary沒有細講,但是可以看出他們的布局。我就隨便加點註解,幫助大家理解。

3.1 Crowdsourcing 眾包。用於收集數據,用於之後的機器學習工作,要構建一個合理的反饋學習機制,動態的增量式的收集數據。 3.2 Machine Learning & Deep Learning 機器學習與深度學習。需要搭建機器學習演算法架構,用於之後的辨識演算法的生產。 3.3 Scenic Object Recognition 場景物體辨識。辨識場景中的物體,分辨物體的種類,和特征,用於做出更好的互動。比如你看到一個小狗的時候,會辨識出來,然後系統可以把狗狗p成個狗型怪獸,你就可以直接打怪了。 3.4 Behavior Recognition 行為辨識 。辨識場景中的人或物的行為,比如跑還是跳,走還是坐,可能用於更加動態的遊戲互動。順便提一下,國內有家Stanford校友辦的叫格林深瞳的公司也在做這個方面的研究。

跟蹤方面 4.1 Gesture Recognition 手勢辨識。用於互動,其實每個AR/VR公司都在做這方面的技術儲備。 4.2 Object Tracking 物體追蹤。這個技術非常重要,比如Magic Leap的手捧大象的Demo,至少你要知道你的手的三維位置資訊,即時Tracking,才能把大象放到正確的位子。 4.3 3D Scanning 三維掃描。能夠將現實物體,虛擬化。比如你拿起一個藝術品,透過三維掃描,遠處的使用者就能夠在虛擬世界分享把玩同樣的物體。 4.4 Human Tracking 人體追蹤。比如:可以將現實中的每個人物,頭上可以加個血條,能力點之類。

5.1 Eye Tracking 眼動跟蹤。Gary解釋說,雖然Magic Leap的呈像不需要眼動跟蹤,但因為要計算4維光場,Magic Leap的渲染計算量巨大。如果做了眼動跟蹤後,就可以減少3D引擎的物體渲染和場景渲染的壓力,是一個最佳化的絕佳策略。 5.2 Emotion Recognition 情感辨識。如果Magic Leap要做一個 Her 電影中描繪的人工智慧作業系統,辨識主人得情感,可以做出貼心的情感陪護效果。 5.3 Biometrics 生物辨識。比如要辨識現實場景中的人,在每個人頭上顯示個名字啥的。人臉辨識是其中一種,國內有家清華姚班師兄弟們開得公司 Face++ 就是幹這個幹的最好的。

總結,簡單來講感知這個部份Magic Leap其實和很多其他的公司大同小異,雖然有了Gary的加盟,野心非常的寬廣,但這部份競爭非常激烈。

Q6: 就算Magic Leap已經搞定了感知和顯示,那麽接下來的困難是什麽?

1. 計算裝置與計算量。 Magic Leap要計算4維光場,計算量驚人。不知道Magic Leap現在是怎麽解決的。如果Nvidia不給造牛逼的移動顯卡怎麽辦?難道自己造專用電路?背著4塊泰坦X上路可不是鬧著玩的。

下圖是,今年我參加SIGGraph 2015裏,其中一個VR 演示,每個人背著個大電腦包玩VR。10年後的人類看今天的人類追求VR會不會覺得很好笑,哈哈。



2. 電池!電池!電池! 所有電子裝置的痛。

3. 一個作業系統。說實話,如果說「世界就是你的新桌面」是他們的願景,現在的確沒有什麽作業系統可以支持Magic Leap願景下的互動。他們必須自己發明輪子。

4. 為虛擬物體互動體驗增加物理感受。為了能有觸感,現在互動手套,互動手柄都是 VR 界大熱的話題。從目前的專利上看,並沒有看出Magic Leap會有更高的見地。說不定某個Kickstarter最後能夠獨領風騷,Magic Leap再把他收了。

===========

筆者史丹佛電腦系研究生畢業,方向是計算攝影和人工智慧,目前在做無人機和虛擬現實技術的研究。

沒錯,我在招人,簡歷發[email protected] 帶你搞計算攝影,飛行技術和浪天涯。

轉載請註明作者: Botao Amber Hu,現從事無人機和虛擬現實技術的研究,光流科技C*O。

請在文章背後註明轉載協定:BY-NC-ND 4.0 Creative Commons 姓名標示,非商業,傳播時不可修改 並附上知乎原帖連結。

轉載聯系我 [email protected] 有動圖。