4
| 本文作者: 陳哲 | 2016-06-12 12:43 |
雷鋒網按:本文作者陳哲,現谷歌眼鏡部門高級軟件工程師。

在剛過去的聯想TechWorld 2016大會上,我們欣賞了聯想帶來的各種新奇產品和技術,其中最吸引眼球的無疑是Phab 2 Pro手機。這款巨屏手機的配置屬于目前中上水平:高通驍龍652八核處理器,6.4寸QHD顯示屏,4G內存,前800萬像素,后1600萬像素攝像頭,4050毫安電池,指紋識別加全金屬機身,跟最近上市的小米Max高配版非常相似。如果聯想只是做這樣一款中端機,定價在$499美元的話,相信在北美市場還是很有性價比的。但在這個平凡的外觀下是它讓人著迷的另一個身份——首款內置谷歌Tango技術的手機。
Project Tango是谷歌為實現移動設備位置感應而研發的一系列產品與技術的集合。它源自于Google Advanced Technology and Projects group(ATAP),一個類似于Google X實驗室的尖端技術研究部門。跟X實驗室不一樣是在于它們的項目往往有更短的周期,有明確的產品與上市時間表。Project Tango就是在這樣的環境里,在很短的時間和非常有限的人力資源下成功實現技術突破與產品化的。
簡單描述Tango,它的核心技術是下面三塊:

運動追蹤 Motion Tracking-通過移動設備自帶的多種傳感器,在不通過外界信號的情況下(例如GPS,WiFi,藍牙Beacon等),實時獲取設備的姿態與位置,追蹤設備在三維空間中的運動軌跡。
環境學習 Area Learning-利用視覺信息記錄與引索外界環境,自動矯正環境構建與運動追蹤中積累的誤差,識別重復環境。
深度感應 Depth Perception-利用自帶的深度傳感器掃描外界三維環境,構筑三維模型。
目前在移動設備上實現上面任何一項技術都相當有挑戰的,可以說在Tango發布之前,市面找不到基于移動設備本身進行計算而且售價僅在$499的解決方案。
下面聊一聊這幾個技術主要的難點和Tango的突破:
傳統的運動追蹤辦法可以簡單分為兩類,一類是靠外界參照系,比如GPS通過計算設備到軌道中不同位置的衛星距離可以判斷出設備在地球表面上的具體位置,精度可以到達厘米級別,或者計算手機跟不同基站之間(包括蜂窩網,WiFi網,藍牙Beacon)的信號衰減來做三角定位法,這樣的精度可能從數米到幾百米之間。對于室內環境,要么GPS信號接收不到,要么沒有龐大的基礎設施提供準確的參照系,所以并不是室內移動設備適用的辦法。
第二類辦法則叫船位推測法(dead reckoning),就是利用物體現有的位置,速度以及運動方向計算未來位置。千百年來人類在沒有導航系統之前就是用這樣的辦法航海與航空的,甚至現在科學家發現許多動物精準的遠距離遷移也是因為他們進化出了這種船位推測法的能力。這里面就引入了新的一個概念, 慣性測量單元(Inertial Measurement Unit or IMU)。IMU 包含三軸的陀螺儀與三軸的加速器,用來測量物體的姿態角度和加速度。
dead reckoning在航空里的應用:

我們知道從物體加速度可以積分得出速度,速度再次積分可以算出絕對位置。然而傳統消費電子設備里面的IMU受限于成本,精度與采用率都很低,十幾秒的兩次積分就能累計到駭人的誤差,導致位置結果完全不可用。
Tango創新性的采用了魚眼相機與IMU結合的辦法來解決上面提到的這些問題。首先為IMU開發了一套精準的傳感器融合算法(Sensor Fusion),保證設備在不同環境和運動狀態下還能長時間積累很小的誤差,尤其是對姿態角度的計算。魚眼相機則追蹤每一幀視頻中出現的特征物,無論是邊沿或者角落,然后比較幀與幀之間的圖像差別來計算運動變化。由于Tango可以準確的追蹤相機姿態,通過加速度估算出幀與幀之間的大概運動,結合圖像信號,它能夠算出比現有技術精準許多的運動狀態,通過一次積分就可以得出設備運動軌跡。這樣依然還會有一些積累誤差但是已經比傳統的辦法好了許多倍。
然而只知道運動軌跡并不夠,因為設備并不了解它在所處環境中的位置,它也不會記住曾經見過的不同環境,所以Tango的第二項技術環境學習就變的非常有用了。當設備初次進入一個新的環境時,在它不斷移動進行運動追蹤的同時,它會記錄下所見的環境信息。當再次進入熟悉的環境時,設備可以很快的找到自己在這個環境中的位置,并且不斷更新和矯正之前記錄中不準確或者已經發生變化的地方。
這個功能描述起來很容易,但實施起來則相當的困難,首先設備會對它見到的每一幀提取特征,然后對出現的特征進行保存和引索,再利用一些高效的儲存和搜索算法,實時的判斷新的一幀是否跟過去曾經看到的環境有相似之處,如果匹配準確的話,設備可以立即利用之前已經收集的環境信息。
因為上一步的運動感應會慢慢的積累一些測量誤差,環境學習另外一個重要的功能就是實現位置的矯正。如果設備通過環境匹配確定自己回到了之前曾經到過的某一點,即使運動感應積累的結果說自己在另一點,系統也應該把新的位置矯正過來,因為外界環境一般是恒定不變的而且相對可靠的。
這張插圖解釋環境學習是如何矯正設備積累的偏移量的。

Tango設備背面都有特殊的距離感應傳感器,用來測量物體到設備的距離與尺寸。目前市面有三種深度感應技術,各有一些利弊,第一代的Tango原型平板采用的是類似第一代Kinect的結構光(Structured Light)技術,而到了第二代的Tango原型手機以及這次發布的量產機型Phab 2 Pro則采用了跟第二代Kinect類似的Time of Flight技術,主要的優勢在于不需要紅外界發射器與接收器之間保持比較大的距離,很適合做在手機這種長寬非常有限的設備里。
深度感應對于Tango設備來說意義非常大,它提供了詳細的環境深度信息,用來構筑三維的環境模型。同時配合運動追蹤,它可以告訴用戶在空間中的位置,與四周障礙物的距離。這就完全解決了HTC Vive和Oculus頭盔需要依靠外界傳感器才能判斷用戶空間位置的問題。
以上這三項技術相互結合,就讓設備擁有了以前從未有過的對環境的感應和學習能力。Tango項目同時提供了大量基于安卓和Unity平臺的開發工具,方便開發者利用這些獨特的功能開發出讓人振奮的游戲與應用。
用戶可以用Tango輕松掃描家庭環境空間,在添置家具時看到家具在室內的擺放效果。美國家具巨頭Lowes已經開發了類似的App,會成為Tango手機的首發零售商來推動這項應用。
對于視覺障礙的用戶,Tango第一次給他們帶來了低成本,高可靠性的導航工具。
另外用戶可以掃描身邊房間環境然后玩逼真的AR游戲,比如谷歌展示的在房間里現實外星人demo。
聊完了Tango的技術和功能,再來聊下它的戰略意義,這款擁有獨創技術的Phab 2 Pro手機很可能對手機與VR、AR行業產生不小影響:
現有的HTC Vive和Oculus是比較單一的VR內容平臺,并沒有很好的環境感應能力。從Vive需要搭建的復雜的環境感應器就可以看出,簡易的環境感應能力是VR系統急需的功能。在其他公司需要外置傳感器和性能龐大的PC的今天,谷歌通過Tango在一個低功耗的移動設備上實現了類似的功能,其技術的先進性是毋庸置疑的,而這正好是谷歌在VR領域的完美結合與補充。
目前AR系統主要集中在眼鏡與頭盔的形式,技術與人機界面的成熟度都還很低,更別說動輒上千美元的價格。Phab 2 Pro以一個低廉的價格($499),大眾熟悉的手機模式,給用戶起到了教育與普及AR技術的作用,激發更多AR應用的探索與成熟。
Google Daydream是Cardboard進一步發展的VR平臺,是一套面向所有安卓設備廠商的開放標準。Tango所需的許多技術和標準其實跟Daydream是非常相似的,比如都需要低延時,低誤差的IMU傳感器,都需要高精度,同步的時鐘系統,以及對傳統的非實時性的Linux內核提出了更嚴格的實時性要求。這些標準如果都是由谷歌主導和推進,采用廉價甚至免費的形式提供給設備廠商,它對未來手機行業的控制就會進一步加強,對上下游產業都會有更強的影響力。
很長時間以來優質和創新的應用都會選擇iOS作為首發平臺。最近幾年Apple在手機革命性技術方面的投入似乎有所變緩,而谷歌趁機構筑Cardboard,Daydream,Tango這些將對手機應用和形態產生深遠影響的技術與標準。隨著大量設備廠商與內容商擁抱谷歌標準,iPhone未來在手機行業中的領先位置將會受到很大的沖擊。
本文由作者授權雷鋒網發布,未經授權,禁止轉載!
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。