基于卷积神经网络的踝关节运动模式识别
2023-11-21朱明霞
朱明霞,叶 晔
(安徽工业大学 机械工程学院,安徽 马鞍山 243002)
近年来,肌肉-计算机接口在上肢运动识别领域中得到了广泛应用[1-3],但在踝足运动中还有待发展。踝关节运动的模式识别,可以作为踝关节康复机器人的控制指令[4-5],用以对踝关节运动障碍的患者提供康复治疗。踝关节运动的模式识别,还可以用于在手势不方便的场合时用“脚势”来代替,比如在舞台上,吉他手想要的灯光效应就可以用“脚势”来被感应。由此可见,对于踝关节的运动模式识别有着很大的现实需求。
在模式识别领域,特别是手势识别领域,传统的模式识别步骤是先对采集到的表面肌电信号进行预处理和特征提取,再进行模式识别[6]。在特征提取中,人工提取特征耗时长,需要进行反复地实验,以找到最能表征该动作的特征值。随着计算机性能的不断发展,深度学习网络应运而生。在深度学习网络中,卷积神经网络(Convolution Neural Network,CNN)具有提取特征的功能。它的出现,使得研究者们从主要关注特征工程转移到特征学习上[7],研究者们可以专注网络模型的设计。
CNN最初用在手写数字的识别中,随后在图像识别领域取得了巨大的成功[8]。在肌电信号分类领域中,一些研究人员已经提出了基于CNN的手势识别模型[9-10],在踝关节运动模式分类中,使用CNN模型还较少。本文使用市场现有的表面肌电信号采集器,采集踝关节背曲、跖曲、内翻、外翻的动作信号,将原始信号输入到CNN,使用CNN对原始踝关节4种动作信号进行特征提取和模式识别。
1 材料与方法
选择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,进行下一个动作的采集。每次动作之间幅度和频度大致相同。
2 卷积神经网络分类模型设计
2.1 卷积神经网络
CNN一般会包含卷积层、池化层和全连接层[12]。每一层的设计均有不同的目的。卷积层和池化层会交替出现,以达到特征提取的目的。特征提取后输入到全连接层再进行分类。CNN通过反向传播优化算法来不断更新网络学习的权重和偏置,这与传统神经网络相似。CNN的输入与传统全连接神经网络有所不同,它的每一层都会使用同一个权重和偏置,即“权值共享”,这会大量减少网络中需要更新的参数,从而提升计算速度,并减少了出现过拟合问题的概率。
2.2 模型结构
为了对踝关节运动中肌电信号进行分类,考虑到肌电信号数据量小,且输入数据为两通道的原始肌电信号。将输入数据信号当成图片信息来处理,设计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 卷积神经网络的结构和参数
2.3 实验数据的准备
每个被试采集4种踝关节动作,每种动作信号50组数据,每组数据的采样点为3 072,在进行归一化前,去除信号开始后的前72个点后为3 000个采样点。对原始数据进行归一化,将每组信号所具有的3 000个采样点缩放到[0,1]的范围内。
对于处理后的信号,每个被试4种动作共200组信号,每组信号有两个通道,每个通道有3 000个采样点,将数据转换成200*3 000*2的三维数组形式。CNN最终输出类别数:背曲是1类,跖曲是2类,内翻是3类,外翻是4类。
3 实验结果与讨论
卷积神经网络选用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 结 语
采用表面肌电信号采集器,采集健康人的小腿比目鱼肌和腓骨短肌的表面肌电信号,对采集到的表面肌电信号进行归一化,并将采集到的信号逐条对应踝关节背曲、跖曲、内翻、外翻等4种动作标签,将归一化后的原始信号和所对应的标签号作为CNN的输入,进行4分类识别。结果表明,本文提出的方法能有效分类出踝关节的上述4种动作,充分说明本文所选肌电信号采集通道的有效性和所设计的卷积神经网络模型结构的可行性。