張 昌,苑堯堯,李 聰
(曲阜師范大學(xué),山東 日照 276800)
表面肌電信號(hào)(Surface Electromyography, sEMG)是人體運(yùn)動(dòng)神經(jīng)中樞產(chǎn)生的動(dòng)作電位通過(guò)運(yùn)動(dòng)神經(jīng)纖維將動(dòng)作電位傳送到肌細(xì)胞,對(duì)肌細(xì)胞膜內(nèi)外產(chǎn)生的電位差序列總和,進(jìn)行讀取的生物電信號(hào)。肌電信號(hào)的采集可以通過(guò)針電極進(jìn)行采集,由于針電極采集會(huì)對(duì)人體造成一定程度的創(chuàng)傷,所以選用貼片電極對(duì)sEMG進(jìn)行采集應(yīng)用較為廣泛。
根據(jù)肌電信號(hào)的特殊性可知,人體實(shí)際動(dòng)作的輸出總是比肌電信號(hào)的出現(xiàn)晚,這為通過(guò)對(duì)肌電信號(hào)的分析,進(jìn)行人體動(dòng)作意圖識(shí)別奠定了基礎(chǔ)[1]。
模式識(shí)別的差別不僅體現(xiàn)在信號(hào)采集的肌肉位置上,還與提取的特征不同有關(guān)。隨著國(guó)內(nèi)外對(duì)肌電信號(hào)的深入研究,以及肌電信號(hào)在康復(fù)醫(yī)學(xué)中的廣泛應(yīng)用,如何提取更為有效的特征值,訓(xùn)練一個(gè)準(zhǔn)確率較高的分類(lèi)系統(tǒng)成為了當(dāng)下研究重點(diǎn),而且研究分析的方法多種多樣。
本文的研究目的為實(shí)現(xiàn)4種動(dòng)作意圖的模式識(shí)別,對(duì)提取的原始信號(hào)通過(guò)小波變換及數(shù)字濾波器和陷波器的交叉使用進(jìn)行降噪處理, 在時(shí)域中提取了絕對(duì)值均值(Mean Absolute Value,MAV)、 均 方 根(Root Mean Square,RMS)[2]作為時(shí)域特征,通過(guò)小波變換將時(shí)域轉(zhuǎn)換成頻域,提取平均功率頻率(Mean Power Frequency,MPF)、中位頻率(Median Frequency,MF)作為頻域特征,將提取的特征構(gòu)造成特征向量,以誤差反向傳播算法(Error Back Proragation,BP)作為模式分類(lèi)器,實(shí)現(xiàn)了上肢四種運(yùn)動(dòng)意圖的模式識(shí)別。
肌電信號(hào)的采集選用美國(guó)Delsys無(wú)線表面肌電采集系統(tǒng),該系統(tǒng)可同時(shí)完成16通道的檢測(cè)任務(wù),采樣頻率為1 926 Hz。選用個(gè)4通道提取4種動(dòng)作意圖的肌電信號(hào),根據(jù)上肢運(yùn)動(dòng)需要涉及到肌肉,選取了肱二頭肌,肱三頭肌,肱側(cè)腕屈肌,肱橈肌這四塊肌肉作為研究對(duì)象,測(cè)試前為保證采集數(shù)據(jù)的準(zhǔn)確性,首先對(duì)測(cè)試者的4塊肌肉部位用醫(yī)用酒精進(jìn)行擦拭,并將Trigno無(wú)線采集傳感器上的箭頭與肌腹方向保持平行,進(jìn)一步減少干擾。選取10位健康測(cè)試者作為實(shí)驗(yàn)對(duì)象,每一種動(dòng)作意圖均采集20次,為防止連續(xù)動(dòng)作產(chǎn)生肌肉疲勞對(duì)實(shí)驗(yàn)有影響,每意圖動(dòng)作5次,測(cè)試者休息兩分鐘再進(jìn)行下次采集,將采集到的信號(hào)以表格的形式進(jìn)行存儲(chǔ)。共得到800組數(shù)據(jù)。
表面肌電信號(hào)是極其微弱復(fù)雜的非線性生物電信號(hào)[3],信號(hào)頻率為0~500 Hz,容易受到工頻信號(hào)、周?chē)艌?chǎng)、靜電以及人體其他生物電信號(hào)的干擾。要想進(jìn)行肌電信號(hào)數(shù)據(jù)的應(yīng)用,首先要對(duì)原始信號(hào)進(jìn)行去噪預(yù)處理,應(yīng)用小波變換、數(shù)字濾波器、陷波器去除高頻噪聲和基線漂移現(xiàn)象以及50 Hz的工頻干擾。
基于真實(shí)信號(hào)與噪聲信號(hào)的差異性,小波變換通過(guò)逐層分解,將真實(shí)信號(hào)和噪聲信號(hào)分離開(kāi)來(lái),通過(guò)合適閾值的選取,將噪聲信號(hào)剔除,最后將保留下的真實(shí)信號(hào),通過(guò)重構(gòu)算法重構(gòu)成純凈肌電信號(hào)的原始狀態(tài)。
傳統(tǒng)的數(shù)據(jù)處理方法有濾波器、卡爾曼以及經(jīng)驗(yàn)公式濾波,這些數(shù)據(jù)處理方法分析的過(guò)程較為繁瑣,且有的還需要一些基礎(chǔ)數(shù)學(xué)工具以及經(jīng)驗(yàn)知識(shí),去噪效果并不理想。而采用離散小波變換進(jìn)行多尺度細(xì)化,最終達(dá)到高頻處時(shí)間細(xì)分,低頻處頻率細(xì)分,能自動(dòng)適應(yīng)時(shí)頻信號(hào)分析的要求,從而可聚焦到信號(hào)的任意細(xì)節(jié),操作簡(jiǎn)單、便于理解[4],再結(jié)合數(shù)字濾波器和陷波器的使用,將其三種去噪工具的優(yōu)點(diǎn)融合為一體,得到的信號(hào)既純凈又與原始信號(hào)具有較高的相似度,為此非常適用于sECG這一類(lèi)非線性信號(hào)源的處理。
根據(jù)離散小波變換的性質(zhì)可知,任何信號(hào)(函數(shù))均可被分解為[5-6]:
通過(guò)以上兩式可知,第j+1層的aj+1,m和dj+1,m可通過(guò)濾波系數(shù) h*(m)和 g*(m)將第 j層的尺度系數(shù)aj,k分解得到[7]。
分解示意為圖1。
圖1 小波分解
重構(gòu)示意如圖2所示。
圖2 小波重構(gòu)
合適閾值的選取至關(guān)重要,提取的sEMG經(jīng)過(guò)多種閾值選取方法的測(cè)試,選用啟發(fā)式無(wú)偏似然估計(jì)規(guī)則(heursure)的閾值,并作用于軟閾值去噪效果最佳。閾值計(jì)算方法:
其中,n是待估計(jì)小波系數(shù)向量的長(zhǎng)度,若Eta<Crit,則選取固定閾值,否則選取rigrsure準(zhǔn)則和sqtwolog準(zhǔn)則的較小者作為本準(zhǔn)則閾值。
原始信號(hào)的時(shí)頻域波形圖如圖3所示。
圖3 原始信號(hào)時(shí)頻域波形
不僅閾值的選取至關(guān)重要,分解層數(shù)選取的過(guò)多或過(guò)少都會(huì)影響著去噪的效果,根據(jù)上肢肌電信號(hào)的特性,以及多次重復(fù)實(shí)驗(yàn)的驗(yàn)證,系統(tǒng)選用三層分解進(jìn)行去噪處理,選用一個(gè)動(dòng)作其中一個(gè)通道的信號(hào)進(jìn)行分解處理比對(duì),其余動(dòng)作其余通道信號(hào)處理效果一致,去噪前與去噪后分解對(duì)比圖如圖4所示。
圖4 分解對(duì)比
從對(duì)比圖中可以看出,去噪效果比較明顯。
在采集數(shù)據(jù)過(guò)程中,由于肌肉的收縮與電極之間會(huì)產(chǎn)生微小的移位現(xiàn)象,該現(xiàn)象稱為基線漂移,需要再加入線性濾波器去除掉基線漂移。處理結(jié)果如圖5所示。
圖5 去除基線漂移
根據(jù)未經(jīng)濾波器處理的信號(hào)和經(jīng)過(guò)零相移數(shù)字濾波器濾波后的對(duì)比圖可以看出,基線漂移現(xiàn)象已經(jīng)得到了明顯的抑制,低頻噪聲也得到了明顯的控制,在起始位的無(wú)窮大飄移現(xiàn)象已完全消除。
通過(guò)小波去除了高頻噪聲,通過(guò)數(shù)字濾波器抑制了基線漂移,50 Hz工頻干擾依然存在,通過(guò)陷波器去除50 Hz工頻,處理結(jié)果如圖6所示。
圖6 工頻濾波對(duì)比
通過(guò)上述的去噪濾波處理得到了純凈的肌電信號(hào),進(jìn)一步對(duì)純凈的信號(hào)進(jìn)行分析處理。去噪后信號(hào)時(shí)頻域波形圖如圖7所示。
圖7 去噪后信號(hào)時(shí)頻域波形
表面肌電信號(hào)在時(shí)域中比較直觀,易分析,且方法簡(jiǎn)便,因此應(yīng)用較為成熟廣泛。在肌電圖中sEMG表現(xiàn)為時(shí)間-幅值的曲線,不需要任何轉(zhuǎn)換,就可從中求出信號(hào)的特征,求取絕對(duì)值均值(MAV)、均方根(RMS)作為時(shí)域中的特征值。
(1)絕對(duì)值均值(MAV)
sEMG信號(hào)具有很強(qiáng)的隨機(jī)性,正負(fù)幅值呈對(duì)稱分布,均值近似為零,故首先將各個(gè)時(shí)刻的幅值取絕對(duì)值在求其均值,絕對(duì)值均值(MAV)表征信號(hào)幅值在每個(gè)時(shí)間點(diǎn)偏離原點(diǎn)的程度。絕對(duì)值均值(MAV)計(jì)算公式:=1 i
(2)均方根(RMS)
均方根(RMS)能夠更好的表征信號(hào)的真實(shí)性和有效性,減小與真實(shí)信號(hào)的差異性,其計(jì)算公式為:
其中,N為采集的sEMG總個(gè)數(shù),x(i)為采集到的第i個(gè)sEMG信號(hào)。
sEMG是極其微弱的生物電信號(hào),數(shù)量級(jí)在μv~mv之間,為了分析更穩(wěn)定的肌電信號(hào),需要進(jìn)行時(shí)頻域轉(zhuǎn)換,得到頻域信號(hào),基于頻域信號(hào)的特征有平均功率頻率(MPF)和中位頻率(MF)。
(1)平均功率頻率(MPF)
其中,f為 sEMG 頻率,p(f)為功率譜密度函數(shù)[8]。
通過(guò)matlab仿真,可以看出選取的這四個(gè)特征量在不同的動(dòng)作下,每個(gè)通道的特征值均表現(xiàn)出了明顯的差異性,故選取的這四個(gè)特征具有研究的可行性。四個(gè)特征量在四個(gè)動(dòng)作下的對(duì)比圖如圖8所示。
根據(jù)提取的特征值,構(gòu)造特征向量,選取每個(gè)人每次動(dòng)作四個(gè)通道的四個(gè)特征值作為一個(gè)特征向量。
其中,xi表示第i次試驗(yàn)動(dòng)作的特征向量,該向量為 16 維,αi1αi2αi3αi4分別表示第 i次試驗(yàn)動(dòng)作第一、二、三、四通道由MAV、RMS、MPF、MF構(gòu)成的4維特征向量。
BP[9-10](Back Propagation)神經(jīng)網(wǎng)絡(luò)是指基于誤差反向傳播算法(BP算法)的多層前向神經(jīng)網(wǎng)絡(luò),通過(guò)將網(wǎng)絡(luò)中的權(quán)值和閾值沿著網(wǎng)絡(luò)誤差變化的負(fù)梯度方向進(jìn)行調(diào)整,最終使網(wǎng)絡(luò)的實(shí)際輸出值與期望輸出值得偏差為最小的一種算法[11]。由于其強(qiáng)大的非線性映射能力、自學(xué)習(xí)和自適應(yīng)能力,因此被廣泛應(yīng)用于模式識(shí)別等分類(lèi)系統(tǒng)中。BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型主要包括輸入層、隱含層和輸出層,每一層由若干個(gè)神經(jīng)元組成。BP神經(jīng)元模型如圖9所示,BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)模型如圖10所示。
圖9 神經(jīng)元模型
其中ui為神經(jīng)元的內(nèi)部狀態(tài);θi為閾值;xi為輸入信號(hào);i=1,2,…,n;wij表示從單元uj到單元ui的連接權(quán)值;Si為外部輸入信號(hào),f(·)為激勵(lì)函數(shù)。
上述模型的輸出yi可以表示為:
圖10 神經(jīng)網(wǎng)絡(luò)模型
BP神經(jīng)網(wǎng)絡(luò)的構(gòu)造:首先進(jìn)行網(wǎng)絡(luò)初始化,根據(jù)輸入輸出序列確定輸入層、隱含層、輸出層各層神經(jīng)元的個(gè)數(shù)。由于系統(tǒng)特征向量為16維,故輸入層神經(jīng)元個(gè)數(shù)為16,進(jìn)行4分類(lèi),所以輸出層神經(jīng)元個(gè)數(shù)為4,隱含層通過(guò)經(jīng)驗(yàn)公式:
其中,n,l分別為輸入層和輸出層神經(jīng)元個(gè)數(shù),求得神經(jīng)元個(gè)數(shù)為8。
選擇網(wǎng)絡(luò)參數(shù),訓(xùn)練次數(shù)為p=1 000,目標(biāo)誤差e=0.01,學(xué)習(xí)率η=0.01。確定隱含層的輸出為H,隱含層激勵(lì)函數(shù)f(x)選用log sig函數(shù),輸出層激勵(lì)函數(shù)g(x)選用purelin線性函數(shù),訓(xùn)練函數(shù)選用trainrp。
確定輸出層的輸出為O,網(wǎng)絡(luò)期望輸出為Y,網(wǎng)絡(luò)預(yù)測(cè)誤差為e。
最后根據(jù)求得的誤差e更新各層之間的連接權(quán)值wij,wjk以及神經(jīng)元的閾值a,b。
反復(fù)調(diào)整權(quán)值的原則是使誤差不斷的減小,于是權(quán)值的調(diào)整量應(yīng)與誤差的下降梯度成正比,即:式中的負(fù)號(hào)表示梯度下降
式中的i取值為i=1,2,…,n,j取值為j=1,2,…,m,k 取值為 k=1,2,…,l。
通過(guò)MATLAB訓(xùn)練該系統(tǒng),通過(guò)圖11可以看出,在訓(xùn)練到第14步時(shí),校驗(yàn)集的誤差達(dá)到最小,之后又有回升趨勢(shì),故權(quán)值的選取應(yīng)從訓(xùn)練到第14步的時(shí)候確定。神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差曲線如圖12所示,系統(tǒng)在迭代到200次時(shí),逐漸趨于收斂,逐漸向目標(biāo)誤差靠近。網(wǎng)絡(luò)的訓(xùn)練樣本回歸曲線如圖13所示,通過(guò)圖像可以看出,選取的特征值與運(yùn)動(dòng)意圖具有很強(qiáng)的相關(guān)性。
圖11 網(wǎng)絡(luò)均方誤差
圖12 網(wǎng)絡(luò)訓(xùn)練誤差曲線
圖13 網(wǎng)絡(luò)訓(xùn)練結(jié)果
將測(cè)得的800組數(shù)據(jù),選取640組作為訓(xùn)練數(shù)據(jù),剩下的160組作為測(cè)試數(shù)據(jù),通過(guò)設(shè)計(jì)統(tǒng)計(jì)識(shí)別率程序,測(cè)試完成之后,在MATLAB命令窗口中直接顯示計(jì)算出的識(shí)別率,為大量測(cè)試數(shù)據(jù)識(shí)別率
的計(jì)算提供了方便。通過(guò)仿真,該系統(tǒng)的識(shí)別率達(dá)到了90%。為檢驗(yàn)系統(tǒng)是否具有較強(qiáng)的穩(wěn)定性,現(xiàn)隨機(jī)選取一名健康測(cè)試者,做10次動(dòng)作意圖,對(duì)系統(tǒng)進(jìn)行測(cè)試,將這10組測(cè)試數(shù)據(jù)輸入訓(xùn)練好的分類(lèi)系統(tǒng)。模型預(yù)測(cè)的輸出與實(shí)際輸出對(duì)比如表1所示。
表1中y為系統(tǒng)預(yù)測(cè)輸出值,y′為系統(tǒng)預(yù)測(cè)擬合值,z為實(shí)際擬合值,由這10組測(cè)試數(shù)據(jù)可得,系統(tǒng)識(shí)別出了9次的意圖動(dòng)作,有一次未識(shí)別出,系統(tǒng)的識(shí)別率依舊是90%,證明該系統(tǒng)具有較好的識(shí)別性及穩(wěn)定性。
表1 模型預(yù)測(cè)的輸出與實(shí)際輸出對(duì)比
針對(duì)傳統(tǒng)的肌電信號(hào)濾波方法未能得到更為平滑純凈的信號(hào),本文提出了基于小波變換和數(shù)字濾波器陷波器交叉使用的去噪方法,保證了噪聲的有效去除并保留了與原始信號(hào)的較高的相似度。從濾波后純凈信號(hào)中提取特征值,將其構(gòu)造為BP神經(jīng)網(wǎng)絡(luò)分類(lèi)器輸入的特征向量,通過(guò)大量的訓(xùn)練和測(cè)試樣本進(jìn)行驗(yàn)證分析,得到了一個(gè)高識(shí)別率分類(lèi)系統(tǒng),同時(shí)也檢驗(yàn)了所提取特征的有效性。為上肢康復(fù)以及智能假肢的研究具有一定的參考價(jià)值。