劉樂遠,曹 樂,闞 秀,張文艷
(上海工程技術大學 電子電氣工程學院,上海 201620)
表面肌電(surface electromyography,sEMG)信號是人體自身的資源,蘊含著關聯人體運動的豐富信息[1]。人手的運動信息包括手勢、動作大小、動作快慢、動作力輸出等。早期的肌電控制假手,大多是根據最為直觀的肌電幅度變化,控制假手的“開關”[2]。近些年來,國內外學者對肌電和假肢控制的研究頗多。Zhang Z等人提出了一種新的手勢預測方法,利用循環神經網絡(recurrent neural network,RNN)模型從sEMG數據中學習并預測手勢[3]。同時,王濤等人提出的基于動作因素和個體因素的雙線性模型,為肌電假肢手的控制提供了新的思路[4]。針對不同的需求,研究的重點也逐漸分化,如基于肌電信號的兩自由度假肢,追求更快的響應速度[5]。而成娟等人對多種手指按鍵動作的識別研究,則對虛擬現實具有重要意義[6,7]。越來越多的方法被使用在肌電分析中,如采用線性判別分析(linear discriminant analysis,LDA)進行抓握模式的識別[8]、采用廣義回歸神經網絡(generalized regression neural network,GRNN)預測踝關節運動[9,10]等。而對于假手相關動作的指尖力研究較少。
本文通過自主搭建的實驗平臺,采集4種不同手指點擊動作下的sEMG信號和指尖力信號,經過信號提取及處理、動作分類、模型建立等步驟,最終實現了網絡對指尖力的準確預測。
傳統sEMG電采集方法中,多為模擬電路搭建,包括前置放大電路、濾波電路、ADC調理電路等[11]。使用分立元器件搭建電路,存在功耗高、調試困難的缺點。針對上述問題,采用ADS1298模擬前端,搭建了一種集成度較高的多通道肌電采集設備。 ADS1298每個通道的功耗只有0.75 mW,內部集成24位高精度Δ-∑ADC,具有可編程增益放大器,可通過設置寄存器調節放大倍數等參數,采樣頻率最大可設置為320 kS/s,充分滿足肌電信號采集頻率。ADS1298的一個顯著優點是,為心電采集預留的一個右腿驅動電路,而使用在肌電測量中,則可以用于連接人體,用來抑制系統的共模干擾。 ADS1298的最終參數設置為:采集頻率1 kps,放大倍數為6,內部參考電壓Uref為2.4 V。則信號分辨率u為
(1)
指尖力測量采用FSR壓電傳感器(量程0~20N),信號為模擬量連續輸出。測試系統框圖如圖1所示。

圖1 測試系統框圖
sEMG的信號處理包括濾波去噪和特征提取[12]。濾波去噪包括設計50 Hz陷波器和10~300 Hz高通濾波器。同時借鑒語音降噪(增強)用的譜減法,對濾波后波形進行降噪,濾波、降噪后波形如圖2所示。

圖2 sEMG濾波、降噪后波形
肌電的特征提取主要是時域、頻域、時頻域[13]。為了保證時間的連續性,采用時域特征進行4種動作的分類和指尖力的預測。提取的時域特征包括平均絕對值(MAV)、均方根(RMS)、波形長(WL)、過零點(ZC)。4種特征值波形如圖3,N為時間窗長度,xi為時間窗內第i個表面肌電信號值,取N=100。

圖3 4種特征值波形
1)平均絕對值(MAV):sEMG在幅值上表現出很強的隨機性,絕對值運算將信號的幅值全部轉換成正值,可以直觀地反映肌肉的收縮力量。滑動窗口下絕對值均值的表達式如下
(2)
2)均方根(RMS):信號能量的一種量測,其表達式為
(3)
3)波形長(WL):波形長是描述一段時間內信號變化幅值累加之和,是信號復雜度的一種量測,其表達式為
(4)
4)過零點(ZC):零穿越次數描述一段時間內信號幅值變化過程中穿過x軸的次數,該特征從時域的角度對信號的頻域特征進行估計,滑動窗口下過零點的表達式為
(5)

假設指尖力為Fc,傳感器對應采集到的電壓為U,建立式(6)、式(7)的關系,只要求得Φ,就能得到指尖力的預測值
U=0.15×Fc+0.2
(6)
Fc=Φ(Cf)
(7)
式中U為力傳感器電壓值,Fc為力數值,Cf為sEMG信號的特征值。回歸算法具有很好的非線性擬合能力,適用于對指尖力做擬合預測。
LSTM是一種特殊的時間RNN架構[14]。 LSTM的關鍵在于時間序列處理模塊和網絡連接線,信息在連接線上易保存。而信息在流轉過程中是添加還是刪除,則通過門來決定的,具體操作是通過一個sigmoid的神經層和逐點相乘。
LSTM的第一步是決定從時間序列處理模塊中丟棄的信息,通過一個遺忘門來完成。該門會讀取前神經元信息ht-1和當前輸入xt,輸出一個在0~1之間的值σ,來表示有多少數據量ft可以通過,公式如下
ft=σ(Wf·[ht-1,xt])+bf)
(8)
第二步是決定加入多少新的信息到時間序列處理模塊。首先,用一個sigmoid來決定更新的信息it;其次,用一個tanh層生成一個向量,即備選的更新內容t,公式如下
it=σ(Wi·[ht-1,xt])+bi)
(9)
t=tanh(Wc·[ht-1,xt])+bc)
(10)
第三步是最終決定輸出的值。通過一個sigmoid層來決定信息輸出的部分。然后,經過tanh處理得到具體值。信息輸出的部分和具體值相乘,實現確定部分的輸出ht,公式如下
ot=σ(Wo·[ht-1,xt]+bo)
(11)
ht=ot*tanh(Ct)
(12)
xt在網絡中為肌電時域特征特征值。LSTM網絡設置為3層,包括輸入層、隱含層、輸出層,輸入層設置輸入16個肌電特征維度,輸出層設置為1個預測力輸出,設置3個隱含層,參數分別設置為40,160,80,LSTM網絡的優化器使用AdamOptmizer,設置訓練最大次數為200,學習率設置為0.006。LSTM網絡結構如圖4所示。

圖4 網絡結構
選取4名平均年齡為24歲的健康男性受試者作為實驗對象。通過4通道肌電采集設備,采集受試者4個前臂肌群拇長屈肌、指淺屈肌、指深屈肌、尺側腕屈肌的表面肌電信號[15]。指尖力測試4種動作設計分別為:拇指和食指點擊、拇指和中指點擊、拇指和無名指點擊、拇指和小指點擊。每次實驗的時長為不超過1 min,每個點擊動作間歇性用力,間隔時長1~2 s。每種點擊動作做3組。實驗動作和實驗場景如圖5。

圖5 實驗動作和實驗場景
對每名受試者的每組實驗數據提取4種特征值,并打好標簽。通過支持向量機(SVM)和BP神經網絡對4種手指動作進行分類,使用遺傳算法(GA)優化兩種分類方法的參數。從分類結果來看,BP神經網絡的分類準確度為92.5 %,SVM的分類準確度為94.3 %,SVM的分類結果優于BP神經網絡的分類結果。4名受試者2種不同網絡的4種手指分類結果,如表1所示。

表1 4名受試者2種分類方法結果
提取不同表面肌電信號的4種特征值,并對每種特征值進行單獨歸一化。力傳感器的數值作為訓練集的對比輸出。測量了多組1 min的數據,使用GRNN、LSTM網絡分別進行訓練。對于GRNN,使用交叉驗證尋找最佳的spread參數。對于LSTM網絡,優化器使用AdamOptmizer,設置訓練最大次數為200,學習率設置為0.006。其中,LSTM網絡對于受試者3的指尖力預測結果如圖6所示。

圖6 受試者3的4種指尖力預測結果
對于預測結果,采用均方根誤差來評價網絡預測的準確性。受試者3的4種指尖力預測均方根誤差為0.198 0,0.278 2,0.260 3,0.216 8,動作1的預測誤差最小,動作2的預測誤差最大。表2中列出4名受試者2種不同網絡的4種指尖力預測結果。

表2 4名受試者2種網絡的預測結果
4名受試者使用GRNN做4種指尖力預測均方根誤差為0.302 6,0.316 6,0.359 0,0.345 6,使用LSTM做4種指尖力預測的均方根誤差分別為0.205 6,0.271 0,0.257 1,0.210 7。雖然受試者不同,但2種網絡對于拇指和食指的指尖力預測誤差都小于其他3種動作的指尖力預測誤差。且LSTM的均方根誤差明顯小于GRNN的均方根誤差。因此,使用LSTM對指尖力的預測更為準確。
本文研究以假手對力精準控制的需求為背景,提出了一種基于sEMG信號和LSTM的指尖力預測方法,對4種手指動作進行sEMG信號和指尖力的同步采集,并對肌電信號進行預處理和特征提取。首先,通過遺傳算法(GA)優化的 BP,SVM對手指動作進行正確分類,再使用LSTM網絡對手指指尖力進行進一步預測。分類結果表明:SVM的分類效果優于BP網絡,分類精度達到了94.3 %;預測結果表明:LSTM的均方根誤差在1.3~1.7 N,GRNN的均方根誤差在2.0~2.3 N,證明了LSTM在處理時間序列肌電信號的力預測上有顯著的性能提高,為基于肌電的智能假手高精度控制提供了一種有效的研究方法。