陳紅紅馮丹陽黨小超郝占軍喬志強牛 娟
(1.西北師范大學計算機科學與工程學院,甘肅 蘭州 730070;2.甘肅省物聯網工程研究中心,甘肅 蘭州 730070)
無線通訊技術發展至今,有不少學者關注手勢識別,并致力于現實生活中的應用。 目前,無線通訊技術對其在特殊教育領域的應用加以關注[1]。 據統計,全球約有15.7 億人聽力受損[2]。 在中國,聾啞人群數量超2080 萬,占全國總人口的1.69%。 手語作為聾啞人的通用語言,對聽力障礙者和語言障礙者來說是交流和學習的一種必要手段。 特殊教育中,通過拼音學得漢字,最終達到手語學習的目的。同時,手語作為一種特殊語言,若能將其轉化為對應的字符,將很大程度方便聾啞人群和正常聽力人群的交流。 由此可見,通過無線通訊技術進行手勢識別并將其應用到特殊人群如聾啞人的手語教學中,是一種極為有效的教學方式。
本文提出了一種基于信道狀態信息(Channel State Information,CSI)的手語手勢識別方法——AirG,該方法可有效識別中國聾啞人漢語拼音手語手勢,漢語拼音手語手勢如圖1 所示。 經驗證,該方法實現了對漢語拼音手語手勢的感知與識別且具備良好的魯棒性。

圖1 漢語拼音手語手勢圖
主要貢獻總結如下:
①本文提出基于CSI 的AirG 系統可以有效識別不同環境下的漢語拼音手語手勢。 通過理論和實驗驗證利用CSI 進行手語手勢識別的可行性。
②本文通過自適應算法訓練生成新的隱馬爾可夫模型(Hidden Markov Model,HMM)將其作為強分類器,避免了對正確樣本反復識別,有效地降低了整體的計算開銷。
③經過實驗驗證AirG 適用于多種環境。 實驗結果表明,AirG 在漢語拼音手語手勢識別方面較其他系統而言性能更好。
目前,研究人員提出各種用于人類手勢活動的感知技術,主要基于傳感器、計算機視覺、以及無線設備。
其中,第一類通過傳感器識別手勢,如文獻[3-6]均提出使用配備傳感器的配飾作為數據采集設備捕獲手勢動作,識別結果均達到90%以上。 但基于可穿戴設備的識別方法用戶需佩戴專用設備,影響動作描述,且極大地降低了用戶的舒適感。
第二類通過計算機視覺識別手勢。 文獻[7-8]的手勢識別通過微軟Kinect 傳感器,其中文獻[8]采用雙重和十倍交叉驗證方式,對阿拉伯數字(0 ~9)和英文字母(A ~Z)的識別率達91%以上。 但視覺識別通常對照明條件有要求且涉及個人隱私問題,實際使用中存在局限性。
第三類通過無線設備的手勢識別方法,可通過超寬帶雷達[9]、射頻識別技術[10]、接收信號強度指示或CSI 信號[11]。 其中射頻識別技術和超帶寬雷達需專用設備且部署復雜度高,目前多用接收信號強度指示或CSI 進行手勢識別。 如,文獻[12]提出基于信號接收強度指示的手勢識別方法通過信號相位差與頻率自帶選擇可識別25 種手勢動作。 信號接收強度一定程度上無法接收來自不同路徑的電磁波信號,不適用于室內人員手勢識識別;CSI 是電磁波信號的細粒度描述,可獲取子載波的幅值、相位等信息,更適用于手勢識別,文獻[13-15]均通過CSI進行手勢識別。
Li[13]等人提出的WiFinger 系統用于手勢識別,通過k-最近鄰算法并且結合動態時間規整算法,準確率可達到90.4%。 Zhang[14]等人提出的Mudra 系統通過干擾消除技術,實現與位置方向無關的手勢動作識別,準確率達到96%。 Jiang[15]等人提出的WiGAN 系統,使用生成對抗網絡來提取和生成手勢特征,將手勢動作的特征融合后通過支持向量機(support vector machines,SVM)對活動分類,平均識別準確率達95%以上。 但手勢數據達到一定量級時使用支持向量機進行特征提取、手勢識別需較大開銷。
為了解決計算開銷大,手勢識別精度低等問題,本文提出基于CSI 的聾啞人手語手勢識別方法——AirG。 為了將手勢數據中的突兀值去除采用局部離群因子(Local Outlier Factor,LOF)檢測算法。 又因手語手勢動作屬于低頻信息,通過離散小波變換(Discrete Wavelet Transform,DWT)可有效去除環境中的高頻信息且不丟失數據細節,經預處理后的波形數據通過主成分分析法(Principal Component Analysis,PCA)篩選最能代表手語手勢的子載波。 采用數學統計的方法進行特征提取,最終將手勢數據輸入Adaboost-HMM 模型得到手勢識別結果。
通過AirG 進行手語手勢識別需經四個步驟:手語手勢數據感知、噪聲移除、特征提取和手語手勢識別,工作流程如圖2 所示。

圖2 AirG 工作流程圖
我們使用配置Intel 5300 NIC 的兩臺筆記本電腦進行數據采集,其中在IEEE 802.11n Monitor 模式下工作的作為發射器,另一臺作為接收器。
多條天線提供了充足的CSI 信息,但不同天線對手勢動作的敏感程度不同,可通過方差選取敏感程度高的天線。 經篩選得出的天線受多徑效應與固有噪聲的影響,數據波形中存在尖峰毛刺,為將異常值濾除并保留原來的信號,選用LOF 異常檢測算法去除異常值,如圖3(b)所示。 可表示為式(1):

式中:Nk(X)是點X的k距離鄰域內點的總數,lrdk(X)為點X的局部可達密度,Y為點X的k距離鄰域內的任意一點。
LOFk(X)趨近1 時,被測點的鄰域點密度幾乎相等,屬同簇;LOFk(X)越大于1 時,被認為是異常點;若LOFk(X)遠小于1,則視為密集點。
當環境中存在較多干擾時,選用DWT 進行多徑效應移除如圖3(c)。 離散小波變換對細粒度的動作進行多尺度分析,移除高頻噪聲的同時,保留了手勢波形的大致特征與數據細節。 我們采用Symlet5 進行信號分解成近似系數和多個細節系數,其中細節系數描述了設備中隨機噪聲和CSI 數據細節。 兩種系數可表示為式(2):

圖3 手語手勢與處理圖

式中:為近似系數,本文采用Symlet5 因此J=5,為細節系數,X(n)為手勢數據樣本點,n-2 表示二倍降采樣,g為低通濾波器,可濾除高頻信息;h為高通濾波器,保留高頻部分。 對細節參數采用軟閾值算法,并用逆離散小波變換對去噪后手勢波形X′(n)重構,表示為式(3):

將噪聲移除后的30 條子載波內包含與手勢動作相關性較小的子載波,因此采用主成分分析算法進行降維,選擇出與降維前相似度高的子載波。 首先對手勢樣本集X={x1,x2,…,xm}求其均值向量其中xi為CSI 的列向量,ˉx表示為式(4):

Y={y1,y2,…,ym}為樣本歸一化處理后的樣本集,其中yi=xi-。 求得重構的樣本Y的協方差矩陣C,可表示為式(5),其中cov(Xi,Xj)表示樣本協方差。

該協方差矩陣C的特征值矩陣為λ=[λ1,λ2,…,λn],降序排列后取前k個特征值,Q={q1,q2,…,qk}為特征值所對應向量組成的特征向量矩陣。將特征向量矩陣與原樣本集相乘,得到降維后的矩陣R=QTX。 最終保留第一主成分將其作為手勢識別的CSI 波形,經過PCA 提取子載波結果如圖4所示。

圖4 主成分分析算法提取子載波
手勢動作描述方式與速度因人而異,此外,某人執行同一手勢動作也很難保證波形完全相同。 不同人員執行不同手勢如圖5 所示。 手勢波形的最大值、最小值易受實驗人員動作幅度影響較為明顯,為達到同一手勢波形一致性因此不宜作為特征值。 且為了突出不同手勢之間的差別,需選取多個特征值,但是過多的特征值易出現擬合問題。 因此本文最終選取特征值:偏度、峰度、標準差、峰峰值。

圖5 不同人員執行不同手勢
偏度,可以描述手語手勢波形的偏斜程度,且可以表明數據的非對稱程度,同時可度量數據分布的偏斜方向,表示為式(6):

式中:xi為樣本中的數據點,表示數據點的平均值,n表示數據點個數。
峰度,可以描述不同手勢數據波形的概率密度分布曲線在平均值處峰值高低的特征數的描述,表示為式(7):

標準差,是數據偏離均值的平方和平均后的方根。 手勢數據集的離散程度可通過標準差得出,即標準偏差越大,數據離散程度大;反之亦然。 可表示為式(8):

峰峰值,可以描述一個周期內手勢動作所產生信號的波峰與波谷差,表示為式(9):

Adaboost 是由Freund[16]提出一種迭代方法,即,當樣本輸入弱分類器后,分類結果呈現出錯誤分類樣本與正確分類樣本。 因此,將樣本權值重置,按照正樣本權值降低,負樣本權值增大的原則;對所有樣本權值更新。 每一輪更新后的樣本作為下一輪分類器的輸入,用于訓練下一個弱分類器。 當迭代次數達到最大,亦或錯誤率足夠小,則形成最終的強分類器。 Adaboost-HMM 模型原理圖如圖6 所示。

圖6 Adaboost-HMM 模型原理
具體過程如下:
Step 1:對樣本X=(x1,x2,…,xn)中的每一個樣本點遵循均勻分布原則,初始化權重為(n=1,2,…,N);
Step 2:設置輪詢數值為K,對HMMθ模型進行Adaboost 訓練;
Step 3:對HMMθ產生的概率進行二值化處理,即hk(xn)→{-1,+1},(n=1,2,…,N)。 分類器錯誤率由此計算為樣本點總數,wk為權重。 當錯誤率ek<0.5 時,新模型有效,否則返回上一步;
Step 4:更新樣本點的權值分布,表示為式(10):

式中:hx(xn)為二值化結果,Zk規范化因子,可將wk的值規范到(0,1),αk表示該輪學習所得的模型在最終模型中的權重,ek表示該輪錯誤率。
Step 5:經過K次輪詢,最終的分類器由K個HMM 組合而成的。
觀測狀態序列為O=(o1,o2,…,oT),隱藏狀態序列為Q=(q1,q2,…,qT)。 三部分可組成HMMθ(A,B,π),模型原理如圖7 所示。

圖7 HMM 模型原理
①π={πi}=(P(q1=si)) (1≤i≤N)是初始狀態概率;
②A={aij} (1 ≤i,j≤N)為狀態轉移概率矩陣;
③B={bj(k)} (1≤j≤N,1≤k≤M)為觀測值概率矩陣。
對模型初始化θ(0)=(A(0),B(0),π(0))方便訓練,使用鮑勃-韋爾奇算法使參數向訓練樣本所在的概率最大化方向調整,通過式(11)、式(12)求得參數模型θ(n+1)=(A(n+1),B(n+1),π(n+1))。

式中:γt(i)表示t時刻模型處于狀態θi的概率。ξt(i,j)表示由狀態θi到狀態θj的狀態概率,當πi,aij,bj(k)達到收斂時,整個迭代過程結束,由更新的模型參數組成新的HMM。
識別階段采用前向算法對樣本分類,將待測樣本通過訓練后的HMM 模型,產生待測樣本的概率,記做P(O|θ),當達到最大值時即為所識別的手勢。

式中:αt(i)表示前t時刻觀測序列對應的狀態概率。
兩臺內含Intel 5300 NIC 的筆記本電腦作為一對收發器,接收端有一根天線,發射端為三根。 發包率為1 000 包/s,設備距地面的垂直高度為1.3 m。實驗環境分別為辦公樓大廳、會議室、教室,場景示意圖如圖8 所示。

圖8 不同實驗場景
為減小動作完成時間對整體識別率的影響,設定數據采集時間為10 s。 其中0~3 s 靜止,第4 s 實驗人員進行手勢動作描述,動作描述需要2 s 左右,第7 s 時動作收回,每個動作重復10 次。 實驗數據70%用于Adaboost-HMM 模型的訓練,15%為交叉驗證集,15%用作測試集測試模型。 實驗人員隨機選取十名,志愿者的身高體重信息如圖9 所示,斜線表示身體質量指數。

圖9 實驗人員身高體重信息
實驗設備選用了一對收發器。 隨著收發器之間距離的增加,信號對手勢動作的敏感程度降低,當間隔距離達到一定限度時,手語動作對CSI 流的影響幾乎消失。 手語手勢的識別精度隨著接收器距離的增加而降低,因為較弱的信號很難響應手部的移動,導致信號靈敏度降低。 不同距離的識別率如圖10所示。
由圖10 可見,x軸表示識別錯誤率,累積分布函數由y軸表示。 當設備間距為1 m 時識別性能最佳,且隨著距離的增加手勢識別性能表現越差。 結合現實生活中的教學場景,本文選擇實驗設備間距為2 m。

圖10 不同距離的識別率
為了驗證AirG 的健壯性,我們在已有的三個實驗環境增加了靜態干擾和動態干擾。 其中靜態干擾設定為:在距離發射端和接收端水平距離0.5 m 的地方分別放置一把椅子;動態干擾設定為:在平行于視距路徑距1 m 的地方讓一名實驗人員勻速行走。不同環境的識別率如圖11 所示。

圖11 不同環境的識別率
實驗結果顯示,靜態干擾對三個環境的影響相對較小,但由于教室內已經布置較多家具因此識別精度會有所下降。 當環境中增加了動態干擾后,由于步態動作幅度較大對CSI 干擾較為明顯,因此三個環境中的手勢識別率均有明顯下降但都在可接受范圍內。
由于不同人員在完成手語手勢動作時,動作描述方法與用時有所差異。 為了讓AirG 能夠充分識別不同人員的手勢動作,我們分別在每個實驗場景下采集不同人員的手勢數據。 不同實驗人員的識別率如圖12,可見不同實驗人員的手勢識別率有一定的差異,并且通過實驗得出男女生由于存在固有體型差異,因此女生的識別結果相較男生更優。

圖12 不同實驗人員的識別率
具體表現為:身材稍胖的人和手勢動作描述過快的人手勢樣本識別率相對較低,對于身材勻稱且手勢動作描述過程勻速的人員識別率較高,不同實驗人員的數據采集與識別結果見表1。 總樣本量共計18 000次,包括有效采樣與無效采樣:有效采樣為17 447 次,無效采樣為553 次。 且對比試驗選用有效樣本數的15%來做交叉驗證集,驗證集個數即識別次數,最終的識別率為不同場景下的平均識別率。 整體來說,不同人員的平均手勢識別率都可以達到85%以上,這表明AirG 對不同的人員有很強的適應能力。

表1 不同人員數據采集與識別結果統計表
由于受遺傳、環境等多種因素影響,不同人在用手習慣方面有所差異,為了測試手勢識別方法的魯棒性,我們隨機選取5 個手勢動作在三個場景中完成左利手和右利手的對比試驗。 在三個不同的實驗場景中,空曠環境下表現結果最為良好,其不同用手習慣的平均識別率如圖13 所示。
由圖13 可知,AirG 對隨機選取的手語手勢動作通過不同習慣用手進行動作描述均取得良好的識別率。 由此證明系統魯棒性較好。 但由于左手在完成某些動作時,如手勢“k”,手掌會遮擋手指動作,因此整體而言左手的識別率較低。

圖13 不同用手習慣的識別率
近年來,針對手勢識別有學者WiFi 提出了多種識別方式。 為了充分展示AirG 的高性能,本文就現有的較為先進的手勢識別方式WiMU[17]、和WiGeR[18]、WiReader[19]進行對比。
WiMU 將各種可能的手勢組合生成虛擬樣本,任何給定姿勢提取幅度信息和相位信息,通過二進制矩陣進行識別。 WiGeR 提出了一種基于小波分析和短時能量的分割方法和開窗算法提取手勢特征,并結合動態時間規劃算法來識別手勢。
數據集由十名實驗人員在大廳完成的兩組不同距離下的右手手勢數據組成。 本文選用準確率對上述三種方法性能進行評估結果如表2 所示。

表2 不同算法識別率表
由表2 可以看出AirG 方法的手勢識別準確率高于其他三種手勢識別方法,因此AirG 對手勢識別整體性能更優。
我們使用從10 名實驗人員在三個不同環境內采集到的數據集進行多組對比試驗進行評估。 空曠大廳的準確率可以高達93.6%,會議室的準確率可以高達88.3%,教室的準確率可以達到85%。 為了充分描述本文所提手語手勢識別方法的準確率,我們選用對比實驗結果中最優條件來評估該方法對30 個手語手勢的綜合識別率。 圖14 通過混淆矩陣描述了30 個手語手勢的綜合識別結果。 總體來說,各個手勢的識別結果都良好,但由于手語手勢存在相似手勢,如“m”和“n”,又或者“h”和“x”,對此類相似手勢的誤判率相對較高。

圖14 不同手語手勢下的混淆矩陣
本文提出基于CSI 的手語手勢識別方法AirG,結合現實生活中的應用與環境因素對人員手勢特征的影響,使用LOF 算法進行離群值去除,并通過離散小波變換與PCA 對采集的手勢數據進行降噪與篩選,通過時域信息提取不同手勢的特征。 最終將手勢數據放入Adaboost-HMM 模型進行識別。 經過多種對比試驗驗證,并結合多組對比試驗驗證結果表明AirG對漢語拼音手語手勢的平均識別率為88.98%,其中平均識別率為各對比試驗下的識別率平均值。
本文的后續工作集中在以下幾個方面:①提高AirG 模型的魯棒性,將其適用于不同環境中連續手語手勢的識別;②在現有基礎上增加頻域信息的手勢特征,盡可能全面的描述人員的手勢特征。