一、概述
“手勢是人類溝通的自然的方式。硬件限制是我們不能很好地控制我們的設備的限制”,這里的硬件限制指的是傳統(tǒng)的手勢識別算法需要額外的深度傳感器。感謝近十多年不斷發(fā)展的可適應 AI 和邊緣計算崛起,使得這一切逐漸變?yōu)榭赡堋?
我們或?qū)⒃谥悄苁謾C、平板電腦、臺式電腦、筆記本電腦、智能手表和智能電視,IOT 設備中看到更多結合空中手勢來操作的未來功能。
今年我們已經(jīng)看到有這樣的趨勢,科技巨頭都紛紛推出了自己的手勢識別能力:谷歌在自己的手機和智能音箱上提供了手勢交互的能力,華為在旗艦手機 Mate30 上推出了自己的手勢操控等等,蘋果也剛剛提交了手勢在智能音箱上應用的相關專利,實際上,手勢作為人機交互自然的方式場景簡直是不言自明,想像一下這些場景:
總結來說:“You are the only interface you need”。
二、我們現(xiàn)在的業(yè)務場景
我們所屬天貓精靈 M 實驗室,主要負責跟天貓精靈相關的視覺算法,我們的主要研究方向人機交互視覺算法,包括手勢識別,肢體識別,還有多模態(tài)視覺語音交互等。
去年,我們推出了基于天貓精靈智能音箱的超輕量手勢識別算法,今年我們更進一步,在技術,業(yè)務,算法上進行了更為深入的探索:
三、無處不在的單點(靜態(tài))手勢
3.1 從天貓精靈到優(yōu)酷 iPad 手勢識別
去年,我們推出了基于天貓精靈智能音箱的超輕量手勢識別算法,今年我們與優(yōu)酷的小伙伴合作,把單點手勢能力進一步移植到了優(yōu)酷 iPad 場景中。
3.1.1 單點手勢應用:優(yōu)酷吃飯看劇神器
來自用戶的聲音:吃飯看劇神器
這是在優(yōu)酷上線后用戶自發(fā)介紹的使用視頻,也非常符合我們的場景預期和用戶痛點:
3.2 走的更遠:大屏遠距手勢交互
3.2.1 大屏交互場景
近年來,智能電視(智屏)正越來越多的進入千家萬戶。據(jù)工信部預測,到 2020 年,智能電視市場滲透率有望達到 90% 以上。除了數(shù)量優(yōu)勢,強大的交互能力是智慧家庭入口的必備特質(zhì)。作為智慧家庭 IoT 的另一個重要入口,智能電視的大屏幕更易實現(xiàn)交互。
3.2.2 挑戰(zhàn)
要走的更遠,也常常伴隨更大的挑戰(zhàn)。和天貓精靈 CC 或 iPad 這種近身設備相比,在智能電視場景進行手勢算法研發(fā)面臨主要面臨的挑戰(zhàn)有:
3.2.3 大屏方案
針對以上挑戰(zhàn),經(jīng)過我們算法研發(fā)探索,提出語義注意力機制導引的快速人手檢測和分類方法(Contextual-attention-guided fast tiny hand detection and classification)。
大屏解決方案: Contextual-attention-guided fast tiny hand detection and classification
1)Lightweight hourglass-like backbone
輕量J類 hourglass 模塊對輸入進行下采樣,在獲取具有G層語義信息的特征圖的同時,盡量保留細節(jié)性特征,有利于對 tiny hand 的檢測。
2)Contextual attention
3-5 米場景下,人手在整個輸入圖像中占的像素比非常小。手雖然很小,但是手一般長“人”身上,而且距離人體特定的部位(如手腕、胳膊、人臉)較近,同時與這些部位可能會有相近的顏色。這些人體或人體部位往往較手要更大,為我們 tiny hand 的檢測提供了額外的 clues,利用這些 clues,可以更好的對 tiny hand 進行檢測;诖,我們利用 Similarity Context 和 Semantics Context 來作為 Contextual attention ,從而指導網(wǎng)絡獲取手區(qū)域以外的語義信息,增強檢測能力。
四、落地與優(yōu)化閉環(huán)
相信任何一個做過 AI 算法落地的同學,都會遇到各種各樣的實際算法問題,不管是科大訊飛的語音交互,到現(xiàn)在無處不在的人臉識別,甚至谷歌的搜索詞排名算法,基于深度學習的AI算法的非常重要的一個特點就是越用越好,并漸漸形成數(shù)據(jù)相關壁壘。
我們在手勢先后在天貓精靈和優(yōu)酷上線后,我們同樣也經(jīng)歷了這樣的一個過程,為了讓我們的算法“越用越好”:
4.1 更快更強的端上檢測算法 + overflow-aware 量化應用
4.1.1 更強的端上檢測算法
基于 anchor-free 方案,更G效的算法框架,使用 heatmap 輔助 anchor 方案
基于天貓精靈音箱,IOT 視覺模組等不同設備算力的硬件條件,對端上的手勢識別提出了更加G的要求,我們進一步提升手勢識別算法能力框架:基于流行的 anchor-free centernet 算法,提出了 centernet-lite 的端上檢測算法,不過在實際算法的落地的過程中,我們發(fā)現(xiàn)目前流行的 anchor-free 方案在小網(wǎng)絡有一些天然劣勢:
4.1.2 應用 Overflow-aware 低比特量化算法
端上量化
加速目前業(yè)界流行的方案為谷歌 8bit 量化算法,事實上,有更優(yōu)秀的低比特量化算法:通過學習的方法,學習每一層的 min/max 范圍,動態(tài)的調(diào)整每一層的量化方案,目前在推理引擎端加速比為 70%。
終我們采用使用 heatmap 方案來輔助 anchor 檢測方案且融合 Overflow,這取得了比較好的精度和效果的平衡,在天貓精靈硬件上。
4.2 優(yōu)化閉環(huán):AUTOAI 的手勢線上識別優(yōu)化框架 (讓算法越用越好)
我們利用在 deep learning 中有類似模型蒸餾的思想,通過采用預先訓練好的復雜模型(Teacher model)的輸出作為監(jiān)督信號去訓練線上網(wǎng)絡(student model)。我們可以在不直接接觸業(yè)務數(shù)據(jù)的情況下,不斷進行算法的優(yōu)化。
使用圍欄的優(yōu)化結果:
五、產(chǎn)品J的序列(動態(tài))手勢
5.1 為什么要做動態(tài)手勢識別
我們在單點手勢已經(jīng)做了非常多的嘗試和應用落地,但是動態(tài)手勢作為一種更自然更“爽”的交互方式,是我們一直在不斷鉆研的實際方向。
從產(chǎn)品的思路上來說,動態(tài)手勢提供了更多的交互感和參與感,其應用的場景可能也是不一樣的,比如單點手勢可能應用與 IOT 設備等操控類型的算法場景,動態(tài)手勢其d特的參與感讓其更適用于教育,娛樂,線下運營等實際場景,這也是我們不斷突破這個場景的原因。
5.2 基于 skeleton 的動態(tài)手勢識別算法
去年,我們實現(xiàn)了基于 skeleton-based 的動態(tài)手勢識別算法(相關工作已經(jīng)投稿ISMAR2019,并成功發(fā)表,鏈接:https://ieeexplore.ieee.org/document/8951971):
但是在實際的產(chǎn)品化過程中,我們發(fā)現(xiàn)對于通用的動態(tài)手勢識別,純粹的 skeleton-based 方案可能并不實用,主要原因有:
因此,我們把目光投到了以動作識別為基礎、指尖回歸為輔助的時序推理方案。
5.3 基于視頻理解的動態(tài)手勢識別算法
時序推理
原理:圖像關系的時序推理(temporal reasoning)能力,要讓計算機認識這兩個行為,需要兩張及以上的幀圖像來相互輔助識別。一個行為需要被多個幀協(xié)作來解釋。這種方案很好的解決了 motion blur 的問題,且算力上更可控。
Our Temporal Generation Network_
為解決運動模糊等問題,采用基于 RGB 時序序列為主框架的視頻識別方案,提取連續(xù)采樣幀的特征,并使用改良的G效快速的非退化 3D 卷積網(wǎng)絡,對時序特征進行融合。
同時針對特定手勢的識別,提出一種基于手指關鍵點的輔助分支,使用 heatmap 分支對指尖關鍵點進行多任務學習并回歸,檢測出手指的運動軌跡,與 RGB 分支進行特征融合,輔助動態(tài)手勢識別。算法整體結合了基于 RGB 和關鍵點方案的優(yōu)勢,達到了速度與精度的平衡。
六、未來展望
我們已經(jīng)在單點手勢識別,序列手勢識別在算法、業(yè)務都進行了較多的探索和嘗試,關于手勢識別的未來算法探索方向和業(yè)務發(fā)力點,我們也有一些自己的展望:
6.1 3D 手勢崛起
3D 人手姿勢估計是指基于輸入的 RGB 或 RGB-D 圖片進行人手建模并找到關鍵部件(如,骨節(jié)點)位置的過程。我們生活在三維世界,三維手勢交互必然帶來更自然更舒適的交互體驗。我們也在 3D 人手交互方面正進行積J探索,未來在電商產(chǎn)品交互式展示、VR/AR、手語識別、在線教育等方面,我們會推出更多的交互性更強的產(chǎn)品,提供更人性化的交互體驗和服務。
Oculus Quest 在今年推出的 3D 手勢操控
6.2 手勢在 IOT 場景的應用
手勢控制能否超越語音控制成為智能家居設備自然不過的設備呢?在 IOT 場景,如果可以使用手勢控制電視,燈泡,空調(diào)等等。目前已經(jīng)有一些 startup 開始了在這方面的探索。
比如 Bixi,Bixi 是一款手勢小遙控器,感應你的空中手勢,可以指揮你喜歡的智能手機應用程序、LifX 或者 Hue 燈泡、互聯(lián)網(wǎng)揚聲器、GoPro 和許多其他 IoT 設備。
再比如如下圖的 Bearbot 萬用遙控器,除了萌系的外觀以外,還可以支持自定義手勢控制全屋家電,讓你從此擺脫一堆遙控器的束縛。
Bearbot 手勢遙控器,圖片來源:https://www.indiegogo.com/projects/bearbot#/
6.3 手勢在教育場景的更多應用
除了手指點讀,手勢在教育行業(yè)其實應該有更多的應用,比如現(xiàn)在大火的在線教育,手勢可以增加虛擬課堂的互動感和,同時對于小朋友來說,手勢/視覺提供的有趣新奇的操控體驗也是對幼兒提G課堂注意力非常重要的一環(huán),例如,引導舉手回答問題。再比如,我們需要做一些課堂小練習,普通的模式太枯燥,使用動態(tài)手勢識別“畫對勾”,“畫叉叉”讓小朋友以互動游戲的方式完成這些練習。