一种基于CNN和LSTM的表面肌电信号分类方法与流程

文档序号:18005080发布日期:2019-06-25 23:16阅读:2262来源:国知局
一种基于CNN和LSTM的表面肌电信号分类方法与流程

本发明属于人机接口和养老助残领域,尤其是一种基于cnn和lstm的表面肌电信号分类方法。



背景技术:

表面肌电信号是用表面电极在人体皮肤采集的电信号,这种电信号是肌肉运动在肌肉纤维附近产生的电位差。当人体产生运动意图时,该意图产生于大脑,编码于神经信号中传达到脊髓,二次编码后经神经通路传递到对应的肢体(如上肢),神经信号造成肌肉纤维收缩产生电位差,肌肉牵引骨骼完成该运动。在这个过程中,运动意图最终编码于肌肉纤维收缩产生的电信号里。通过对该信号解码,即可以获得最初的运动意图,从而控制外部的机械。和直接解码脑信号以及神经信号相比,肌肉电信号更接近于动作实施的阶段,包含的信息更精确,信噪比更高,采集更方便。

机器学习是解码表面肌肉电信号的一种主要方法。该方法包含两个阶段:特征提取和在特征空间里的分类。传统的特征提取主要分为时域特征、频域特征和时频域特征,其中时频域特征的效果最好。但是现有的分类方法仅使用传统的手工提取特征,在分类精确度上仍有进一步提高的空间。



技术实现要素:

本发明的目的在于克服上述现有技术的缺点,提供一种基于cnn和lstm的表面肌电信号分类方法。以提高表面肌电信号的多分类精度。

为达到上述目的,本发明采用以下技术方案予以实现:

一种基于cnn和lstm的表面肌电信号分类方法,包括如下步骤:

步骤1:使用滑动窗口将时间序列转化成为“数据-标签”对;

步骤2:在每一个时间窗口内,对表面肌电信号应用汉明窗口并使用快速傅里叶变换计算时频谱spectrogram;

步骤3:将时频谱数据沿时间轴方向叠加整合,并送入卷积神经网络,完成局部空间高维特征提取,得到高维特征;

步骤4:将高维特征沿数据叠加维度展开,恢复为时间序列,并送入长短时记忆网络,提取序列特征;

步骤5:将序列特征送入全连接网络,进行特征提取和整合,得到充分提取的高维特征;

步骤6:将充分提取的高维特征送入softmax函数得到最终的分类结果。

本发明进一步的改进在于:

所述步骤2中表面肌电信号来自ninapro公开数据集。

所述表面肌电信号包含50种不同手部动作。

所述50种不同手部动作包含17种基本动作、23种功能性动作、9种发力模式以及1种休息姿势。

步骤3中卷积神经网络使用relu作为激活函数,使用随机梯度下降法对网络参数进行调整,使用交叉熵crossentropy作为损失函数,得到高维特征。

与现有技术相比,本发明具有以下有益效果:

本发明结合了传统的物理特征提取和神经网络的有点,以充分提取表面肌肉电信号中的有效信息进行手势识别,以卷积神经网络来提取空间信息,以长短时记忆网络来提取序列信息,提升了基于表面肌电信号的多手势识别的精度。通过以表面电极采集的肌肉电信号(表面肌电semg)作为输入,使用传统手工提取特征作为预处理,使用卷积神经网络作为特征提取器提取临近范围的局部空间特征,使用长短时记忆网络(lstm)作为序列特征提取器提取时间序列中的序列信息,通过全连接网络获得最终的分类结果,完成整个操作。

【附图说明】

图1为本发明的方法框架图;

图2为本发明的卷积神经网络原理图;

图3和图4为本发明的长短时记忆网络原理图。

【具体实施方式】

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,不是全部的实施例,而并非要限制本发明公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要的混淆本发明公开的概念。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

下面结合附图对本发明做进一步详细描述:

参见图1,本发明一种基于cnn和lstm的表面肌电信号分类方法,包含以下步骤:

(1)使用滑动窗口将时间序列转化成为“数据-标签”对;

(2)在每一个时间窗口内,对表面肌电信号应用汉明窗口并使用快速傅里叶变换计算时频谱spectrogram;其中表面肌电数据来自网络上的ninapro公开数据集,该数据集包含来自40个被试的50种不同手部动作。

17种基本动作包括如下:

1.伸展拇指;2.伸展食指和中指;3.伸展拇指、食指和中指;4.拇指蜷缩至小拇指处;5.五指张开并伸展;6.握拳;7.伸展食指;8.五指并拢并伸展;9.五指张开、伸展并沿中指逆时针旋转;10.五指张开、伸展并沿中指顺时针旋转;11.五指并拢、伸展并沿小拇指逆时针旋转;12.五指并拢、伸展并沿小拇指顺时针旋转;13.手腕下压;14.手腕上扬;15.五指并拢,手腕径向顺时针旋转;16.五指并拢,手腕径向逆时针旋转;17.握拳,手腕上扬;

23种功能性动作包括如下:

1.抓握大直径圆筒;2.抓握小直径圆筒;3.钩形抓握;4.伸展食指抓握;5.抓握中等直径圆筒;6.拇指、食指成环,其它手指伸展,进行抓取;7.除小拇指外,用其余手指的指尖抓取细棍;8.用所有手指抓握细棍;9.写字;10.握住网球;11.用大拇指、食指和中指握住网球;12.五指成爪握住半个网球;13.大拇指、食指、中指三指成爪握住半个网球;14.大拇指和食指捏住物体,其余手指伸展;15.拇指和食指的指尖捏住物体,其余手指伸展;16.大拇指、食指、中指、无名指四指握住物体;17.食指弯曲与大拇指夹住名片,其余手指蜷缩;18.四指并拢与大拇指平行握住书籍;19.五指沿边缘握住盘子,大拇指指向盘心;20.五指张开握住光盘;21.大拇指、食指和中指拧瓶盖;22.转动螺丝刀;23.食指伸展握住小刀;

9种发力模式包括如下:

1.小拇指用力伸展;2.无名指用力伸展;3.中指用力伸展;4.食指用力伸展;5.大拇指用力并拢;6.大拇指用力伸展;7.食指和小指同时用力伸展;8.中指和无名指同时用力伸展;9.食指和大拇指同时用力伸展

1种休息姿势为五指自然放松。

(3)为缩短网络训练时间,将时频谱数据沿时间轴方向叠加整合进行批处理,并送入卷积神经网络,完成局部空间高位特征提取,得到高维特征;另外原始的表面肌电数据被送入卷积神经网络中。该卷积网络使用relu作为激活函数,使用随机梯度下降法对网络参数进行调整,使用交叉熵crossentropy作为损失函数,获取最终的卷积特征提取网络。

如图2所示,用固定尺寸的卷积核在输入数据上与相应区域的数据做卷积运算,卷积核在输入数据上移动,从而得到当前卷积层的输出,并作为下一卷积层的输入。

(4)将高维特征沿数据叠加维度展开,恢复为时间序列,并送入长短时记忆网络,提取序列特征;

如图3和图4所示,图3显示的是一个序列输入,通过更新长短时记忆网络的隐状态来得到一个序列输出。图4显示的是隐状态更新的细节:

以上一个节点输出的隐状态ht-1和序列中的当前元素向量xt作为输入,输出一个中间变量ft:

ft=σ(wf·[ht-1,xt]+bf)

其中,σ是sigmoid函数,下同。

以上一个节点输出的隐状态ht-1和序列中的当前元素向量xt作为输入,输出中间变量it和

it=σ(wi·[ht-1,xt]+bi)

以上一个节点输出的元胞状态ct-1和之前两步中得到的中间变量ft,it和为输入,输出本节点的元胞状态ct:

其中*代表卷积运算,下同。

以上一个节点输出的隐状态ht-1和序列中的当前元素向量xt以及上一步计算出的本节点的元胞状态ct作为输入,输出本节点的隐状态ht:

ot=σ(wo·[ht-1,xt]+bo)

ht=ot*tanh(ct)

(5)将序列特征送入全连接网络,进行进一步的特征提取和整合,得到充分提取的高维特征;

(6)将充分提取的高维特征送入softmax函数得到最终的分类结果。

本发明通过以表面电极采集的肌肉电信号(表面肌电semg)作为输入,使用传统手工提取特征作为预处理,使用卷积神经网络作为特征提取器提取临近范围的局部空间特征,使用长短时记忆网络(lstm)作为序列特征提取器提取时间序列中的序列信息,通过全连接网络获得最终的分类结果,完成整个操作。本发明的核心基于深度学习算法,通过深度特征在传统的手工提取特征之上进行进一步的分析和提取,与仅使用手工提取特征(经过主成分分析pca降维的时频谱spectrogram)与传统分类器(支持向量机)的方法(下称传统方法)相比明显提高了分类解码的精确度。所有动作的整体识别准确率达到79.329%(传统方法的准确率为77.167%),其中基本动作的识别准确率可达到80.929%(传统方法的准确率为75.740%),发力模式识别准确率达到89.918%(传统方法的准确率为88.150%),功能性动作的识别准确率可达到67.139%(传统方法的准确率为67.610%)。本方法可以在表面肌电信号作为输入信号时,精确解码出手部运动的信息,辅助设计灵巧的残疾人假肢和灵巧的外骨骼系统,对养老助残的设备研究和人机接口的发展起到重要作用。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1