曹書豪 許成哲
【摘 要】本文提出了一種基于深度學習模型的表面肌電信號手勢動作識別算法,采用瑞士Ninapro公開數(shù)據(jù)庫,通過2階巴特沃斯濾波器進行帶阻濾波對原始信號進行預處理,并利用標準偏差濾除無信號段,采用時間窗重疊的方式將原始數(shù)據(jù)擴充至符合深度學習模型訓練的數(shù)據(jù)量。最后將預處理后的數(shù)據(jù)輸入34層ResNet深度學習模型并得出識別結(jié)果。實驗結(jié)果顯示本文提出的算法較比同類論文取得了更高的識別精度,在52手勢動作分類識別準確率達到92.66%,驗證了本算法的有效性。
【關(guān)鍵詞】深度學習;表面肌電信號;手勢動作識別
中圖分類號: TP391.41文獻標識碼: A文章編號: 2095-2457(2019)01-0118-003
0 引言
表面肌電信號是通過表面電極記錄下來的肌肉運動生物電信號,它可以反映神經(jīng)、肌肉的功能狀態(tài),近年來隨著科學技術(shù)的發(fā)展,國內(nèi)外對本課題研究也逐漸深入,使得其在臨床醫(yī)學、運動醫(yī)學、康復醫(yī)學及體育運動等領(lǐng)域被廣泛應用。
2014年Jongin Kim等人[2]以四種手勢動作的PSD做為特征輸入支持向量機進行識別,識別率達91.97%。Manfredo Atzori等人[3]采用RMS、HIST等特征對Ninapro提供的手勢動作進行分類識別,其中利用隨機森林神經(jīng)網(wǎng)絡進行52動作分類的最高精確率達75.27%。2017年Stefano Pizzolato等人[4]利用RMS等特征對Ninapro數(shù)據(jù)庫提供的DB子數(shù)據(jù)庫中27個人的52個手勢動作進行分類識別,最高分類精度達69.13%。2017年浙江大學杜宇[5]將深度學習模型運用到了手勢識別當中,采用基于深度卷積網(wǎng)絡的方法,通過對Ninapro數(shù)據(jù)庫提供的手勢動作進行對比實驗,訓練好的分類器逐幀的對輸入的肌電圖像進行分類,手勢動作分類結(jié)果為識別出的手勢標簽中所占比例最高的標簽。
針對現(xiàn)有方法的不足,本文提出了一種基于深度學習模型的表面肌電信號手勢動作識別算法,將預處理后的數(shù)據(jù)輸入34層ResNet深度學習模型并得出識別結(jié)果。實驗結(jié)果顯示本文提出的算法較比同類論文取得了更高的識別精度,驗證了本算法的有效性。
1 表面肌電信號的預處理
1.1 Ninapro數(shù)據(jù)庫簡介
Ninapro[1]是一個針對基于稀疏多通道肌電信號的手勢識別的標準數(shù)據(jù)集,主要用于主動假肢的研發(fā)。本文主要采用DB1及DB4進行對比實驗。其中DB1包含27個完整個體的52種手勢動作,如圖1所示,每人毎種手勢重復10次,DB4包含10人的52種手勢,采樣頻率為100Hz。在采集過程中,要求受試者右手進行重復動作,每個手勢重復持續(xù)5秒,然后休息3秒,每人每種手勢重復6次。DB4包含10個完整個體的52個手勢動作,采集協(xié)議同DB1一致,采樣頻率為2000Hz。
1.2 表面肌電信號的濾波處理
表面肌電信號是一種非常微弱的信號,其頻譜范圍為0-1000Hz之間,功率譜的最大頻率隨肌肉而定,通常在30~300Hz之間,表面肌電信號的主要能量集中在300Hz以下。因此本文采用2階巴特沃斯濾波器進行帶阻濾波,阻帶邊界為45-55Hz。該濾波器的平方幅度響應函數(shù)定義為公式(1):
公式中N為濾波器的階數(shù),是正整數(shù),是該低通濾波器截止頻率,在設計低通濾波器的過程中,從式(1)可以看出選擇和階次N是設計濾波器的關(guān)鍵。根據(jù)信號的頻譜特性確定通頻帶的截止頻率、阻頻帶的截止頻率、通帶內(nèi)最大限度的衰減和阻帶內(nèi)最小衰減。然后利用如下公式(2)、公式(3)得出階次N和截止頻率。
Ninapro數(shù)據(jù)庫在數(shù)據(jù)處理過程中發(fā)現(xiàn),部分信號存在幅值極低的情況,本文利用STD對原始數(shù)據(jù)進行篩選,每0.05秒截取一段信號,如STD大于300則保留該段信號,如小于300則濾除該段信號,重復此操作直至全部信號篩選完畢為止。濾除無信號段之后的表面肌電信號如圖2所示。
1.3 表面肌電信號的擴充
以Ninapro數(shù)據(jù)庫子集DB4為例,本文采用時間窗重疊的方式將原始數(shù)據(jù)庫進行擴充,選取信號長度為0.5秒,時間窗重疊為0.3秒的方式將DB1中8424個原始信號擴充至229276個,DB4中3120個原始信號擴充至25249個,這樣基本滿足了深度學習對于樣本數(shù)量的要求,在一定程度上減小了數(shù)據(jù)過擬合的可能。
2 表面肌電信號識別方法
2.1 深度殘差網(wǎng)絡
深度殘差網(wǎng)絡是于2015年提出的一種深度學習網(wǎng)絡,簡單的堆疊網(wǎng)絡會導致嚴重的梯度消失問題,在更深的網(wǎng)絡上,精確度達到了飽和,效果反而變差。針對上述情況,ResNet引入了殘差學習來解決深度網(wǎng)絡難以優(yōu)化的問題。形式上看,神經(jīng)網(wǎng)絡實際上是將一個空間維度的向量x,用表示最優(yōu)的映射,讓堆疊的非線性層去擬合另一個映射,此時最優(yōu)映射可以表示為:
H(x)=F(x)-x(4)
假設殘差映射比原映射更易優(yōu)化,那么,在極端情況下就很容易將殘差推至0,這比將映射逼近另一個映射要簡單得多??梢酝ㄟ^在前饋網(wǎng)絡中增加一個“快捷連接”來表示?!翱旖葸B接”跳過一個或多個層,執(zhí)行簡單的恒等映射,既不會增加額外參數(shù),也不會增加計算復雜度,且整個網(wǎng)絡依然可以用反向傳播進行端到端的訓練,殘差塊示意圖如圖3所示:
2.2 基于ResNet殘差網(wǎng)絡的表面肌電信號識別
本文采用基于Python的TensorFlow來設計ResNet殘差網(wǎng)絡,本文選用34層的ResNet,ResNet整體流程框圖如圖5所示:
(1)卷積層。卷積層是一個卷積神經(jīng)網(wǎng)絡中最為重要的部分,卷積層的每一個節(jié)點的輸入只是上一層神經(jīng)網(wǎng)絡的一小塊,本文采用34層ResNet殘差網(wǎng)絡,由于表面肌電信號為一維信號,故這個小塊的大小為1×3,一般來說,經(jīng)過卷積層之后的節(jié)點矩陣會變得更深。
(2)池化層。池化層神經(jīng)網(wǎng)絡不會改變矩陣的深度,但是它可以縮小矩陣的大小,通過池化層,可以進一步縮小最后全連接層中節(jié)點的個數(shù),從而達到減少整個神經(jīng)網(wǎng)絡中參數(shù)的目的。
(3)全連接層。經(jīng)過5輪卷積層和池化層的處理之后,在ResNet中是由全連接層給出最后的分類結(jié)果。我們可以將卷積層和池化層看成信號特征提取的過程,在特征提取完成之后,仍然需要使用全連接層來完成分類任務。
(4)Softmax層。通過Softmax層可以得到當前樣例屬于不同種類的概率分布情況。本文使用的Ninapro數(shù)據(jù)庫當中,DB1和DB4均為52手勢動作分類,故本文選擇52節(jié)點的全連接層和Softmax層。
3 實驗結(jié)果及分析
本實驗平臺CPU采用Inter i7 7800X,GPU采用微星GTX1080Ti,軟件采用TensorFlow(ResNet)。對于每一個手勢動作類別,選取其中的10%測試集,90%作為訓練集。網(wǎng)絡結(jié)構(gòu)選擇為34層ResNet殘差網(wǎng)絡,其中權(quán)重衰減因子0.0001,學習速率初始為0.1,分別在DB1和DB4中進行對比實驗,實驗結(jié)果如表1所示:
我們將文獻[2]-[5]所運用的方法在DB1和DB4中做對比實驗,并將表1中取得的最優(yōu)分類精度與其相比較,實驗結(jié)果如表2所示:
4 結(jié)論及下一步工作
本研究提出了一種基于深度學習模型的表面肌電信號手勢動作識別算法,實驗結(jié)果表明本研究提出的方法較比傳統(tǒng)機器學習方法及現(xiàn)有深度學習方法在表面肌電信號手勢動作的識別率上有了較大提升,在52手勢動作識別的研究中獲得了92.66%的準確率。
本文實驗需要大量的表面肌電信號數(shù)據(jù)支持以及長時間的訓練過程,下一步擬采用精調(diào)參數(shù)的方式對本算法進行調(diào)試,以便取得最佳的識別精度。另外本文提出的算法沒有考慮靜態(tài)手勢和過渡手勢的區(qū)別,兩種動作具有不同的發(fā)力模式,應當區(qū)別對待。未來的工作包括對靜態(tài)手勢和過渡手勢的分別建模,從而更好的學習手勢動作的不同階段中表面肌電信號的靜態(tài)和動態(tài)特征。
【參考文獻】
[1]Atzori M, Gijsberts A, Heynen S, et al. Building the NinaPro Database: a Resource for the Biorobotics Community[C]//IEEE Ras & Embs International Conference on Biomedical Robotics & Biomechatronics. IEEE, 2012.
[2]Atzori M, Gijsberts A, Castellini C, et al. Electromyography data for non-invasive naturally-controlled Robotic hand prostheses[J]. Nature, 2014, 1.
[3]Kim J, Cho D, Lee K J, et al. A Real-Time Pinch-to-Zoom Motion Detection by Means of, a Surface EMG-Based Human-Computer Interface[J]. Sensors, 2014, 15(1):394-407.
[4]Pizzolato S, Tagliapietra L, Cognolato M, et al. Comparison of six electromyography acquisition setups on hand movement classification tasks[J]. Plos One, 2017, 12(10):e0186132.
[5]Du Y, Jin W, Wei W, et al. Surface EMG-Based Inter-Session Gesture Recognition Enhanced by Deep Domain Adaptation[J]. Sensors, 2017,17(3):458.