基于躯干肌肉活动监测的手部行为识别

2021-05-29 08:17王庆明
科学技术与工程 2021年11期
关键词:电信号躯干手部

王 琦, 王庆明

(1.上海电机学院设计与艺术学院,上海 201306;2.华东理工大学机械与动力工程学院,上海 200237)

近年来,基于手部肌电信号来识别上臂和手部行为的研究进步很快,能获得较高的分类精度,且用途广泛。Englrthart等[1]引入时域特性,使用10种常用的分类算法对11类运动进行分类,实现了基于肌电模式分类的假肢控制。Taylor等[2]、Alkan等[3]把肢体姿态识别技术用于假肢控制和可穿戴设备。随着算法的进步,为抑制梯度变化的影响,解决长时间信号的记忆问题。部分基于肌电信号的研究利用长短时神经网络(long short term memory network,LSTM)和条件向量场(conditional random field,CRF),把表面肌电(surface electromygraphy,sEMG)当作生物信号源,用于交互控制、诊断、康复等领域,提取控制特定时序信号的组合[4-6]。Ordóez等[7]把LSTM用于人体行为分类,得到了理想的精度值和F1。为选出最优方案,Parajuli等[8]、Simao等[9],分别对以表面肌电信号为输入的模式识别研究进行了对比综述。以Roberts等[10]为代表的大量研究基于LSTM-CRF识别伤残和病痛造成的行为和症状,如上肢缺损、帕金森式症、原发性震颤[11]。基于LSTM-CRF算法的时序信号标注研究,可以从长时间信号中记忆、抽取特定信息,输出可理解的离散标注结果。比如基于肌电信号输出用于假肢控制的离散信号[12]。

综上,尽管应用领域不同,LSTM类方法在用于肌肉行为的识别和信号输出时,应尽可能为躯干肌电信号标注结果提供物理含义,否则标注结果与行为不对应,很难应用在交互设计或身体症状研究中,也不利于对接现有人体研究结论。

然而仅基于手部的肌电信号和运动信号,无法保证能识别手部的精细控制和平衡控制等行为或意图。在交互应用中,这些意图与手部本身肌肉活动并不一定有可提取关系,却与使用体验密切相关。例如:同样是完成弯腰伸单手触碰任务,精确操作和随意触碰造成的躯干肌肉负荷差异很大,而手部肌肉行为却可能十分接近。这种现象造成手部与运动信号和手部肌电信号的非映射关系。而在假肢和康复领域,则可能无手可测。

躯干肌肉行为对手部任务十分敏感。基于躯干部位的肌电信号识别,理论上可反映出平衡控制、特定精细姿态控制等体感信息。手操作对精确性的主观预期、对发力方式的预期,都会引起部分躯干肌肉迅在拮抗控制状态和弯腰放松状态间迅速切换[6]。而同时,作为执行部分的手部和前臂的肌电信号未必能体现此类信息。存在手部肌电信号和运动信号很相同,工作任务和引起的躯干肌肉活动却完全不同的情况。这种情况会令助力装置、娱乐互动模拟失准。

为了明确是否可以基于LSTM-CRF算法,从躯干肌肉的协同动作中提取出可利用的意图信息,建立了针对特定工作意图的人体实验。研究力图抽取和解码一组躯干肌肉行为,用于识别手部行为。

但从复杂易变的躯干肌肉协作中提取手部工作意图的方式,鲜有思路接近的文献提及,尚有如下关键问题待论证:首先,没有文献提供证据,能证明躯干的这种协同行为和手部同步。如二者之间存在时间差,那么躯干与手部行为间的时间关系可能无法获知。其次,需要验证是否存在分类或聚类方法,令不同实验对象但意图相同的行为划分具有可重复性和可对比性。不可重复的分类或聚类方法不具备应用价值。最后,需要建立一种方法,从长时间、高频、多通道信号中挑选、识别、标注特定行为。

为此,验证是否可以建立基于躯干肌肉行为识别手部意图的方法,以期为上肢和手部提供及时、符合主观预期的外加动力辅助,甚至代替肢体完成工作意图,也避免手部肌电信号难以实地测量的问题。

1 数据采集

为了验证根据躯干活动识别手部意图的可行性,设计了伴有弯伸腰动作的单手拿取、触碰目标的操作实验。实验的自变量包括平衡条件、姿态、目标重量。受限于实验规模,暂未对性别、疲劳、年龄、体重等因素进行对比。研究结果可用于识别控制维持平衡、手部精确操作等深层次意图。

为选取与设定动作相关性最大的躯干肌肉,基于ANYBODY全筋骨假人的有限元模拟结果确认了肌肉角色。所选肌肉包括对侧的最长肌和髂肋肌,这些肌肉在非对称弯伸躯干动作中起最重要作用。

实验选择躯干部分肌电信号和全身运动信号进行同步测量。同时评估外力干涉、姿态变化、支撑条件3类自变量对躯干肌肉的影响。实验所测任务为非对称弯腰持物并触碰特定位置,选取重力载荷、左手外加支撑、腿部姿态为自变量。

由12名男性实验对象自愿参与。因自变量较多,受实验规模限制,实验对象基本数据如表1所示。

实验对象用右手依次触碰右侧垂直架子上高度为120、80、37 cm的目标,再返回80、120 cm高度,把砝码放回。右手持砝码质量为0或2 kg。也就是完成了弯腰后的拿取、3次悬停并准确触碰、放回的工作意图,实验设置如图1所示。

表1 实验对象基础数据Table 1 Basic data of subjects

图1 实验过程示意Fig.1 Experimental process

实验对象在指导下完成伦理文件填写,在助手的帮助下测量臂展在内的基本数据并进行预演。首先由助手贴电极头。之后在恒温实验室条件下,进行18点运动数据采集,以及同步的5处表面肌肉电信号采集。所测肌肉主要包括两对侧的最长肌和髂肋肌,以及右侧斜方肌。测量腰最长肌节段时,电极放置在L1棘突位置中线的外侧3 cm处,方向基本与腰部最长肌肌束走向相同。测量髂肋肌的电极处于距L3棘突外侧6 cm处,平行于髂后上棘突与第12肋骨外侧缘的连线。

所有实验对象在完成最大自主收缩步骤后,由助手贴反光点。实验对象按照随机顺序表完成所有非对称弯腰伸手任务3次。

利用Cortex(V2.1)动作捕捉系统测量同步运动信号和肌电信号,对反光点的运动曲线进行去噪平滑处理。输出的C3D数据被导出到KineAnalyser(6.5),完成基线补偿、系统延时补偿、高低通设定,利用最大自主收缩值对肌电信号进行归一化处理。

实验全程接受伦理委员会监察。实验对象明确权力和风险。

2 运动数据处理

实测训练组实验对象的肌电信号,经归一化及取均值后,对比多类时域和频域数据特征。结果选用快速傅里叶变换中位值(median value of fast fourier transform,FFT-median)表征的肌肉活动具有最佳聚类精度,且计算量较小。

单一弯伸循环内,主要被测肌肉激活状态和持物的右手腕位置如图2所示。

图2 最长肌活动曲线Fig.2 Activity curves of longissimus

以上肌肉行为划分步骤的首选算法是分类,因为分类器可以实时划分信号。但被分类的信号本身是无法理解的高频信号。即使设定时间窗口,使用支持向量机(support vector machines,SVM)或决策树类算法无法获得可解释的分类结果。且利用SVM分类精度在一些特殊时段会有明显下降,如图3所示。

图3 SVM分类精度Fig.3 Classification accuracy of SVM

可见Clementine(V12)的SVM模块在预设工作步骤中,在大部分时段内显示了较高的分类精确,但需要去除分类效果不佳的时段。例如输出的分类精度在时间步骤23和77附近有明显下降。这严重妨碍了分类算法的应用。

在未能生成可用分类器的情况下,选用两步聚类。这是因为市售软件SPSS modeler、Latent-Gold和数据挖掘软件SNOB的多类聚类算法模块的对比结果证明两步聚类显示了最好的可重复性、可解释性[13]。而交互应用领域和诊断领域需要数据挖掘结果易于理解,也就是与外在行为或人体特定信号存在可利用的对应关系,可对接现有结论。

以4处椎旁肌的肌电信号为输入信号划分行为,先通过聚类结果发现并标定各聚类号时段的起始和结束的时间点。这一步骤是把高频高纬度信号转化为低频低维度信号。

在伴有弯伸腰的手工作任务中,躯干肌肉协作模式主要有两种:拮抗模式和弯腰放松模式。前者主要在弯腰且姿态被完全控制的情况下发生,反映出手部操作和维持平衡的意图,用于保证手部任务准确达成。拮抗姿态下的弯伸腰动作中,躯干主要被测肌肉发力会随倾角增大而增大,各椎旁肌的肌电曲线呈现“n”形曲线,符合逆向动力学预期[14]。而弯腰放松模式在连续弯伸腰动作中正相反,体现了软组织在连续放松的弯伸动作中,代替肌肉承受躯干转矩,令肌电曲线接近“U”形。实测证明,多数时候,各被测椎旁肌的肌电曲线处于以上两种模式之间。手部操作或身体失衡会迅速打断以上曲线形状,并导致躯干肌肉转入强度较大的拮抗模式,表现为全部椎旁肌的肌电信号突然升高,“U”形曲线中发生短暂峰值[15]。这种短时变化是本研究中意图识别的主要依据。由于拮抗控制现象的影响,有些时段内躯干肌肉发力可能仅用于控制,不输出运动。因此仅凭借运动信号,无法准确划分躯干肌肉行为。

用Clementine(V12),以所述4处肌电信号为输入,调整两步聚类模块设定中的最小分组数选项,令聚类最小分组数为3和6时,两个弯伸循环中的聚类结果如图4所示。

图4中的聚类结果随着聚类分组数增加而更加详细,但解释单个聚类号含义的难度也在增加。

选择最小分组数为5或6时,在单个弯伸腰循环内,把手腕高度发生变化的组处理成连线形式,两步聚类划分结果和右手腕反光点高度如图5所示。

可见,手部活动的关键点与不同聚类分组号情况下的躯干肌电信号分组结果,有明确的实时对应关系。这意味着在交互控制过程中,可以用手腕速度拐点或极值点,来标定工作意图及其开始和结束时间。反过来也可根据分组边界推测手腕关键点位置。图中聚类结果明确识别出手部操作的7处水平线段,分别代表了身体呈短暂控制状态的5个位置和开始、结束阶段的平衡直立位置。

全部被测对象的测量结果表明,这一聚类结果在具有高可重复性。在仅给定任务,没有限定速度的条件下,所有实验对象的聚类结果反映出高度的一致性。

进一步增加最小聚类分组数,最小分组数为8时,聚类划分结果如图6所示。

从图4~图6中可以很明确地把伴有手操作意图的时段,从整个动作过程中区分出来,也定义了动作意图及其开始和结束的时间点。可见更细的聚类编码可反映更多的信息,包括手部操作过程中的行为和意图变化。图6中第11和13秒时段附近,发生了两次拮抗控制意图。这种肌肉状态反映出的意图,是无法从手部肌电测量获取的。

图4 不同最小聚类分组数获得的分组结果Fig.4 The clustering results under different minimal clustering settings

图5 不同分组结果与手腕高度对比Fig.5 Comparison of different clustering results and wrist height

图6 最小分组数为8时聚类分组结果Fig.6 Clustering results with the minimum number of groups being 8

聚类结果仅标明了各时段内这一组躯干肌肉的状态,还不能从长期非限定的行为中,识别出特定行为意图,也无法获知手指的具体姿态,只是获得了降维和降频后的具有明确含义的聚类信号,类似于汉字识别中词而非句子。识别行为,还需要利用两步聚类号之间的时序关系。

各作为输入的肌电信号在划分过程中的权重如图7所示。弯伸过程中的权重对比和测量的可行性,是肌肉选择的主要依据。由图7可见对伴有右手运动的非对称弯伸运动时,左最长肌和右髂肋的影响较大。

图7 各肌电信号在两步聚类计算中的权重Fig.7 The weight of the electromygraohy of the muscles in two-step clustering calculation

3 行为识别

行为标注模型结构基于Bi-LSTM模型建立,使用现成的Keras预测框架。

之前通过两步聚类获得的聚类信号是按照逐个动作顺序输入的。在限定工作任务范围的任务中,按照动作实际过程和两步聚类细分程度,设定尽可能短了的单次动作长度。

之后根据识别的目标任务在单次循环内包含的聚类分组数决定输入矩阵的向量维度。

具体步骤如下:先根据聚类分组号去除表示无肌肉行为的时段,如图6中聚类分组号为2的时段。再根据LSTM的基本步骤,把一系列聚类分组号作为输入序列。该序列经过嵌入层转化为一个向量序列。经过一个全连接层,映射为一个维度为输出标签数量的向量。这里说的标签就是对各聚类分组号代表的时段的标注结果。

聚类分组号以组(batch)为单位输入,单个组内的聚类分组号数是预设的。但输入的预设分组号以组为单位持续输入和刷新。动作过短时,使用“N”字符做补全,单个过长情况下截断。

在最小聚类分类数设为3的情况下,在给定任务下,单次弯伸循环有5个标签表示,每组聚类分组号由12个分组号组成。每个聚类分组号用Wi表示,作为Bi-LSTM的输入。

某一时刻,一次输入的聚类分组号用W1、W3、W4、W5、W6表示,不同水平的类,用标签A1、A3、A4、A5、A6来标注。Wi被分配到Aj的概率用xji表示。事先去除代表无意义时段的聚类分组号表示为W2,不作为输入。选取最小聚类数为3时,LSTM的数据处理流程如图8所示。

图8 LSTM-CRF识别构架Fig.8 Recognition structure of LSTM-CRF

基于已有的去除冗余聚类分组号的聚类结果,不同于按照时间的刷新,采用以组为单位每个W1,W3,…,W6等聚类号持续更新,也就是说刷新时间不是常值,而是根据组内各类时间的累加。Bi-LSTM的输出用Aij表示。CRF层计算从第i个标签到第j个标签的转移得分。最大的标签序列就是最佳输出序列,被选为输出。由图2可见,各标签是实时对应于手部操作的。这些标签作为表达躯干肌肉协作的编码,也代表了的特定的工作任务或意图,比如弯腰身手准确触碰特定位置的意图和维持全身平衡的意图。这些标签的发生时间也能反映特定的身体状态,比如代表拮抗发力的标签延长或推迟,代表了弯腰时拮抗时间变化,传统上被用于判断是否有腰痛病史。

LSTM层对单个动作内的状态转移没有条件约束,模型存在错误标注序列的可能。在训练过程中,CRF层可以通过学习自动获得行为规则,来修正结果。比如表述弯和伸时状态的分组号4和分组号5不能相邻。

利用Softmax对输出结果进行归一化处理后,通过交叉熵来表示躯干行为在选定弯伸腰时段内精确分类结果的损失值。3个实验对象F1平均值为0.056,精确度为0.913。

而相同细分程度下,单次输入向量长度越稳定,越有利于减小LSTM层的单次总输入向量维度。因此,提高识别精度的一个可行方法是预先限制弯伸腰工作的自由度和任务内容。这样有利于在确保精度的前提下,获得更加细致稳定的两步聚类分组信息,得到更细分的手部行为意图。这种意图识别需要基于本人训练集建立,也只针对与弯腰相关的有限场合,但其提供的意图信息是其他方法无法输出的[16],甚至可输出躯体多类本能反应。这种识别为基于视频或人体肌电信号识别的提供了额外的信息补充,也能提供其无法提供的身体体感[17]。例如在没有手或脚的情况下实现手部行为识别。但限于躯干行为的复杂性,必须在经过实验验证过平衡条件的情况下可行。下一步研究方向在于拓展动作范围,确认更多姿态、场景下的应用可行性。

4 结论

(1)所测躯干肌肉信号与手部位置、加速度之间,存在无可见延时的实时对应关系。

(2)可以在预知任务的基础上,仅凭躯干部位肌电测量,划分并识别手部和躯干部位的同步的行为意图,并获得其开始和结束时间。

(3)同任务下,用两步聚类方式划分躯干行为的结果直观且具有很强的可重复性。不同实验对象的一组肌电信号组的聚类结果可彼此对比。

(4)识别结果除基本动作外,还包括纯拮抗行为、维持平衡、手部精确操作等与主观预期相关的潜在信息。

猜你喜欢
电信号躯干手部
拉伸对越野行走学生躯干柔韧素质影响分析研究
手部皮肤软组织缺损修复的皮瓣选择
尺动脉腕上皮支逆行岛状皮瓣修复手部皮肤软组织缺损
封闭负压吸引技术联合游离股前外侧穿支皮瓣修复手部大面积软组织缺损
基于文献回顾的罚球命中率与躯干稳定性影响因素研究
基于联合聚类分析的单通道腹部心电信号的胎心率提取
树与人
基于Code Composer Studio3.3完成对心电信号的去噪
人走路时为什么要摆手?
基于随机森林的航天器电信号多分类识别方法