摘" 要: AR設(shè)備以第一視角獲取的動態(tài)手勢往往存在手掌角度偏轉(zhuǎn)問題,各關(guān)節(jié)點位移軌跡相較正視角度發(fā)生變化,現(xiàn)有的手掌關(guān)節(jié)點位移特征無法有效識別,并且受限于AR設(shè)備性能,部分神經(jīng)網(wǎng)絡(luò)模型無法取得良好表現(xiàn)。針對該應(yīng)用場景,提出一種使用多特征分級融合的手勢識別方法。該方法構(gòu)造位移、長度、角度三個特征對手勢進行描述,并進行向量編碼與歸一化以消除抖動干擾。根據(jù)關(guān)節(jié)點與標準手勢的相似度距離,仿照sigmoid函數(shù)分配關(guān)節(jié)點權(quán)重,以加權(quán)的動態(tài)時間規(guī)整(DTW)距離進行KNN匹配,并根據(jù)最佳的KNN置信度與特征優(yōu)先級篩選出最可信的特征識別結(jié)果。實驗結(jié)果表明:該方法能有效識別9種存在角度偏轉(zhuǎn)的動態(tài)手勢;相較于傳統(tǒng)的位移特征方法,該方法的平均準確率提高了4%,能有效應(yīng)對手掌偏轉(zhuǎn)情況下的動態(tài)手勢識別問題。
關(guān)鍵詞: 動態(tài)手勢識別; 多特征融合; DTW算法; 關(guān)節(jié)點; 位移特征;" KNN分類
中圖分類號: TN911.73?34; TP391.4" " " " " " " " " "文獻標識碼: A" " " " " " " " 文章編號: 1004?373X(2024)10?0079?07
Multi?feature hierarchical fusion for dynamic gesture recognition based on DTW
Abstract: Hand angle variation in dynamic motions captured from a first?person perspective is a common problem for augmented reality (AR) systems. Existing palm key point displacement features are ineffective for recognition because different key points' displacement trajectories differ from the frontal perspective. AR device limits also impose performance limitations for some neural network models. A gesture recognition method using multi feature hierarchical fusion is proposed for this application scenario. In this method, the displacement, length, and angle features are constructed to describe gestures, and vector encoding and normalization are conformed to eliminate jitter interference. Based on the similarity distance between the joint points and the standard gesture, the joint weights are assigned by means of the sigmoid function, and KNN matching is performed by means of the weighted dynamic time warming (DTW) distance. The most reliable feature recognition result is selected based on the best KNN confidence and feature priority. The experimental results show that this method can effectively recognize 9 dynamic gestures with angle deviation; in comparison with the traditional displacement feature methods, this method has an average accuracy improvement of 4% and can effectively address the dynamic gesture recognition problem under palm deflection.
Keywords: dynamic gesture recognition; multi feature fusion; DTW algorithm; joint points; displacement characteristics; KNN classification
0" 引" 言
動態(tài)手勢識別作為AR系統(tǒng)的重要組成部分之一,廣泛應(yīng)用于虛擬現(xiàn)實、智能交互以及人機界面等領(lǐng)域[1]。按手部數(shù)據(jù)的獲取方式,動態(tài)手勢識別可大致分為基于硬件與基于視覺兩種。
基于硬件的動態(tài)手勢識別依賴于一些特殊的設(shè)備,如電容傳感陣列[2]等,使用不便;基于視覺的方法則使用方便,有許多研究人員使用視覺方法進行手勢識別。A. Mujahid等提出一種基于YOLOv3和 DarkNet?53卷積神經(jīng)網(wǎng)絡(luò)的手勢識別模型[3]。羅標等將DarkNet網(wǎng)絡(luò)與TCN網(wǎng)絡(luò)結(jié)合,提高了動態(tài)手勢識別的魯棒性[4]。上述方法是通過深度神經(jīng)網(wǎng)絡(luò)對手勢特征進行自主學習,對設(shè)備性能有較高要求,不適用于常規(guī)的AR設(shè)備。
動態(tài)時間規(guī)整(DTW)算法[5]與隱馬爾可夫(HMM)模型[6]是動態(tài)手勢識別的常用方法。魏秋月等使用Kinect獲取指尖的移動軌跡并按八個方向進行向量編碼,使用改進的DTW算法進行匹配識別[7]。王劍波將軌跡向量轉(zhuǎn)換為向量角,將靜態(tài)手勢特征識別結(jié)果與手部運動軌跡特征識別結(jié)果相結(jié)合,實現(xiàn)對動態(tài)手勢的識別[8]。上述方法的局限性在于只用位移特征對手勢進行描述,當手勢存在角度偏轉(zhuǎn)的情況時,由于原有的位移軌跡發(fā)生了偏轉(zhuǎn),僅憑位移特征無法有效進行識別。
針對這一問題,本文在位移特征的基礎(chǔ)上,提出一種結(jié)合位移、長度和角度的多特征分級融合動態(tài)手勢識別方法。該方法構(gòu)建3個特征來對手勢進行描述,根據(jù)關(guān)節(jié)點與標準模板的相似度分配權(quán)重,通過KNN最佳置信度與特征優(yōu)先級來篩選出可信結(jié)果。
1" 特征描述
1.1" 手勢數(shù)據(jù)提取
MediaPipe[9]是谷歌開發(fā)的多媒體機器學習應(yīng)用框架,它可以從一張圖片中快速提取21個手掌關(guān)節(jié)點,如圖1所示。
21個關(guān)節(jié)點示意圖
為解決金手指[10]問題,即從連續(xù)的視頻幀中截取屬于有效動態(tài)手勢的部分,可以使用雙滑動窗口閾值方法來對有效的動作幀進行提取,步驟如下:
1) 設(shè)定X幀的起始窗口、Y幀的結(jié)束窗口;
2) 當檢測到連續(xù)X幀中手掌各關(guān)節(jié)點最大變化幅度均大于起始閾值,則判定手勢開始;
3) 當檢測到連續(xù)Y幀中手掌各關(guān)節(jié)點最大變化幅度均小于結(jié)束閾值,則判定手勢結(jié)束。
1.2" 特征描述
手勢的位移特征可以使用八方向編碼來進行描述。該方法的原則是將關(guān)節(jié)點幀間位移近似編碼為八個方向中相近的向量,Z字形軌跡與八向量表示如圖2所示。其中Z字形移動軌跡的向量編碼為(0,0,3,3,3,3,0,0),該編碼即為位移特征。
在手掌發(fā)生角度偏轉(zhuǎn)時,close手勢如圖3所示。
各關(guān)節(jié)點的軌跡相較于手掌正對面時發(fā)生變化,從而導致位移特征無法有效識別。針對這一問題,可以使用關(guān)節(jié)點相對掌心的距離與傾角變化對該偏轉(zhuǎn)的手勢重新進行描述。
手部關(guān)節(jié)點的極坐標表示如圖4所示,其中長度D與角度θ分別表示關(guān)節(jié)點相對掌心的距離與傾角,公式如下:
同時考慮到手掌大小差異、相機距離不同、手部自然抖動等因素都會導致坐標數(shù)據(jù)發(fā)生變化,因此還需要對數(shù)據(jù)進行閾值濾波處理。
2" 加權(quán)DTW算法
2.1" 經(jīng)典DTW方法
每個動態(tài)手勢的時間序列長度不一定相同,要比較不同幀長度的手勢之間的相似度,可以使用DTW算法。DTW算法能夠計算出兩個長度不同的序列之間的相似度距離,且無需大量數(shù)據(jù)進行訓練,相對于其他機器學習算法,簡單快速。DTW的計算過程如下:
對于序列[A={a1,a2,…,aN}]與序列[B={b1,b2,…,bM}],要計算A、B序列的相似度距離,需要構(gòu)建大小為N×M的距離矩陣D,矩陣中各元素值為A、B序列對應(yīng)位置上各元素距離。對于一維元素,可以取絕對值之差作為該距離。位移特征的距離計算公式為:
[D(i,j)=min(xi-yj,8-xi-yj)] (3)
隨后根據(jù)動態(tài)規(guī)劃構(gòu)建累計距離矩陣[D1],矩陣右上角元素[D1 N,M]即為序列A、B的距離:
對于兩個需要進行DTW匹配的手勢X、Y,需要遍歷21個關(guān)節(jié)點,并累加總距離,選取距離最小的手勢作為識別結(jié)果??偩嚯x公式如下:
2.2" 加權(quán)DTW方法
傳統(tǒng)DTW方法在計算手勢相似度時,認為各關(guān)節(jié)點同等重要,然而在實際手勢中,不同關(guān)節(jié)點在其中的重要性是不同的。文獻[11]以關(guān)節(jié)點的位移量大小作為權(quán)重的評判標準;文獻[12]以關(guān)節(jié)點活動劇烈程度即序列方差來計算權(quán)重。在一個手勢中,運動較小的關(guān)節(jié)點也可能占據(jù)一定的權(quán)重,因此本文設(shè)計了一種根據(jù)關(guān)節(jié)點運動與標準模板的相似程度來分配權(quán)重的方法。
同種手勢的樣本并不完全一致,因此需要統(tǒng)一每個手勢類的標準模板。標準模板應(yīng)盡可能與同種手勢的各樣本相似,即與各樣本之間的DTW距離和最小,從而轉(zhuǎn)化為目標函數(shù)優(yōu)化問題。優(yōu)化算法使用序貫最小二乘規(guī)劃(SLSQP)算法[13],該算法的性能良好,是帶有約束條件優(yōu)化問題的默認算法,公式如下:
式中:N表示該種手勢的樣本總數(shù);[Ti]為標準模板中關(guān)節(jié)點i的運動序列;[Xni]為第n個樣本中關(guān)節(jié)點i的運動序列;[DTWXni,Ti]表示標準手勢與第n個樣本的DTW距離。
手勢樣本中各關(guān)節(jié)點相對于標準模板的DTW距離表示該關(guān)節(jié)點與標準模板的相似程度,顯然,該關(guān)節(jié)點的距離值越小,其與標準模板越相似,因此重要性越高。21個關(guān)節(jié)點與標準模板的DTW距離數(shù)組[R=[r1,r2,…,r21]],可以通過以下公式計算:
為防止[R]中個別數(shù)據(jù)過大或過小,從而影響權(quán)重分配,還需要對其進行處理,公式如下:
式中:[ra]表示R中最小值;[rb]表示R中最大值;[T1]、[T2]表示雙閾值。根據(jù)處理后的R數(shù)組,仿照sigmoid函數(shù)對關(guān)節(jié)點權(quán)重進行分配:
式中:[Wi]表示關(guān)節(jié)點i的權(quán)重;[β]為優(yōu)化參數(shù),其作用是避免[sigmoid(-β·ri)]值過大或過小。
3" 多特征分級融合
3.1" KNN置信度
在計算出樣本之間的相似度距離的基礎(chǔ)上,進行多特征分類。一種常用的分類方法是KNN,其原理可以描述為:在離待檢測樣本最近的K個樣本中,尋找出現(xiàn)次數(shù)最多的類別,然后判定檢測樣本為該類別;若有多個類別占比相同,則可以考慮平均距離最小的類別[14]。KNN分類示意圖如圖5所示。
某待測樣本的K鄰域中,類別A所占比例最多,因此將該待測樣本判定為類別A。根據(jù)KNN原理可知,在分類過程中影響分類結(jié)果的主要有兩個因素:一是待檢測樣本的K近鄰樣本中某分類的占比;二是待檢測樣本對于該分類的平均距離。因此對于KNN方法得到的分類結(jié)果,其置信度可以由這兩個因素來計算。
若待檢測樣本為X,其屬于分類T的置信度為C,則有:
3.2" 多特征識別流程
多特征會得到多個KNN分類結(jié)果,但需要對KNN分類結(jié)果進行取舍,篩選其中更為可信的結(jié)果。因此結(jié)合KNN分類置信度,設(shè)計了一種多特征分級融合的識別方法。該方法首先需要計算特征識別優(yōu)先級和對應(yīng)的最佳置信度。
選取不同的置信度閾值[TC]對KNN分類的結(jié)果進行篩選,僅保留置信度大于閾值的識別結(jié)果,計算篩選后的查準率結(jié)果如圖6所示。
特征優(yōu)先級即為最高查準率降序排序,以圖6為例,長度特征曲線查準率最高值為0.96,位移、角度特征最高值分別為0.77與0.95??芍獙τ谠撌謩莸淖R別,長度特征具有更高的可信度,其特征優(yōu)先級依次是:長度、角度、位移。最佳置信度為是否保留識別結(jié)果的主要依據(jù),故以查準率作為關(guān)鍵詞,對置信度閾值進行排序,可以得到最佳置信度。仍以圖6為例,當[TC]大于0.55時,得到的長度查準率為最值。因此認為,長度特征在[TC]等于0.55時有最好的識別效果,最佳置信度為0.55。即待檢測樣本若在長度特征中被識別為該手勢,且置信度大于0.55,則認為該結(jié)果是可信的。同理可得其他兩個特征的最佳置信度分別為0.45和0.75。
多特征分級融合的識別流程如圖7所示。
首先依次使用三個特征獨立對樣本進行KNN分類,得到結(jié)果與置信度集合記為{(A1,C1),(A2,C2),(A3,C3)};隨后遍歷結(jié)果集合,若識別結(jié)果A的對應(yīng)特征為第一優(yōu)先級且識別置信度C值大于對應(yīng)的最佳置信度,則說明該結(jié)果A可信,可提前終止識別流程。
單憑第一優(yōu)先級的特征無法識別所有樣本,為此再加入重復性和唯一最高優(yōu)先級檢測。即若A1、A2、A3中存在重復的結(jié)果,也可認為該重復的值為識別結(jié)果;查詢A1、A2、A3對應(yīng)特征的優(yōu)先級,若存在唯一的最高優(yōu)先級,則說明相對于另外兩個結(jié)果,該結(jié)果更可信,也可認為該最高優(yōu)先級的手勢為識別結(jié)果。
相較于傳統(tǒng)的位移特征識別,多特征的優(yōu)勢是在不影響原有的位移特征識別基礎(chǔ)上,增加長度與角度特征檢測偏轉(zhuǎn)手勢。當手部正面朝向時,位移特征可以對其進行識別;當手部發(fā)生偏轉(zhuǎn),長度與角度特征也能對其進行補充,從而有效提升識別效果。
4" 實驗數(shù)據(jù)分析
4.1" 數(shù)據(jù)集
第一人稱的動態(tài)手勢數(shù)據(jù)集主要有EgoGesture[15]、FPHA[16]等,大多是含有深度圖像的手勢數(shù)據(jù)集,與本文使用的普通RGB相機不符,且其中沒有針對手勢偏轉(zhuǎn)情況作特殊處理,因此本文選擇自建數(shù)據(jù)集。為模擬日常使用情況,設(shè)計了9種一般軟件交互的常用手勢,如左右滑動、打開關(guān)閉等,每個手勢均在不同的偏轉(zhuǎn)角度下采集了不同幀長度的樣本。手勢定義具體內(nèi)容如表1所示。
4.2" 實驗分析
本文在自建數(shù)據(jù)集上采用預訓練方法進行實驗,即選取一部分手勢樣本進行關(guān)節(jié)權(quán)重、特征識別優(yōu)先級與最佳置信度等參數(shù)訓練。特征識別優(yōu)先級與最佳置信度結(jié)果如表2所示。置信度閾值[TC]取值為0~1,間隔0.05,各手勢查準率隨[TC]變化情況如圖8所示。大部分手勢的查準率隨閾值[TC]變化較為明顯,如up、open等,因此可以快速計算出對應(yīng)的最佳置信度。但也有一些例外,如rotation手勢雖然數(shù)據(jù)表現(xiàn)良好,各特征查準率都接近1,但其隨[TC]增加,數(shù)值變化不明顯,這說明數(shù)據(jù)集里該手勢的樣本量不足。
為衡量本文方法改進的效果,定義手勢的識別率[Precision(x)]、平均準確率[Accuracy]為:
式中:x為手勢類型;[TPx]為x手勢被正確分類的樣本數(shù);[FPx]為錯誤識別為手勢x的樣本數(shù);[TP+TN]表示所有樣本中被正確分類的樣本數(shù);[TP+FP+TN+FN]表示所有樣本數(shù)。
本文方法的實驗結(jié)果混淆矩陣如圖9所示,表3給出了本文提出的多特征分級融合方法與其他方法在自建數(shù)據(jù)集上的對比結(jié)果。
由表3可以看出:本文方法相比傳統(tǒng)的單特征方法在識別率上有一定提升,最大提升了7.91%,平均準確率提升了4%;所提出的權(quán)重計算方法相比較其他權(quán)重計算方法也有一定改善,這說明多特征能補充識別位移特征不能有效識別的手勢樣本,證明了本文方法的優(yōu)越性。
5" 結(jié)" 論
本文在傳統(tǒng)的位移特征基礎(chǔ)上,增加了長度與角度特征對動態(tài)手勢進行描述,提出了關(guān)節(jié)點與標準模板的相似度分配權(quán)重的方法;并結(jié)合KNN置信度,設(shè)計了一種多特征分級融合識別方法。
實驗數(shù)據(jù)證明,所提出的權(quán)重計算方法能對手勢關(guān)節(jié)點權(quán)重進行有效分配,設(shè)計的多特征識別方法能夠通過多特征對手勢進行有效識別。相較于傳統(tǒng)的單特征與其他文獻的改進方法,本文方法在手勢偏轉(zhuǎn)情況下有著更高的識別率,能有效地識別日常使用頻率較高的9種交互手勢,為高準確率動態(tài)手勢識別在人機交互上的應(yīng)用提供了一種新的解決方法。
參考文獻
[1] 王立軍,李爭平,李穎,等.元宇宙終端:虛擬(增強)現(xiàn)實關(guān)鍵硬科技發(fā)展趨勢[J].科技導報,2023,41(15):46?60.
[2] 王子懿,沈三民,佘碩鋮.基于平面電容傳感器陣列的動態(tài)手勢識別技術(shù)[J].測試技術(shù)學報,2023,37(1):54?59.
[3] MUJAHID A, AWAN M J, YASIN A, et al. Real?time hand gesture recognition based on deep learning YOLOv3 model [J]. Applied sciences, 2021, 11(9): 4164.
[4] 羅標,陳勇.融合TCN的時空域雙流動態(tài)手勢識別方法[J].現(xiàn)代電子技術(shù),2022,45(1):50?55.
[5] HANG C, RUI Z, CHEN Z, et al. Dynamic gesture recognition method based on improved DTW algorithm [C]// International Conference on Industrial Informatics?computing Technology. Nanjing: IEEE, 2017: 1041?1052.
[6] 毛瑞瑛.虛擬實驗中的手交互關(guān)鍵技術(shù)研究與實現(xiàn)[D].西安:西安理工大學,2022.
[7] 魏秋月,劉雨帆.基于Kinect和改進DTW算法的動態(tài)手勢識別[J].傳感器與微系統(tǒng),2021,40(11):127?130.
[8] 王劍波.基于Kinect的動態(tài)手勢交互控制技術(shù)研究[D].西安:西安工程大學,2021.
[9] LUGARESI C, TANG J, NASH H, et al. MediaPipe: a framework for building perception pipelines [EB/OL]. [2023?08?20]. https://arxiv.org/pdf/1906.08172.pdf.
[10] 張維,林澤一,程堅,等.動態(tài)手勢理解與交互綜述[J].軟件學報,2021,32(10):3051?3067.
[11] 高晨.基于靜態(tài)和動態(tài)手勢控制移動機器人研究[D].北京:北京化工大學,2017.
[12] 汪成峰.基于自適應(yīng)關(guān)節(jié)權(quán)重和插值小波的體感動作評價方法研究[D].北京:中國農(nóng)業(yè)大學,2016.
[13] KRAFT D. A software package for sequential quadratic programming [J]. DFVLR Forschungsber, 1988, 28: 33.
[14] 童先群,周忠眉.基于屬性值信息熵的KNN改進算法[J].計算機工程與應(yīng)用,2010,46(3):115?117.
[15] ZHANG Y, CAO C, CHENG J, et al. EgoGesture: a new dataset and benchmark for egocentric hand gesture recognition [J]. IEEE transactions on multimedia, 2018, 20(5): 1038?1050.
[16] GARCIA?HERNANDO G, YUAN S, BAEK S, et al. First?person hand action benchmark with RGB?D videos and 3D hand pose annotations [C]// 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA: IEEE, 2018: 409?419.
[17] GALVáN?RUIZ J, TRAVIESO?GONZáLEZ C M, PINAN?ROESCHER A, et al. Robust identification system for spanish sign language based on three?dimensional frame information [J]. Sensors, 2023, 23(1): 481.
[18] LU Chenghong, AMINO Shingo, JING Lei. Data glove with bending sensor and inertial sensor based on weighted DTW fusion for sign language recognition [J]. Electronics, 2023, 12(3): 13.