一种基于表面肌电信号判断手部疲劳度方法

文档序号:25911520发布日期:2021-07-16 21:51阅读:520来源:国知局
一种基于表面肌电信号判断手部疲劳度方法

1.本发明属于信号检测与运动医学领域,具体设计一种基于表面肌电信号的手部疲劳判断方法。


背景技术:

2.当代社会,许多人选择利用电脑辅助完成日常的生活和学习。但当长时间使用键盘、鼠标时,会造成手腕、手指关节的酸痛,成了所谓的“鼠标手”。这些慢性劳损性损伤,既不利于健康,也影响了日常生活和办公效率,并且恢复是非常缓慢甚至是不可康复的。因此,对其的预防需引起高度重视。
3.表面肌电信号(semg)是从肌肉表面通过电极记录下来的反映神经肌肉系统活动的一维时间序列的非平稳生物电信号,可以反映神经、肌肉的功能状态,所以通过semg研究肌肉疲劳是一个有效途径。
4.本方法主要利用深度学习实现基于手部疲劳判断分类的测定方法,通过主观感受及分析肌电信号的幅值、平均功率、平均功率频率、中位频率多方面综合判定手部所处状态,从而达到对手部疲劳状态的精准分类。


技术实现要素:

5.发明目的:针对当前手部疲劳测定技术方法的缺失,本发明提供了一种基于表面肌电信号疲劳判定方法,该方法首先将从arudino采集到的数据以表格形式保存,并做归一化处理得到特征值矩阵。之后将全部数据集分成34个batch,每个batch大小为50送入一层卷积神经网络进行训练,同时显示预测的准确率、损失率等信息并保存最优模型,共训练20个epoch。最后将实时采集到的肌电信号数据送入训练得到的最优模型进行预测,可以得到相应的疲劳程度结果。
6.技术方案:本发明采用如下技术方案:
7.基于表面肌电信号的手部疲劳测量方法,包括如下步骤:
8.(1)建立用于训练及测试的表面肌电信号数据集;
9.(2)进行数据读取与处理;
10.(3)搭建训练的网络模型;
11.(4)将训练集放入神经网络训练;
12.(5)模型应用与预测;
13.进一步地,步骤(1)具体为:
14.通过表面肌电信号采集装置,采集手部的表面肌电信号,并依据主观感受及检测指标对信号进行正常、轻度、重度疲劳划分。
15.进一步地,步骤(2)具体为:
16.将采集到的肌电信号以.csv格式保存于二维矩阵中,并对数据做归一化处理得到用于训练的特征值。转换标签为one

hot形式,分别从正常、轻度和重度肌电信号数据中读
取一组数据并绘制图像显示,得到的图像见图1。
17.之后进行数据打乱操作,保证训练效果,采用生成器的方式读取数据,按batch读取以加快训练速度。
18.进一步地,步骤(3)具体为:
19.采用基于keras的一维cnn方式构建神经网络来解决此多分类问题:
20.第一个1d cnn层:第一层定高度为3(也称为卷积核大小),步长为1的滤波器(也称为特征检测器)。只有定义了一个滤波器,神经网络才能够在第一层中学习到一个单一的特征。这可能还不够,因此我们会定义16个滤波器。这样我们就在网络的第一层中训练得到16个不同的特性。第一个神经网络层的输出是一个57x16的矩阵。输出矩阵的每一列都包含一个滤波器的权值。在定义内核大小并考虑输入矩阵长度的情况下,每个过滤器将包含57个权重值。
21.第二个1d cnn层:第一个cnn的输出结果将被输入到第二个cnn层中。我们将在这个网络层上再次定义16个不同的滤波器进行训练。按照与第一层相同的逻辑,输出矩阵的大小为55x16。
22.最大值池化层:为了减少输出的复杂度和防止数据的过拟合,在cnn层之后经常会使用池化层。此处选择大小为2的池化层。这意味着这个层的输出矩阵的大小只有输入矩阵的1/2。
23.后续的6个1d cnn层:为了学习更高层次义了的特征,这里又使用了另外6个1d cnn 层。这6层之后的输出矩阵是一个7x64的矩阵。
24.flatten层:作为中间层来链接卷积神经网络和全连接层,输出矩阵的大小为1x192。每个特征检测器在神经网络的这一层中只剩下一个权重。
25.使用softmax激活的全连接层:最后一层将会把长度为192的向量降为长度为3的向量,因为我们有3个类别要进行预测(即正常、轻度和重度)。这里的维度下降是通过另一个矩阵乘法来完成的。softmax被用作激活函数。它强制神经网络的所有输出值的加和为一。因此,输出值将表示这3个类别中的每个类别出现的概率。
26.具体的神经网络结构图见图2。
27.进一步地,步骤(4)具体为:
28.将训练数据灌入神经网络,一个batch有20个数据,一轮训练25个batch,共500 个数据,总共训练20轮,输出每轮的训练结果,选出效果较好的网络。
29.进一步地,步骤(5)具体为:
30.将实时采集到的肌电信号数据传入上一步选出的最优网络进行预测,并将结果通过串口发送回给arudino点亮代表对应疲劳状态的led灯。
31.本发明与现有技术对比,具有以下技术效果:
32.1.本发明设计了一个手部疲劳的测定方法,能够判定手部的疲劳状态。由于网络层数少,网络运行效率极高,消耗算力小。利用不断扩大采集的数据库和网上相关数据库,为后续的研究工作提供数据来源。
33.2.本发明在应用于二分类的一维卷积层算法上进行改进,经过多次调参后选择使用7 层卷积层来提取特征值,每两层卷积层后添加一层最大池化层来保留主要特征。每层卷积层使用多分类任务常用的激活函数双曲正切函数tanh来提高神经网络对模型的表达
能力。
附图说明
34.图1是采集的三类肌电信号示意图。
35.图2是本发明中神经网络结构图。
具体实施方式
36.本发明提供的基于表面肌电信号判断手部测量方法,主要包括以下步骤:
37.(1)建立用于训练及测试的表面肌电信号数据集、读取处理采集到的数据、使用一维卷积网络搭建训练的网络模型、将训练集放入神经网络训练、使用最优模型对当前采集到的肌电信号进行实时预测。
38.本方法实施对以上基本方案作进一步优化:
39.(1)将激活函数从relu修改为tanh:
40.relu函数表达式:
41.f(x)=max(0,x)
42.tanh函数表达式:
[0043][0044]
对比两种激活函数可以得到,梯度变化更快,也就是在训练过程中收敛速度更快,可以提高多分类模型训练的效率。而relu函数虽然计算速度和收敛速度也较快,但是存在某些神经元可能永远不会被激活的问题。
[0045]
(2)减少神经网络的层数,调整参数:
[0046]
原先设置的神经网络层数为8层卷积层,4层最大池化层,经过分析后发现此组参数设置会导致最后的长度无法再进行缩小,导致判断失误,故降低神经网络层数可以得到较好的训练效果。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1