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

去年的Google I/O上,谷歌神秘的ATAP部門((Advanced Technologies and Projects)曾經展示過非常酷炫的Project Soli。因為當時技術還在早期階段,只是小范圍里給60位開發者發放了開發套件,用于內部測試。在今年的I/O 2016里,谷歌除了帶來Daydream,Android N等重磅更新,ATAP也低調展示了Project Soli的最新進展。我們今天就來扒一扒Project Soli的來龍去脈,讓我們深入了解這項技術的原理和應用。
Soli是一項運用微型雷達監測空中手勢動作的新型傳感技術。這種特殊設計的雷達傳感器可以追蹤亞毫米精準度的高速運動,然后將雷達信號進行各種處理之后,識別成一系列通用的交互手勢,方便控制各種可穿戴和微型設備。

目前谷歌設計的這些通用交互手勢,是基于人們平時所熟悉的一些物理工具和動作,比如按鈕,轉盤和滑桿:



雖然這些動作都是虛擬的,但是因為是多個手指之間的相互動作,它可以給用戶很好的觸覺感應和物理反饋。也因為人類有精準的小肌肉運動技能(fine motor skills),它可以讓這些虛擬工具通過我們手勢運動實現很高的流暢性和精準度。
谷歌相信這些有物理反饋與觸感的交互方式是比平面的觸摸屏或者語音識別技術更自然的控制方式,為人機界面引入了新的思維與機會。
目前關于手掌與手指運動識別與追蹤的技術,市面上已經有好種不同的解決方案:
微軟Kinect為代表的深度感應技術(結構光和飛行時間兩種)
LeapMotion為代表的紅外線投影與成像
uSense為代表的光學立體成像技術
相比這幾種常見的解決方案,采用毫米波雷達的Soli技術有以下幾種優點:
依賴紅外線的深度感應和投影技術在室外紅外線干擾多的環境可靠性很差,毫米波雷達則無這方面問題。
基于光學立體成像的技術需要相當大的計算量獲取深度數據,高的分辨率較難實現,功耗不低;同時由于依賴可見光,在低光亮環境無法使用,毫米雷達波也無這方面問題。
同時因為毫米波雷達的頻率遠低于紅外線和可見光,相比基于紅外線的時間飛行技術,毫米波雷達可以計算相移(Phase shift)和多普勒效應(Doppler Effect),從而以很低的計算量獲取物體的運動與方向。
毫米波雷達對于一些材料還有很好的穿透性,不受光路遮擋的影響。
因為天線技術近年來有不小提高,不到一平方厘米的面積谷歌就可以把傳感器和天線陣集成到一起,這方便了該技術應用到可穿戴設備和手機上,而其他的解決方案目前還不能如此小巧:

這次I/O 2016大會上,谷歌就帶來了跟LG合作的智能手表,在表帶處繼承了Soli技術,用于捕捉用戶指尖的微小動作。這樣的體積與功耗,傳統手勢感應技術是無法想象。

在這個demo里,展示著用手指的按鍵與滑動兩種動作可以發送不同的指令:

在Soli項目的視頻介紹里,也出現了跟智能手表相關的設計概念:


是不是很酷炫?智能手表受限于屏幕大小,如果觸控操作直接在屏幕上進行的話,手指就會遮擋屏幕;如果設計物理按鍵或者撥盤也很難操作。而這種空中手勢有望解決上面這些問題。
目前Soli項目公開的技術細節非常少,目前我們知道的是它可能采取了單發射,多接收的天線設計。在天線前面的障礙物會反射電波回到雷達天線,而反射信號的能量,延時以及多普勒效應則對應了物體的各項特征,包括物體的大小、形狀、材料、距離以及速度。
谷歌在介紹Soli的時候專門強調Soli不像傳統的雷達傳感器,并沒有需要很大的帶寬和空間解析度。事實上Soli的解析度比手指可以實現的精細動作更低,所以對手指運動的捕捉需要分析反射信號在時間上的動態變化,這也對手勢識別的算法提了更高要求。
從原始的雷達信號到最終的手勢控制需要經歷下面幾步:
1、捕捉原始反射信號
2、將接收的時序信號處理和轉換到Range Doppler Map
3、特征提取,識別,定位與追蹤
4、從提取的特征實現手勢識別
Soli SDK為第三方開發者提供了上面每一步的程序接口,同時兼容不同類型的雷達,支持從每秒100到10000的采樣幀數。
Soli的雷達采用了調頻連續波Frequency Modulated Continuous Wave (FMCW)的調制格式。這項技術目前已經用在汽車自動巡航等應用,可以同時實現對物體距離和速度的感應。下面我們結合NVDIA最近發表的一篇論文(Short-range FMCW monopulse radar for hand-gesture sensing) 來解釋下這項技術的原理:
FMCW這種格式是由周期性鋸齒波函數調制。雷達發射的信號從物體反射回后產生了時間與頻率上的差異。其中時間的延時τ是電波往返的時間,頻率上的變化fd則是物體運動導致的多普勒效應。

我們把接收到的信號跟原信號相乘,然后在模擬信號領域進行低通過濾,這樣就可以產生明顯的beat信號。然后把二維的時序信號各自做FFT轉換,減去靜止不變的背景環境,就可以獲得所需的Range Doppler Map (RDM):

RDM的每一格都對應著目標的目前的距離和運動速度。因為不同的物體可以在不同距離或者在相似的距離但是各自有不同的速度,RDM便實現了同時追蹤多個物體的效果。比如下圖是一個正在移動的手掌,每一個綠框可以是被識別出來的手指。

如果我們有多個接收天線,通過比較每個天線之間RDM的相位差,我們可以計算出每個物體的到達角度(Angle of Arrival),配合上之前算出的距離,這樣就實現了對物體的空間定位。如果跟傳統的深度感應器進行校準之后,則可以獲得三維深度圖。

我們可以把四維的矢量信號(三維空間位置加上徑向速度)映射到一個手掌模型上,導入后端的手勢學習模型中進行識別。
這是五個不同用戶進行四種手勢產生的RDM,可以明顯看出手勢之間的差異是明顯的,而不同用戶在進行同一手勢時是有很多相似點的。

所以FMCW這種格式相比其他雷達有以下這些優點:
1、同時計算速度與距離,距離信息準確度高。
2、Beat頻率不高,對應采樣率也低,降低了模擬電路與數字信號處理的難度,整個算法可以嵌入在低功耗芯片上實現。
3、最短測量距離跟信號波長相關,所以物體可以離天線非常近,甚至可以貼到天線上。
由此可見,Soli采用的這種FMCW技術是它實現微型化雷達和極低功耗的基礎。谷歌網站上展示的2014年的早期產品原型還是一個巨大的機盒,然后僅僅一年多之后就把系統縮小到了不到一平方厘米的面積,其中包含了多種天線和感應器。

谷歌對Soli的目標是制造出成本低廉,可以大規模量產并且功耗極低的微型雷達芯片,期望可以集成到最小的移動設備里面。通過這兩年的發展可以說谷歌離這個目標已經非常近了。
下面整理了一些過去一年早期開發者在使用dev kit進行的各種有趣的應用:
因為毫米波雷達對部分材質有一定的穿透作用,反射信號也有一些差別,有開發者據此設計出材質探測器,不僅可以識別塑料和多種金屬,還能識別水跟牛奶。

車內手勢是一項有意思的應用,相比可見光和紅外光的技術,Soli可以完美解決不同光照環境下傳統技術不穩定的問題,而且雷達對捕捉細微運動有很強的優勢。

在Soli的幫助下我們對手機觸屏的交互又多了新的一個維度,Hover在屏幕上的手指現在也可以精確地捕捉和預測了。

既然Soli可以掃描和計算出深度圖,為何不拿來做成3D掃描與成像的應用?

這個應用很酷炫,手指空中劃出3D密碼,抽屜自動開啟!

利用Soli對手勢的捕捉設計出一套樂器如何?

一個類似的項目號稱用Soli設計了全世界最小的小提琴! 精確捕捉手指的每一點動作然后映射到音符上。

從2014年項目開始,到去年I/O上發布的初期原型到今年I/O帶來的各種創意應用,這兩年Soli進展很快。谷歌宣稱相比去年的版本,目前芯片面積縮小了70%,功耗下降了22倍,從本來就不高的1.2瓦進一步下降到了0.054瓦,算法也得到了256倍的效率提升。
據媒體報道,谷歌年底或者明年會有全新的dev kit提供給更多開發者,相信在不遠的未來我們將會看到采用Soli技術的智能手表,VR/AR設備以及智能家電出現在市場中。
另外一個巨大的市場就是可穿戴設備,事實上ATAP的另外一個神奇項目Project Jacquard正在跟Levi牛仔合作一種可觸摸布料,用于制造智能外套。Soli采用的雷達技術正好可以穿透許多傳統的紡織材料,很可能成為來為智能服裝標配的交互途徑。Soli這種新穎的雷達技術以后也可以跟其他射頻與傳感技術進行融合,或許可以創造出更多意想不到的應用。
雷鋒網此前針對Soli雷達成像技術也有解讀:
《解讀英偉達芯的雷達手勢識別,我們對Project Soli有了更多了解》
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。