高明柯 陳一民 張典華 呂圣卿 黃 晨
1(上海大學(xué)計算機(jī)工程與科學(xué)學(xué)院 上海 200444) 2(上海大學(xué)數(shù)碼藝術(shù)學(xué)院 上海 201800) 3(中國電子科技集團(tuán)公司第三十二研究所 上海 201808)
手勢交互是人機(jī)交互的一個重要分支,具有自然直觀的特點(diǎn)。手勢識別是手勢交互的關(guān)鍵技術(shù)之一。手勢識別和手勢交互技術(shù)在人機(jī)交互領(lǐng)域受到了越來越多的關(guān)注[1]。手勢識別通常分為基于傳感器的手勢識別和基于視覺的手勢識別[2]。本文采用基于視覺的手勢識別方式?;谝曈X的手勢識別是利用普通攝像頭或3D攝像頭捕獲裸手的灰度、彩色或深度圖像,通過人手分割、特征提取、手勢建模、定位跟蹤和分類識別等一系列處理后最終實現(xiàn)手勢的識別。這種方式計算復(fù)雜度和難度相對較高,但是其相對低廉的成本、自然的交互是無法替代的,它更符合人機(jī)交互的發(fā)展趨勢,也是手勢識別技術(shù)發(fā)展的目標(biāo)。
手勢識別的方法有模板匹配、動態(tài)規(guī)劃(DP)、人工神經(jīng)網(wǎng)絡(luò)(ANN)、隱馬爾科夫模型(HMM)、支持向量機(jī)(SVM)等。隱馬爾可夫模型(HMM)是在Markov鏈的基礎(chǔ)上發(fā)展起來的[3]。HMM具有豐富的數(shù)學(xué)結(jié)構(gòu),能以自然的方式對時空信息建模;而具有簡潔有效的算法用于訓(xùn)練和識別,比如Baum-Welch算法和Viterbi算法。HMM通過轉(zhuǎn)移關(guān)系相連的狀態(tài)集合,因此它被成功應(yīng)用在語音識別[4]、手寫識別[5]、疾病分類[6]、動作識別[7]和手勢識別[8-11]等方面。HMM方法擁有時間尺度不變形的特性,但其算法復(fù)雜度較大,實時性較低。
支持向量機(jī)是一種基于統(tǒng)計學(xué)習(xí)理論的模式識別方法,其主要應(yīng)用于模式識別領(lǐng)域。SVM使用數(shù)學(xué)的方法及優(yōu)化技術(shù),對于解決小樣本、非線性和高維模式識別的問題有著很好的效果,已廣泛應(yīng)用在文本分類[12]、手寫字符識別[13]、圖像識別[14]、手勢識別[15-16]等領(lǐng)域。SVM具有較強(qiáng)的分類能力,其克服了傳統(tǒng)的分類方法由于數(shù)據(jù)維度較高而導(dǎo)致識別效率低和識別效果較差的缺陷。但是訓(xùn)練樣本比較復(fù)雜,若樣本集很大,訓(xùn)練將會很耗時,且針對于多分類的問題,計算量較大,分類最終結(jié)果時有較大的延時。
證據(jù)理論由Dempster[17]于1967年提出,之后由他的學(xué)生Shafer進(jìn)一步發(fā)展,成為一種不精確推理理論,也稱為D-S證據(jù)理論。證據(jù)理論是一種具有比貝葉斯概率論更弱條件的不確定推理方法,而且具有表達(dá)“不知道”和“不確定”的能力。它是一種數(shù)據(jù)融合的方法,能夠?qū)⒍嘣磾?shù)據(jù)通過一定的公式和規(guī)則融合到一起,得到一個可信度更高的結(jié)果,而且已經(jīng)有許多成功的應(yīng)用[18-19]。
因此,本文提出基于證據(jù)理論融合的手勢識別方法。方法先采用Leap Motion采集手勢視頻序列,提取手勢運(yùn)動軌跡的位置、方位向量以及手形變化作為特征。然后采用HMM和SVM分別對手勢進(jìn)行訓(xùn)練,進(jìn)而在識別中通過證據(jù)理論將兩種方法計算的手勢基本概率分配進(jìn)行決策融合,以實現(xiàn)最終的手勢識別。最后將該方法應(yīng)用于醫(yī)療可視化系統(tǒng)中以實現(xiàn)自然直觀的手勢交互。
在證據(jù)理論中,既可以對假設(shè)空間中單獨(dú)的元素賦予信度,也可以對子集賦予信度,這類似于人類的證據(jù)收集過程。
假設(shè)Θ是一個識別框架,或者稱之為假設(shè)空間。
基本概率分配BPA(Basic Probability Assignment):在識別框架Θ上,基本概率分配BPA是一個2Θ→[0,1]的函數(shù)m,該函數(shù)稱之為mass函數(shù)。其中,如果A滿足m(A)>0 ,則A稱為焦元,m(A)表示對A的信任程度。
(1)
信任函數(shù)(Belief Function):也可以稱之為信度函數(shù),集合A的信度表示了其所有子集所對應(yīng)的基本概率分配之和。信任函數(shù)定義為:
(2)
似然函數(shù)(Plausibility Function):也稱似然度函數(shù)。表示不否定A的信任度。似然函數(shù)定義為:
(3)
信任區(qū)間:在證據(jù)理論中,對于某個假設(shè)A,基于概率分配BPA可以計算出這個假設(shè)的信任函數(shù)Bel(A)和似然函數(shù)Pl(A),兩者組成了一個信任區(qū)間[Bel(A),Pl(A)],可以表示對這個假設(shè)A的信任程度。
基于以上的基本概念,當(dāng)有多個mass函數(shù)(m1,m2,…)時,Dempster提出一種合成規(guī)則,可把它們合成為一個mass函數(shù),被稱為Dempster合成規(guī)則,也稱作證據(jù)合成公式。
對于?A?Θ,Θ上的有限個mass函數(shù)m1,m2,…,mn,其Dempster合成規(guī)則為:
(m1⊕m2⊕…⊕mn)(A)=
(4)
式中:K為歸一化常數(shù):
(5)
為了避免動態(tài)手勢識別的分割歧義性,確定手勢的起始和結(jié)束點(diǎn),使用手包球法對三種靜態(tài)手勢伸直、自然手型、抓取手勢進(jìn)行識別,該方法主要依據(jù)不同手型的手指和掌心形成的外接球直徑大小來判斷,三種手型如圖1所示。
圖1 三種靜態(tài)手勢示意圖
通過Leap Motion獲取的手部三維信息,計算手掌外接球的直徑,由直徑大小判斷手勢類別。通過多次實驗,推導(dǎo)出各手勢的外接球直徑閾值范圍。圖1中,抓取手勢或者伸直手勢為動態(tài)手勢的起始點(diǎn),自然手型為動態(tài)手勢的結(jié)束點(diǎn)。
為了更加符合人的交互習(xí)慣,在動態(tài)手勢起始點(diǎn)和結(jié)束點(diǎn)的基礎(chǔ)上,定義交互手勢如表1所示。
表1 交互手勢定義表
位置、運(yùn)動速度、方向角、運(yùn)動加速度等是動態(tài)手勢運(yùn)動軌跡常用的特征。Yoon等[20]已經(jīng)證明方向角特征對手勢運(yùn)動軌跡的識別率貢獻(xiàn)最大,因此本文選擇方向角為特征進(jìn)行手勢識別。
設(shè)動態(tài)手勢運(yùn)動軌跡的投影軌跡上兩個點(diǎn)為P1(x1,y1)、P2(x2,y2)則它們之間的方向角定義為:
(6)
在運(yùn)動手勢中,設(shè)某一手勢軌跡長度為T,t時刻該手勢的質(zhì)心點(diǎn)為Pt(xt,yt),而整個軌跡根據(jù)所有手勢質(zhì)心點(diǎn)具有一個中心點(diǎn)Pc(Xc,Yc),其坐標(biāo)計算公式為:
(7)
(8)
(9)
(10)
在本文所定義的交互手勢中,右手伸直狀態(tài)下的動態(tài)手勢識別存在三種結(jié)果,即為單手的畫圓操作、往返滑動操作和其他未定義操作三類。
設(shè)某一手勢在HMM識別后,得到該手勢的基本概率分配,其mass函數(shù)為mHMM。設(shè)畫圓手勢的概率為mHMM({畫圓}),滑動手勢的概率為mHMM({滑動}),其他手勢的概率為mHMM({其他}),mHMM({畫圓})+mHMM({滑動})+mHMM({其他})=1。
設(shè)某一手勢在SVM識別以后,得到該手勢的基本概率分配,其mass函數(shù)為mSVM。設(shè)畫圓手勢的概率為mSVM({畫圓}),滑動手勢的概率為mSVM({滑動}),其他手勢的概率為mSVM({其他}),mSVM({畫圓})+mSVM({滑動})+mSVM({其他})=1。
首先,計算證據(jù)理論歸一化常數(shù)K:
mHMM({畫圓})·mSVM({畫圓})+mHMM({滑動})·
mSVM({滑動})+mHMM({其他})·mSVM({其他})
(11)
然后,采用Dempster證據(jù)合成公式分別計算三類手勢的組合BPA(即組合mass函數(shù))。畫圓手勢的BPA計算公式為式(12),同理可計算滑動手勢的BPA其他手勢的BPA。
(12)
最后,利用信任函數(shù)和似然函數(shù),可得到結(jié)論,對于該手勢識別系統(tǒng),其信任函數(shù)值、似然函數(shù)值和組合后的mass函數(shù)值相等,即:
Bel({畫圓})=Pl({畫圓})=mHMM⊕mSVM({畫圓})
(13)
Bel({滑動})=Pl({滑動})=mHMM⊕mSVM({滑動})
(14)
Bel({其他})=Pl({其他})=mHMM⊕mSVM({其他})
(15)
由此,可以得到各信任區(qū)間:[Bel(畫圓),Pl(畫圓)]、[Bel(滑動),Pl(滑動)]、[Bel(其他),Pl(其他)]。通過各手勢信任區(qū)間的可信度大小即可判斷手勢的類別歸屬。
根據(jù)本文證據(jù)理論融合方法,設(shè)計整個系統(tǒng)算法流程如圖2所示。
圖2 算法流程圖
本實驗在配置為Intel(R) Core(TM) i5-3337U CPU @ 1.8 GHz,內(nèi)存8 GB,64位Win10操作系統(tǒng)的筆記本電腦上完成。Leap Motion放置在筆記本屏幕的正前方。開發(fā)平臺為Unity3D v5.3.1、VS2015和Leap Motion SDK。
針對本文中需要動態(tài)識別的兩種命令手勢,每種手勢采集200個測試樣本進(jìn)行測試,結(jié)果如表2所示。表2中顯示單獨(dú)使用HMM或者SVM方法識別的手勢識別率明顯低于經(jīng)過證據(jù)理論決策融合的方法,由此可表明通過證據(jù)理論決策融合可有效地將兩種方法進(jìn)行優(yōu)勢互補(bǔ),最終提高了手勢識別率。
表2 不同算法下動態(tài)手勢識別率
該實驗將本文方法應(yīng)用于醫(yī)學(xué)可視化手勢交互中,實現(xiàn)對肺部模型的平移、縮放和旋轉(zhuǎn)等操作。效果如圖3所示。
圖3 手勢交互效果圖
實驗過程中,自然手型在移動過程中不會對模型造成影響。當(dāng)右手為抓取手勢時,可實現(xiàn)對模型進(jìn)行上下、左右、前后操作,如圖3(a)和(b)所示;若右手伸直往返滑動,可實現(xiàn)對模型的切換,如圖3(c)所示,切換為心血管模型;若雙手都為抓取手勢時,可對模型進(jìn)行縮放和旋轉(zhuǎn)操作,如果兩手相互靠近,則會縮小模型,如圖3(d)所示;如果兩手相互遠(yuǎn)離,則會放大模型;如果兩手的空間位置關(guān)系發(fā)生變化,則會對模型進(jìn)行同等變換,使模型旋轉(zhuǎn),如圖3(e)所示。
本文提出并實現(xiàn)了一種基于證據(jù)理論融合的手勢識別方法。方法先采用Leap Motion采集手勢視頻序列,提取手勢運(yùn)動軌跡的位置并計算方向角為特征。然后在隱馬爾科夫模型和支持向量機(jī)分別進(jìn)行手勢訓(xùn)練的基礎(chǔ)上,在識別中通過證據(jù)理論將兩種方法計算的手勢的基礎(chǔ)概率分配進(jìn)行決策融合,實現(xiàn)了最終的手勢識別。最后將該方法應(yīng)用于醫(yī)療可視化系統(tǒng)中,實現(xiàn)了自然直觀的手勢交互。實驗結(jié)果表明,該方法能有效融合隱馬爾科夫模型和支持向量機(jī)的優(yōu)點(diǎn),提高了手勢識別率和交互準(zhǔn)確性。
[1] Rautaray S S,Agrawal A.Vision based hand gesture recognition for human computer interaction:a survey[J].Artificial Intelligence Review,2015,43(1):1-54.
[2] Pisharady P K,Saerbeck M.Recent methods and databases in vision-based hand gesture recognition[J].Computer Vision & Image Understanding,2015,141(C):152-165.
[3] Rabiner L R.A tutorial on hidden Markov models and selected applications in speech recognition[J].Readings in Speech Recognition,1990,77(2):267-296.
[4] Rose R C.Discriminant wordspotting techniques for rejecting non-vocabulary utterances in unconstrained speech[C]//IEEE International Conference on Acoustics,Speech,and Signal Processing.IEEE,1992,2:105-108.
[5] Lee S H,Kim J H.Augmenting the Discrimination Power of HMM by NN for On-Line Cursive Script Recognition[J].Applied Intelligence,1997,7(4):305-314.
[6] Khorasani A,Daliri M R.HMM for Classification of Parkinson’s Disease Based on the Raw Gait Data[J].Journal of Medical Systems,2014,38(12):1-6.
[7] Li Z,Wei Z,Yue Y,et al.An adaptive Hidden Markov model for activity recognition based on a wearable multi-sensor device[J].Journal of Medical Systems,2015,39(5):57.
[8] Bilal S,Akmeliawati R,Shafie A A,et al.Hidden Markov model for human to computer interaction:a study on human hand gesture recognition[J].Artificial Intelligence Review,2013,40(4):495-516.
[9] Yoon H S,Soh J,Bae Y J,et al.Hand gesture recognition using combined features of location,angle and velocity[J].Pattern Recognition,2001,34(7):1491-1501.
[10] 陳一民,張云華.基于手勢識別的機(jī)器人人機(jī)交互技術(shù)研究[J].機(jī)器人,2009,31(4):351-356.
[11] Li T S,Kao M,Kuo P.Recognition System for Home-Service-Related Sign Language Using Entropy-Based,-Means Algorithm and ABC-Based HMM[J].IEEE Transactions on Systems Man & Cybernetics Systems,2016,46(1):150-162.
[12] 譚光興,劉臻暉.基于SVM的局部潛在語義分析算法研究[J].計算機(jī)工程與科學(xué),2016,38(1):177-182.
[13] 方向,陳思佳,賈穎.基于概率測度支持向量機(jī)的靜態(tài)手寫數(shù)字識別方法[J].微電子學(xué)與計算機(jī),2015(4):107-110.
[14] 王微,董慧慧.Gabor濾波器和支持向量機(jī)相融合的人臉識別[J].激光雜志,2016,37(1):87-90.
[15] Liu Y,Zhang P.Vision-Based Human-Computer System Using Hand Gestures[C]//2013 Ninth International Conference on Computational Intelligence and Security.IEEE,2009:529-532.
[16] 蔡芝蔚,吳淑燕,宋俊鋒.基于SVM和組合優(yōu)化模型的手勢識別[J].系統(tǒng)仿真學(xué)報,2016,28(8):1812-1817.
[17] Dempster A P.Upper and Lower Probabilities Induced by a Multivalued Mapping[J].Annals of Mathematical Statistics,1967,38(2):325-339.
[18] 王慧,宋宇寧.D-S證據(jù)理論在火災(zāi)檢測中的應(yīng)用[J].中國安全科學(xué)學(xué)報,2016,26(5):19-23.
[19] 王力,白靜.改進(jìn)的證據(jù)理論在多傳感器目標(biāo)識別中應(yīng)用[J].科技通報,2016,32(7):134-137.
[20] Yoon H S,Soh J,Bae Y J,et al.Hand gesture recognition using combined features of location, angle and velocity[J].Pattern Recognition,2001,34(7):1491-1501.