APP下载

基于肌电信号和姿态信号的手势识别*

2019-06-25张发辉杨大勇

传感器与微系统 2019年7期
关键词:手势手部分类器

张发辉, 杨大勇, 刘 婷

(1.南昌大学 机电工程学院,江西 南昌 330031;2.南昌大学 信息工程学院,江西 南昌 330031)

0 引 言

人机交互中的一个重要组成部分就是手势识别,无论在游戏,智能家居甚至是手术室等都有广泛应用。手势识别的方法主要分为两类:基于视觉的手势识别和基于传感器的手势识别。基于视觉的手势识别的方法主要是利用Kinect获取深度图像和骨骼信息来识别手势[1],但 Kinect 在使用过程中,易受到光线强度、障碍物的遮挡等环境因素的影响,未能得到广泛应用。近年来,随着科技水平的飞速发展,基于肌电(electromyographic,EMG)信号的手势识别开始成为研究热点[2~3]。EMG信号是肌肉收缩时多个活跃运动单元发出的动作电位序列,它能够直接反映人体的运动意图,可以对大量的手势进行判断,而且EMG信号受环境因素影响较小,具有很好的研究价值和应用前景。

目前,基于EMG信号实现手势动作识别的研究有很多, Naik G R等人通过采集到的手臂EMG信号,并提取信号的分维数特征,用支持向量机(support vector machine,SVM)等方法进行手部运动模式的分类,实现了较高的识别率[4]。张启忠等人提出了的球均值 Lyapunov 指数计算的方法对EMG信号提取特征,并利用SVM作为分类器,对手部四类动作进行分类,准确率达到96 %[5]。中国科学技术大学的陈香等人在基于EMG信号的手语识别方面做了深入研究,通过引入加速度传感器采集手臂的加速度,将EMG信号和加速度信号融合,可以有效识别出多种中文词汇,且正确率较高[6,7]。

为了进一步提高手势识别的准确率,本文提出一种将手指关节的姿态信号与EMG信号融合来判别手势动作的方法。

1 手势识别

由于EMG信号是一种微弱的生物电信号,且在完成手指动作过程中肌肉的参与并不活跃,背景噪声较大,且皮肤出汗肌肉疲劳等因素对其幅值有着严重影响。因此,仅依据EMG信号很难准确地识别出手部动作。本文将表面肌电(surface electro myo graphic,sEMG)信号和手指关节的姿态信号融合,以提高手部动作识别精度。由于采集到的EMG信号和姿态信号都是关于连续时间序列信号,不能直接作为模式分类器的输入。必须对数据进行相应的预处理,数据分割即活动段提取,并将活动段的数据提取特征用作分类器识别动作的依据。

1.1 活动段检测

sEMG的幅值直接反映肌肉的活跃程度,幅值越大,则说明肌肉的收缩强度越大,当EMG信号幅值发生明显变化且增强时,说明手部有动作,如图1所示,其中,标记区间的EMG信号对应一类有效动作,标记点1为动作起点,标记点2为动作终点。

图1 有效动作sEMG信号

目前对sEMG信号活动段检测的方法主要有滑动平均能量法,短时傅立叶法,基于熵的理论法等[8]。sEMG信号是一种非稳定的随机信号,其数值在短时间内存在较大的波动性,本文选用滑动平均法可以有效地减弱短时间的随机波动对EMG信号整体趋势的影响。结合能量阈值的设定判别手部动作的起始位置,从而提取有效动作所对应的sEMG信号段。

窗口平均能量E计算公式

(1)

式中N为滑动窗口的宽度,即采样点数,xi为该窗体内第i个采样点的EMG信号值。

滑动窗口的宽度N不宜太大,否则会降低信号提取的准确性;也不宜太小,否则无法有效过滤短时间波动对信号走势的影响,本文将N设为200,步长设为1。调整阈值T为

T=m0+b×m1

(2)

式中m0为EMG信号的背景噪声,即手部无动作时窗口能量的平均值。m1为执行某类动作时的窗口平均能量的最大值。系数b用于调整阈值T的性能,经过前期的实验数据验证,将其设为2 %可以得到最佳的活动段分割阈值[9]。若某一时刻t滑动窗内信号的平均能量值首次大于阈值T且持续一定的时间,则认为时刻t是某一动作的起始点;同理若某一时刻t滑动窗内信号的平均能量值首次小于阈值T且持续一定的时间,则认为时刻t是动作的结束点。

1.2 提取特征

目前用于EMG信号特征提取的方法主要有基于时域和频域的特征提取方法,其中时域特征提取主要是对时域信号进行分析,提取信号的幅值特征,该方法的算法结构简单,运算复杂度较低,能够实现对EMG信号的实时分析。本文选用绝对值均值[10]对sEMG信号进行特征提取,其计算公式如下

(3)

式中N为活动段长度,即活动段样本点个数;Si为该活动段内第i个样本点的sEMG信号的数值;k为sEMG信号的采样通道。

姿态信号同样需要进行特征提取。在处理姿态信号中的角度信息时,需要考虑手指在空间位置上的起始状态,为实现连续动作的手势识别,本文将活动段的第一组姿态信号作为该活动段的参考基准。针对角度信号本文采用标准差(standard deviation,SD)作为该活动段的特征值,标准差可以有效地表征一组数据的离散程度,一定程度上可以反映手指在运动过程中的角度行程。这些简单的特性将在决策树中作为分类器的输入

(4)

2 SVM分类器

SVM[11]的基本思想是在高维空间中寻找能够实现线性可分的最优超平面,多个超平面将空间划分成多个区域,每个类对应一个区域,在保证分类精度的前提下,尽可能使超平面两侧的空白区域最大化[12]。

设给定线性可分的训练样本集为(xi,yi),i=1,2,…,n.xi∈Rd,yi∈{-1,1}为分类标签号。线性判别函数的一般形式为

g(x)=w·x+b

(5)

分类面方程为

w·x+b=0

(6)

由式(5)和式(6)可知,此时满足条件:|g(x)|=1的样本点离分类面最近。构造最优平面时,应使分类间隔2/‖w‖达到最大值,即求‖w‖最小值,而要求分类面将所有样本正确分类,则需满足

yi[(w·xi)+b]-1≥ξi,i=1,2,…,n

(7)

因此,满足上述条件且使‖w‖最小的分类面就是最优分类面。其中,使式(7)中等号成立的那些样本称作支持向量。因为它们支撑了最优分类面。这样求最优分类面就成为在条件(2~7)约束下,求函数φ(w)的最小值

(8)

式中C为惩罚因子,是大于0的实常数,是平衡分类器容错能力和经验风险的参数。ξi松弛变量即允许分类出现错误。

在此引入Lagrange函数

(9)

式中αi≥0为Lagrange系数。通过分别对w和b求偏微分并令它们等于0,最后可得最优解

(10)

即最优分类面的权系数向量是训练样本向量的线性组合。根据Kuhn-Tucker条件,这个优化问题的解须满足

αi(yi(w·xi+b)-1-ξi)=0

(11)

求解后得到最优分类函数为

(12)

对于非线性的样本数据,需要将输入x通过φ(x)映射到一个高维的特征空间,在这个高维空间中存在线性的分类规则,可以构造线性的最优分类超平面。用内积函数K(x,xi)=φ(x)φ(xi)替代最优分类面中的点积,就相当于将原特征空间变换到了另一新的特征空间,此时相应的分类函数式(13)变为

(13)

利用K(x,xi)即核函数将输入空间映射到一个高维空间,本文核函数选用径向基核函数

K(x,xi)=exp(‖x-xi‖2/2σ2)

(14)

本文采用一对一的构造方式,组合多个二值分类器来实现多类分类器的构造,如图2所示。

图2 “一对一”方式构建的多类分类器

3 实验和结果

3.1 实验设备

实验选用Thalmic Labs公司研发的MYO肌电手环采集手臂的肌电信号,该手环由8个EMG传感器组成,可同步采集8组EMG信号,采样频率为200 Hz。内置蓝牙模块,可将采集到的数据通过无线的方式发送至上位机,通过相应的配套软件实现实时的数据显示并保存。

手指姿态信号由实验室自制的简易数据手套采集,将3个姿态传感器固定在橡胶手套表面,分别采集大拇指、食指以及中指的姿态信息。利用STM32单片机完成姿态解析,并通过串口上传至上位机。为简化后续数据处理,采样频率同设为200 Hz。该传感器可采集三轴加速度和三轴角度等数据,本实验选用三轴角度信息,作为判别手势的参考因素。

3.2 实验过程

实验对象为3名健康男性,年龄均在23~25周岁右利手,无任何神经肌肉系统疾病史。MYO EMG手环的佩戴位置直接影响到采集的肌电信号质量,经前期多次实验显示,选取肘关节下方约5 cm处效果最佳,并在实验前用医用酒精对佩戴位置进行擦拭,除去灰尘角质皮等。受试者均以舒适的姿态保持坐立,在合适的位置佩戴好手环并穿戴好数据手套(如图3所示),将手臂平放在桌面上采集约60 s无动作时的EMG信号,用于活动段检测。随后要求受试者依次完成“握拳”、“竖拇指”、“剪刀手”、“OK”四类手指动作,所有动作均以手部半握状态为起始姿势。每组动作要求重复80次,为避免肌肉疲劳对EMG信号的影响,每重复20次休息5~10 min。在实验中,尽量保证手部动作的具有一定平稳性,保持执行动作的力度和速度适中。

图3 数据采集系统

3.3 实验结果与分析

采集到的多通道sEMG信号首先要进行活动段检测,以确定手势动作所对应信号段的起点和终点,并求出每组活动段的肌电信号特征值。图4为受试者在某个时间段依次完成实验中定义的四类手势动作时,采集到的8通道sEMG信号及最后的活动段检测结果。图中横轴为样本序列点数,纵轴为EMG信号的幅度,由上至下CH1~CH8依次是8个EMG传感器测得的手臂sEMG信号,底部的Energy是8个通道的EMG信号滑动平均能量的平均值。找出执行动作过程中,Energy的最大值m1,并结合实验前期测得的手部无动作时窗口能量平均值m0,确定能量阈值T的大小,从而提取出手势动作的活动段。图5为运动过程中3组姿态传感器采集的3维角度信息。

图4 EMG信号活动段检测

图5 姿态传感器3维角度信号

提取检测出来的活动段数据,并对该部分数据进行特征提取,即分别利用式(3)和式(4)计算出EMG信号活动段的MAV和3维角度信号活动段的SD。表1和表2分别为多组手部动作的EMG信号和角度信号的特征值均值。分别用数字标签1,2,3,4代表握拳、竖拇指、剪刀手和OK4类手势。将这些特征值作为分类模型的输入,四类动作对应的手势标签作为模型输出,用于训练手势分类器。

表1 手部动作对应的肌电信号特征值均值表 μV

表2 手部动作对应的姿态信号3维角度特征值均值表 (°)

分类器选用径向基核函数作为核函数,待定参数为C,γ=1/2σ2,ε,其中,ε控制分类器的容错能力,直接影响泛化能力和支持向量个数。本文取ε=0.01,惩罚参数C和核函数参数γ分别取2和1。在每组动作对应的特征数据中随机抽取60 %的样本作为分类器的训练集合,剩余样本作为检测验证该方法的可行性。通过训练好的分类模型对剩余40 %样本进行分类识别。基于sEMG信号的手势识别结果如图6(a)所示,正确率约为94.8 %。基于sEMG信号和姿态信号融合的手势识别结果如图6(b)和表3所示,整体正确率达到99.3 %,识别率提高约4.5 %。表3为四类手势识别结果的混淆矩阵,斜对角线上的数据表示正确识别手势的样本个数,每列数据的总和表示识别为该类别样本的数目;每行则表示了样本的真实归属类别。结果显示该方法可以有效识别握拳、竖拇指、剪刀手和OK四类动作,且除“剪刀手”手势外,其余识别率均达到100 %。

图6 二种方法的手势识别结果

真实类预测类握拳竖拇指剪刀手OK识别率/%握拳34000100竖拇指03400100剪刀手0033197OK00034100手势整体识别率:99.3%

4 结 论

实验表明:将sEMG信号和姿态信号融合,并以“一对一”方式构建的二叉树型SVM多类分类模型作为分类器的方法可以有效识别手部动作。且该方法实时性强,使用便捷,可实现连续手势实时在线识别,具有一定的应用前景。

猜你喜欢

手势手部分类器
手部皮肤软组织缺损修复的皮瓣选择
挑战!神秘手势
V字手势的由来
基于差异性测度的遥感自适应分类器选择
基于实例的强分类器快速集成方法
胜利的手势
皮瓣修复手部皮肤软组织缺损的临床应用
发生于手部的硬下疳一例
基于层次化分类器的遥感图像飞机目标检测
复明胶囊疑致手部肿痛1例