劉聲中,許德章
(1.安徽工程大學(xué) 人工智能學(xué)院;2.蕪湖安普機器人產(chǎn)業(yè)技術(shù)研究院, 安徽蕪湖241000)
近年來,在生物電信號檢測技術(shù)領(lǐng)域,手臂表面肌電信號(surface Electromyography,sEMG)能準(zhǔn)確地反映人體手部的運動意圖,[1]基于sEMG的運動意圖識別技術(shù)成為人機康復(fù)領(lǐng)域中的研究熱點之一.
文獻(xiàn)[2]利用MYO手環(huán)采集手臂的8通道sEMG信號,同時,利用姿態(tài)傳感器采集手指運動的三維信息,采用平均能量法檢測sEMG信號的活動段,將活動段的特征作為SVM多類分類器的輸入,手指動作的整體識別率達(dá)到99.3%.文獻(xiàn)[3]提出了一種單通道分解與神經(jīng)網(wǎng)絡(luò)相結(jié)合的手勢識別方法,5種手勢識別的平均精度能達(dá)到 90%以上.文獻(xiàn)[4]通過采集4通道sEMG信號與3軸加速度信號,將一個完整的動態(tài)手勢sEMG信號分割為3個區(qū)段,分別為起始段、主特征段和收尾段,在支持向量機中完成了6種手勢的分類,分類精度達(dá)到了91.2%.上述這些研究均未對sEMG信號特性對活動段門限算法展開深入探討.
在生物醫(yī)學(xué)臨床研究中,將人體動作執(zhí)行意圖的有效肌電信號稱為運動單位動作電位(motor unit action potential,MUAP),[5]或稱為sEMG活動段.sEMG信號不同于一般的無規(guī)則時序信號,它在活動段結(jié)束前存在一段亢奮衰減過程.傳統(tǒng)的算法固定了端點檢測的門限值,導(dǎo)致檢測活動段完整度較低,活動段所攜帶的運動意圖信息缺失、分類效果不佳.針對上述問題,本文改進(jìn)了單參數(shù)固定門限提取活動段的方法,目的在于增加活動段的完整度,從而提高手部運動意圖的識別精度.分類結(jié)果顯示,基于本方法提取活動段的LSTM運動意圖分類模型,6種運動意圖的平均分類精度達(dá)到了91.7%,比固定門限提取活動段的LSTM運動意圖分類模型的識別精度提高了15.6%.
準(zhǔn)確快速地判斷肌電信號的活動段起點和終點是特征提取和運動意圖識別的前提和基礎(chǔ),也是肌電信號得以廣泛應(yīng)用的關(guān)鍵,圖1展示了一組肌電信號中的活動段.
圖1 表面肌電信號的運動單位動作電位(1)本圖使用MATLAB繪制,數(shù)據(jù)取自本文引用的UCI肌電數(shù)據(jù)集.
目前,信號端點檢測方法主要有模式匹配和特征參數(shù)檢測.[6]模式匹配在噪聲環(huán)境下有著較高的識別率,但算法依賴高性能硬件設(shè)備的支持,不適合實時應(yīng)用場景.特征參數(shù)檢測有實時性良好、便于計算等特點.因此,考慮到硬件設(shè)備的計算效能,也為保證信號處理的實時性,本文采用短時平均能量和短時過零率作為sEMG信號活動段檢測的特征參數(shù).
1.1.1 短時平均能量
短時平均能量對隨機信號有很好的端點檢測能力,經(jīng)過短時平均能量處理,噪聲對信號的干擾會進(jìn)一步消除.這是因為高頻沖擊肌電信號具有連續(xù)性,而噪聲信號具有離散性,在肌電信號進(jìn)入活動段后,信號的對比會進(jìn)一步得到增強.根據(jù)文獻(xiàn)[7]得到平均能量計算公式為
(1)
1.1.2 短時過零率
短時過零率是指每幀信號通過零值的次數(shù).對于時域內(nèi)連續(xù)的語音信號,可通過計算短時過零率得到時域波形通過橫軸的情況,來反映信號的頻率信息,由文獻(xiàn)[7]可得到短時過零率計算公式為
(2)
式(1)、式(2)中,Ei為第i幀的短時平均能量,ZCRi為第i幀的短時過零率,xi(n)為第i幀第n個采樣的信號點.n=1,2,3,…,N,n為原始肌電信號的時間序列,N為幀長.
圖2為sEMG信號短時時域分析結(jié)果,圖2a為一段肌電信號的波形、圖2b為短時平均能量圖、圖2c為短時過零率圖.
圖2 sEMG信號短時時域分析
由圖2可知,在活動段起點處,短時平均能量與短時過零率幅值上升很快;在活動段終點附近,短時過零率與短時平均能量幅值大幅下降,并存在小幅波動.通過自適應(yīng)門限算法,以肌電信號的短時能量與過零率作為門限值,可以準(zhǔn)確地提取sEMG信號活動段.
反復(fù)實驗發(fā)現(xiàn),當(dāng)s單門限提取活動段的運動意圖分類EMG信號幅值在檢測算法的門限值附近波動時,會導(dǎo)致活動段端點反復(fù)反轉(zhuǎn),造成檢測到的活動段長度過短.本文采用短時平均能量與短時過零率兩級門限法約束活動段端點的反轉(zhuǎn).此外,為抑制噪聲信號的干擾,在端點檢測算法中增加活動段最小長度限制.圖3是固定門限與前后門限活動段提取對比圖.傳統(tǒng)的算法固定了前后門限值,常常無法提取完整的活動段,圖3b為固定門限提取的活動段.在實際檢測中,sEMG活動段在終點前存在亢奮衰減過程,活動段的檢測需要一段跳過信號收尾的時間,如圖3c為包含亢奮衰減過程的活動段,其包含更加完整的運動意圖信息.為解決固定門限檢測活動段提前收尾的問題,對短時平均能量設(shè)定一個數(shù)值略低的后門限σEb,以完成活動段收尾部分的檢測,增強算法的適應(yīng)能力.
圖3 固定門限與前后門限活動段提取對比圖
短時平均能量前后門限計算公式為
σEf=min{Ei,Kf×max(Ei)}
σEb=min{σEf,mean(Ei)}×Kb
(3)
過零率門限計算公式為
σZCR=min{ZCRi,Kz×max(ZCRi)}
(4)
其中,Kf、Kb、Kz分別為能量前門限確定系數(shù)、能量后門限確定系數(shù)、過零率門限確定系數(shù),且均為實驗得到的經(jīng)驗值.
本文對每幀信號數(shù)據(jù)進(jìn)行了短時能量與過零率計算,作為活動段兩級判別門限的初始參考值,根據(jù)式(3)和式(4),實時計算門限值,再通過端點算法確定活動段的起點和終點,算法流程圖如圖4所示.
圖4 改進(jìn)自適應(yīng)門限兩級判別活動段算法流程圖
具體算法步驟如下:
1)對肌電信號按照幀長N=64、幀移S=10,分幀處理;
2)根據(jù)式(1)和式(2),計算每幀信號的短時能量Ei與短時過零率ZCRi;
3)在兩級判別中,選用短時平均能量較高的前門限σEf與過零率門限σZCR共同確定活動段的起點,根據(jù)每幀的短時過零率ZCRi判斷噪聲干擾,再根據(jù)短時能量較低的后門限σEb與過零率門限σZCR,確定活動段的終點;
4)運用活動段長度MUAPLen是否滿足最短長度限制的條件;若滿足條件,則判定為有效活動段,否則判定為噪聲,重復(fù)步驟3;
5)根據(jù)起點和終點,計算患者運動意圖的活動段,并保存到背景數(shù)據(jù)庫中,用于下一步子活動段的特征提取.
圖5 LSTM神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
LSTM是一種特殊的RNN,[8]它在RNN的基礎(chǔ)上增加了一條新的時間鏈.LSTM通過遺忘門、更新門和輸出門增加了隱藏層與時間鏈之間的聯(lián)系,以及記錄長短時記憶之間的聯(lián)系,彌補了RNN對長時記憶的不足,其主要結(jié)構(gòu)如圖5所示.根據(jù)文獻(xiàn)[8],可得各個神經(jīng)元的輸出計算公式如式(5) ~式 (12).
2.1.1 遺忘門
遺忘門具有選擇記憶重要信息的功能,計算公式為
ft=σ(Wxfxt+Whfht-1+bf)
(5)
式(5)中,σ為Sigmoid函數(shù),其取值范圍為[0,1],產(chǎn)生一個0~1的數(shù),其中“0”代表“全部忘記”,“1”代表“全部記住”,xt表示該時間步內(nèi)的輸入,ht-1表示上一個時間步的輸出狀態(tài),Wxf、Whf分別表示輸入和輸出的權(quán)重矩陣.
2.1.2 輸入門
it=σ(Wxixt+Whiht-1+bi)
(6)
(7)
更新門通過計算要丟棄部分與要被記憶部分的值,完成記憶細(xì)胞狀態(tài)更新,得到新的記憶細(xì)胞Ct,其計算公式為
(8)
2.1.3 輸出門
輸出門通過Sigmoid層獲得初始輸出,再利用tanh函數(shù)將ot的值限制在[-1,1]之間,其計算公式為
ot=σ(Wxoxt+Whoht-1+bo)
(9)
由輸出門和當(dāng)前記憶細(xì)胞Ct最終決定ht值
ht=Ot⊙tanh(Ct)
(10)
式(9)中,Sigmoid函數(shù)計算公式為
(11)
tanh激活函數(shù)計算公式為
(12)
本文選取了3種常見的時域特征,[9]平均絕對值(MAV)、均方根(RMS)、平均幅度改變值(ACC),將它們作為子活動段的特征參數(shù).以窗寬L=32、移動步長STEP=5,兩級判別檢測得到的活動段分解成k個子活動段,依次提取子活動段特征,用于分類模型的輸入.子活動段總數(shù)k計算公式為
(13)
式(13)中,MUAPLen為活動段總長度,L為子活動段窗寬,STEP為子活動段移動步長.
手部運動意圖模型的輸入矩陣為
(14)
式(14)中,上標(biāo)為通道數(shù),下標(biāo)為子活動段的序列.
圖6 基于LSTM手部運動意圖分類模型
考慮到sEMG信號的時序性,提出了一種基于LSTM手部運動意圖分類模型,模型結(jié)構(gòu)如圖6所示.模型的輸入xt為sEMG活動段的特征矩陣,通過LSTM遺忘門、輸入門和輸出門的協(xié)同作用,迭代更新記憶細(xì)胞,全連接層將LSTM中的特征空間整合成維度為1的輸出向量.全連接層的輸出被傳遞給softmax激活函數(shù),將全連接層的輸出歸一化在(0,1)區(qū)間,通過分類層交叉熵?fù)p失函數(shù),將正確類別概率最大化,計算出每個權(quán)重的梯度,輸出ht表示為sEMG活動段對應(yīng)的運動意圖標(biāo)簽.設(shè)置模型訓(xùn)練參數(shù),輸入活動段特征,訓(xùn)練LSTM手部運動意圖識別模型.
圖7 UCI數(shù)據(jù)集中的6種手勢
本文研究了UCI公開的肌電信號數(shù)據(jù)集.[10]數(shù)據(jù)集的肌電信號來自5名受試者:3名女性和2名男性,年齡在20歲到22歲之間.實驗者將雙通道電極固定在受試者的左手前臂處,雙通道采集電極的位置分別位于尺側(cè)腕屈肌和橈側(cè)腕伸肌、長肌和短肌,采樣頻率設(shè)定500 Hz,采用巴特沃斯濾波器,濾除15 Hz以下和500 Hz以上的頻段,采用50 Hz的陷波濾波器消除工頻信號干擾.
測試中,每個受試者做6種不同手勢,如圖7所示.[10]
本文選取了數(shù)據(jù)集中的一個子集.子數(shù)據(jù)集包括1200組數(shù)據(jù),即在雙通道下每組肌電信號持續(xù)了2500 ms.每個受試者重復(fù)單個動作100次,每個受試者總共完成了600次試驗.
圖8展示了6種運動意圖的sEMG數(shù)據(jù)樣本幀.
圖8 6種手勢的sEMG信號樣本
為了驗證本文方法的有效性,選擇UCI數(shù)據(jù)集中6種手部運動意圖sEMG作為研究對象,開展對照實驗.為保證單一變量原則,模型參數(shù)中分塊尺寸miniBatchSize設(shè)置為32,最大訓(xùn)練周期MaxEpochs設(shè)置為30,訓(xùn)練集與測試集比例為7∶3,實驗中其他參數(shù)均保持一致.
分類模型的輸入信號選用單參數(shù)固定門限提取的子活動段特征、兩級判別自適應(yīng)門限提取的子活動段特征.輸出ht為數(shù)字標(biāo)簽1~6,其分別代表“握圓柱體”“提拉”“二指側(cè)捏”“多指側(cè)捏”“握球體”“二指尖捏”6種運動意圖.兩種方法得到的活動段特征矩陣,被輸入到LSTM的手部運動意圖分類模型,完成樣本訓(xùn)練工作.選取分類精度η為評價指標(biāo),量化評估分類結(jié)果,分類精度函數(shù)的計算公式為[3]
(15)
式(15)中,η為分類精度;SPre為測試集的總樣本數(shù);YPre_i、YTest_i分別為第i個樣本的目標(biāo)類別和輸出類別(實際類別);I為指示函數(shù),當(dāng)輸入為True的時候,輸出為1;輸入為False的時候,輸出為0.
對照實驗結(jié)果如圖9和圖10所示,當(dāng)分類模型輸入為單參數(shù)門限提取的活動段時, LSTM模型分類精度僅為76.1%;當(dāng)分類模型輸入為兩級判別自適應(yīng)門限提取活動段時,LSTM模型分類精度提高了15.6%,總體平均分類精度達(dá)到91.7%.表明本方法提取的活動段更具代表性,活動段所攜帶的運動意圖信息更完整,不同運動意圖的活動段特征差異更加明顯,且手部運動意圖分類模型能發(fā)揮更好性能,證明了本方法的可行性和有效性.
圖9 基于單門限提取活動段的運動意圖分類混淆矩陣
圖10 基于本方法提取活動段的運動意圖分類混淆矩陣
另一方面,標(biāo)簽“6”運動意圖表明,兩種方法分類精度都不足80%.主要原因在于標(biāo)簽“2”運動意圖與標(biāo)簽“6”運動意圖參與的肌肉關(guān)聯(lián)程度較高,肌肉起主導(dǎo)作用的神經(jīng)元大部分相同,導(dǎo)致sEMG活動段特征差異不明顯,使得運動意圖標(biāo)簽“6”易被誤判成運動意圖標(biāo)簽“2”.由于雙通道特征的限制,當(dāng)手勢相近或?qū)∪馄鹬鲗?dǎo)作用的神經(jīng)元相同時,手勢識別的敏感度大大降低.這一局限性需要在后續(xù)工作中進(jìn)一步改進(jìn)特征提取方法,或者增加肌電傳感器的數(shù)量.
本文提出了一種基于改進(jìn)sEMG活動段檢測的手部運動意圖識別方法,著力提高手部運動意圖的分類精度.該方法通過兩級判別自適應(yīng)門限檢測sEMG的活動段,運動意圖對應(yīng)的特征矩陣與運動意圖標(biāo)簽作為LSTM手部運動意圖分類模型的輸入與輸出信號.實驗表明,當(dāng)分類模型的輸入為本方法提取的活動段特征時,LSTM模型分類精度提高了15.6%,6種運動意圖平均分類精度達(dá)到91.7%.