2016 年被大家稱為 VR 元年,當時用戶能感受到的僅僅是最初級的 VR 體驗,就是一些頭盔硬件,把手機插在頭盔里。目前,在 VR/AR、自動駕駛、無人機這些新興領(lǐng)域,傳統(tǒng)的交互方式已經(jīng)不能滿足用戶的需求。隨著深度學習、計算機視覺等領(lǐng)域的突破性進展,一些新的交互方式已經(jīng)成為可能。
基于過往經(jīng)驗來看,研發(fā) VR/AR 技術(shù)主要就是打造沉浸感,沉浸感是 VR/AR 帶給用戶不同于手機的特殊體驗。實現(xiàn)沉浸感,需要有交互、顯示和移動性這三方面技術(shù)支撐,以下內(nèi)容,我們將以交互技術(shù)為核心展開。
在 AR/VR 領(lǐng)域中,交互不再用鼠標和鍵盤,大部分交互技術(shù)均采用手柄。還有位置跟蹤技術(shù),在一些高檔的 VR 設(shè)備中會提供,但成本較高,且需要連接電腦或主機來實現(xiàn)。未來,可能會采用用手直接抓取的方式,目前也有很多手勢交互方案提供商。
uSens 主要側(cè)重 AR/VR Interaction:
左側(cè)的 HCI((Human-ComputerInteraction)就是人機交互界面,uSens 主要提供 Gesture(手勢識別)、View Direction(頭轉(zhuǎn)向識別)和 Position Tracking(位置追蹤)。右側(cè)是顯示技術(shù),AR 和 VR 的顯示技術(shù)雖不同,但交互技術(shù)卻相通。
手勢交互技術(shù)
如下圖,手勢交互分為符號型、間接型和直接型三種:
如下圖,是常見的硬件對三個場景的實現(xiàn)能力分析:
手勢交互技術(shù)的使用場景
手勢交互技術(shù)的使用場景很廣泛,不光在 VR 領(lǐng)域,如下圖所示:
如圖中所示,像 Game、3D UI、Drive、Public Display、Medical 和 Intelligent Home 等,前三種是為了更好的體驗,后三種則是在公共場合下的應(yīng)用;像手術(shù)、做飯等出于干凈、衛(wèi)生等方面考慮。
基于 AI 的手勢交互技術(shù)
uSens 從 2014 年開始,用深度學習算法來解決手的識別問題。雖然研究手勢識別的人不多,但是和圖像識別、人臉識別一樣,都可以用深度學習來實現(xiàn)。
uSens 用深度學習研發(fā) 26 自由度手勢識別,可以從圖像里邊把手的關(guān)節(jié)點和關(guān)節(jié)點角度與位置識別出來。
如下圖,是 26 自由度手勢識別算法的大致思路:
參考 2014 年深度學習的一個案例,主要是借鑒 CNN 方式,不同圖像通過不同尺度的 CNN 進行卷積,得到一個大的向量,再用兩層全連接的深度網(wǎng)絡(luò)得到關(guān)節(jié)點的 heat-maps。
heat-maps 就是關(guān)節(jié)點在圖像上的概率分布,如上黑框中所示,藍色的點就是小指指尖分布圖,在這個點權(quán)重比較大,其他位置減弱。得到每個關(guān)節(jié)點的權(quán)重圖,再用反向動力學、濾波等方法,就可以跟蹤出手 26 自由度的運動。
運動跟蹤(空間定位技術(shù))
如下圖,是運動追蹤的主要應(yīng)用場景:
如圖中所示,運動追蹤最早在軍事上使用,如導彈、飛機等需要在空中定位自己的位置,空間定位技術(shù)優(yōu)化之后用于智能機器人、無人車、掃地機器人等。
VR/AR 也需要這樣的空間定位技術(shù),如下是當前研發(fā)和掌握空間定位技術(shù)的公司及產(chǎn)品:Google Tango、Microsoft Hololens、Qualcomm VR SDK、Apple ARKit、Snapchat、Facebook和 uSens。
空間定位技術(shù)/視覺方法
空間定位技術(shù)需要結(jié)合視覺和傳感器兩方面的信息。
如下圖,是視覺特征模型:
如圖右側(cè)中所示,是一個相機成像,通過相機觀測三維空間中的一個點,可以得到一張圖像,3D 點和圖像滿足下放投影方程。
左邊是三個比較常用的問題:
視覺 SLAM 方法
視覺 SLAM 方法包含 Tracking 和 Mapping 兩個模塊,Tracking 模塊的功能是已知 3D 點位置,求解每幀圖像的相機 pose。Mapping 模塊的功能是用來更新 3D 點的位置。
視覺特征
空間定位技術(shù)的視覺特征可分為如下兩種:
基于圖像特征點的方法,如 PTAM,ORB。
直接法,比較像素灰度差,如 LSD-SLAM、DSO-SLAM。
求解方法
根據(jù)上圖所示方程,求解方式有基于濾波的算法和基于優(yōu)化的算法兩種,這些方法目前沒有好壞之分,在實際系統(tǒng)中都可以達到相似效果。
空間定位技術(shù)/傳感器
上述的視覺方法能夠達到實用的程度,要歸功于傳感器的進步及傳感器信號融合到算法中,使得系統(tǒng)性能得到提升。
如下圖,是傳感器:Mechanic Gyroscope、LaserGyroscope 和 MEMs Gyroscope:
如上圖,左一是 Mechanic Gyroscope(機械陀螺儀),利用角動量保持不變的特性。當中間的轉(zhuǎn)子保持高速旋轉(zhuǎn),但中間轉(zhuǎn)子方向不變,這樣可以得到設(shè)備的旋轉(zhuǎn)方向。這樣老式的機械陀螺儀用于幾百年前的輪船中。
當前,Laser Gyroscope(激光陀螺儀)高精度陀螺儀都是用激光的方式,如上圖中間小圖所示,用于導彈在空中飛行,幾個小時誤差約在 100 米左右。
激光陀螺儀中間有一個激光源,向兩個方向發(fā)射激光。如物體靜止不動,兩條光線的光路長度相同,在接收端的兩條光路相差是零;如果物體旋轉(zhuǎn),兩條光路就會發(fā)生特別微小的變化,就會產(chǎn)生相差,通過識別相差,得到整個設(shè)備的旋轉(zhuǎn)速度。
MEMs Gyroscope(微機械陀螺儀),用于手機或 VR 頭盔中。這種陀螺儀做的很小,會用到一些機械結(jié)構(gòu)來識別運動。
在微機械陀螺儀中,有兩個可以活動的扇片,當物體旋轉(zhuǎn),扇片會保持不動,通過識別角度,就可以推斷旋轉(zhuǎn)速度。
這種微機械陀螺儀會比激光械陀螺儀差很多,如單獨使用是沒辦法達到預(yù)期效果,所以必須要結(jié)合陀螺儀和視覺信息一起進行。
IMU(慣性測量單位)
如下圖,是 IMU 中的陀螺儀和加速度計:
IMU 中的陀螺儀,輸出的是相鄰時刻相機旋轉(zhuǎn)的角度。IMU 中的加速度計,輸出的是相鄰時刻相機的加速度,即速度的變化率。
空間定位技術(shù)/傳感器存在的問題
如下圖,是傳感器存在的問題:
傳感器數(shù)據(jù)采樣有離散和漂移的,如圖一所示,連續(xù)線是實際的加速度,但是 IMU 采樣是離散的,所以最高點并沒有采樣到,導致結(jié)果出現(xiàn)有誤差。
IMU 得到的加速度是包含重力的,實際中,重力產(chǎn)生的加速度是遠大于一般移動時產(chǎn)生的加速度,所以要去掉重力就需精確估計朝向。
IMU 和相機的相對位置和方向影響很大,兩個位置是不在一起的,它們之間有相對位移且由于工業(yè)生產(chǎn)原因,兩者之間的相差很小一個角度。
經(jīng)研究發(fā)現(xiàn),哪怕角度差一度,對最后整個系統(tǒng)的精度影響也會很大,所以必須在線標定兩者之間的角度和位移。
IMU 和圖像的采集時間不一致,相機采樣頻率大概是 60、30 幀,但 IMU 采樣頻率很高,一般都是 500、800、1000,采樣頻率、采樣時間不一。
解決這些問題的方式是:傳感器+視覺融合
如下圖是預(yù)積分與攝像機標定:
當 IMU 的采樣率比圖像高很多時,采用預(yù)積分的方法,可以把圖像幀之間的 IMU 信息積分起來,當成一量。這樣就不需要優(yōu)化每幀 IMU 的點。
相機 IMU 和世界坐標系之間的關(guān)系,需要精確的標定,如果差一度,整個系統(tǒng)就會完全崩潰。
空間定位技術(shù)/ATW
ATW(Asynchronous Timewarp)是一種生成中間幀技術(shù),可有效減小延遲, 通過預(yù)測未來的雙眼位置來提前渲染。
相機圖像采集,SLAM 算法,渲染,這些過程都需要處理時間,統(tǒng)稱為“Motion to Photon Latency”。在 VR 應(yīng)用中,需要小于 20ms,才能保證用戶不會眩暈。
如下圖,是渲染過程:
從圖中看出,整個過程包括了很多運算,有圖像獲取時間、算法處理時間和渲染時間,渲染結(jié)果到最終結(jié)果顯示時間,這些可以通過 IMU 數(shù)據(jù)得到,但有些必須經(jīng)過預(yù)測。
uSens Hardware
如下圖是 uSens 的硬件產(chǎn)品進化過程體現(xiàn)在更小、compact、更易于嵌入式、功耗更低。
如下圖,是硬件規(guī)格(Hardware Spec):
產(chǎn)品硬件經(jīng)過幾次迭代,從尺寸上和功耗上都比之前小很多。紅色標注是對效果影響比較大的因素,如全局曝光分辨率、雙系統(tǒng)、左右相機同時采樣等。
未來,VR/AR 技術(shù)面臨的問題
如下圖是智能視覺系統(tǒng):
當前應(yīng)用在 VR/AR 場景中,實際上它可以應(yīng)用如上圖所示的更多場景中,比如廣告機、車載手勢識別、機器人和無人機。
人機交互技術(shù)的發(fā)展由兩方面的因素決定:一方面是用戶希望擁有更自然的交互方式;另一方面是技術(shù)的進步使得交互更加自然和方便。未來人機交互方式將會包含自然手勢理解和環(huán)境感知這兩個核心功能。