APP下载

基于组合RNN网络的EMG信号手势识别

2020-04-08周旭峰王醒策武仲科VladimirKorkhovLucianoPaschoalGaspary

光学精密工程 2020年2期
关键词:电信号手势准确率

周旭峰,王醒策*, 武仲科, Vladimir Korkhov , Luciano Paschoal Gaspary

(1.北京师范大学 人工智能学院, 北京 100875;2.Department of Computer Modeling and Multiprocessor Systems,St. Petersburg State University (SPbSU), Saint Petersburg 199034;3.Institute of Informatics, Federal University of Rio Grande do Sul (UFRGS) 15064)

1 引 言

肌肉-计算机接口(Muscle-Computer Interface, MCI)系统是一种被广泛应用的利用肌肉电信号进行人机交互的系统设计,也是虚拟现实、人机交互、人体仿生学等相关领域的热门研究应用之一。而MCI系统是通过肌电提取设备获取EMG(Electromyography)信号,通过处理信号,实现不同信号区分或根据信号所含信息进行其他生物学或医学研究。本文以此为切入点,拟设计MCI系统进行EMG信号的手势识别方法。

EMG信号在人体肌肉收缩与舒张过程中产生的相当复杂的生物电信号,其可以反应及记录相应肌肉产生该运动时的活动状况。由于EMG信号生物特征性明显,过去常常应用于生物医学领域,如临床诊断及假体控制、功能性电刺激等[1]。直到近十年,利用表面肌电信号进行手势识别为代表的人机交互研究才开始出现,但是由于表面肌电信号往往与信号检测电极定位、肌肉疲劳情况、皮肤出汗及固有干扰信号等众多因素相关[2],想要通过其进行准确地信号处理分类至今仍然是一个难题。

EMG信号获取的常用方案是通过多电极记录EMG信号来封装固定区域内整体的肌电信号的时空信息以进一步对封装信号进行处理[3],而这种信号整体封装的实现主要分为两类[4]:基于高密度的瞬时表面肌电信号(High-Density Electromyography, HD-EMG)封装[5-7]与基于稀疏多通道表面肌电信号记录[8-10]。HD-EMG是通过在皮肤表面特定区域内紧密排列众多电极实现对相应肌肉群的信号采样[6],信号精度较高,但是区域敏感性强,而且与皮肤状态联系密切[5],在运动量较大或佩戴不精准的情况下效果较差。而稀疏多通道的肌电信号采样器由于感应器数量少且分布稀疏,获取的信号精度没有HD-EMG高,但是收集方便,研究表明只需要六通道就可以实现不同信号区分[11],采样效率高,而且可以在各种场景下广泛应用,最近相关研究也在迅速增多[12]。

深度学习方法是机器学习领域的一次革命,它在图像处理[13],语音识别[14],人类活动识别[15]等多个方面取得了巨大的成功。受到这些成功的启示,近两年内一些研究者已经开始提出应用深度学习方法来处理MCI系统中EMG肌电信号手势识别问题。例如Atzori等人采用类LeNet的CNN网络对NinaPro数据库中的手势进行分类[16]。Geng等人则采集了8类高密度肌电信号(HD-EMG)并利用CNN网络进行分类[4]。WentaoWei等人同样提出了一种两阶段多流CNN框架并根据高密度肌电信号识别不同手势动作[17]。这些基于深度学习的方案大都是侧重利用不同的CNN网络对高密度肌电信号(HD-EMG)进行分类识别,这是由于高密度肌电信号可以生成瞬时肌电信号图像,便于CNN网络处理,而稀疏多通道的EMG肌电信号缺少图像特征,是一种时间序列信号表示,研究者们通过记录一段时间内的瞬时肌电信号转化为图像后采用CNN方案识别,尚少有人利用RNN网络对稀疏多通道序列信号进行识别。

本文研究通过对不同手部动作EMG信号采样,对信号处理后识别不同手势。该研究建立于一个自行设计的MCI系统上,系统能端到端地完成信号收集及手势识别过程。该系统还可以作为完整的人机交互接口,只需要进一步开发便可以实现更多操作如手势控制游戏、操控3D模型等。本文的主要创新与成果有:

(1)实现了基于MYO臂环的稀疏多通道EMG肌电信号手势识别MCI系统,并通过Python程序实现实时手势识别。

(2)提出了两种基于多类信号特征的组合 RNN框架,将框架应用在MCI系统中可以对稀疏多通道的序列EMG信号进行有效分类。

(3)收集了10类共8 053个动作的稀疏8通道EMG肌电信号,构造了基于MCI的手势识别数据集,该数据集可以应用于更广泛的序列肌电信号研究。

2 国内外研究现状

本章节主要对手势识别常用方案及相关研究进行介绍,着重对应用深度学习思想的研究进行分析,同时探讨RNN网络架构在序列数据识别方面的应用,以延伸至本文的研究方案。

2.1 手势识别研究现状

手势识别是虚拟现实、人机交互的核心技术之一,Cheok等人对近期手势识别技术进行过全面回顾,指出手势识别方法主要分为基于视觉的与基于传感器两类[18]。基于视觉的方法通过单一相机[19],多相机[20],主动技术如Kinect[21]、LeapMotion[22]等捕获RGB图像[23]或三位深度通道[24]进行手势识别。基于传感器的手势识别方案则是通过各类传感器[25]来捕获手部动作、位置与速度等信息来识别不同手势,常见传感器有惯性测量单元(IMU)[26],弯曲传感数据手套[27],Wifi[28]、雷达[29]和EMG肌电信号感应器[30]等。

相较于其他手势识别方法,基于EMG肌电信号的MCI手势识别系统具有独特优势:(1)和基于视觉的手势识别相比,EMG信号对环境不敏感,背景纹理[31]、颜色和照明[32]都会极大的影响基于视觉的手势识别,MCI系统甚至可以轻松在无光照环境中工作。(2)和数据手套等弯曲传感器相比,MCI系统有广的空间适应力,它可以在户外、室内等各种场合轻松使用。

2.2 EMG信号分类方法

从信号分类方法角度来看,MCI系统中基于EMG信号的识别方案主要分为两类。

第一类是基于传统模式识别方法MCI手势识别过程,包括信号获取,预处理与分割,特征提取及分类器分类四部分[33]。针对特征提取部分,由于肌电信号是时序信号,常用方法是从时域、频域或时频域提取不同信号特征加以处理[34],例如Zainal Arief等研究者通过MYO臂环获取信号评估了平均值绝对值、方差、威尔逊幅值、波长累积变化及零交叉等五类时域特征对于识别手势识别的效果[8]。Guan-Chun Luh等研究者则通过离散小波变换分解了四层小波分量,并使用小波系数绝对值均值与标准差等时频域信息使机器人手掌能够模拟不同手指姿势[9]。为了识别不同手势,提取特征后分类器选择成为了关键,有很多经典的分类器被广泛应用,如隐马尔可夫模型(Hidden Markov Model, HMM)[35],高斯混合模型(Goussian Mixed Model, GMM)[36],线性判别分析(Linear Discriminant Analysis, LDA)[37],支持向量机(Support Vector Machine, SVM)[38],随机森林[39]等。

第二类是基于深度学习的方法[40]。Atzori等人修改类似LeNet的CNN网络对NinaPro数据库中的手势作进行分类,平均分类准确率达66.69%,结果表明大型网络很可能提高EMG信号分类精度[16]。Geng采用8层CNN网络对EMG信号进行识别,利用多帧结果进行投票表决提高准确率,根据瞬时高密度肌电信号(HD-EMG)图像信号进行测试,CSL-HDEMG数据库的识别精度达96.8%,CapgMyo数据库的识别精度达99.5%,最后在稀疏多通道EMG信号NinaPro数据库的识别精度达77.8%[4]。WentaoWei等人进一步提出了一种两阶段多流CNN框架同样在相关基准数据库测试,其中在NinaPro数据库中的识别准确度达85%,识别效果较之前研究显著提升[17]。

2.3 RNN网络手势识别研究现状

EMG信号是一个和时间相关的序列信号,因此可以考虑利用循环神经网络(Recurrent Neural Networks, RNN)进行时间序列信号识别的方案[41],该网络的存储单元(Memory cell)设计可以让网络记住过去的状态,从而输出不再只依赖于当前输入,而是与整个输入序列都相关[42]。RNN通常应用于序列处理任务,例如机器翻译或语音识别[43],但它们也可以用于分类,因此在手势识别域中应用RNN也是一种方案。Chen等提取手指运动特征与全局运动特征,然后将这些运动特征与骨架序列一起输入双向递归神经网络(Recursive Neural Network, RNN),最终识别率达89%[44]。Murakami等利用数据手套收集了16维输入,并应用RNN处理,准确地(识别率96%)识别了10种不同的日语手势[45]。Vamplev等使用三维输入表示手在电子手套中的位置,并利用阈值限定来检测动作开始与结束,结合RNN区分16个手部动作,平均准确率达98.9%[46]。Maraqa等对视频流中彩色手套定位检测进行阿拉伯手语进行识别,使用RNN进行识别,准确率达95.11%[47]。而Songbin Xu等人则在不使用手动特征选择和提取地情况下,仅针对波动序列进行LSTM-RNN分类识别,在7个简单动作上识别性能超过90%[48]。这些研究表明RNN在手势分类上也有不俗表现,但是他们使用的数据源基本是动作位置变化等空间特征,这类信号采集较难且必须在特定环境中收集。深度学习在计算机视觉[49-50]和自动控制[51]领域具有系列有效成果的启发,而现在阶段很少有人使用EMG肌电信号进行RNN分类研究,这是本文研究的突破点。

3 基于组合RNN网络的MCI研究系统的构成

本文主要研究基于稀疏多通道EMG肌电信号的手势识别方法,步骤包括EMG信号获取与预处理,时间序列信号时域、时频域特征拓展方法,以及设计合理的深度神经网络分类器进行手势分类研究。同时为了研究方便与研究成果快速应用,还设计了一个基于EMG信号的MCI手势识别系统,可以方便快速地进行实时手势识别过程。MCI系统设计如图1所示。

图1 MCI系统设计框图Fig.1 Framework of the MCI system

鉴于MYO臂环的通用性与有效性,选择MYO臂环采集数据:用户佩戴MYO臂环于手臂高位处,可以获取8通道时序EMG肌电信号,使用Python程序记录与处理这些信号。具体包括实时信号记录,移动平均法分割活跃动作信号,在时域、时频域多类进行序列特征拓展,获得多流序列信号输入组合RNN网络进行分类。为了评估该MCI系统的有效性,一共收集了10类动作,选择了35位实验人员(20位女性,15位男性)进行了人群泛化性实验。为了使不同肌电感应通道获取到手部运动相同肌肉群产生的EMG肌电信号,限制所有实验人员佩戴MYO臂环于右手手臂,且第4通道与右手中指对齐。本研究联结了RNN网络与EMG信号识别工作,设计了组合RNN网络用于分类,并根据稀疏多通道的EMG信号进行不同手势识别,探索了MCI系统的一种全新的设计方式。

4 EMG信号获取

本文提出了一种基于EMG信号的MCI手势识别系统:通过MYO臂环获取EMG信号并进行动作分割等预处理,利用时域、时频域特征处理方法提取多流信号序列特征以拓展原始信号表征能力,并根据不同输入特征序列结合组合RNN网络进行分类。本章主要对MCI系统中EMG信号的相关部分展开,主要分为信号获取与处理两部分。

4.1 数据获取

加拿大创业公司于2013年推出的MYO臂环,通过内置8块环绕肌电信号感应器实现了稀疏多通道EMG信号获取。由于臂环便宜、佩戴方便、无创伤,并且可以应用于实际肌电信号研究[4],本文通过MYO臂环提取MCI手势识别所需的肌电信号。MYO臂环内置8个肌电感应器和1个含有加速度计,陀螺仪和磁力计的惯性测量单元(Inertial Measurement Unit, IMU),其工作原理主要是通过捕捉用户运动时手臂肌肉的生物电变化,并通过蓝牙与计算机、手机等设备连接,配合手臂的物理动作监控实现人机交互。MYO腕带里设置了肌肉电感应电极,使其能够在用户做出伸缩手势时读出肌肉的生物电信号,并将信号以蓝牙传输的方式传送给电子设备。与医疗电极不同的是,MYO肌电感应电极不会直接接触皮肤,用户只需将腕带随意套在手臂上即可,是非常方便的一类交换设备。因此,MYO臂环可以作为MCI系统的中介,形成完整的MCI系统,使得人类可以轻松通过表面肌肉电信号自然地与计算机进行交互,同时还可以应用到更多更广泛的其他研究或系统开发中。

4.2 数据预处理

MCI系统通过MYO臂环获取人类手部运动产生的8通道稀疏EMG肌电信号,信号幅值限制于-128~127之间,采样频率约190~200 Hz(MYO臂环无法固定采样率)。共设计了10个手势,分别如图2所示。

图2 十个预定义手势Fig.2 Ten pre-defined gestures

由MYO臂环获得的EMG信号是连续的时间序列。为了识别不同动作,首先需要从连续序列中分割出单个有效活跃动作片段,本文采用移动平均技术[52]实现有效动作分割。

EMG信号是非平稳信号,为了区分活跃信号区间,需要对原始信号加窗处理,为了使数据更稳定,窗长取80时间步(约400 ms),并计算8通道信号绝对值均值作为该窗信号强度,最后通过阈值限定标记动作起点与终点,从而提取活跃动作。图3是从连续序列中提取单个动作的示意图。

本文研究通过Python程序实现了数据获取与动作分割两步,即数据集中每个动作的EMG肌电信号是动态获得的,经过分类器处理后,程序可以实时识别不同动作。在完整的MCI系统中,从单个动作完成到被识别大约延迟61 ms,即在实际使用过程中延迟几乎不可察觉。

图3 预处理及动作分割示意图Fig.3 Preprocessing and Motion Segmentation

5 EMG信号处理与特征提取

注意到集成学习在机器学习领域有很多有效应用[53],同时传统模式识别过程中存在许多特征提取提取方法,受到两者启发,本研究通过修改特征提取方法对原始数据进行拓展,获得原始数据多种表达,将其统称为特征拓展,拓展后获得多流数据。

5.1 时域特征拓展

加窗处理是一种通用的序列数据处理方式,为了在时域空间拓展原始数据表达,本文采用加窗处理获得每一帧数据,再对单帧数据运用时域特征提取方法获得该帧信号特征表达。与传统特征提取方法相比,特征拓展后的数据仍为变长的序列数据,而非固定维度的统计特征。

(1)均值拓展。

(1)

(2)标准差拓展。

(2)

(3)波长变化拓展。

(3)

5.2 时频域特征拓展

对于非平稳的EMG肌电信号,时域序列不能刻画所有特征,进一步利用离散小波变换(dwt)提取信号时频域特征。目前尚缺少明确理论指导小波基函数选择[54],本文采用实验法确定合适的小波基函数Symlets4 (Sym4),该小波基如图5(a)所示。

图4 原始信号时域特征拓展结果Fig.4 Result of original signal time domain feature extension

选择level=3层进行小波变换,可以获得原始信号的1层低频系数和3层高频系数,具体分解顺序见图5(b),原始信号小波分解拓展如公式(4)所示:

(4)

原始信号经小波变换后,获得4层小波变换系数,图6是小波变换结果。

5.3 频域特征拓展

为了充分获取原始信号频域特征,利用离散傅立叶变换提取原始信号频域特征,其计算方法如下:

(5)

由于傅立叶变换具有对称性,最终特征拓展序列只取前一半序列作为有效结果。通过在时域、时频域对原始信号进行特征拓展后,原始信号的获得了9种表示,可以作为RNN网络输入的多流数据,表1是所有数据拓展统计描述。

图6 原始信号时频域特征拓展结果Fig.6 Result of original signal time -frequency domain feature extension

表1 原始信号特征拓展序列描述

Tab.1 Original signal feature extension sequence description

特征拓展数据流符号表示长度无拓展原始信号ST时域拓展均值拓展SavgT-N标准差SdevT-N波长变化SwlcT-N时频域拓展小波低频系数Sdwt1约T/8小波中低频系数Sdwt2约T/8小波中高频系数Sdwt3约T/4小波高频系数Sdwt4约T/2时域拓展离散傅立叶变换Sfft约T/2

5.4 标准化

MYO臂环获取的序列数据数值较大,直接作为输入容易导致RNN神经网络无法收敛,在特征拓展之后,需要对拓展所得多流输入序列进行标准化,标准化方法如式(6),式(7)所示:

(6)

(7)

6 组合RNN网络设计

组合RNN网络是本文所研究算法的核心,该网络是建立在多流特征拓展序列的基础上的,即原始信号存在多种不同的表达,因此采用组合RNN网络可以连接这些表达。本章主要提出相关组合RNN网络算法,用于处理多流特征拓展序列。

6.1 LSTM单元

有别于卷积神经网络,循环神经网络共享参数的设计理念使得网络拥有了记忆能力[55],当前网络状态不止受当前输入的影响,过去的输入也会因为参数共享对其产生影响。因此RNN对于前后存在关联的序列数据有很好的处理能力,本文的研究即应用RNN网络来处理EMG肌电信号序列。但最基本的RNN单元存在一个极大的问题:长时依赖问题[56],即RNN网络总是倾向于只记住与当前输入临近的输入,而过去长时间的输入往往容易被遗忘。

解决序列信号长时依赖问题的一个有效方案是修改RNN单元结构,LSTM单元便是为此而设计的,它通过相关门控制修改RNN单元结构,使其具有长期记忆能力,图7是LSTM单元示意图。

图7 LSTM单元设计Fig.7 LSTM Unit Design

具体计算过程如下:

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

(8)

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

(9)

(10)

(11)

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

(12)

ht=ot*tanh(Ct),

(13)

6.2 RNN网络设计

本文研究采用RNN网络处理不同特征拓展序列,由于训练样本有限,网络结构不宜过于复杂,经过完备的对比实验,具有最佳结果的RNN网络为双层设计,每层各有50个隐藏单元,每个隐藏单元独立结构为LSTM单元,具体如下图8。

图8 RNN网络结构Fig.8 RNN network structure

6.3 组合RNN网络

原始数据特征拓展后获得多流特征序列S,Savg,Sdev,Swlc,Sdwt1,Sdwt2,Sdwt3,Sdwt4,Sfft,每一组单流序列都能独立地代表原始信号特定特征,即单流序列均可作为手势分类的信号,这些原始信号多流特拓展可以增强识别结果,本文针对多流特征拓展序列提出了两种组合RNN网络处理方案。

6.3.1 多特征异步训练的组合RNN网络

原始信号单流特征拓展数据是不定长序列,选择RNN网络进行分类。因此对于多流特征最直观的解决方案是,根据不同输入序列,训练不同的RNN网络验证单流效果。进一步将多流输入的RNN网络输出叠加,再次单独训练一个全连接网络进行分类。具体方案如下图9所示。

钱纳里将工业化进程分为三个发展时期,包括六个阶段:第一个时期以农业经济为主导,属于前工业化阶段;第二个时期以工业经济为主导,是工业化实现和经济高速发展的阶段,该阶段又划分为工业化初期、工业化中期和工业化后期三个阶段;第三时期以服务业为主导,是经济稳定增长的阶段,划分为发达经济初级期和发达经济高级期两个阶段。参照钱纳里与库兹涅茨的评价指标体系,本文选取人均GDP、三次产业结构、三次产业就业结构和人口城市化率作为衡量工业化发展水平的指标。

异步训练的组合RNN网络核心是处理多流特征拓展序列[1, 2, 3,…,k],其中对于每一流输入序列,都采用图8所示RNN网络结构处理,该网络直接输出也是序列,需将输出序列压缩至一维序列,即进行Many to One变换。变换方法是取输出序列均值作为网络最终输出,对应图中均值池化输出。再将多流序列的均值池化输出连结,输入由4个全连接网络构成的全连接层,图中括号中数字表示全连接网络节点数。本研究是10种手势分类问题,全连接层最终输出为10维,可直接采用Softmax方法实现分类预测。

6.3.2 多特征同步训练的组合RNN网络

异步训练的组合网络需要针对每个特征拓展数据流进行多次训练,训练过程繁多且较为复杂,在特征拓展序列较少且训练样本不多的情况下尚可较快实现,但是一种更优设计思想是对多流特征拓展进行同步训练,这样可以显著减少网络训练步骤,本文同时提出并实现了同步训练的组合RNN网络,如图10所示。

图9 异步训练的组合RNN网络结构Fig.9 Asynchronous training combined RNN network structure

图10 同步训练的组合RNN网络结构Fig.10 Synchronous training combined RNN network structure

同步训练的组合RNN网络同时接收多流(k流)特征拓展序列输入,并采用k个结构相似的RNN网络同时处理这些多流序列,对每一流网络输出序列进行均值池化,获得单流RNN网络结果输出。与异步训练的组合RNN网络相比,同步训练的RNN网络对于多流序列输入,不进行输出组合及全连接训练,而是直接进行Softmax变换得到k个多流输入的预测概率,并将所有预测概率相加作为最终预测概率,从而得到预测结果,完成手势识别过程。其中,在同步训练的组合RNN网络中不进行全连接层训练,因为全连接网络参数较多,在小样本训练集中,同步训练会干扰每个RNN网络参数优化过程,所以在同步训练方案中去除全连接层,采用类投票的概率叠加进行网络设计。以上两种组合网络训练,均选择softmax交叉熵损失函数[58],并添加L2正则约束,优化器为Adam优化器[59]。

7 实验与数据分析

MCI系统核心评估指标是系统手势识别准确率,在本节中,我们设计了多类实验对本文所提出的两种组合RNN网络进行了详细评估。首先验证算法有效性,单独的算法效果检测需要完备训练集与测试机,因此数据选择是用户依赖的,即训练与测试的数据来源于同一个用户不同时间做出的动作,这样选择可以显著减小不同用户的信号原始采集差异,如位置、力量强度等。组合RNN网络的优点更应该体现在其实现的MCI系统泛化性强,即非用户依赖时依然能取得优异表现,因此用户独立的算法泛化性需要分离训练与测试数据用户,这更符合真实的MCI系统应用,因为通用MCI系统需要新用户友好性。经过两方面验证,最后是完整的算法实践,即MCI系统测试。

7.1 用户依赖的算法有效性验证

为了评估本文所提出特征拓展序列对原始信号的表达能力,验证组合RNN网络结构的效果,对数据库内所有有效动作进行5折交叉验证,同时分别将单个RNN网络分类结果与组合RNN结果分类结果进行对比,来确定不同特征序列及网络结构的有效性。具体方案为:5折交叉验证1∶35位被试每人都操作10类动作约20次,每次验证将每位被试各类动作按4:1的比例分为训练集与测试集,其中5次交叉验证训练集间无交叉,5次训练集并集为完整数据集。

用户依赖的算法有效性验证非本文研究重点,选择易于训练的同步训练的组合RNN网络进行测试,表2是采用该方案不同特征流序列识别结果。

表2 原始数据同步训练组合RNN网络5折交叉验证结果

根据上表,同步训练的RNN网络5折交叉验证实验中本文所提算法识别率较为稳定,其中原始信号s,dwt4,avg三类特征拓展5折识别率标准差大于10%,整体而言5折验证结果相差不多,所有手势识别准确率为90.78%,即绝大部分手势都可以被正确识别,算法是有效的。同时,多流数据中不同特征拓展信号表达能力不同,其中表现时域标准差(std)拓展表现较好,准确率达到了84.44%,而原始信号(s)、波长变化(wlc)结果较差,识别准确率较低。

从时频域方面考虑,识别结果较好的特征拓展是小波变换高频系数识别结果略优于小波低频系数,可以看到原始信号有效频率更多分布在高频部分,而且所有数据识别准确率随着从小波低频系数到小波变换高频系数逐渐增大,由最低72.20%增加到78.39%,小波高频系数包含增强分类效果的信息。

通过算法有效性验证,可以看到该组合RNN网络结构可以对稀疏多通道EMG信号进行有效分类,交叉验证分类准确率达90.78%,并且在小样本量时下也有较好表现。进一步,不同的特征拓展方案对识别准确率有不同影响,使用组合RNN网络方案可以较好地提升识别结果。由于尚少有研究者利用RNN网络进行稀疏多通道EMG信号分类研究,而深度学习相关的EMG信号分类研究主要集中在采用CNN网络对瞬时肌电信号分类,与稀疏多通道信号相异,所以用户依赖的实验中,本文采用传统算法SVM算法进行对比测试。

SVM算法[60]:该算法选择原始信号8通道绝对值均值作为相应通道特征,进行相同的5折交叉验证,结果显示在小样本下SVM算法也具有优良表现,下表4是每个动作识别结果。采用SVM分类方法,在用户依赖的情况下进行完整训练集五折交叉验证,平均识别准确率达84.35%,识别结果较同步训练的组合RNN方案差。由此可见,对于用户依赖时,SVM算法也可以区分不同动作,且准确率近85%。

表3 所有动作识别结果混淆矩阵

表4 用户依赖时SVM算法识别结果

7.2 用户独立的人群泛化性验证

人体表面EMG信号是生物电信号,个体差异性大,受身高、体重、性别、情绪、是否接受过训练等众多因素影响。虽然在训练集中加入个人动作,可以减小个体差异影响,但实际MCI应用系统中,系统初次使用者信息往往并未加入训练集,而在训练集样本有限时,MCI系统鲁棒性尤为重要。因此本文进行了用户独立的人群泛化性验证实验。其中为保证用户独立,进行数据集5折交叉验证2。将35位被试均分为5组,每组被试7名。每次验证时选择其中4组28人所有动作作为训练集,另一组7人所有动作作为测试集。在划分好训练集与测试集后,采用不同方案进行完备的人群泛化性实验。

7.2.1 异步训练的组合RNN网络实验结果

原始数据5折划分,每一折划分又经过9类特征拓展,共进行45次异步RNN网络训练;进一步将9类特征拓展序列的RNN网络输出结果组合,进行5次全连接层参数训练,从而获得最后的异步训练组合RNN网络结果。异步训练时,每一流特征拓展都可以达到各自分类最佳结果,表5是各类特征在全部数据集中的加权识别结果。

表5 非用户依赖异步组合RNN网络各类特征拓展识别结果

Tab.5 Non-user-dependent recognition results of expand features using asynchronous combined RNN network

序号特征PrecisionRecallF1score0原始信号75.4775.3575.361均值72.3071.9671.962标准差72.7872.2372.433波长变化72.1971.8571.974dwt160.6060.3860.425dwt260.9560.4660.636dwt360.9660.8860.837dwt461.0760.5160.678fft52.9653.2353.019融合(FC)78.3378.0178.10

表结果与同步训练的RNN网络有一定区别,主要表现为时域特征拓展结果显著优于时频域、频域特征拓展,对此一个可能的原因为原始数据采样率较低,频率失真严重,因此时域特征拓展更优。

图11 异步训练的组合RNN网络识别结果Fig.11 Recognition results of asynchronous training combined RNN network

采用异步训练的组合RNN网络的最终识别结果如图11所示,异步训练的组合RNN网络在所有数据集中,5折交叉验证准确率为78.01%,其中外挥、内挥、握拳、响指四个动作的区分度最高,即在非用户依赖时,以上4个动作仍然较易区分。而混淆识别主要发生在胜利-否认、舒张-抓握、停留-否认之间,这3种情况中动作两两之间主观肌肉牵拉感相近,由此消除用户依赖的方法可以从考虑,即增强相似动作区分度。

7.2.2 同步训练的组合RNN网络实验

本研究进一步测试了同步训练的RNN网络,网络所有参数是一次训练即可获得,由于原始数据进行了5折划分,所以一共5次参数训练。相较于异步训练的组合网络方案,该方案训练效率显著增强。

用户依赖的算法有效性验证的实验中,虽然不同特征序列拓展方案对准确率影响不尽相同,但是组合RNN网络融合所有特征序列可以有效增强识别结果。这一结论在人群泛化性实验中依旧成立:即在不使用自身手势做训练时,不同特征序列拓展都可以表征原始信号用于手势识别,且融合多特征拓展序列的RNN网络识别结果显著提升。

图12中选择展示了3流特征序列拓展与最后组合方案的个体识别结果,可以看到组合识别结果是最佳的,同时波长变化特征拓展(wlc)识别结果仍旧最差。本文MCI系统人群平均识别准确率为77.13%,但是个体差异较大,大部分个体动作识别准确率均超过70%,其中6,16,21号3名被试识别准确率低于60%。同步训练的组合RNN网络最终识别结果如图13,该结果与异步训练的网络识别相近,最终识别准确率相差仅0.88%,而且不同动作之间的区分情况也高度类似,存在相同的区分手势与不易区分手势。由此异步训练的组合RNN与同步训练的RNN网络表现相近,两者一定程度上可以相互替代。

图12 不同被试多流数据识别结果Fig.12 Multi-stream data recognition results of different users

7.2.3 SVM识别结果

为了进一步比较本文所提出基于循环神经网络算法有效性,对于非用户依赖数据继续测试传统SVM算法,其中特征选择部分增加采样,即每通道数据分段,取多次均值作为通道特征。该算法识别结果如图14所示。

图14 非用户依赖SVM算法识别结果Fig.14 Non-user-dependent recognition result of SVM algorithm

在非用户依赖情况下,传统SVM算法识别准确率也呈现下降趋势,最终准确率只有70.96%,显著低于基于深度循环神经网络的识别结果,由此本文所提出的组合RNN网络在非用户依赖时有效性高于传统SVM算法。

7.3 MCI系统测试

MCI系统一般需要良好的人机交互体验,实时性也不可忽略,考虑到某些特征拓展如波长累积变化(Wlc)对准确率影响不大,本文从提出的多流特征拓展方案中选择其中小波中高频、小波高频、标准差、原始信号四流特征序列进行组合,并采用所有数据训练了用于实时识别的同步训练的组合RNN网络,进行了实时识别测试。

选择了3名被试每位被试每个动作进行操作10次,共计300个实时动作。其中被系统有效检测到的有效动作为296个,2.1节所提出的动作分割方案准确率为98.66%,完成每个动作到动作被识别延迟时间为61.7 ms,系统实时性高,3名被试动作识别时间如下表6;所有有效动作中,被准确识别的动作有243个,具体识别结果如下表7,实时动作识别准确率为82.09%,MCI系统准确性好。

表6 3名被试不同动作识别时间

Tab.6 Different action recognition times of three participants

(ms)

表7 实时识别结果

文章一共设计了3类实验,从不同方面对本文研究所提出的算法及系统设计进行验证,区分了不同特征拓展序列对原始信号表达能力而且进一步通过人群泛化性研究分析了算法对个体差异性的处理能力,并分析同步与异步训练的组合RNN网络结构有效性与结果相近性,最后通过实时测试评估MCI系统的效果。根据结果分析可以发现,不同特征拓展序列都能表达原始信号,且大都比原始信号序列有效,其中时域标准差拓展结果最优。两类组合RNN网络框架都能有效提升识别效果,最终识别准确率超过90%;同时组合RNN网络泛化性能较好,在人群中识别准确性达到78.01%;本文所提出的两个组合RNN网络方案在识别结果上具有相近性,两者准确率无明显优劣,为了训练效率,同步训练的组合RNN网络更适合广泛应用;而且本文所设计的MCI系统具有实时性与有效性,以此为基础可以应用于更多其他研究。

8 结 论

本文提出了基于RNN网络的稀疏多通道EMG肌电信号MCI手势识别系统,系统通过对原始信号进行时域、时频域特征拓展,获得含有原始信号信息的多流特征序列,再采用组合RNN网络将多流特征序列结合,获得最后识别结果。在本研究收集的数据库中进行用户依赖的算法有效性测试,识别准确率达90.78%,绝大多数手势均被准确识别;两类组合RNN网络在用户独立的人群泛化性方面都表现良好,能显著降低用户个体差异,平均识别准确率达78.01%,两种组合方式识别结果无明显差异,准确率相近,但是同步训练的组合RNN网络更易于训练,因此更适合广泛应用。基于同步训练的组合RNN网络实现的MCI系统实时性好,可以在61.7 ms内完成实时动作识别,平均准确率达82.09%。

基于所有实验结果,组合RNN网络在稀疏多通道EMG信号识别方面有良好效果,而且在用户独立时,算法分类效果显著优于传统SVM算法,由此拓展了深度学习方法在EMG信号识别方面的研究。同时基于RNN网络实现的MCI系统保留有较高的实时性,而且识别率显著提升,本研究提出的独立的MCI系框架可以进一步拓展应用到其他研究。

猜你喜欢

电信号手势准确率
基于联合聚类分析的单通道腹部心电信号的胎心率提取
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
挑战!神秘手势
基于Code Composer Studio3.3完成对心电信号的去噪
V字手势的由来
高速公路车牌识别标识站准确率验证法
基于随机森林的航天器电信号多分类识别方法
胜利的手势