王 斐, 魏晓童, 秦 皞
(东北大学 机器人科学与工程学院, 辽宁 沈阳 110169)
下肢助力外骨骼是一种供人穿戴的人机一体化机械装置.随着生物电信息技术的发展,通过脑电、肌电等生物电信号来实现人与协同对象和外界环境的交流,将生物电蕴含的人体运动信息作用于机器人,是人机交互实现的新途径[1-2].表面肌电信号(sEMG)是从肌肉表面通过电极记录的生物电信号,与人体的期望动作直接相关,具有分辨率高、采集技术成熟、采集无创等优点,是现代人机交互接口技术中最常用的生物电信号[3].
下肢连续运动预测对于下肢外骨骼运动控制具有重要意义.基于生物电的运动估计方法,可采用生物力学模型[4]、神经网络和高阶多项式拟合等方法构建表面肌电信号与运动量之间的函数关系[4-5].生物力学建模方法从肌骨模型出发,建立表面肌电信号与关节运动量之间的关系,对于人体在行走过程中所涉及到的下肢多种肌群,因内部共同作用的过程复杂,使生物力学建模方法的实用性降低[6].因此,基于神经网络回归方法建立的表面肌电信号与运动量之间的映射关系就显得简单快捷[7].
对于采用建立sEMG和关节运动量的回归模型进行运动信息预测的研究,国内外学者已有不少相关研究进展,如Cheron等应用的DRNN网络估计下肢关节角度、角速度等量[8],Kwon等应用ANN模型对上肢肩关节和肘关节角度进行估计[9],Zhang等应用BP神经网络模型估计下肢踝关节、膝关节、髋关节角度[10].但传统神经网络模型训练时间长,模型精度较低,没有规范方法定义合适的网络结构[11],无法满足正常行走助力外骨骼的准确性及实时性的要求.
基于sEMG的连续运动估计对于穿戴型外骨骼的控制意义重大,但仍存在精度不高、实时性差等问题[12],严重制约了人机交互的发展.LSTM是一种时间递归神经网络,适合学习时序相关的数据[13],同时适用于处理和预测时间序列,能够改善梯度消失的现象,增强网络可靠性,对于时间序列相关的肌电连续运动具有很好的预测效果.因此,本文运用新型神经网络LSTM提高了预测精度[14],同时对特征信号进行降维处理,以奇异值分解矩阵特征值的误差算法,将输入特征的维度进行标准化处理[1],提高了系统的实时性.对比传统网络训练方法SVM及BP在助力外骨骼实验平台上的应用,证明了本研究方法的准确性和实时性.
实验选取5名平均年龄为23岁的健康男性受试者参与数据采集实验,被试者分别进行下肢跑步机固定步速行走,3种步速设置分别为2,3,5 km/h,采集3种步速下的sEMG及同步信号髋、膝关节角度数据,每人采集3组,采集时长为5 min,训练数据为4 min,测试数据时长为1 min.肌电信号采用ErgoLAB肌电采集系统进行采集,关节角度采用IMU进行采集,肌电采样频率为1 kHz,IMU采样频率为250 Hz,采集实验如图1所示.其中肌电选择下肢7个位置进行肌电信号的测量,按标号顺序分别为股直肌、股内侧肌、胫骨前肌、腓肠肌内侧、股二头肌、半腱肌、股外侧肌,角度采集为3个IMU传感,各传感器编号与所对应的位置如表1所示.
图1 IMU与sEMG传感器分布
将下肢骨骼肌肉模型简化为三连杆模型,三关节角度如图2所示.其中髋、膝、踝三个关节对应的角度分别为θ1,θ2,θ3,踝关节角度为足心垂直坐标线与小腿线的夹角,膝关节角度为大腿与小腿的补角,因受试者是在跑步机上运动,故设定为躯干始终直立行走,所以髋关节角度简化为大腿延长线与重力线的夹角.实验结果用实验室搭建的如图3所示的助力外骨骼平台测试.
表1 各传感器对应位置
图2 下肢骨骼肌肉简化模型
sEMG信号的处理过程包括滤波去噪和提取特征两个环节.预处理过程采用IIR数字带通滤波器进行去噪,主要滤除10~200 Hz以外的信号和50 Hz工频干扰.由于采集到的肌电信号是一个时间序列信号,具有复杂的非线性,为了保证数据的连续性,采用设置时间窗的方式提取特征,进而进行运动估计,如式(1)所示,Nt为时间窗长度,xi为时间窗内第i个sEMG信号值.肌电信号的特征提取通常有时域方法、频域方法和时频域方法,为降低计算复杂度,本文选用时域方法进行特征提取.所采用的时域特征为平均绝对值(MAV)、零穿越次数(ZC)、波形长(WL)、均方根(RMS)、肌肉激活度(ACT).
图3 助力外骨骼实验平台
1) 平均绝对值 (MAV).sEMG在幅值上表现出很强的随机性,且幅值的正负通常具有对称性.绝对值运算将信号的幅值全部转换成正值,可以直观地反映肌肉的收缩力量,绝对值均值越大,则说明肌肉的收缩强度越大.滑动窗口下绝对值均值的数学表达式如下:
(1)
2) 零穿越次数(ZC).零穿越次数描述一段时间内信号幅值变化过程中穿过x轴的次数,该特征从时域的角度对信号的频域特征进行估计,滑动窗口下过零点的数学表达式为
(2)
(3)
其中,|xi-xi+1|>ε,引入ε是为了防止小值噪声.
3) 波形长(WL).波形长是描述一段时间内信号变化幅值累加之和,是信号复杂度的一种量测,其表达式为
(4)
4) 均方根(RMS).RMS是信号能量的一种量测,其表达式为
(5)
(6)
预处理后的sEMG信号与肌肉激活程度之间的关系通过式(7)的非线性函数表示.式中a(t)表示t时刻的激活度:
(7)
式(7)得到的是每个时刻的肌肉激活度,为了保证与其他时域特征的维度相同,采用时间窗内的均值作为肌电信号的特征,其计算式为
(8)
根据上述描述取股内侧肌在运动过程的信号处理为例,选择Nt=100的时间窗来计算肌电信号的时域特征,其数据特征图如图4所示.
图4 sEMG信号及其时域特征
LSTM是一种特殊的RNN类型,通过添加门限,包括输入门限、遗忘门限和输出门限,使得自循环的权重是变化的,解决了RNN在处理时间间隔或较远节点数据(时间序列上距离较远节点)时会遇到巨大的困难所导致的梯度消失和梯度膨胀的问题.图5为LSTM模型t时刻的时间序列处理模块CELL示意图,LSTM的计算方法与简单地计算输入信号的加权和并施加非线性函数的递归单元不同,LSTM的每个模块具有保存t时刻ct的记忆单元.模块的输出ht如式(9)所示:
ht=ottanh(ct).
(9)
其中ot是调整当前输入xt和前神经元信息ht-1的输出门,其输出门由下式计算:
ot=σ(Woxt+Uoht-1+Voct).
(10)
其中σ为sigmoid函数,输出0到1之间的数值,用来描述每个部分有多少数据量可以通过.Vo是一个对角矩阵,代表计算输出控制的中间计算量,无特殊含义[2].
(11)
新的记忆单元的计算方法为
(12)
记忆单元的内容由遗忘门ft进行调整,并且新的记忆单元的内容被添加到记忆单元的程度由输入门ii进行调整,其计算公式为
(13)
其中Vf和Vi为对角阵,代表计算遗忘控制与输入控制的中间计算量,无特殊含义[3].本研究中xt为时间序列的肌电时域特征值.
图5 LSTM处理t时刻的CELL模型示意图
下肢三关节角度的预测设计肌群较为复杂,选择多个特征进行提取时维度较大,其实时性受到影响.本研究采用主元分析(PCA)算法对特征矩阵进行降维,若定义X={xk}是一个特征矩阵的样本集,其中xk是q维样本向量,可获得xk的任意两维,如Y=xki,Z=xkj的协方差,其计算式为
(14)
q为xk的样本数量,进而构建协方差矩阵:
(15)
对C进行奇异值(SVD)分解:
C=USV.
(16)
其中:U为q阶的左奇异值;V为q阶的右奇异值;S为特征值矩阵,具体分解算法这里不再陈述[6,14],S矩阵其对角线以外的值均为0,本研究选取的主元数量参照公式为
(17)
其中:m为欲求取的主元数量;η为PCA的误差值.根据预测效果调整η的值,进而选择特征降维维度m,将C的特征向量的前m个主成分作为转换矩阵C,用数据协方差矩阵右乘转换矩阵获得降维后的网络输入数据特征.
本研究的目的是提出不同运动速度下基于肌电信号进行关节连续运动预测的方法,通过5名受试者的实验验证方法的有效性及通用性.在训练阶段,分别从每个时间窗的7块肌肉,5个特征值,提取出35维肌电特征值和三维关节角度数据中取前4 min样本组成训练数据集,应用SVM,BP神经网络及LSTM网络进行训练,其参数应用网格搜索法参数寻优,找到最佳网络参数,其中SVM选择高斯核函数(RBF),代价函数C=0.1,对应的参数γ=0.05.BP网络为4层,输入、输出分别为35维肌电特征值和3维的关节角度值,隐藏层神经元个数选定为50和20,神经网络的隐层和输出层的传输函数均为线性整流函数(ReLU).对预测结果进行平滑滤波处理,以均方根误差作为评估预测方法的准确性,得到最优预测结果,因3个关节角度值相差较小,所以选择3 km/h步速下的膝关节角度为例,进行对比分析,其三种网络下的膝关节实验预测结果如图6所示,按顺序分别为SVM,BP,LSTM的训练结果.
为验证所研究方法的准确性,采用5名受试者在3 km/h的匀速运动时的数据为例,利用SVM,BP神经网络及LSTM网络训练进行膝关节的预测误差对比分析.由表2可见,5名受试者用SVM预测髋、膝、踝三个关节角度均方根误差分别为8.76°,7.65°,9.50°;BP神经网络预测三关节角度均方根误差分别为7.82°,8.17°,9.01°;LSTM网络训练预测的三关节角度均方根误差分别为5.87°,6.28°,7.56°.尽管重复实验预测结果存在一定的波动性,但从表2中可以明显看出利用LSTM神经网络的预测误差最小,因此可以得知LSTM算法的关节角度预测准确性明显高于SVM,BP神经网络.
图6 SVM,BP,LSTM膝关节角度估计实验结果
本实验采用LSTM网络为最终网络,对肌电信号进行滤波与特征提取后,对每种特征进行单独归一化处理,以保证每种特征的训练权重,其中优化器选择AdamOptmizer,其学习率learning_rate=0.006,批尺寸batch_size=20,隐藏层状态变量State的维度CELL_SIZE=10,最终下肢髋、膝、踝三个关节角度在3km/h的步速下的预测结果如图7所示.
本研究对5名受试者在稳定行走过程的各关节预测精度进行了统计.5名被试者的下肢髋、膝、踝三个关节的平均预测的均方根误差分别为5.87°,6.28°,7.56°,实验结果证明对于有规律性的适速行走,基于LSTM的预测是可行的.
表3评估训练后模型的实时性,以LSTM估计角度为例,整个评估过程中,评估期间的输出时间为保留模型参数后的原始sEMG估计角度值.经过多次实验分析与验证,当式(17)中η的 取值为0.002时,有效保留原始估计角度(不采用降维的预测角度值)的峰值数据,同时,可达到原始预测数据准确度的90%以上,降维维度m=10,测试实验是在PC主频2.5 GHz的PyCharm2017环境下运行,共进行15组估计,每组预测值为1 min的数据(600个样本),原始估计耗时和PCA降维后估计耗时及膝关节均方根误差(误差占比相似,以膝关节为例)的对比分析如表3所示.
表2 SVM,BP,LSTM均方根误差统计
图7 LSTM下髋、膝、踝角度预测结果
表3 神经网络实时性对比评估
由表3可知,采用PCA降维后的LSTM角度预测的实时性获得了明显提高,其单次运动估计的平均耗时增加了0.5 ms左右,有效地提高了网络预测的实时性.
本研究以助力外骨骼为研究背景,提出了基于LSTM及表面肌电信号的下肢3个关节的连续运动估计,并通过PCA降维处理提高了连续运动估计系统的应用实时性.通过实验结果和统计数据,证明了LSTM在处理时间序列肌电信号的连续运动估计具有更好的精确性及稳定性,同时与传统网络BP, SVM的训练方法相比,获得了更高准确度的髋、膝、踝三个关节的连续运动估计.在实验室助力外骨骼平台上,实验者穿戴外骨骼能够保持适速行走,实验结果表明:基于sEMG和LSTM的下肢多关节连续运动估计,尤其是在规律性的适速行走预测时是可行的.研究表明通过肌电预测关节运动是可行的,为神经网络估计关节连续运动量对于下肢助力外骨骼的应用提供了又一新的理论依据.