張 翔,席 奇,劉承啟
(1.景德鎮(zhèn)學(xué)院信息工程學(xué)院,江西 景德鎮(zhèn) 333000;2.南昌大學(xué),江西 南昌 330029)
近年來,人機(jī)交互逐漸應(yīng)用在游戲、醫(yī)療、機(jī)器人等諸多行業(yè)。手勢識別作為人機(jī)交互的一種常見方式,由于其具有多樣性、差異性、不穩(wěn)定性等特點(diǎn)[1],建立人機(jī)交互的手勢識別系統(tǒng)成為研究的熱點(diǎn)。大量學(xué)者通過各種各樣的方法實現(xiàn)對手勢特征的提取。文獻(xiàn)[2]基于改進(jìn)的YCbCr顏色空間模型對手勢區(qū)域進(jìn)行提取,并按照手勢圖像的寬度和高度以及手指個數(shù)對手勢識別進(jìn)行粗分類,再將由Hu矩和傅里葉函數(shù)構(gòu)建的融合特征輸入BP神經(jīng)網(wǎng)絡(luò)中進(jìn)行識別,實驗結(jié)果表明,該方法的手勢識別率較高,但該方法對光照較為敏感,需要進(jìn)一步完善。文獻(xiàn)[3]通過對梯度方向直方圖和二值模式特征的提取和融合,加強(qiáng)對手勢特征的描述,并將融合特征輸入SVM中進(jìn)行識別,實驗結(jié)果表明,該方法可識別多種手勢,然而需要對網(wǎng)絡(luò)模型進(jìn)一步優(yōu)化,提高對手勢特征的識別率。文獻(xiàn)[4]通過手指個數(shù)、距離以及手指夾角對手勢特征進(jìn)行建模,并利用分層方法將手勢識別的較多類別轉(zhuǎn)化為較少類別,以識別結(jié)果為依據(jù)完成手勢的特征提取,實驗結(jié)果表明,該方法具有較高的準(zhǔn)確率,但該方法對于復(fù)雜手勢的識別率較低。
針對以上研究成果,本文提出基于改進(jìn)LLE算法的手勢特征提取方法。通過對手勢特征數(shù)據(jù)集中某個數(shù)據(jù)點(diǎn)處的鄰近數(shù)據(jù)構(gòu)成局部線性關(guān)系,再對這些數(shù)據(jù)進(jìn)行重構(gòu)誤差最小化處理,求出映射矩陣,把多特征空間維度的手勢特征樣本數(shù)據(jù)映射到低維度空間中。
LLE是一種非線性降維思想控制的方法[5-6],其通過相互結(jié)合的局部線性關(guān)系描述全局非線性關(guān)系。LLE算法的降維過程主要由兩步組成。首先,假定LLE算法在較小的局部空間內(nèi)為線性的,Xlog={xlog_1,xlog_2,xlog_3,…,xlog_N}表示在空間RW內(nèi)的第N個樣本數(shù)據(jù)集合,W表示數(shù)據(jù)集合的維度,通過數(shù)據(jù)點(diǎn)xlog_i處的klog個相鄰數(shù)據(jù)表示局部線性情況。然后,對由klog個相鄰xlog_i數(shù)據(jù)組成的重構(gòu)誤差進(jìn)行最小化,計算局部重建的權(quán)值矩陣。重構(gòu)誤差公式可表示為
(1)
(2)
將εW(V)改寫為矩陣形式,公式可表示為
(3)
并且局部重建權(quán)值矩陣滿足
(4)
其中,1klog表示klog維的全1向量。當(dāng)求解重構(gòu)誤差最小化問題時,用拉格朗日乘子算法將目標(biāo)函數(shù)優(yōu)化,公式可表示為
(5)
(6)
基于多維空間的分析可以得出新的局部重建權(quán)值矩陣,為了使局部線性關(guān)系能滿足低維數(shù)空間,假定多個樣本數(shù)據(jù)在低維數(shù)空間中的投影用Ylog={ylog_1,ylog_2,ylog_3,…,ylog_N}表示,Ylog保持了高維數(shù)空間的原本屬性,通過類比用拉格朗日乘子算法對低維數(shù)空間Ylog上的目標(biāo)函數(shù)采取優(yōu)化,公式可表示為
(7)
對目標(biāo)特征Ylog求導(dǎo),使導(dǎo)數(shù)為0,可以得出(I-V*)T(I-V*)Ylog=αYlog,由此可知目標(biāo)特征Ylog就是矩陣N=(I-V*)T(I-V*)所對應(yīng)的n維空間內(nèi)n個最小特征值構(gòu)成的矩陣。
通過對手勢識別采集的樣本數(shù)據(jù),進(jìn)行重新計算可獲得重建權(quán)值系數(shù),但這樣不僅需要大量的存儲空間,還影響手勢識別的速度。因此假定輸入樣本空間與目標(biāo)特征空間滿足如下關(guān)系
Ylog=GTXlog
(8)
其中,G表示Xlog與Ylog之間的映射矩陣,且G=(G1,G2,G3,…,GW)T;GW表示第W維數(shù)空間對應(yīng)的映射矩陣,且GW∈RhW×n;hW表示第W維數(shù)空間的向量維度;n表示Ylog的輸出維度。因此只需求解出映射矩陣G,便可以得出手勢識別樣本數(shù)據(jù)的目標(biāo)特征空間映射結(jié)果,最小化問題用公式可表示為
minε(Ylog)=tr(GTXlog(I-∑ρWVW)T
(9)
其中,ρW表示不同特征空間樣本數(shù)據(jù)的權(quán)重值。通過優(yōu)化重建權(quán)值矩陣的權(quán)重值,可以評估手勢識別樣本數(shù)據(jù)的重要程度,提高算法的適用性,但由于在推導(dǎo)過程中,由于一些無效樣本數(shù)據(jù)的引入,大大影響了特征融合的結(jié)果。因此,在LLE算法的基礎(chǔ)上,通過引入優(yōu)化目標(biāo)項的方法,對式(9)的最小化函數(shù)采取進(jìn)一步的優(yōu)化,公式可表示為
minε(Ylog)=tr(GTXlog(I-∑ρWVW)T
(10)
其中,B(G)表示優(yōu)化目標(biāo);β表示平衡系數(shù)。當(dāng)ylog_i和ylog_j為同一類樣本時,它們之間的距離會足夠小,樣本ylog_i和ylog_j之間滿足
(11)
(12)
其中,dlog_ij(G)表示樣本ylog_i和ylog_j之間的距離。通過對優(yōu)化目標(biāo)的求解,可以得出多特征融合算法的優(yōu)化目標(biāo)函數(shù),用公式可表示為
minε(Ylog)=tr(GTXlog(I-∑ρWVW)T
(13)
由式(13)可知,很難求解出映射矩陣G,因此本文通過固定變量的方法,對式(13)中的兩個變量進(jìn)行優(yōu)化。固定矩陣G,則B(G)為一個常數(shù),多特征融合算法的優(yōu)化目標(biāo)函數(shù)用公式可表示為
minε(Ylog)=tr(GTXlog(I-∑ρWVW)T
(14)
從機(jī)器學(xué)習(xí)角度分析,求解最小化問題實際上是不斷使損失函數(shù)最小化的過程,從而得出映射矩陣G,最后只需通過映射操作,便可以把多特征空間維度的手勢識別樣本數(shù)據(jù)映射到低維度空間中。
在研究手勢特征的運(yùn)動過程中,手形特征和手勢軌跡特征起著至關(guān)重要的作用。當(dāng)手勢動作較快時,手勢的運(yùn)動軌跡起著主導(dǎo)作用;當(dāng)手勢動作較慢時,手形信息起著主導(dǎo)作用。針對手勢特征的提取,可以采用運(yùn)動速度提取手勢片段。首先需要選擇一個速度閾值用來選擇關(guān)鍵手勢的圖像幀,公式可表示為
(15)
其中,Hvalue_i表示第i幀手勢圖像的關(guān)鍵片段;vvalue_i表示每幀手勢圖像的運(yùn)動速度;vvalue表示手勢圖像的速度閾值。由于手勢運(yùn)動速度是一種連續(xù)的漸變函數(shù)關(guān)系,因此通過采用加權(quán)平均方法,對速度閾值進(jìn)行處理,公式可表示為
(16)
其中,N表示手勢圖像中總共幀的數(shù)量;τ表示手勢的平均速度系數(shù)。獲取到關(guān)鍵手勢圖像后,需要根據(jù)圖像的像素值計算對應(yīng)手勢圖像中的平均像素值,公式可表示為
(17)
(18)
其中,Lx和Lfin_wri分別表示歸一化后和需要?dú)w一化的手勢距離;min(Lfin_wri)表示指尖到手腕的最小距;max(Lfin_wri)表示指尖到手腕的最大距離。隨著手勢特征維度的增加以及手勢特征中存在的冗余特征,會削弱手勢特征提取的實時性,因此采用支持向量分類器(SVC)的方法將手勢從難以分類的空間映射到高維度的手勢空間中。假定訓(xùn)練手勢集用S={(xtra_1,ytra_1),(xtra_2,ytra_2),…,(xtra_N,ytra_N)}表示,xtra_i和ytra_i分別表示輸入手勢樣本數(shù)據(jù)和實際手勢標(biāo)簽,那么支持向量分類器的分類過程可表示為
(19)
(20)
圖1 手勢特征提取模型
仿真過程中,為了保證手勢的整體動作出現(xiàn)在Kinect攝像機(jī)的采集畫面中,實驗者需要面向攝像機(jī)鏡頭,并保持一定的距離。在進(jìn)行手勢訓(xùn)練過程中,選擇5名實驗者按照一定的順序依次做出10種經(jīng)典手勢,并且每種手勢依次做10遍,共采集5×10×10個數(shù)據(jù)作為手勢訓(xùn)練的數(shù)據(jù)庫,在數(shù)據(jù)庫中存儲了各種手勢的手形特征和運(yùn)動軌跡特征等信息。
在手勢特征的動態(tài)測試過程中,首先選擇3個典型的手勢作為待測樣本,如圖2所示。其中“肯定”的手勢主要是手部運(yùn)動變化;“右轉(zhuǎn)”的手勢主要是上肢肢體的運(yùn)動變化;“啟動”的手勢中主要是手部和上肢肢體的運(yùn)動變化。
圖2 測試手勢
實驗中獲得5×10×3個手勢特征待測樣本數(shù)據(jù),并對這些待測樣本數(shù)據(jù)進(jìn)行循環(huán)測試,直到所有數(shù)據(jù)都測試一遍,得到特征提取結(jié)果如表1所示。
表1 手勢特征提取正確率統(tǒng)計表
從表中可以看出,采用單獨(dú)的手勢提取、軌跡提取平均識別率分別為0.665、0.768,識別率相對較低。但對于整體手勢特征提取測試數(shù)據(jù)而言,本文提出的方法均能達(dá)到較好的識別效果,平均識別率可達(dá)到0.901,表明采用改進(jìn)的LLE算法可以更好地描述手勢特征,驗證了本文方法的有效性。
為了進(jìn)一步驗證本文方法對手勢特征的提取效果以及手勢特征模型的泛化能力,本文采用兩種性能度量指標(biāo)對手勢特征進(jìn)行度量,性能指標(biāo)分別為查準(zhǔn)率和召回率,實驗結(jié)果如表2所示。
表2 性能度量結(jié)果
從表中可以看出,“肯定”和“右轉(zhuǎn)”手勢的查準(zhǔn)率和召回率可達(dá)到1,表明采用本文提出的方法對手勢測試集能夠正確進(jìn)行分類,“啟動”手勢的查準(zhǔn)率和召回率依次是0.98和0.99,表明在對手勢進(jìn)行分類過程中,該類型的手勢識別性能相對“肯定”和“右轉(zhuǎn)”較弱一些,綜合考慮本文方法的泛化性較好。
為了驗證本文算法在手勢特征提取中的優(yōu)越性,將本文方法與文獻(xiàn)[2]、文獻(xiàn)[3]和文獻(xiàn)[4]進(jìn)行實驗對比,對比結(jié)果如圖3所示。
圖3 手勢特征提取的準(zhǔn)確率曲線
從圖中可以看出,文獻(xiàn)[2]得出的手勢特征準(zhǔn)確率明顯低于其它方法,對手勢特征提取的效果不好;文獻(xiàn)[3]得出的手勢特征準(zhǔn)確率在手勢樣本數(shù)據(jù)較少時,準(zhǔn)確率較低,隨著樣本數(shù)據(jù)的不斷增多,準(zhǔn)確率不斷提高;文獻(xiàn)[4]得出的手勢特征準(zhǔn)確率雖然較高,但是隨著樣本數(shù)據(jù)的增加,準(zhǔn)確率持續(xù)波動,不穩(wěn)定;而本文方法得到的手勢特征具有較高的準(zhǔn)確率,即使樣本數(shù)據(jù)很少,也具有較好的識別效果,隨著樣本數(shù)據(jù)的增加,手勢特征提取準(zhǔn)確率呈上升的趨勢。
本文針對手勢特征提取提出了一種基于改進(jìn)的LLE算法,通過手勢樣本特征的局部空間重建權(quán)值矩陣,實現(xiàn)對多個手勢特征空間的度量,同時結(jié)合輸入與輸出特征空間的映射變換矩陣,降低樣本空間維度,采用稀疏觀察手勢描述法對手勢特征進(jìn)行提取。仿真結(jié)果表明,采用本文提出的方法對手勢特征進(jìn)行提取,平均識別率可達(dá)到0.901,查準(zhǔn)率和召回率指標(biāo)都接近于1,具有良好的泛化性和識別效果。