999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度圖像的實(shí)時手勢識別方法

2020-07-20 06:16:14時夢麗張備偉劉光徽

時夢麗,張備偉,劉光徽

(南京財(cái)經(jīng)大學(xué) 信息工程學(xué)院,江蘇 南京 210023)

0 引 言

手勢識別系統(tǒng)被用作人和計(jì)算機(jī)系統(tǒng)之間交互的良好界面[1],可讓人們以一種更為直接、快捷的方式實(shí)現(xiàn)人機(jī)交互。因此,手勢識別逐漸成為人機(jī)交互領(lǐng)域的一個研究熱點(diǎn)。

傳統(tǒng)傳感器(數(shù)據(jù)手套[2]、鼠標(biāo)[3]、攝像機(jī)[4]等)可捕捉手勢信息并進(jìn)行識別。數(shù)據(jù)手套可直接獲得手勢的三維信息,但數(shù)據(jù)手套的穿戴及位置跟蹤器的配置較為復(fù)雜,給使用者帶來諸多不便。利用跟蹤技術(shù)跟隨硬件設(shè)備獲取手勢路徑也可實(shí)現(xiàn)手勢識別,但此類方法僅適用于手勢較為簡單的情況,當(dāng)手勢過于復(fù)雜時則會導(dǎo)致識別精確度降低。普通攝像機(jī)也可采集圖像信息進(jìn)行識別,但此類方法對光照條件、人體膚色較為敏感,易受到環(huán)境變化的影響,系統(tǒng)魯棒性不高。

3D傳感器的出現(xiàn),使得基于手勢的人機(jī)交互系統(tǒng)取得了進(jìn)一步的成功,微軟的Kinect設(shè)備就是其中的代表之一[5]。目前,已有很多學(xué)者探討實(shí)現(xiàn)了基于Kinect設(shè)備的手勢識別[6-8,11]。田元等[6]利用Kinect設(shè)備獲取深度數(shù)據(jù)和骨骼位置信息,將指尖點(diǎn)個數(shù)、距離等特征量化為六級分類標(biāo)準(zhǔn)實(shí)現(xiàn)了數(shù)字手勢1-10的識別。袁方劍等[7]利用深度圖像,結(jié)合指尖數(shù)目和面積比例實(shí)現(xiàn)了“抓取”動作的識別。Wang等[8]將手勢的紋理和深度信息以超像素的方式表達(dá),結(jié)合EMD距離實(shí)現(xiàn)了數(shù)字手勢的判定。趙飛飛等[9]提取三維骨骼節(jié)點(diǎn)坐標(biāo),并結(jié)合DTW算法實(shí)現(xiàn)了簡單的“鼠標(biāo)手勢”識別。

本文提出了一種基于Kinect的實(shí)時手勢識別算法。該算法利用Ostu閾值分割法分割手勢,提取一系列手勢特征,根據(jù)特征可準(zhǔn)確實(shí)時的識別數(shù)字手勢0~9,開發(fā)了一個識別率高、實(shí)時性好、魯棒性強(qiáng)的實(shí)時識別系統(tǒng)。算法流程如圖1所示。

圖1 算法流程

1 手部圖像分割

1.1 Kinect獲取圖像

Kinect設(shè)備由RGB攝像頭、深度傳感器、紅外線發(fā)射器組成,可實(shí)時捕獲場景中的彩色、深度信息。深度傳感器每秒可獲得30幀圖像,深度圖像是場景深度信息的圖形化表示,每個像素點(diǎn)的灰度值代表物體距離攝像頭的遠(yuǎn)近,數(shù)值越小表示場景距離攝像頭的距離越近,反之亦然。圖2所示為利用Kinect設(shè)備獲取的手勢信息,也是實(shí)驗(yàn)中要識別的數(shù)字手勢,依次為數(shù)字手勢0~9。

圖2 數(shù)字手勢

1.2 閾值分割

為了實(shí)現(xiàn)數(shù)字手勢識別功能,需選取一個合適的閾值將手勢與背景分割。本文實(shí)驗(yàn)采取了一種自適應(yīng)計(jì)算單閾值的簡單高效方法——Ostu閾值分割法[10]。

Otsu閾值分割法原理:

假設(shè)圖像由前景區(qū)域和背景區(qū)域兩部分組成,計(jì)算不同閾值下前景區(qū)域和背景區(qū)域的灰度直方圖,當(dāng)類間的方差達(dá)到最大時,對應(yīng)的閾值就是要求的最佳閾值。對于一幅圖像,假設(shè)具有N個像素點(diǎn),圖像的灰度總級為L,pi表示灰度級為i的像素點(diǎn)出現(xiàn)的概率。對任意灰度值t(1≤t≤L), 可按照t將圖像的灰度級分為兩類,C0={1,2,3,…,t},C1={t+1,t+2,…,L},C0所占比例為w0,灰度均值為u0,Ci所占比例為w1,灰度均值為u1,則整幅圖像的灰度均值為u=w0*u0+w1*u1, 建立目標(biāo)函數(shù)g(t)=w0*(u0-u)2+w1*(u1-u)2, 該函數(shù)是閾值為t時的類間方差表達(dá)式,當(dāng)g(t)取值為最大值時,對應(yīng)的t為最佳閾值。

實(shí)驗(yàn)中,深度圖像包括手掌、軀干以及背景部分。為提高分割的精確度要對圖像進(jìn)行多次迭代閾值分割,但多次迭代分割勢必會占有大量計(jì)算資源,導(dǎo)致識別效率降低。觀察圖3所示的圖像灰度直方圖可發(fā)現(xiàn),無論距離Kinect是遠(yuǎn)是近、無論何種手勢,人體軀干部分始終處于灰度直方圖的最高峰。找到灰度直方圖最高峰點(diǎn)處的灰度值,在最小灰度值Tmin和峰值對應(yīng)的灰度值區(qū)間內(nèi)進(jìn)行閾值分割,得到的閾值T即為手掌和軀干的分界點(diǎn),在提高分割精確度的同時又降低了時間復(fù)雜度。

圖3 灰度直方圖

2 手形提取

手勢分割完成后,手部區(qū)域從復(fù)雜背景中分割出來。為了方便提取特征進(jìn)行手勢識別,需要提取手部區(qū)域的輪廓點(diǎn)、掌心點(diǎn)以及指尖點(diǎn)等信息。

2.1 輪廓點(diǎn)提取

在做手勢動作時,手部必然是懸空的,不和軀干或者其它物體貼合。結(jié)合輪廓點(diǎn)獨(dú)有的性質(zhì),在輪廓點(diǎn)的3*3鄰域內(nèi),必然有一個方向點(diǎn)的灰度值不在手部區(qū)域內(nèi),而非輪廓點(diǎn)卻不具有這樣的性質(zhì)。利用該性質(zhì)得到獲取手部輪廓點(diǎn)的具體步驟:

步驟1 設(shè)手部輪廓點(diǎn)集合mContour,內(nèi)部點(diǎn)集合mHandArea。依次遍歷所有點(diǎn),對于當(dāng)前點(diǎn)P,若它不在圖像邊緣位置,且其灰度值在區(qū)間 [Tmin,T] 內(nèi),則轉(zhuǎn)向步驟2。整個循環(huán)結(jié)束后,轉(zhuǎn)向步驟5;

步驟2 判斷點(diǎn)P的3*3鄰域內(nèi)像素點(diǎn)的灰度值,是否存在一點(diǎn)的灰度值不在 [Tmin,T] 范圍內(nèi)。若存在這樣的點(diǎn),則轉(zhuǎn)向步驟3,否則,轉(zhuǎn)向步驟4;

步驟3 將點(diǎn)P存入mContour中,返回步驟2;

步驟4 將點(diǎn)P存入mHandArea,返回步驟2;

步驟5 遍歷完成后,對圖像進(jìn)行二值化處理。效果如圖4所示。

2.2 獲取掌心點(diǎn)

考慮到掌心的特殊性,無論何種動作掌心的面積始終大于手指部分面積,因此可以考慮將最大內(nèi)切圓的圓心作為手掌中心。相對手掌來說,手指本身纖細(xì),手指內(nèi)部點(diǎn)的內(nèi)切圓半徑要遠(yuǎn)遠(yuǎn)小于手掌內(nèi)部點(diǎn)的內(nèi)切圓半徑,所以此方法可行。

假設(shè)掌心點(diǎn)坐標(biāo)為 (x0,y0), 遍歷集合mHandArea中的每個點(diǎn),計(jì)算該點(diǎn)和輪廓點(diǎn)mContour中每個點(diǎn)的距離,記錄最小距離值,在所有內(nèi)部點(diǎn)和輪廓點(diǎn)的距離最小值中找到最大值,此時對應(yīng)的手掌內(nèi)部點(diǎn)坐標(biāo)即為要找的掌心。

2.3 獲取指尖點(diǎn)

指尖點(diǎn)是輪廓點(diǎn)里的特殊點(diǎn)。考慮指尖點(diǎn)獨(dú)有的性質(zhì),在其對應(yīng)的手指輪廓點(diǎn)中,指尖點(diǎn)距離掌心點(diǎn)一定是最遠(yuǎn)的。為了將手指區(qū)域劃分,必須先根據(jù)掌心點(diǎn)舍去部分輪廓點(diǎn)以及手掌末端的點(diǎn),保留手指尖端輪廓點(diǎn)。計(jì)算所有輪廓點(diǎn)到掌心點(diǎn)距離的均值,一般而言,距離小于該均值的輪廓點(diǎn)要么是手掌部分輪廓點(diǎn),要么是手掌末端的點(diǎn),因此將距離小于均值的輪廓點(diǎn)舍棄后即可得到分離的手指點(diǎn)。利用下面的步驟在分離的手指點(diǎn)中找到指尖點(diǎn)。

指尖點(diǎn)判斷步驟如下:

步驟1 遍歷輪廓點(diǎn)集合mContour,求得掌心點(diǎn)到所有輪廓點(diǎn)的平均距離Daver;

步驟2 遍歷輪廓點(diǎn)集合mContour,計(jì)算當(dāng)前點(diǎn)和掌心點(diǎn)的距離,若大于Daver,則將其加入tmpfinger(手指區(qū)域輪廓點(diǎn)),若小于則舍棄。循環(huán)結(jié)束后,轉(zhuǎn)向步驟3;

步驟3 遍歷tmpfinger,找到距離掌心點(diǎn)最遠(yuǎn)的點(diǎn),將其加入指尖點(diǎn)鏈表mfinger,然后刪除與指尖點(diǎn)距離最近的點(diǎn),再將被刪除的點(diǎn)進(jìn)行遞歸迭代刪除,直到無法刪除為止。若tmpfinger鏈表中仍有剩余點(diǎn),則繼續(xù)執(zhí)行步驟3,否則轉(zhuǎn)向步驟4;

步驟4 遍歷指尖鏈表mfinger,將指尖點(diǎn)以及附近的點(diǎn)全部歸一化為白色,使得指尖點(diǎn)與輪廓點(diǎn)在視覺上有所區(qū)分。如圖4所示。

圖4 手部分割效果

圖4所示為手形提取完成后的手部深度圖像。可以看到,手部區(qū)域、輪廓、指尖點(diǎn)、掌心點(diǎn)都較為清晰、明確。

2.4 輪廓點(diǎn)有序化

上文中得到的輪廓點(diǎn)是無序的,但是特征提取時需要用到有序的輪廓點(diǎn),因此要對輪廓點(diǎn)進(jìn)行排序操作。距離最近的兩個像素點(diǎn)必是相鄰點(diǎn),因此只要從任意一輪廓點(diǎn)依次尋找距離最近的點(diǎn),便可以將輪廓點(diǎn)有序排列。

3 特征提取及手勢識別

(1)手勢0特判

相較于其它手勢而言,數(shù)字手勢0不具備本文手勢判別的任何一個特征,因此需要對手勢0進(jìn)行單獨(dú)判定。利用回歸分析法得到式(1),當(dāng)滿足式(1)時,可以認(rèn)為該手勢是拳頭。Dk是人與Kinect之間的最短距離,Dmax是輪廓點(diǎn)距離掌心的最大距離,Dmin是最小距離

Dmin2-Dmax2≤C-Dk2

(1)

其中,C為常數(shù),實(shí)驗(yàn)時設(shè)定值為1130。

(2)手指點(diǎn)個數(shù)N

數(shù)字手勢1~5皆是依據(jù)手指點(diǎn)的個數(shù)來判斷。

(3)凸包檢測

找到手勢輪廓中最上方包圍特征點(diǎn)H和最左側(cè)包圍特征點(diǎn)L,掃描包圍特征點(diǎn)所包圍的輪廓點(diǎn),若存在輪廓點(diǎn)在包圍特征點(diǎn)連線的外側(cè),則判定存在凸包點(diǎn),否則判定無凸包點(diǎn)。如圖5手勢存在凸包點(diǎn),判定為手勢7。

圖5 凸包檢測

(4)相對距離

手勢判定時,手勢9和手勢1皆被系統(tǒng)判定為只存在一個手指點(diǎn),唯一區(qū)別在于手指是否彎曲。仔細(xì)觀察發(fā)現(xiàn),若手指無彎曲,手指輪廓中的點(diǎn)和指尖點(diǎn)的相對距離不會大于手指的寬度,若手指彎曲則相反。因此可計(jì)算相對距離來判定手指是否彎曲。

距離計(jì)算方法如下:

如圖6中所示,首先找到指尖點(diǎn)Pf,在對應(yīng)手指輪廓點(diǎn)中找到距離指尖點(diǎn)一定距離的點(diǎn)記為Ps,計(jì)算兩個點(diǎn)間的相對距離Dis=|Pf·x-Ps·x|, 設(shè)置一個閾值thr,若Dis≥thr,判定手指為彎曲狀態(tài),否則判定手指為豎直狀態(tài)。經(jīng)過反復(fù)實(shí)驗(yàn)可得,Ps取距離指尖點(diǎn)30像素處的點(diǎn),閾值thr設(shè)定為10較為合適。

圖6 距離

(5)角度特征

通過實(shí)際觀察測量,常人的五指分開后手指之間的角度在0°~180°之間。角度指的是連接指尖點(diǎn)和掌心形成的向量之間的角度。其中大拇指和食指之間的角度在40°~90°,食指與中指間的角度為10°~35°,大拇指和小拇指之間的角度為100°~150°。

總結(jié)以上可得手勢識別具體步驟如下:

步驟1 若手指點(diǎn)的個數(shù)為0,且符合式(1)則判定為手勢0,否則進(jìn)行凸包點(diǎn)檢測,若存在凸包點(diǎn)則判定為手勢7;

步驟2 若手指點(diǎn)的個數(shù)為1,則計(jì)算手勢點(diǎn)與特定點(diǎn)之間的相對距離,若距離大于thr,則判定為手勢9,否則為手勢1;

步驟3 若手指點(diǎn)的個數(shù)為2,計(jì)算兩個指尖點(diǎn)的角度。若角度在10°~35°之間,判定為手勢2,若角度在100°~150°之間,判定為手勢6,若角度在40°~90°之間,判定為手勢8;

步驟4 若手指點(diǎn)個數(shù)為3,判定為手勢3;

步驟5 若手指點(diǎn)個數(shù)為4,判定為手勢4;

步驟6 若手指點(diǎn)個數(shù)為5,判定為手勢5。

4 實(shí)驗(yàn)結(jié)果及分析

實(shí)驗(yàn)時隨機(jī)邀請了10名志愿者,測試時需面對Kinect設(shè)備,使手掌位于身體的最前端,按照圖2所示手勢做出動作,每個動作重復(fù)10次,每個手勢共計(jì)100次。

由于Kinect本身的物理限制,其測距范圍是60 cm~200 cm,因此首先在不同距離下進(jìn)行了測試。表1展示了3種不同距離下的測試結(jié)果。

表1 不同距離下手勢識別結(jié)果

從表1中可以看出,手勢一、二、三、四、五、九的識別率較好,識別率都在97%以上。其它的手勢的識別略低,但也均在95%以上,總體符合預(yù)期識別效果。可以看出,隨著人與Kinect距離的增大,識別率略微下降,這是由于近大遠(yuǎn)小的規(guī)律,距離較遠(yuǎn)時獲得的深度圖像尺寸較小,為識別增大了難度。雖然識別率有所降低,但平均識別率依然保持在95%以上。

對比各個手勢的識別率,發(fā)現(xiàn)數(shù)字手勢0的識別效率稍低,這是由于數(shù)字手勢0的特判式(1)中參數(shù)C為多次實(shí)驗(yàn)后得到的數(shù)值。數(shù)字手勢7識別率低的原因在于識別時將聚集的手指尖端部分誤判為手指點(diǎn),導(dǎo)致識別錯誤。雖然兩種手勢的識別率相對于其它手勢較低,但也達(dá)到了97%。

將本文方法與文獻(xiàn)[6]和文獻(xiàn)[11]所提出的方法進(jìn)行對比,結(jié)果見表2,表中所示為共有手勢的識別率。由表2可以得出,文獻(xiàn)[6]的平均識別率為98.8%,文獻(xiàn)[6]使用的方法是通過建立六級分類標(biāo)準(zhǔn)識別手勢,使用的特征較為復(fù)雜,在獲取手部輪廓和特征提取過程耗時較多,實(shí)時性較差。文獻(xiàn)[11]的平均識別率為96.7%,它使用了基于YCbCr顏色空間提取手部的方法,對膚色和光照條件較為敏感,且定義的手勢皆為伸直狀態(tài),不符合日常生活中人們對手勢的定義,降低了實(shí)用性。本文方法的平均識別率達(dá)到了98.8%,并且克服了以上方法中的缺點(diǎn),在各種情況下都可以得到正確的識別結(jié)果。

為了驗(yàn)證本文方法具有旋轉(zhuǎn)、平移、縮放不變性,分別讓測試者在手部旋轉(zhuǎn)、平移及距離設(shè)備不同遠(yuǎn)近下進(jìn)行測試。結(jié)果如圖7中所示,圖7所示為實(shí)驗(yàn)所開發(fā)的識別系統(tǒng)界面,界面中展示了人與Kinect之間的最近距離、識別結(jié)果,原始深度圖像和處理后的手部圖像。可以看到在各種情況下,本文實(shí)驗(yàn)開發(fā)的手勢識別系統(tǒng)都可正確識別手勢,說明本文使用的方法滿足旋轉(zhuǎn)、平移、縮放不變性。

表2 不同方法識別結(jié)果對比

圖7 旋轉(zhuǎn)、平移、縮放測試

為了驗(yàn)證在光照和膚色變換條件下的魯棒性,測試者分別在戴手套和不同光照條件下進(jìn)行測試。但是由于實(shí)驗(yàn)本身是基于深度圖像的識別,不會受到光照的影響,因此圖8只展示了測試者戴手套的測試結(jié)果。可以看出在這種情況下也可正確識別手勢。

圖8 戴手套測試

實(shí)時性方面,將本文所用方法與文獻(xiàn)[6]所用方法各步驟處理時間做了簡單對比。從表3中可以看出,本文所用方法各步驟耗時較少,識別速度快,實(shí)時性較高。

表3 各個步驟處理時間

5 結(jié)束語

本文提出一種基于Kinect的實(shí)時手勢識別算法,該算法可準(zhǔn)確識別數(shù)字手勢0~9。首先利用閾值分割法將手部圖像分割出來,然后提取一系列手形特征,掌心、輪廓點(diǎn)、指尖點(diǎn)等,根據(jù)得到的手形特征提取手勢特征,指間的角度、是否存在凸包點(diǎn)、手指是否彎曲等,最終根據(jù)手勢特征實(shí)現(xiàn)數(shù)字手勢的判定。本文提出的方法可滿足手勢的旋轉(zhuǎn)、平移、縮放不變性,具有較高的計(jì)算效率,且具有良好的實(shí)時性與穩(wěn)定性。接下來的工作就是進(jìn)一步完善系統(tǒng),并將之推廣應(yīng)用到其它領(lǐng)域,如智能家庭、虛擬游戲當(dāng)中。

主站蜘蛛池模板: 国产91无码福利在线| 亚洲精品老司机| 青青青国产精品国产精品美女| 亚洲欧洲免费视频| 国产中文一区a级毛片视频| 青青草原国产| 国产av色站网站| 久久精品嫩草研究院| 97视频精品全国在线观看| 日韩一区精品视频一区二区| 波多野结衣AV无码久久一区| 国产精品黄色片| 国产91精品久久| 老司机久久99久久精品播放| 青青国产成人免费精品视频| 久久精品无码一区二区日韩免费| 欧美国产菊爆免费观看| 亚洲中文字幕av无码区| 日韩欧美91| 久久综合伊人77777| 亚洲精品桃花岛av在线| 精品国产电影久久九九| 国产手机在线ΑⅤ片无码观看| 亚洲无码在线午夜电影| 九色综合视频网| 一边摸一边做爽的视频17国产| 国产91透明丝袜美腿在线| 国产性猛交XXXX免费看| 国产99视频精品免费视频7| 99热最新网址| 午夜a级毛片| 一本大道无码日韩精品影视| 欧美v在线| 欧美啪啪网| 在线观看国产精品第一区免费 | 国产成人免费高清AⅤ| 小说 亚洲 无码 精品| 操国产美女| 欧美午夜网站| 亚洲综合色区在线播放2019| 成人午夜视频免费看欧美| 日韩精品高清自在线| 亚洲va欧美ⅴa国产va影院| 丁香婷婷久久| 超清人妻系列无码专区| 国产成人精品视频一区二区电影 | 婷婷综合缴情亚洲五月伊| 久久久91人妻无码精品蜜桃HD | 国产99视频在线| 欧美性精品不卡在线观看| AV无码无在线观看免费| 精品欧美视频| 欧美亚洲第一页| 国产系列在线| 国产色伊人| 久久久久久尹人网香蕉| 久草视频福利在线观看| 国产精品欧美日本韩免费一区二区三区不卡| 日韩天堂在线观看| 成人91在线| 国产精品精品视频| 国产精品污视频| 精品无码人妻一区二区| 亚洲乱码在线视频| 在线高清亚洲精品二区| 国产在线91在线电影| 伊人久久大香线蕉影院| 伊人福利视频| 中文字幕亚洲无线码一区女同| 亚洲精品在线91| 国产a v无码专区亚洲av| 青青热久免费精品视频6| 国产素人在线| 国产成人精品免费av| 久久香蕉国产线看精品| 色有码无码视频| 成人国产免费| 手机在线国产精品| 四虎成人在线视频| 一区二区在线视频免费观看| 国产香蕉在线视频| 亚洲精品无码高潮喷水A|