王 博, 閆 娟, 楊慧斌, 徐春波, 吳 晗
(上海工程技術(shù)大學(xué)機(jī)械與汽車工程學(xué)院, 上海 201620)
目前,國內(nèi)人口老齡化的問題較為嚴(yán)峻,老年人的健康問題已經(jīng)逐漸成為人們關(guān)注的焦點(diǎn)。 研究可知,老年人往往行動(dòng)不便或者難以表達(dá),因此通過手勢(shì)表達(dá)內(nèi)心想法便成為非常重要的一種途徑。 目前,主要的手勢(shì)識(shí)別方式有視覺識(shí)別[1]和人體生物信號(hào)[2]識(shí)別兩種,其中表面肌電信號(hào)(SEMG)識(shí)別方式作為一種生物信號(hào)顯得尤為重要,因?yàn)槠渲刑N(yùn)含著大量的信息?;诖耍疚闹型ㄟ^人體表面肌電信號(hào)進(jìn)行手勢(shì)識(shí)別,通過手勢(shì)識(shí)別的研究為后續(xù)研究提供基礎(chǔ)。 迄今為止,關(guān)于肌電信號(hào)對(duì)人體手勢(shì)識(shí)別的研究已經(jīng)取得較多成果,但大多研究對(duì)手勢(shì)識(shí)別研究不夠深入,趙詩琪等學(xué)者[3]使用了支持向量機(jī)來識(shí)別4 種手勢(shì),識(shí)別結(jié)果為99.92%。隋修武等學(xué)者[4]通過非負(fù)矩陣分解與支持向量機(jī)的聯(lián)合模型識(shí)別6 種手勢(shì)動(dòng)作,識(shí)別結(jié)果為93%。 江茜等學(xué)者[5]通過多通道相關(guān)性特征識(shí)別8 種手勢(shì)動(dòng)作,識(shí)別結(jié)果為94%。 當(dāng)識(shí)別的手勢(shì)種類增多時(shí),分類器的識(shí)別精度將會(huì)隨之降低,大量學(xué)者對(duì)分類器進(jìn)行優(yōu)化以利于提高識(shí)別精度。 Leon 等學(xué)者[6]對(duì)9種手勢(shì)進(jìn)行識(shí)別,識(shí)別精度為94%。 Lian 等學(xué)者[7]通過K 最鄰近和決策樹算法識(shí)別10 種手勢(shì)動(dòng)作,識(shí)別率僅為89%。 綜上所述,為了滿足當(dāng)前醫(yī)療康復(fù)設(shè)備的需求,多手勢(shì)識(shí)別的精確度還有待提高。
使用SEMG 信號(hào)進(jìn)行手勢(shì)識(shí)別時(shí),特征提取和模式識(shí)別是提高手勢(shì)識(shí)別精度的關(guān)鍵。 典型的特征提取方法主要包括時(shí)域特征提取、頻域特征提取和時(shí)頻域特征提取[8]。 模式識(shí)別主要通過搭建分類器實(shí)現(xiàn),基于SEMG 識(shí)別常用的分類器主要包括BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)[9]、極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)[10]、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)[11]和支持向量機(jī)(Support Vector Machine,SVM)[12]等分類模型。 但以上方法均存在一定程度的不足:BP 神經(jīng)網(wǎng)絡(luò)在識(shí)別手勢(shì)時(shí)準(zhǔn)確率較低;由于極限學(xué)習(xí)機(jī)要經(jīng)過反復(fù)的迭代學(xué)習(xí),因此其訓(xùn)練速度在一定程度上相對(duì)緩慢;KNN 計(jì)算量較大,計(jì)算時(shí)間長;SVM 分類思想簡單、分類效果較好,但訓(xùn)練參數(shù)值的選取會(huì)影響分類器的效果[13]。
基于上述分析,本文中提出一種基于粒子群算法(Particle Swarm Optimization, PSO)優(yōu)化支持向量機(jī)的多手勢(shì)識(shí)別方法,以提高多手勢(shì)的識(shí)別精度。首先,利用主成分分析法對(duì)提取的表面肌電信號(hào)特征進(jìn)行降維處理;然后,利用PSO 對(duì)SVM 的懲罰參數(shù)C和核函數(shù)半徑參數(shù)g迭代尋優(yōu);最后,使用PSO優(yōu)化的SVM(PSO-SVM)分類模型識(shí)別了16 種手勢(shì),并與未優(yōu)化的SVM 分類模型和遺傳算法(Genetic Algorithm, GA)優(yōu)化的SVM 分類模型進(jìn)行對(duì)比,從而驗(yàn)證本文所提方法的準(zhǔn)確性。
受試者為實(shí)驗(yàn)室中3 名男生和1 名女生。 受試者年齡在23 ~28 歲,平均身高在170 cm,均為右手使用者且無神經(jīng)肌肉骨骼疾病。 實(shí)驗(yàn)前24 h 內(nèi)沒有進(jìn)行高強(qiáng)度運(yùn)動(dòng)并且身心舒適。
用磨砂膏和75%酒精棉清潔右肢掌長肌、橈側(cè)腕屈肌、尺側(cè)腕屈肌、指伸肌、指淺屈肌和肱橈肌皮膚表面皮膚,減少皮膚阻抗干擾。 通過Delsys 無線肌電設(shè)備對(duì)6 塊肌肉的表面肌電信號(hào)同時(shí)進(jìn)行采集。 受試者端坐于試驗(yàn)臺(tái)前,背部保持90°,左手臂自然垂下。 實(shí)驗(yàn)時(shí),共采集16 個(gè)手勢(shì)動(dòng)作,每個(gè)動(dòng)作維持6 s,休息4 s,進(jìn)行6 次循環(huán),重復(fù)以上動(dòng)作直至4 名受試者全部采集完成。
SEMG 信號(hào)是由人體內(nèi)神經(jīng)肌肉系統(tǒng)產(chǎn)生的一種特別微弱的生物電信號(hào)。 SEMG 信號(hào)的電壓幅度范圍是0~5 mV,頻率范圍是20~1 000 Hz,其主要能量集中在50~150 Hz 范圍內(nèi)。 因此,首先設(shè)計(jì)陷波濾波去除原始信號(hào)中50 Hz 的工頻干擾,再設(shè)計(jì)30~300 Hz 的巴特沃斯帶通濾波器去除肌電信號(hào)中的基線漂移及其他噪聲信號(hào)。 圖1 分別為濾波前后的時(shí)域波形及頻域振幅譜,較好地濾除了有效范圍外的噪聲信號(hào)。
圖1 肌電信號(hào)濾波圖Fig. 1 Filtering diagram of SEMG signal
為了能更全面地分析SEMG 信號(hào)中所包含的信息,本文分別提取了肌電信號(hào)中的時(shí)域特征、頻域特征和時(shí)頻域特征三種特征模型。
1.3.1 時(shí)域特征提取
本文選用的時(shí)域特征有均方根值(RMS) 和絕對(duì)平均值(ARV)。 時(shí)域特征值的計(jì)算公式為:
其中,xi(i=1,2,…,N) 是信號(hào)的時(shí)間序列。
1.3.2 頻域特征提取
本文選用的頻域特征是平均功率頻率(MPF)和中值頻率(MF)。 頻域特征值的計(jì)算公式為:
其中,f是SEMG 信號(hào)的頻率,PSD(f) 是SEMG 信號(hào)的功率譜密度函數(shù)。
1.3.3 時(shí)頻域特征提取
時(shí)頻分析法可以對(duì)信號(hào)在時(shí)域和頻域內(nèi)的能量信號(hào)同時(shí)進(jìn)行展現(xiàn),這對(duì)于分析非平穩(wěn)信號(hào)相當(dāng)重要。 其中,小波變換具有較好的準(zhǔn)確性, 本文采用小波變換計(jì)算時(shí)頻域特征瞬時(shí)平均功率(IMPF) 和瞬時(shí)中值頻率(IMF),公式具體如下:
其中,f是SEMG信號(hào)的頻率,PSD(t,f)是頻率和時(shí)間的二維函數(shù)。
本文利用6 通道SEMG 信號(hào),以此對(duì)36 個(gè)維度的特征參數(shù)進(jìn)行提取。 高維數(shù)據(jù)由于存在很多冗余特征,使得實(shí)驗(yàn)過程中的計(jì)算量增多,并因此對(duì)分類器產(chǎn)生極大的影響。 同時(shí),在此過程會(huì)產(chǎn)生“過擬合”、“維數(shù)災(zāi)難”等系列問題,從而降低分類器的性能[14]。 因此,本文中使用主成分分析法進(jìn)行降維處理。 對(duì)其步驟流程可做分述如下。
(1)首先,將計(jì)算得到的特征值進(jìn)行處理構(gòu)建樣本矩陣,樣本矩陣通過m行n列的矩陣X表示,得到:
(3)分解協(xié)方差矩陣C并計(jì)算協(xié)方差矩陣的特征值λ1≥λ2≥…≥λn和特征向量a1,a2,…,an。
(4)確定特征矩陣主成分的個(gè)數(shù)v并構(gòu)建主成分矩陣:
其中,An×v=[a1,a2,…,av], 最后得到SEMG手勢(shì)特征降維后的主成分特征Ym×v。
支持向量機(jī)(SVM)是基于統(tǒng)計(jì)學(xué)領(lǐng)域的VC 維理論和結(jié)構(gòu)風(fēng)險(xiǎn)學(xué)最小理論基礎(chǔ)上的一種機(jī)器學(xué)習(xí)算法,常用于模式分類和非線性回歸[15]。 通常,通過將向量映射到高維空間,以此來解決輸入量與輸出量之間的非線性問題。 同時(shí),通過設(shè)定的核函數(shù)g,將輸入空間利用非線性變換轉(zhuǎn)變到高維空間,從而通過高維空間得到最優(yōu)線性分類面。
對(duì)于給定的訓(xùn)練樣本集{(xi,yi)},i=1,2,…,n,x∈Rn,y∈(-1,1),設(shè)最優(yōu)平面為ωTx+b=0,分類間隔為:
判別模型為:
若要找到最大間隔,即找到參數(shù)和使得最大,等價(jià)于最小化,因此求解問題最終轉(zhuǎn)化為帶約束的凸二次規(guī)劃問題:
其中,εi=1-yi(ωTxi+b)為損失函數(shù),C是懲罰參數(shù),C的值與錯(cuò)誤分類的懲罰程度成正比,其值越小,則懲罰程度越小;反之,懲罰程度越大。 同時(shí),利用凸優(yōu)化理論,將約束問題通過引入的拉格朗日乘子法轉(zhuǎn)化為無約束問題:
因此,最終得到:
粒子群優(yōu)化算法(PSO)是一種設(shè)計(jì)無質(zhì)量的粒子來模擬鳥群中的鳥不斷迭代尋優(yōu)來解決優(yōu)化問題的方法[16]。 粒子的速度和位置通過迭代進(jìn)行更新,粒子群優(yōu)化算法公式為:
其中,ω表示慣量因子;d=1,2,…,D表示空間維數(shù);i=1,2,…,n表示粒子數(shù);k表示當(dāng)前迭代次數(shù);表示第i個(gè)粒子在第k次迭代速度;表示第i個(gè)粒子在第k次迭代位置;表示第i個(gè)粒子的個(gè)體最優(yōu)解;表示第i個(gè)粒子的全局最優(yōu)解;c1,c2表示學(xué)習(xí)因子;r1,r2表示隨機(jī)數(shù)。
空間中的粒子不斷搜尋其自身的最優(yōu)解,將自身最優(yōu)解傳遞給其他粒子,在所有傳遞的個(gè)體最優(yōu)解中尋找全局最優(yōu)解,所有粒子根據(jù)自身最優(yōu)解及全局最優(yōu)解不斷調(diào)整位置及速度。
為了使SVM 能夠?qū)‰娦盘?hào)特征進(jìn)行快速精確地識(shí)別,通過PSO 對(duì)SVM 中分類識(shí)別影響最大的2 個(gè)元素進(jìn)行優(yōu)化,即懲罰參數(shù)C和核函數(shù)半徑參數(shù)g,將SVM 結(jié)果中誤差最小的一組懲罰參數(shù)和核函數(shù)半徑參數(shù)用于預(yù)測(cè)分類。 圖2 是PSO 優(yōu)化SVM 的流程圖。 由圖2 可知,m個(gè)粒子在D維空間中不斷更新運(yùn)動(dòng)速度及自身所處位置,通過反復(fù)迭代尋優(yōu)得到SVM 的最優(yōu)參數(shù)。
圖2 PSO-SVM 流程圖Fig. 2 PSO-SVM flow chart
PSO 優(yōu)化SVM 主要包括初始化種群、尋找初始極值、迭代尋優(yōu)等操作,其步驟為:
(1)在D維空間中,隨機(jī)對(duì)m個(gè)粒子進(jìn)行初始化,即對(duì)SVM 參數(shù)編碼,形成初始種群。
(2)初始化的種群輸入到SVM 分類器中,通過訓(xùn)練得到適應(yīng)度值。
(3)評(píng)估計(jì)算得到的粒子適應(yīng)度值。
(4)尋找全局最優(yōu)參數(shù),并判斷是否滿足終止條件。
(5)若尋找得到的最優(yōu)參數(shù)不滿足終止條件,則更新迭代過程中的全局最優(yōu)速度和全局最優(yōu)位置,形成新的種群返回到步驟2 繼續(xù)計(jì)算;當(dāng)結(jié)束條件得到滿足時(shí),通過將最優(yōu)參數(shù)對(duì)SVM 重新訓(xùn)練,并將其作為最終分類器對(duì)特征識(shí)別分類。
通過上述PSO 優(yōu)化算法得到SVM 中懲罰參數(shù)C和核函數(shù)半徑g的最優(yōu)解,對(duì)分類器進(jìn)行訓(xùn)練和分類預(yù)測(cè)。
實(shí)驗(yàn)將從2 方面對(duì)所提出方法模型進(jìn)行分析驗(yàn)證:
(1)分別使用本文設(shè)計(jì)的算法模型與傳統(tǒng)SVM模型、遺傳算法優(yōu)化SVM 模型對(duì)相同的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行實(shí)驗(yàn)對(duì)比,驗(yàn)證模型的有效性。
(2)為判斷模型的識(shí)別性能,使用交叉驗(yàn)證,將訓(xùn)練樣本與驗(yàn)證樣本的數(shù)據(jù)來源分割開來用于實(shí)驗(yàn),以評(píng)估方法的通用性,使用不同人的訓(xùn)練樣本去驗(yàn)證其他人的測(cè)試樣本。
將PCA 降維后的特征矩陣按照5 ∶1 的比例分類參與分類器的訓(xùn)練和驗(yàn)證,訓(xùn)練和測(cè)試的樣本不重疊且從實(shí)驗(yàn)者中平均調(diào)取。 測(cè)試結(jié)果如圖3 所示。 表2 是關(guān)于分類器識(shí)別性能在不同方法下的對(duì)比。
表2 不同數(shù)據(jù)源實(shí)驗(yàn)結(jié)果對(duì)比表Tab. 2 Comparison table of experimental results of different data sources
圖3 測(cè)試結(jié)果對(duì)比圖Fig. 3 Comparison table of results of different models
表1 不同模型結(jié)果對(duì)比表Tab. 1 Comparison table of results of different models
由上述實(shí)驗(yàn)結(jié)果可以得出分析如下,不同方法表現(xiàn)出不同的分類效果。 其中,傳統(tǒng)的SVM 方法,分類效果易受到干擾,分類精度不高;GA-SVM 雖然能夠提高手勢(shì)的識(shí)別精度,但在分類過程中需要經(jīng)過31 次的迭代才能夠達(dá)到分類的效果;對(duì)于本文中的方法,不僅對(duì)手勢(shì)識(shí)別的準(zhǔn)確率保持最高,同時(shí)也大大縮減了算法的復(fù)雜度,極大地提高了運(yùn)算處理效率,表現(xiàn)出較好的分類識(shí)別性能。
考慮模型的通用性,即模型中訓(xùn)練的數(shù)據(jù)是基于部分受試者肌電信號(hào)進(jìn)行訓(xùn)練,但手勢(shì)識(shí)別對(duì)其他受試者的肌電信號(hào)同樣適用。 同時(shí),為了分析所提出的模型在相同被試和不同被試下的識(shí)別性能,實(shí)驗(yàn)設(shè)計(jì)了男女混合驗(yàn)證的方式以消除性別的影響,按照2 位男性同學(xué)的肌電信號(hào)進(jìn)行訓(xùn)練,另外2位同學(xué)的肌電信號(hào)用于識(shí)別。 分別使用SVM 和POS-SVM 進(jìn)行實(shí)驗(yàn)對(duì)比,驗(yàn)證本文中所提方法的有效性。 得到的訓(xùn)練結(jié)果性能對(duì)比見表2。
由表2 中的結(jié)果可知:不同數(shù)據(jù)源的實(shí)驗(yàn)比同一數(shù)據(jù)源降低了3.61%,而SVM 下降程度更高,也進(jìn)一步說明了本文中所提出的優(yōu)化方法具有較好的識(shí)別性。
為了提高多手勢(shì)識(shí)別的精度,文中提出了基于PSO-SVM 的識(shí)別方法。 結(jié)果表明,通過肌電信號(hào)的陷波濾波和帶通濾波進(jìn)行預(yù)處理,并對(duì)其從時(shí)域、頻域和時(shí)頻域提取信號(hào)特征,再經(jīng)過PCA 降維后使用本文所構(gòu)建的PSO-SVM 分類模型對(duì)16 種手勢(shì)識(shí)別準(zhǔn)確率達(dá)到94.253%,將其與未被優(yōu)化的SVM 模型和GA-SVM 模型進(jìn)行對(duì)比,可知其識(shí)別效果有非常明顯的改善。 后續(xù)可將PSO-SVM 分類模型應(yīng)用于機(jī)械運(yùn)動(dòng)控制、外骨骼控制等領(lǐng)域。