林水強,吳亞東,陳永輝
(西南科技大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,四川 綿陽621010)
人機交互 (human-computer interaction,HCI)技術(shù)已經(jīng)從以計算機為中心轉(zhuǎn)移到以人為中心[1]。手勢識別交互作為一種自然、人性化的人機交互方式被越來越多地采用[2]?;谝曈X的手勢識別技術(shù)是采用攝像機捕獲手勢圖像,通過圖像處理技術(shù)進行手勢的分割、建模、分析和識別[3]。通常采 用 基 于膚 色 訓(xùn) 練[4,5]、直 方 圖 匹 配[6,7]、運 動信息和多模式定位[8]等技術(shù)完成特征參數(shù)估計。手勢識別的方法主要有模板匹配法、統(tǒng)計分析法、神經(jīng)網(wǎng)絡(luò)法、隱馬爾可夫模型法和動態(tài)時間規(guī)整法等[9,10]。文獻 [11]提出的手勢識別方法能夠?qū)崿F(xiàn)分離背景并通過手心位置排除人臉,但在膚色背景下魯棒性差,并且人臉分離的準(zhǔn)確度不夠,同時在像素級掃描上時間復(fù)雜度高。本文給出一種基于幾何特征的手勢識別方法,針對分割手勢圖像提出一種多序列背景模型有效排除膚色背景的干擾,并結(jié)合膚色塊跟蹤和幾何形狀估計將人臉和人手有效地分離。針對手勢建模定義幾何特征量集合來描述手勢類型,特征參數(shù)計算量小,能夠滿足實時要求。針對分析和識別采用基于決策樹的方法歸納分類,在常規(guī)背景并且室內(nèi)光照良好的情況下手勢識別準(zhǔn)確率高,通過引入基于動態(tài)模型的統(tǒng)計器進一步提升系統(tǒng)魯棒性。
基于膚色和背景模型的手勢檢測首先提取圖像中的膚色部分,再去除背景的干擾,最后得到前景為膚色的部分。定義H(x,y,tn)為tn(n=0,1,2,…)時刻膚色檢測得到的膚色二值圖,M(x,y,tn)為tn時刻背景分離得到的差值二值圖,由式 (1)計算機得到tn時刻前景膚色二值圖F(x,y,tn)
由于HSV (hue-saturation-value)色彩 空 間 是 從 人 的視覺系統(tǒng)出發(fā),用色調(diào)、飽和度和亮度來描述色彩,比RGB空間更符合人的視覺特性[12]。本文采用膚色模型[4,5],膚色檢測采用HSV 空間,把獲取的圖像從RGB 空間轉(zhuǎn)化到HSV 空間。膚色在HSV 空間的取值范圍為Hue∈ [30,45],Saturation∈ [35,200],Value∈ [20,255],通過HSV 轉(zhuǎn)化可以得到膚色二值圖H(x,y,tn)。
當(dāng)背景中存在與膚色相近的物體時,會對手勢的檢測有較大影響,所以需要將背景與前景進行分離,去除背景的干擾,本文提出一種多序列背景模型,在連續(xù)I個識別序列內(nèi)檢測到手勢不符合預(yù)定義手勢類型時,采用加權(quán)的當(dāng)前圖像與加權(quán)的背景圖像之和動態(tài)地更新當(dāng)前背景圖像,由式 (2)計算得到tn時刻的背景灰度圖像B(x,y,tn)
式中,C(x,y,tn)為tn時刻的當(dāng)前灰度圖像,t0為初始時刻,I為連續(xù)的識別序列數(shù)目,Itn為tn時刻的識別序列號,Ri為第i(i=0,1,2,…)個識別序列的識別結(jié)果,G 為預(yù)定義的手勢類型集合,α為更新權(quán)值 (本系統(tǒng)經(jīng)驗取值為0.1)。
在tn時刻,以當(dāng)前灰度圖像C(x,y,tn)和背景灰度圖像B(x,y,tn)做差分得到差值灰度圖像D(x,y,tn),通過二值化、形態(tài)學(xué)等運算得到差值二值圖像M(x,y,tn),見式 (3)和式 (4)
式中,Th為二值化分割閾值 (本系統(tǒng)經(jīng)驗取值10)。膚色背景分離效果如圖1所示。
除考慮背景因素外,還需要考慮人臉和手部數(shù)據(jù)同時被攝像頭捕獲到時人臉的干擾。從幾何結(jié)構(gòu)上看,人的臉部形狀接近橢圓形,并且原形狀始終保持不變,而人手的幾何形狀區(qū)別較大,并且形狀可以隨時多變。本文結(jié)合文獻 [4]中的基于膚色的橢圓擬合方法和文獻 [13]中的基于膚色的橢圓聚類方法,利用幾何形狀估計將人臉和人手分離。人臉排除效果如圖2所示。
在圖像識別中,對象特征的選取對識別結(jié)果的準(zhǔn)確性有較大的影響,單一的特征往往會受環(huán)境的影響和其他因素的干擾。考慮到計算的復(fù)雜性、識別的實時性、特征的不變性等諸多因素,本文采用基于幾何特征和動態(tài)幀提取手勢特征的方法。本系統(tǒng)預(yù)選取如圖3所示的6種手勢類型分別定義為確定/抓取、返回/釋放、鎖定/解鎖、右選、待轉(zhuǎn)/移動、左選操作指令,并實現(xiàn)多媒體交互應(yīng)用。
圖3 手勢定義
特征提取通過定義3個變量實現(xiàn):手勢的最小外接矩形R;手形輪廓面積A;手勢相對于圖像的坐標(biāo)P。為識別預(yù)定義手勢類型,本文選取4個特征量,見式(5)-式(8)。特征T1:R 的面積與手形輪廓面積A 之比
特征T2:R 的長寬之比,其中H>W(wǎng)
特征T3:R 的方向角
特征T4:P相對移動方向
式中,H、W 和Rθ分別表示R 的長、寬和方向角,Pt和Pt-1分別表示手勢的當(dāng)前t和t-1時刻位置。以上4個特征量的計算復(fù)雜度都較低,能夠保證系統(tǒng)實時性,特征T1和T2是比例特征,能夠滿足旋轉(zhuǎn)、平移和縮放不變性,特征T3實現(xiàn)輔助其他特征完成方向的判定,特征T4能夠計算出手勢移動方向以及完成模擬移動的功能。手勢特征標(biāo)記是將手勢輪廓從手勢圖像中提取出來并計算特征值,本文采用Canny算子邊緣檢測方法[14,15]提取手勢輪廓信息,再根據(jù)定義的幾何特征量計算特征參數(shù)值,進行手勢特征標(biāo)記。
手勢分析和識別利用基于決策樹 (decision tree,DT)的分類器實現(xiàn)。決策樹分類算法的基本思路是不斷選取產(chǎn)生信息增益最大的屬性來劃分樣例集合[16,17],構(gòu)造決策樹。信息增益定義為結(jié)點與其子結(jié)點的信息熵之差。在手勢特征參數(shù)向量Tx(T1,T2,T3,T4)中選取前兩項特征參數(shù)作為判定所需的屬性集合T(T1,T2),根據(jù)實驗輸出的樣本數(shù)據(jù)得到訓(xùn)練數(shù)據(jù)集合S(T,Gtid),其中Gtid為識別到對應(yīng)編號的手勢。信息熵Entropy(S)用于描述手勢類型信息的不純度,見式 (9)
式中,Pi為手勢類型子集合中不同性樣例的比例。信息增益Gain(S,T)為樣本按照某屬性劃分時造成熵減少的期望,見式 (10)
式中,V(T)是屬性T 的值域,S是樣本集合,Sv是S中在屬性T 上值等于v的樣本集合。
通過構(gòu)造決策樹生成結(jié)點特征屬性,用生成的決策樹模型分類判定當(dāng)前的手勢類型。決策樹的模型如圖4所示,其中β1,β2 為對應(yīng)屬性T 結(jié)點樣本歸納學(xué)習(xí)訓(xùn)練出的特征閾值 (本系統(tǒng)訓(xùn)練得出β1=1.6,β2=1.4),T (v)表示對應(yīng)屬性的T 上的實際值,識別代號1、2、5分別對應(yīng)手勢類型為拳頭、開手掌和閉手掌。
圖4 決策樹模型
對于屬性結(jié)點T1(β1),當(dāng)T1(v)≥β1,判定手勢為開手掌,否則,進一步對屬性結(jié)點T2(β2)進行比較,當(dāng)T2(v)<β2,判定手勢為拳頭,否則為閉手掌。對于OK 手勢(TID=3),在特征屬性中選取一段閾值區(qū)間進行判定。在閉手掌手勢狀態(tài)下,設(shè)置方向角范圍θ1和θ2(本系統(tǒng)經(jīng)驗取值θ1∈ (45°,75°),θ2∈ (15°,45°)),輸入T3和T4,當(dāng)T3∈θ1,且T4的x方向為正,判定手勢為左方向,當(dāng)T3∈θ2,且T4的x方向為負,判定手勢為右方向,其余為初始狀態(tài),見式 (11)
式中,TID 表示手勢類型的識別代號。移動操作指令通過在閉手掌狀態(tài)下T4的x和y方向坐標(biāo)按比例轉(zhuǎn)化為屏幕坐標(biāo),實現(xiàn)模擬移動操作功能。
由于背景、光線以及用戶誤操作等干擾因素,需要將分類器獲得的符合預(yù)定義的手勢加入到基于動態(tài)模型的統(tǒng)計器中,生成驅(qū)動指令。本文定義一種基于動態(tài)模型的統(tǒng)計器,通過連續(xù)或不連續(xù)的多幀判定手勢語義,在一定程度上保證了識別的可靠性,見式 (12)和式 (13)
式中,Gtid(tid=1,2,…,7)為識別的手勢,當(dāng)tid=7時表示無手勢,F(xiàn)i表示第i幀數(shù)據(jù),Accept為指定n幀內(nèi)接受特定手勢的方法,Ntid為對應(yīng)手勢編號為tid的統(tǒng)計量。在單個識別序列中,對 {Ntid|tid=1,2,…,7}求最大統(tǒng)計量即為所識別手勢。
本文實驗采用普通Logitech USB 300萬像素攝像頭作為視頻輸入設(shè)備,基于DirectShow的方法獲取視頻流,幀率為30幀/秒,圖像分辨率為320×240,在合適的視野和景深范圍內(nèi)通過裸手非接觸方式進行交互。根據(jù)本文提出的方案實現(xiàn)了手勢識別模塊,不同情況下的識別效果如圖5所示。
圖5 不同情況下的手勢識別效果
可以看出,在膚色背景、室內(nèi)光照充足、人臉環(huán)境下識別效果都較好,同時保證了旋轉(zhuǎn)、平移和縮放不變性。而在惡劣環(huán)境下,識別無法實現(xiàn)。
本實驗在上述背景并且室內(nèi)光照良好環(huán)境下對每個手勢采集1000個數(shù)據(jù)樣本進行統(tǒng)計。表1中給出了6種手勢的識別和誤識別率,其中TID 表示手勢類型編號,GES表示手勢類型,REC 表示手勢識別率,ERR (TID)表示誤識為手勢編號為TID 的概率。
實驗結(jié)果表明,在常規(guī)背景、室內(nèi)光照良好的情況下識別率在94%以上,識別反饋時間小于200ms,識別效果較好,基于手勢識別的多媒體交互系統(tǒng)能夠順利實現(xiàn)。
基于該手勢識別系統(tǒng),建立一款多媒體交互平臺,包含音樂、電影、圖片、電子書和游戲等可自主加載的模塊。將預(yù)定義手勢映射到虛擬交互命令,通過確定、返回、左選、右選、待轉(zhuǎn)、抓取、移動、釋放和鎖定操作指令驅(qū)動多媒體平臺,將手勢識別與多媒體平臺結(jié)合實現(xiàn)了虛擬交互功能。虛擬交互實現(xiàn)效果如圖6所示。
本文主要對計算機視覺中基于幾何特征的手勢識別方法進行了研究并改進,并將其應(yīng)用在實時多媒體平臺的虛擬交互中。綜合利用膚色模型、多序列背景模型和幾何形狀估計提取手勢圖像,根據(jù)手勢幾何特征量建模,采用決策樹以及動態(tài)統(tǒng)計器對幾何特征參數(shù)進行歸納、判定和優(yōu)化,實現(xiàn)了識別預(yù)定義的6種自然手勢類型,能夠模擬常用的人機交互操作指令,包括確定、返回、左選、右選、待轉(zhuǎn)、抓取、移動、釋放和鎖定。本文設(shè)計的識別算法簡單有效,計算量小,識別率高,能夠滿足實時人機交互需求。
表1 手勢識別率與誤識別率
圖6 虛擬交互實現(xiàn)效果
同時,系統(tǒng)仍存在不足,如在復(fù)雜背景和光照效果差的環(huán)境下,系統(tǒng)識別精度仍有待提高,當(dāng)手臂暴露在攝像頭范圍內(nèi)時不能分割手臂。在以后的工作中會進一步優(yōu)化圖像處理和識別算法,以達到在識別精確度和交互實時性之間的平衡。
[1]SUN Chao,F(xiàn)ENG Zhiquan,LI Yang,et al.A survey of gesture based interaction [C]//CHCI,2010:277-281 (in Chi-nese).[孫超,馮志全,李揚,等.基于手勢識別的人機交互綜述 [C]//第6屆全國人機交互學(xué)術(shù)會議,2010:277-281.]
[2]CHEN Xiaobo,XIE Huosheng.Hand gesture recognition based on Bag of Features [J].Computer Engineering and Design,2013,34 (3):983-987 (in Chinese).[陳小波,謝伙生.基于Bag of Features 的 手 勢 識 別 [J].計 算 機 工 程 與 設(shè) 計,2013,34 (3):983-987.]
[3]WU Huiyue,ZHANG Fengjun,LIU Yujin,et al.Research on key issues of vision-based gesture interfaces[J].Chinese Journal of Computers,2009,32 (10):2030-2041 (in Chinese).[武匯岳,張鳳軍,劉玉進,等.基于視覺的手勢界面關(guān)鍵技術(shù)研究 [J].計算機學(xué)報,2009,32 (10):2030-2041.]
[4]Papadourakis V,Argyros A A.Multiple objects tracking in the presence of long-term occlusions [J].Computer Vision and Image Understanding,2010,114 (7):835-846.
[5]Kakumanu P,Makrogiannis S,Bourbakis N.A survey of skincolor modeling and detection methods [J].Pattern Recognition,2007,40 (3):1106-1122.
[6]LIU Yujin,CAI Yong,WU Jiangyue,et al.Approach to tracking deformable hand gesture under disturbances from skin-color[J].Computer Engineering and Applications,2009,45 (35):164-167 (in Chinese).[劉玉進,蔡勇,武江岳,等.一種膚色干擾下的變形手勢跟蹤方法 [J].計算機工程與應(yīng)用,2009,45 (35):164-167.]
[7]JIANG Dongmei,WANG Yufang.Gesture recognition based on orientation [J].Information Technology and Informatization,2006,31 (2):53-55 (in Chinese).[江冬梅,王玉芳.基于方向直方圖矢量的手勢識別 [J].信息技術(shù)與信息化,2006,31 (2):53-55.]
[8]ZHOU Hang.Studies on the gesture recognition system based on computer vision [D].Beijing:Beijing Jiaotong University,2007 (in Chinese).[周航.基于計算機視覺的手勢識別系統(tǒng)研究 [D].北京:北京交通大學(xué),2007.]
[9]REN Yaxiang.Survey of human-computer interaction development based on hand posture and gesture recognition [J].Computer Engineering and Design,2006,27 (7):1201-1204 (in Chinese).[任雅祥.基于手勢識別的人機交互發(fā)展研究 [J].計算機工程與設(shè)計,2006,27 (7):1201-1204.]
[10]SUN Lijuan,ZHANG Licai,GUO Cailong.Technologies of hand gesture recognition based on vision [J].Computer Technology and Development,2008,18 (10):214-216 (in Chinese).[孫麗娟,張立材,郭彩龍.基于視覺的手勢識別技術(shù) [J].計算機技術(shù)與發(fā)展,2008,18 (10):214-216.]
[11]ZHANG Tong,ZHAO Yingxue.Gesture recognition based on skin color segmentation and edge detection operator[J].Software Guide,2012,11 (7):151-152 (in Chinese).[張 彤,趙瑩雪.基于膚色與邊緣檢測及排除的手勢識別 [J].軟件導(dǎo)刊,2012,11 (7):151-152.]
[12]CHENG Lin,CHEN Junjie,XIANG Jie.Research and application of image color feature extraction technology [J].Computer Engineering and Design,2009,30 (14):3451-3454(in Chinese).[成琳,陳俊杰,相潔.圖像顏色征提取技術(shù)的研究與應(yīng)用 [J].計算機工程與設(shè)計,2009,30 (14):3451-3454.]
[13]Hao kui T,Zhi quan F.Hand's skin detection based on ellipse clustering [C]//International Symposium on Computer Science and Computational Technology,2008:758-761.
[14]Medina Carnicer R,Muoz Salinas R,Yeguas Bolivar E,et al.A novel method to look for the hysteresis thresholds for the Canny edge detector [J].Pattern Recognition,2011,44(6):1201-1211.
[15]LIU Chao,ZHOU Jiliu,HE Kun.Adaptive edge-detection method based on Canny algorithm [J].Computer Engineering and Design,2010,31 (18):4036-4039 (in Chinese). [劉超,周激流,何坤.基于Canny算法的自適應(yīng)邊緣檢測方法[J].計算機工程與設(shè)計,2010,31 (18):4036-4039.]
[16]Witten I H,F(xiàn)rank E.Data mining:Practical machine learning tools and techniques [M].Burlington,MA:Morgan Kaufmann Publishers,2011:300-305.
[17]ZHANG Lin,CHEN Yan,LI Taoying,et al.Research on decision tree classification algorithms [J].Computer Engineering,2011,37 (13):66-70 (in Chinese).[張琳,陳燕,李桃迎,等.決策樹分類算法研究 [J].計算機工程,2011,37 (13):66-70.]