朱明霞,葉 曄
(安徽工業大學 機械工程學院,安徽 馬鞍山 243002)
近年來,肌肉-計算機接口在上肢運動識別領域中得到了廣泛應用[1-3],但在踝足運動中還有待發展。踝關節運動的模式識別,可以作為踝關節康復機器人的控制指令[4-5],用以對踝關節運動障礙的患者提供康復治療。踝關節運動的模式識別,還可以用于在手勢不方便的場合時用“腳勢”來代替,比如在舞臺上,吉他手想要的燈光效應就可以用“腳勢”來被感應。由此可見,對于踝關節的運動模式識別有著很大的現實需求。
在模式識別領域,特別是手勢識別領域,傳統的模式識別步驟是先對采集到的表面肌電信號進行預處理和特征提取,再進行模式識別[6]。在特征提取中,人工提取特征耗時長,需要進行反復地實驗,以找到最能表征該動作的特征值。隨著計算機性能的不斷發展,深度學習網絡應運而生。在深度學習網絡中,卷積神經網絡(Convolution Neural Network,CNN)具有提取特征的功能。它的出現,使得研究者們從主要關注特征工程轉移到特征學習上[7],研究者們可以專注網絡模型的設計。
CNN最初用在手寫數字的識別中,隨后在圖像識別領域取得了巨大的成功[8]。在肌電信號分類領域中,一些研究人員已經提出了基于CNN的手勢識別模型[9-10],在踝關節運動模式分類中,使用CNN模型還較少。本文使用市場現有的表面肌電信號采集器,采集踝關節背曲、跖曲、內翻、外翻的動作信號,將原始信號輸入到CNN,使用CNN對原始踝關節4種動作信號進行特征提取和模式識別。
選擇ZJE-20D型無線肌電信號采集器2個,將采集器分別貼于小腿的比目魚肌和腓骨短肌的肌腹處,采集兩通道的數字化信號,采樣頻率設置為1 024 Hz。無線肌電信號采集器通過藍牙連接到電腦端,組裝圖如圖1所示。
由于每個個體的肌電信號幅值均不同,本實驗選擇6名受試者,男生5名女生1名。實驗受試者均為大學生,身體健康,均無任何神經肌肉疾病史,實驗前一天均無劇烈運動史。實驗采集被試背曲、跖曲、內翻和外翻的動作信號[11]。實驗得到了安徽工業大學生物醫學研究倫理委員會倫理審查批準,所有受試者在實驗前均已簽署知情同意書。實驗的動作示范如圖2所示。

(a)無線采集器所貼位置 (b)藍牙適配器與電腦連接

(a)背屈 (b)跖屈 (c)內翻 (d)外翻
實驗測試時,被試要求在膝關節彎曲呈90°的坐姿條件下實現以上4種動作。規定放松-動作-放松為一次完整的動作,每次完整的動作被要求在3 s內完成,每種動作完成50次后休息5 min,進行下一個動作的采集。每次動作之間幅度和頻度大致相同。
CNN一般會包含卷積層、池化層和全連接層[12]。每一層的設計均有不同的目的。卷積層和池化層會交替出現,以達到特征提取的目的。特征提取后輸入到全連接層再進行分類。CNN通過反向傳播優化算法來不斷更新網絡學習的權重和偏置,這與傳統神經網絡相似。CNN的輸入與傳統全連接神經網絡有所不同,它的每一層都會使用同一個權重和偏置,即“權值共享”,這會大量減少網絡中需要更新的參數,從而提升計算速度,并減少了出現過擬合問題的概率。
為了對踝關節運動中肌電信號進行分類,考慮到肌電信號數據量小,且輸入數據為兩通道的原始肌電信號。將輸入數據信號當成圖片信息來處理,設計3層卷積層對信號進行特征提取,并采用3種尺寸的卷積核參與運算。第一層卷積使用64個特征圖,第二層卷積和第三層卷積使用128個特征圖。對于第一層卷積層,卷積核采用矩形神經元陣列形式,稱為1D卷積核,大小為50×1,第二層卷積核的大小為4×1,第三層卷積核的大小為3×1。卷積層的步長均為(1,1)。卷積核在整個網絡中共享參數。在第一層、第二層和第三層卷積層后添加最大池化層,第一層池化區域設為(10,1)且池化層步長為(10,1),第二層池化區域為(4,1)且步長為(4,1),第三層池化區域為(2,1)且步長為(2,1)。為了防止網絡過擬合,在第三層最大池化層后添加Dropout層,設置Dropout大小為p=0.5。信號經CNN網絡進行特征提取之后,輸入至全連接層,在全連接層后也添加一個Dropout層防止過擬合,設置Dropout大小為p=0.5。初始權重值在[-1,1]之間隨機選擇,初始偏差為0。嘗試了不同的超參數值,最終確定卷積神經網絡的結構和參數,如表1所示。

表1 卷積神經網絡的結構和參數
每個被試采集4種踝關節動作,每種動作信號50組數據,每組數據的采樣點為3 072,在進行歸一化前,去除信號開始后的前72個點后為3 000個采樣點。對原始數據進行歸一化,將每組信號所具有的3 000個采樣點縮放到[0,1]的范圍內。
對于處理后的信號,每個被試4種動作共200組信號,每組信號有兩個通道,每個通道有3 000個采樣點,將數據轉換成200*3 000*2的三維數組形式。CNN最終輸出類別數:背曲是1類,跖曲是2類,內翻是3類,外翻是4類。
卷積神經網絡選用ReLU作為CNN層的激活函數。對于池化層,選擇最大池。選擇Softmax函數和交叉熵作為分類層的激活函數和CNN的損失函數。使用Adam算法更新權重和偏差,并將學習率設置為0.000 3,迭代次數設為150。
針對單個被試的動作進行分類,將每個被試200組數據按照4∶1分為訓練集和測試集,采用5倍交叉驗證法訓練模型,得到單個被試的分類準確率如圖3所示。從圖3中可以看出,6名被試的分類準確率均在95%以上,最高分類準確率為98.19%,平均分類準確率為97.04%。

圖3 單個被試的分類準確率
針對6名被試的動作進行整體分類,將6名被試4種踝關節動作匯總得到1 200組數據,將1 200組數據和對應的標簽號全部打散,按照4∶1分為訓練集和測試集,訓練階段采用5倍交叉驗證。整體分類識別的準確率為95.11%。所有數據在CNN中的分類準確率和損失函數曲線如圖4所示。6名被試整體數據分類的混淆矩陣如圖5所示,背屈、跖曲、內翻和外翻之間有輕微的混淆。

(a)準確率曲線 (b)損失函數曲線

圖5 全部被試分類的混淆矩陣
本文設計的卷積神經網絡識別模型和采用的表面肌電信號采集通道在踝關節運動分類上具有可行性。單個被試的分類結果優于整體被試的分類結果,說明表面肌電信號因人而異,個體之間存在一定的差異性。整體被試的分類結果達到了95%以上,說明同種動作的表面肌電信號在不同個體間存在共性,這正是踝關節動作分類識別未來獲得應用的基礎。
采用表面肌電信號采集器,采集健康人的小腿比目魚肌和腓骨短肌的表面肌電信號,對采集到的表面肌電信號進行歸一化,并將采集到的信號逐條對應踝關節背曲、跖曲、內翻、外翻等4種動作標簽,將歸一化后的原始信號和所對應的標簽號作為CNN的輸入,進行4分類識別。結果表明,本文提出的方法能有效分類出踝關節的上述4種動作,充分說明本文所選肌電信號采集通道的有效性和所設計的卷積神經網絡模型結構的可行性。