廖翔宇 甘宇健 喻光繼

摘要:本文分析了動作識別的研究現狀和技術原理,并通過光學體感設備所獲取的深度數據信息轉換出的骨骼數據,對動作進行識別,并運用在導購系統中,實現手勢動作隔空操控系統。該導購系統在識別用戶動作方面具有較高的精確性和穩定性,其采用光學式的捕捉方式使得在實際應用中更具有實用價值。
關鍵詞:深度數據;動作識別;手勢識別;導購系統
中圖分類號:TP393? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)27-0187-03
Abstract:In this paper, the research status and technical principle of action recognition are analyzed, and the bone data converted from the depth data information obtained by optical somatosensory equipment are used to recognize the action and apply it to the guidance and purchase system. The gesture action spacer control system is realized.The purchase guidance system has high accuracy and stability in identifying user movements, and its optical capture method makes it more valuable in practical application.
Key words:DepthData; Action Recognition;GestureRecognition; Guidance And Purchase System
在人工智能高速發展的趨勢下,動作識別技術在各個領域的應用價值已初見端倪,給人們帶來了革命性的體驗。雖然現在動作識別技術的發展重點在游戲領域,但是從長遠發展來看,動作識別技術的應用必將呈多樣發展趨勢。如今的無人經濟市場,從無人機送貨、無人汽車到最貼近廣大消費者生活的無人商店,都顛覆了傳統的經營模式,更受到商業市場的重視和歡迎。面對未來的無人經濟市場,如何抓住機遇,將動作識別技術在無人商店中進行應用,將是我們需要去探討研究的問題。
1 動作識別技術的研究現狀
人機交互技術出現至今, 已應用到了生活中的方方面面并展現出良好的應用前景。在2013年,微軟推出的新一代體感設備kinect2.0,可以實時準確地捕捉人體動作、面部及語音特征[1]。這些特性很好地彌補了人機交互技術現有的缺陷,使動作識別成為人機交互領域中的一個研究熱點。它的出現, 給眾多科技愛好者和熱衷人工智能的IT從業者帶來無窮的想象,使醫學、商業及機器人等多個領域迎來新一輪變革,如ARDoor公司基于Kinect設備開發的“試衣魔鏡”給顧客帶來了無須脫衣也能換裝的體驗[2];廣州大學實驗中心通過體感虛擬裝配系統[3],降低了對傳統鼠標鍵盤的依賴;由羅元等人[4]為實現控制輪椅運動,基于Kinect傳感器設計的智能輪椅系統。可以預測, 隨著未來智能化生活的到來和體感設備功能的完善, 基于動作識別的人機交互應用將越來越值得期待。
2 基于Kinect的動作識別方法
目前對動作進行捕捉識別的常用方法從原理上可分為電磁式、機械式、聲學式和光學式,其中光學式的捕捉方法對環境要求和識別者較為友好。本文主要通過光學式的體感設備Kinect2.0來對外界進行即時動態捕捉,并借助微軟所提供的Kinect2.0 SDK將捕捉到的深度數據分離出骨骼數據來進行動作識別的研究設計。
2.1 Kinect2.0獲取深度數據
Kinect2.0的視錐是由X、Y、Z坐標軸表示的三維立體空間。Kinect2.0通過紅外投影儀持續主動的投射出紅外光譜,光譜照射到三維空間內粗糙物體或是穿透毛玻璃后光譜會發生扭曲,形成隨機反射斑點。深度攝像頭通過分析捕獲到的隨機反射斑點生成具有三維坐標數據的深度數據,通過深度數據可以有效地描述三維空間內的物體。
2.2 基于深度數據的骨骼追蹤技術
骨骼追蹤技術的原理是通過對Kinect2.0捕獲到的深度圖像數據進行邊緣檢測,將人體從整個深度圖像中提取出來,再使用隨機森林模型對人體部位進行識別,最后結合基于高斯核函數的局部模型識別方法來對關節位置進行追蹤[5]。深度圖像數據最多可以轉換出25個可視化的人骨骼體關節點(如圖1)。本文將在骨骼關節點運動軌跡特征的基礎上對動作識別技術進行系統應用。
3 系統交互動作的設計
微軟所提供的Kinect2.0 SDK中的動作識別引擎并不多,在新的動作識別引擎沒有提供之前,需要自行編寫算法來識別系統所要識別的動作。但在系統捕捉動作過程中,因為被識別者常常會有其他無意識的動作,所以在所設計的交互動作中應避免設計的動作與人體所做的無意識動作相似。
3.1所能識別的動作范圍
雖然導購系統可以基于25個可視化骨骼關節數據識別出人體多數動作,但并非所有動作都適用于實際應用。在日常生活中,手是控制外部設備最常用的部位,所以根據手部肢體位置的變化即以手勢作為導購系統與外界交互的方式較于用其他部位的動作顯得更自然、簡潔和豐富。為使得手勢交互更具人性化和高容錯率,交互手勢應遵循以下原則:
1)交互手勢的移動范圍應盡可能小
根據人機工程學的設計思想,用戶與機器交互所使用的手勢運動范圍應盡可能地小,這樣不僅緩解了使用者短時間內因交互引起的疲勞,也避免了大范圍動作給人帶來的尷尬心理[6]。
2)交互手勢應符合人類自然常用手勢
所設計的手勢應使用戶能自然地與機器交互,而無須專門學習,以減少用戶做出手勢的難度。因而,所設計使用的手勢應契合使用者的自然習慣。
3)所選手勢應具有特殊軌跡
許多動作的運動軌跡是相識的,雖然通過動作的重復能提高識別率,但會造成識別時間上的延長,所以應找到具有特殊軌跡的手勢,以盡量減少識別時動作的重復,提高識別速度。
3.2整體算法設計
人類對于人體動作的判斷是基于視覺的,當眼睛看到人體后,通過大腦中對于動作的描述,判斷所做的動作。同樣的,在計算機的動作識別過程中,也要首先獲取“視覺信息”,即深度數據,作為判斷動作狀態的基礎。本文根據捕獲的深度數據所得出的25個骨骼關節點數據,設計出判定方法,判斷所做的動作,基本思路如下:
當設備捕獲到深度圖像數據時,檢測深度圖像數據中是否包含有人體骨骼特征數據,即25個骨骼關節點;將其中具有骨骼關節點的數據一幀一幀地進行判斷。根據所要識別的動作,設定其運動的關鍵軌跡,再選取動作軌跡中主要關鍵點,將這些點作為判斷動作是否符合的條件,并收集判定結果,需要注意的是收集條件判斷的結果的先后順序要和動作運動時所經過的軌跡點順序一致。當動作進行過程滿足所有條件,即動作與設定軌跡點一一相符,則輸出該動作名稱。
在整個識別動作過程中需要注意的是,動作是一個動態的過程,它是以一定的速率進行運動的,若識別時間過長,則會被認為是相互獨立的動作而非連續動作。本文在判斷條件內加入時間屬性,在即將更新狀態之前,檢查動作開始和結束的時間,若時間差大于事先設定的時間值,則移除之前的動作起始點,以現在的位置點作為新的動作起始點。
4 導購系統的實現
本文通過設計導購系統所采用的交互動作和識別動作的算法,將動作識別技術應用到導購系統中,實現基于動作識別的智能無人導購系統。系統使用者可以通過系統所能識別的交互動作與系統進行精確、快速的交互,使人與系統本身自然地融合在一起,為人們帶來智能化的購物體驗和享受。
4.1系統實現方式
導購系統采用C#語言進行開發,通過Kinect2.0設備獲取實時深度數據。系統使用Kinect2.0 SDK提供的骨骼追蹤的基本庫,直接調用其內置庫中的深度圖像數據流獲取數據,通過本文所設計的算法得出人體當前所進行的動作,根據得到的動作變化最終實現根據人體的不同動作來控制系統進行非接觸式的智能化導購。
4.2? 識別用戶獲取物品功能的實現
導購系統識別用戶是否獲取物品的方法是通過體感器獲取顧客手部關鍵骨骼關節點的變化情況從而控制系統做出對應的反饋。以右手拿取物品過程為例,當體感設備識別范圍內出現可識別人體,且右手腕關節點向商品位置移動并靠近物品時,體感設備開始檢測手勢變化情況。如果25個骨骼關節點中的右手關節(第11個點)、右中指關節(第24個點)和右手拇指關節(第23個點)這三個關節點之間的空間距離在所設定時間內縮短至設定距離范圍,則導購系統判定該顧客拿取該商品,并將商品信息以視頻文字等形式呈現給用戶。如果顧客拿取商品后在極短時間里三點之間的空間距離變大,則導購系統將判定該顧客放棄該商品的選購。
4.3 手勢控制視頻切換瀏覽功能的實現
視頻切換所用的實現方法為檢測用戶是否在進行揮手的動作,根據揮手的不同方向對物品信息介紹進行上下切換。以右手向左揮動的動作為例,當體感設備識別范圍內出現可識別人體,體感設備判斷用戶的右手在進行從右向左揮動的動作后,系統將判斷用戶想要切換視頻。那么,系統將為顧客切換到上一個商品視頻信息。揮動的過程所對應關節的位置條件設置為:當25個骨骼關節點中的右手關節(第11個點)出現在右胳膊肘(第9個點)前端,且處于右肩關節(第8個點)下方時,在一段極短時間內,右手關節點(第11個點)由右肩關節點(第8個點)外側即身體的外側到與右肩關節點(第8個點)重合處,最后處于左右兩肩之間。
5 結論與展望
本文通過Kinect2.0獲取的深度數據所分離出的骨骼關節數據對動作識別技術進行分析和研究,針對店鋪商品導購的實際環境,提出識別手勢的方法,并應用到導購系統中。該基于動作識別的導購系統不僅提高了與顧客的互動性,而且減少了商鋪雇傭導購員的資金投入和降低顧客與傳統導購員間的尷尬感。同時系統仍然存在一些不足,后續將對以下幾個方面進行進一步研究:將研究識別更多的動作進行應用實踐,以實現更多的交互方式;加入同時對多人手勢做出反應的功能;進一步提高手勢識別精度。
參考文獻:
[1] Kinectfor windows微軟中國體感官方網站http://www.k4w.cn/news/1.html
[2]百度百科. 試衣魔鏡https://baike.baidu.com/item/試衣魔鏡
[3]廖宏建,曲哲.基于Kinect體感交互技術的虛擬裝配實驗系統開發[J].實驗技術與管理,2013,30(7):98-102.
[4]羅元,謝彧,張毅.基于Kinect傳感器的智能輪椅手勢控制系統的設計與實現[J].機器人,2012,34(1):110-113+119.
[5]Jamie Shotton,Andrew Fitzgibbon,MatCook,et al.Realtime human pose recognition in parts from single depth images[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2011:129-134.
[6] 秦悅.產品人性化設計中的人機工程學[J].現代營銷(學苑版),2011(5):168-169.
【通聯編輯:唐一東】