CN115904086A - 基于可穿戴计算的手语识别方法 - Google Patents
基于可穿戴计算的手语识别方法 Download PDFInfo
- Publication number
- CN115904086A CN115904086A CN202211698335.6A CN202211698335A CN115904086A CN 115904086 A CN115904086 A CN 115904086A CN 202211698335 A CN202211698335 A CN 202211698335A CN 115904086 A CN115904086 A CN 115904086A
- Authority
- CN
- China
- Prior art keywords
- sign language
- data
- axis
- hand
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004364 calculation method Methods 0.000 title claims description 24
- 230000003993 interaction Effects 0.000 claims abstract description 23
- 230000005540 biological transmission Effects 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 30
- 239000013598 vector Substances 0.000 claims description 27
- 230000033001 locomotion Effects 0.000 claims description 23
- 238000004422 calculation algorithm Methods 0.000 claims description 20
- 238000005259 measurement Methods 0.000 claims description 20
- 238000012937 correction Methods 0.000 claims description 19
- 238000012549 training Methods 0.000 claims description 18
- 230000001133 acceleration Effects 0.000 claims description 17
- 230000011218 segmentation Effects 0.000 claims description 17
- 238000013528 artificial neural network Methods 0.000 claims description 16
- 210000002478 hand joint Anatomy 0.000 claims description 15
- 230000000694 effects Effects 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 9
- 238000002790 cross-validation Methods 0.000 claims description 8
- 238000003062 neural network model Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 230000004927 fusion Effects 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 7
- 230000005484 gravity Effects 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 4
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 230000036961 partial effect Effects 0.000 claims description 3
- 238000011056 performance test Methods 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 claims description 3
- 230000035945 sensitivity Effects 0.000 claims description 3
- 210000003811 finger Anatomy 0.000 description 14
- 230000036544 posture Effects 0.000 description 14
- 206010011878 Deafness Diseases 0.000 description 12
- 230000009471 action Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 4
- 238000007500 overflow downdraw method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 3
- 210000004247 hand Anatomy 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 210000003414 extremity Anatomy 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 241000825895 Argyrops bleekeri Species 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 229910052744 lithium Inorganic materials 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Navigation (AREA)
Abstract
本发明属于手语识别领域,提供了一种基于可穿戴计算的手语识别方法,提供一种基于可穿戴计算的手语识别系统,包括一副惯性数据手套、路由装置、人机交互平台。每只惯性数据手套包括十六颗惯性传感器和一个无线传输模块,其中惯性传感器包括三轴加速度计、三轴陀螺仪、三轴磁力计,无线传输模块通过传输控制协议以路由装置为中枢与人机交互平台完成交互。人机交互模块可以对手语识别系统进行操作,并集成有训练好的Bi‑LSTM模型,利用惯性数据手套上传的手部数据输入到Bi‑LSTM模型中进行手语识别,并显示出识别出的手语信息。该系统能够实现对20种中国动态手语进行识别,具有精度高、功耗低、设备体积小、易于部署识别等特点。
Description
技术领域
本发明涉及手语识别领域,具体涉及一种基于可穿戴计算的手语识别方法。
背景技术
手语作为聋哑人用来表达信息的语言,对聋哑人的生活具有重要的意义。手语主要包括手指语或手势语,其中手指语是以手指的形态和动作代表字母,手势语是使用手部动作、面部表情、身体姿态表达含义。除了从事相关行业的人,其他人几乎不理解也不会使用手语,这造成了聋哑人与正常人之间的沟通障碍。聋哑人手语翻译人员为聋哑人和正常人之间的沟通搭建了桥梁,但由于聋哑人手语翻译人员匮乏,聘用价格高昂,很难满足当前社会的需求。因此,搭建一个聋哑人与聋哑人之间、聋哑人与正常人之间的无障碍交流平台至关重要。手语识别交流平台的建立可以使聋哑人拥有一个与健全人沟通交流的渠道,从而享受到更加完善的公共服务。该平台不仅可以让我们走进聋哑人的生活,也可以让他们能够更加自然和谐舒适地融入社会生活。
目前主流的手语识别方法一般都基于视觉或者传感器捕捉手部的相关信息,再结合机器学习或者深度学习模型来确定其手语对应的含义。其中基于计算机视觉的方法主要使用相机作为主要工具。虽然使用相机作为手语识别的核心可以简化操作,减少附加传感器,使得用户有更舒适的体验,但是基于视觉的手语识别系统同样也存在的诸多弊端。“P.Kumar,H.Gauba,P.Pratim Roy,and D.Prosad Dogra,"A multimodal framework forsensor based sign language recognition,"Neurocomputing,259,pp.21-38,(2017).”便指出,其中主要的问题有,光照强弱、环境变化、计算成本高、便携性差。
相反,基于传感器的手语识别系统具备计算相对简单,不受环境限制,成本低等优点,弥补了基于视觉手语识别技术的不足。目前的可穿戴传感器设备在用户舒服度体验上也有很大的提高。“Y.Li,N.Yang,L.Li,L.Liu,Y.Yang,Z.Zhang,L.Liu,L.Li,andX.Zhang,"Finger gesture recognition using a smartwatch with integrated motionsensors,"Web Intelligence,16,pp.123-129,(2018).”和“T.Tai,Y.Jhang,Z.Liao,K.Teng,and W.Hwang,"Sensor-Based Continuous Hand Gesture Recognition by LongShort-Term Memory,"IEEE Sensors Letters,2,pp.1-4,(2018).”分别利用集成于智能手表、智能手机中的加速度计、陀螺仪获取肌肉的活动数据来识别手势。这些传感器不受环境的约束,更加适合作为聋哑人手语识别。然而对于复杂精细的动态手语动作的识别,只是基于单一传感器,很难达到很大的识别效果。因此很多研究通常结合多种传感器进行手语识别,其中就包括数据手套。例如“T.Chouhan,A.Panse,A.K.Voona,and S.M.Sameer,"Smartglove with gesture recognition ability for the hearing and speech impaired,",2014,pp.105-110”中将弯曲传感器、霍尔传感器、加速度计结合起来设计的数据手套或者“Y.Dong,J.Liu and W.Yan,"Dynamic Hand Gesture Recognition Based on SignalsFrom Specialized Data Glove and Deep Learning Algorithms,"IEEET.Instrum.Meas.,70,pp.1-14,(2021).”中集成弯曲传感器与IMU的数据手套。然而基于多种传感器的数据手套都存在处理电路复杂、处理阶段针对不同传感器都需进行标定与校正、无法识别手部复杂精细动作的问题。
发明内容
本发明的目的在于提供一种基于可穿戴计算的手语识别方法,可以实现对手部动作的精细捕捉,从而对复杂动态手语进行识别。
本发明的技术方案如下:
一种基于可穿戴计算的手语识别方法,基于可穿戴计算的手语识别系统实现手语识别;该基于可穿戴计算的手语识别系统包括两只惯性数据手套、路由装置、人机交互平台;
每只惯性数据手套包括十六颗惯性传感器和一个无线传输模块;惯性传感器包括三轴加速度计、三轴陀螺仪、三轴磁力计,用于捕捉单手手掌和手指的运动信息、位置信息;无线传输模块通过传输控制协议以路由装置为中枢与人机交互平台完成交互;
人机交互平台将惯性数据手套采集的数据进行误差校正、姿态解算、手语样本分割后输入到神经网络手语识别模型中,对识别到的手势最终显示在屏幕上;
基于可穿戴计算的手语识别方法具体包括步骤如下:
步骤1:制作手语数据集;
步骤1.1:采集待识别手语的原始惯性数据,
使用惯性数据手套采集20种动态手语的原始惯性数据;
步骤1.2:将采集到的手语原始惯性数据进行预处理,
预处理包括对采集的原始惯性数据进行误差校正、姿态解算、手语样本分割、数据归一化;
步骤1.2.1:采用最小二乘法求解椭球拟合问题来标定三轴磁力计;
其中,表示三轴磁力计的测量值,表示三轴磁力计不存在误差的理论值,表示三轴磁力计零偏误差,kx,ky,kz表示三轴磁力计各轴灵敏度误差系数;kxy、kyx、kzx、kzy、kxz、kyz表示三轴磁力计各轴的耦合系数;
通过最小二乘法拟合得到椭球方程,求解误差系数K和零偏误差B0,
步骤1.2.2:姿态解算将惯性数据手套采集的原始惯性数据采用梯度下降数据融合算法提取手部四元数信息,采用以下公式进行迭代:
三轴加速度计产生的误差用误差函数Ff(q,f)表示为:
三轴磁力计产生的误差用误差函数Fm(q,m)表示为:
将目标函数求偏导数,得到雅可比矩阵
使用高斯牛顿法求解最小化误差,q▽,t表示计算过程中的目标姿态,
其中,μ为步长;▽表示微分算子,表示q的变化率,其与误差矢量即Ff,m(q,f,m)的关系如下:
最后求解出一个表示姿态的四元数,共包含两部分;一部分是利用三轴陀螺仪输出值求解微分方程解得;另一部分是通过目标函数求解得到的修正四元数;两者均描述同一时刻手部的姿态;设求解四元数微分方程得到的姿态四元数为qω,t,用α表示修正四元数所占的权重,将这两部分四元数结合,则最终的姿态四元数qt表示为;
qt=αq▽,t+(1-α)qω,t
β表示三轴陀螺仪的测量误差,通过标定算法测量得到;ts表示采样周期;则权重α与步长μ有如下关系:
最终姿态四元数表示为:
步骤1.2.2.1:利用步骤1.2.1中经校正的三轴磁力计信号确定地理北极方向,并根据手部自然下垂时的三维加速度信号和步骤1.2.1中经校正的三维磁力计信号,获得手部的初始姿态,并进行校正;
通过求解传感器坐标系与载体坐标系相对的欧拉角,利用三维加速度信号得到俯仰角θ与横滚角γ,公式如下:
步骤1.2.2.2:利用如下载体坐标系与传感器坐标系的转化公式将步骤1.2.2.1求得的欧拉角转化成载体坐标系到传感器坐标系的单位四元数:
步骤1.2.2.3:根据手部自然下垂时的运动信号和经校正的三维磁力计信号,通过重力矢量方向与地球磁场北极方向确定传感器坐标系与地理坐标系的旋转四元数,完成手部初始姿态与初始手部模型的标定,包括以下过程:
手部模型关节点坐标位置公式:
手部关节向量在地理坐标系的旋转为:
最终得到手部关节向量在地理坐标系的旋转公式:
在进行初始手部姿态校正时,载体坐标系通过手部自然下垂静止时朝向磁场北极站立的方式与地理坐标系重合,得到在初始时刻的公式:
步骤1.2.2.4:最终利用梯度下降的数据融合算法更新手部运动姿态,获取实时更新的手部四元数信息;
步骤1.2.3:手语样本分割将原始加速度、三轴陀螺仪数据和解算出的手部姿态四元数信息结合后,如下式所示;并利用高速相机对组合的手语时间序列数据进行人工手语分割并给予手语特定标签;
[ax,ay,az,gx,gy,gz,q0,q1,q2,q3]
其中,ax,ay,az为三轴加速度计采集的三轴加速度信号,gx,gy,gz为三轴陀螺仪采集的三维角速度信号,q0,q1,q2,q3为手部单位四元数;
步骤1.2.4:数据归一化将分割后给予手语特定标签的数据处于0~1区间内;
步骤1.3:对预处理后的每个受试者的手语时间序列数据按照9:1的比例进行训练集和测试集的平衡数据划分;
步骤2:建立神经网络手语识别模型;
步骤3:使用手语数据集对神经网络手语识别模型进行训练;
步骤4:对训练好的神经网络手语识别模型进行泛化性能测试;
步骤5:对测试效果达标的神经网络手语识别模型移植到人机交互平台,通过基于可穿戴计算的手语识别系统对手语进行实时识别。
所述神经网络手语识别模型为双向长短时记忆神经网络模型Bi-LSTM;所述步骤2具体包括以下步骤:
步骤2.1:确定神经网络手语识别模型类型
使用Bi-LSTM模型对处理后的手语时间序列数据进行检测;Bi-LSTM模型分为两个LSTM层,输入序列分别以正序和反序输入至两个LSTM层进行特征提取;
步骤2.2:模型结构与选择模型优化函数
Bi-LSTM模型包括时间序列输入层、Bi-LSTM层、全连接层、softmax层、分类输出层;模型优化函数选择adma。
所述步骤4中采用准确率、精准度、召回率和F1分数对神经网络手语识别模型泛化性能进行评估;
准确率公式如下:
精确率公式如下:
召回率公式如下:
F1分数公式如下:
其中TP 为真阳性,FP 为假阳性,TN 为真阴性,FN 为假阴性,F1-score为精确率和召回率的调和平均数。
所述步骤5中具体包括以下步骤:
步骤5.1:将训练好的手语识别模型加载到人机交互平台;
步骤5.2:对三轴磁力计数据进行校正,同步骤1.2.1;采集八字型随机旋转时的数据,作为三轴磁力计校正的样本采用最小二乘法进行椭球拟合校正;
步骤5.2:受试者面朝北手部自然下垂3-4秒完成初始姿态标定,开始进行手语识别;
步骤5.3:将实时采集的手语数据进行姿态解算、手语自动分割、数据归一化;其中手语自动分割方法,如下式:
步骤5.4:将处理后的数据输入加载的Bi-LSTM模型中进行识别;
步骤5.5:输出识别结果。
所述步骤3中训练方式采用五折交叉验证。
本发明的有益效果在于:
1.本发明的手语识别系统采集端是基于多IMU的数据手套,简化了处理电路,减小了数据处理阶段的计算量,能够保证获取手部包括手指在内的所有姿态、运动和位置信息,对复杂精细手语进行识别。
2.本发明的手语识别系统中采用最小二乘法对数据手套的磁力计进行椭球拟合校正,解决了环境中可能存在磁场强弱不同导致磁力计数据受干扰,导致的识别率下降的问题。
3.本发明的手语识别系统中采用基于梯度下降的姿态解算方法,保证了手部做大幅动作时姿态变化和精细动作时的高精度,从而提高了手语识别系统对相似度较高手语的识别率。
附图说明
图1为本发明中一种基于可穿戴计算的手语识别系统硬件框图;
图2为本发明中惯性数据手套的IMU在手部分布位置;
图3为本发明中一种基于可穿戴计算的手语识别方法的整体算法流程;
图4为本发明中实施例中的20种手语样本动作,样本来自中国聋哑人手语中选取的20种动态手语;图4(a)为对不起;图4(b)为生气;图4(c)为难过;图4(d)为你;图4(e)为你好;图4(f)为努力;图4(g)为他们;图4(h)为我;图4(i)为谢谢;图4(j)为再见;图4(k)为保护;图4(l)为动态;图4(m)为高兴;图4(n)为欢迎;图4(o)为结婚;图4(p)为开玩笑;图4(q)为起立;图4(r)为同意;图4(s)为停止;图4(t)为团结;
图5(a)为身体坐标系示意图;
图5(b)为地理坐标系示意图;
图5(c)为传感器坐标系示意图;
图6为本发明中经过预处理后的数据结构;
图7为本发明中手语识别模型的具体结构;
图8为本发明实例中对各类手语目标识别混淆矩阵。
图9(a)为三轴磁力计校正前;
图9(b)为三轴磁力计校正后;
图10(a)为梯度下降数据融合方法重构效果;
图10(b)为互补滤波数据融合方法重构效果;
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面结合附图和实施例对本发明进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需说明的是,为了便于描述,附图中仅示出了与本发明的部分而非全部内容。
根据图1,本发明提供一种基于可穿戴计算的手语识别系统,包括惯性数据手套、路由装置、人机交互平台。
惯性数据手套包括以下四部分:运动采集节点、数据汇聚节点、数据传输模块和采集系统主控。其中单只惯性数据手套中运动采集节点包括了16颗IMU,用于捕捉单手手掌、手指的运动、位置信息。数据汇聚节点对采集到手部传感器信息进行组合,并添加帧头帧尾,以便之后数据的上传。数据传输模块采用网络通信协议实现惯性数据手套与采集软件之间的数据传输,实现运动数据的无线上传存储和处理。采集系统主控负责对传感器采集的数据进行预处理。
路由装置作为系统数据通信中枢,搭建局域网实现人机交互平台与数据手套之间的数据传输与指令控制。在路由配置中需要满足数据手套、路由装置、人机交互平台在同一IP网段内。
人机交互平台用于对手语识别系统进行操作与惯性数据手套上传数据做处理,主要由控制部分和分析部分组成。控制部分通过TCP网络协议向惯性数据手套发送采集指令,并监控惯性数据手套的工作状态。分析部分用于处理在PC端存储的原始IMU数据,重建手部的姿势和划分、识别手语。上述操作包括键盘和鼠标等设备,考虑到系统便携性,可以通过一块触摸屏实现显示结果与操作设置。
本实施例中惯性数据IMU使用的是MPU9250,这款芯片可以采集包括三轴加速度计、三轴陀螺仪、三轴磁力计在内的九轴数据,有两种可选通讯接口IIC与SPI,功耗在mA级别,可以满足实时采集手语信息的需求;数据传输模块采用一款板载ESP8266的WIFI模块,提供SPI高速串行主机通信接口,通信带宽每秒钟可达兆字节,满足手语数据上传的需求。采集系统主控采用的是Cortex-M4架构的STM32407VGT6芯片,内部集成有浮点运算单元,可以加速对IMU数据计算。整个系统通过3.3V的锂电池进行集中式供电。
惯性数据手套将15颗IMU分布于每根手指(拇指、食指、中指、无名指、小指),以测量手指运动信息,各IMU节点之间通过软排线连接,保证关节运动的灵活。1颗IMU分布于手背,用于测量手部运动信息。
图2显示了每个传感器与手部的映射关系。
本实施例中路由装置采用300Mps的路由器,传输带宽远远高于惯性数据手套上传数据带宽,满足系统要求。本发明对中间路由装置并无特殊要求,在户外环境可通过包括但不限于手机热点,无线模块等可以构建局域网的设备。
本实施例中人机交互平台,包括键盘和鼠标和显示器,软件功能包括对数据手套的状态监控、系统控制、数据的上传与存储、数据预处理、手语识别的功能,其中手语识别是通过嵌入的手语识别神经网络模型完成的。
本实施例中,基于可穿戴计算的手语识别模型其构建过程如下:
步骤1:制作手语数据集;
步骤2:建立神经网络模型;
步骤3:使用手语数据集对神经网络模型进行训练;
步骤4:对训练好的神经网络模型进行泛化性能测试;
步骤5:对测试效果达标的模型移植到人机交互平台,通过系统对手语进行实时识别。
整体算法及使用方法流程如图3所示。
本实施例中,制作手语数据集方法具体如下:
步骤1.1:采集待识别手语原始样本数据,手语采集样本如图4所示,共包含20种动态手语,手语动作具体描述见表1;在本实施例中,分别采集每种手语样本数据共140组,每组包含上述20种手语;
表1手语描述总结
步骤1.1.1:打开数据手套开关完成系统初始化,连接人机交互平台,准备采集手语动作,受试者面朝北静止3-4秒完成初始姿态标定。
惯性数据手套的输出数据均来自于各自的传感器坐标系下,而本发明中的手语动作是相对于空间位置的。涉及到多种常用坐标系以及坐标系之间的转换关系。通过不同坐标系之间的转换关系。可以将传感器坐标系下的测量值转换到地理坐标系下。整个系统包含了三个坐标系参考图5,具体如下:
传感器坐标系(SCS,O-XsYsZs):选择mpu9250数据手册中陀螺仪的坐标仪作为传感器坐标系。佩戴传感器时,使传感器坐标系与载体坐标系重合,可以减少姿态解算的误差。
身体坐标系(BCS,O-XbYbZb):身体坐标系以载体的质心为坐标原点。常用的人体坐标系有“右前上”和“前右下”直角坐标系,本文中三个坐标系指向前右下。
地理坐标系(GCS,O-XgYgZg):地理坐标系以载体所处位置为坐标系原地。根据O-Zg轴沿当地垂线向上或者向下可以分为东-北-天坐标系和北-东-地坐标系,两者均满足右手坐标系原则。本文中地理坐标系三个坐标轴分别指向北、东、地心。文中所提的北方特指磁场北极。
步骤1.1.2:受试者跟随屏幕提醒完成手语动作,每完成一个手语动作,手臂自然下垂。
步骤1.1.3:完成一组手语数据采集后,将手语原始惯性数据保存到指定文件夹作为样本数据,以便后序进行处理。
步骤1.1.4:休息两分钟,然后进行下一组数据采集。每名受试者采集20组手语数据。
步骤1.2:将采集的手语样本数据进行预处理,包含误差校正、姿态解算、手语样本分割、数据归一化;
步骤1.2.1:误差校正是惯性传感器不可或缺的环节,传感器偏差和误差是影响姿态融合精度的主要因素。而本实施例中惯性数据手套中IMU使用的是MPU9250,成本较低,在进行手部姿态解算时会出现明显的陀螺仪漂移现象,导致姿态解算不准确,通常需要三轴磁力计数据进行融合补偿,而三轴磁力计容易受到空间中多种因素的干扰,从而导致测量误差较大。因此在使用之前需要校正,以提高测量精度。本实施例中采用八字标定法对三轴磁力计进行标定。即手套开始进行数据采集后,将其在空间中绕八字旋转10到15秒,本发明采用最小二乘法求解椭球拟合问题来标定磁力计,求解以下误差模型:
其中,表示三轴磁力计的测量值,表示三轴磁力计不存在误差的理论值,表示三轴磁力计零偏误差,kx,ky,kz表示三轴磁力计各轴灵敏度误差系数;kxy、kyx、kzx、kzy、kxz、kyz表示三轴磁力计各轴的耦合系数。
通过最小二乘法拟合得到椭球方程,求解误差系数K和零偏误差B0,
根据磁场误差模型,将三轴磁力计数据进行矫正;
步骤1.2.2:姿态解算是将惯性数据手套采集的三轴加速度计、三轴陀螺仪、三轴磁力计数据通过数据融合算法求出当前载体的四元数或欧拉角,本实例中采用的是基于梯度下降法的数据融合方法对手部进行姿态解算,由于直接通过陀螺仪数据求解微分方程存在较大的误差,所以加以加速度数据和磁力计数据估计误差修正项,消除陀螺仪数据积分的误差,实现姿态更新。下面介绍本实施例中梯度下降数据融合方法原理:
在该算法中,通过定义一个误差函数来反映解算过程中的姿态误差,该误差函数就是梯度下降算法中的目标函数,在本实施例中,该误差函数是一个多元向量函数。系统的姿态误差由两部分产生,一部分由三轴加速度计产生,另一部分由三轴磁力计产生,因此,误差函数由三轴加速度计计算误差和三轴磁力计计算误差两部分组成,当该误差函数为零时,则认为求解得到的姿态矩阵不存在误差。
加速度计产生的误差用误差函数Ff(q,f)可表示为:
三轴磁力计产生的误差用误差函数Fm(q,m)可表示为:
总误差函数,即目标函数Ff,m(q,f,m)可表示为
将目标函数求偏导数,得到雅可比矩阵可表示为
从优化的角度考虑,最小化误差,使用高斯牛顿法求解,q▽,t表示计算过程中的目标姿态,可有如下关系
其中,μ为步长;▽表示微分算子,表示q的变化率,其和误差矢量,即Ff,m(q,f,m)的关系如下:
算法最后求解出一个表示姿态的四元数,共包含两部分。一部分是利用三轴陀螺仪输出值求解微分方程解得;另一部分是通过目标函数求解得到的修正四元数。两者都可以描述同一时刻下手部的姿态。设求解四元数微分方程得到的姿态四元数为qω,t,用α表示修正四元数所占的权重,将这两部分四元数结合,则最终的姿态四元数qt可以表示为
qt=αq▽,t+(1-α)qω,t
假设β表示陀螺仪的测量误差,该系统参数可以通过标定算法测量得到;ts表示采样周期;则权重α与步长μ有如下关系:
最终姿态四元数可以表示为:
步骤1.2.2.1:利用步骤1.2.1中经校正的三维磁力计信号确定地理北极方向,并根据手部自然下垂时的三维加速度信号和步骤1.2.1中经校正的三维磁力计信号,获得手部的初始姿态,并进行校正;
通过求解传感器坐标系与载体坐标系相对的欧拉角,利用三维加速度信号得到俯仰角θ与横滚角γ,公式如下:
步骤1.2.2.2:利用如下载体坐标系与传感器坐标系的转化公式将步骤1.2.2.1求得的欧拉角转化成载体坐标系到传感器坐标系的单位四元数:
步骤1.2.2.3:根据手部自然下垂时的运动信号和经校正的三维磁力计信号,可以通过重力矢量方向与地球磁场北极方向确定传感器坐标系与地理坐标系的旋转四元数,完成手部初始姿态与初始手部模型的标定,包括以下过程:
手部模型关节点坐标位置公式:
手部关节向量在地理坐标系的旋转可以表示为:
最终得到手部关节向量在地理坐标系的旋转公式:
在进行初始手部姿态校正时,载体坐标系通过手部自然下垂静止时朝向磁场北极站立的方式与地理坐标系重合,可以得到在初始时刻:
步骤1.2.2.4:最终利用梯度下降的数据融合算法更新手部运动姿态,获取实时更新的手部四元数信息;更新后的四元数与传感器采集的原始加速度信号、陀螺仪采集的角速度信号组合,从而进行下一步处理,组合后的数据结构如图6所示。
步骤1.2.3:手语数据分割是将采集到的手语数据进行手语样本标签标注,用于后序模型训练;并通过与高帧率相机视频对照的方式对手语数据分割,其中每个节点数据是同步采样的,因此只需对手部节点进行划分即可;
本实施例中包括手部每个采集节点的三维加速度信号、三维角速度信号、手部姿态单位四元数,如下式所示:
[ax,ay,az,gx,gy,gz,q0,q1,q2,q3]
其中ax,ay,az为加速度计采集的三轴加速度信号,gx,gy,gz三轴陀螺仪采集的三维角速度信号,q0,q1,q2,q3为手部单位四元数。
采用这种特征组合方式是考虑到所识别的手语是动态手语,若采用欧拉角作为特征在大幅度动作中会存在万向锁问题,而旋转四元数则不存在这种问题;引入加速度信号和角速度信号作为特征考虑到其中包含手部动作的原始动态信息,相较于只利用手部旋转四元数作为特征在准确率方面有显著提升。
步骤1.2.4:数据归一化是将最终分割的数据处于0~1区间内;
本实施例中,构建神经网络模型的具体步骤如下:
步骤2.1:确定神经网络模型类型;
本实施例中采用的是Bi-LSTM模型,它结合了输入序列在正向和反向的信息。在本发明中,两个LSTM层的矢量输出被连接并发送到下一层。Bi-LSTM的模型框架如图7所示。将采集到的手语数据通过人工分割处理,直接输入到Bi-LSTM的输入端,利用模型自身特性对手语上下文信息进行特征学习,最后输出识别结果。选择Bi-LSTM的原因主要是考虑到手语的惯性传感器信号与时间有关,手语与手语在时域上隐含着诸多特征,Bi-LSTM可以更好地捕捉序列中的上下文信息。其次,考虑到自建数据集样本数量较小,很难训练出良好的深度学习模型,而Bi-LSTM比较适用于小样本数据集。
步骤2.2:模型结构与选择模型优化函数;
Bi-LSTM模型包括时间序列输入层、Bi-LSTM层、全连接层、softmax层、分类输出层;模型优化函数选择adma。
Bi-LSTM模型模型的训练与测试可以在任意平台进行,如TensorFlow、pytoch、MATLAB。本实施例中训练和测试以及算法对比是在MATLAB的深度学习框架进行的。其中训练过程具体如下:
步骤3:对步骤1中划分为训练集的手语数据集采用五折交叉验证方法对模型进行训练,使用交叉验证是考虑到数据集可能存在严重的不平衡性或者模型过于复杂都可能会有识别模型过拟合的风险,即训练好的模型在训练集识别效果很好,但在验证集上大打则扣。相反如果训练集数据过小也会有模型欠拟合的风险。即模型在训练集和验证集上识别效果都不好。通常一个好的识别模型要在两者之间寻求平衡,这样训练出的模型才能有后序工程意义。因此本实施例考虑实际情况,使用五折交叉验证,即将数据集切分为五个子集,用四个子集用于训练,一个子集用于验证结果。重复五次,每个子集验证一次,最终对验证结果取平均得到最终的预测结果。
本发明中手语识别模型的测试过程具体如下:
步骤4中采用准确率、精准度、召回率和F1分数对模型泛化性能进行评估,其中准确率一般是评价多分类模型性能的重要指标,公式如下:
精确率是只针对预测正确的正样本,表现为预测为正的里面有多少真正的正的,公式如下:
召回率表现出在实际正样本中,分类器能预测出多少,公式如下:
F1分数是一个综合评价指标,是精确率和召回率的调和值,公式如下:
其中TP为真阳性,FP为假阳性,TN为真阴性,FN为假阴性。
目前基于可穿戴技术的手语识别模型主要还是以传统机器学习模型为主,通过对采集的传感器数据进行人工特征提取,再属于到模型识别器进行手语识别,本发明选取了DT,SVM,KNN,RF四种分类算法与本发明所使用的方法进行对比实验以验证本发明有效性。
本实施例中,采用五折交叉验证方法防止模型过拟合,计算五次预测的平均准确率。我们使用上述总计五种算法对20种手语进行训练。最终我们训练出五种模型对20种手语识别准确率见表2。
表2模型交叉验证准确率
分别从五种模型方法中选取出经过五次交叉验证后准确率最高的模型进行泛化性能评估。将事先准备好的未参与训练与验证的数据集输入模型,最后得到的评估指标见表3。
表3模型评价指标总结
图8给出了对20种手语识别的混淆矩阵,表示预测的手语标签等于真实手语标签的百分比。
本实施例中,通过模型进行手语识别的具体步骤如下:
步骤5.1:将训练好的手语识别模型加载到人机交互平台;
步骤5.2:对磁力计数据进行校正,同步骤1.2.1;采集八字型随机旋转时的数据,作为磁力计校正的样本采用最小二乘法进行椭球拟合校正;
步骤5.2:同步骤1.1.1;
步骤5.3:将实时采集的手语数据进行姿态解算、手语自动分割、数据归一化;其中手语自动分割方法,如下式:
通过对ΔqN设置恰当的阈值后,算法便可实现对手势起点和终点的准确检测;为有效降低因用户突然抖动造成的误检测,需对N进行设置,本实施例中在采样频率为100Hz的情况下,平滑长度设为10,阈值设置为3。
步骤5.4:将处理后的数据输入加载的Bi-LSTM模型中进行识别;
步骤5.5:输出识别结果。
下面以实例的形式对本发明做进一步的解释说明:
实例一
受试者穿戴好数据手套,在当前环境下进行八字绕采集环境磁场数据,进行磁力计校正,选取其中单个传感器,实验结果如图9所示,三轴磁力计经校正前由于受到磁场影响,拟合出的球心不在坐标原点,而经校正后的磁力计球心在原点,并且位置为正。
实例二
受试者穿戴好数据手套,四指并拢向上进行简单动作后恢复四指并拢,观察两种算法的姿态解算效果,实验结果如图10所示,由实验结果可知,在手部进行复杂精细动作下,梯度下降数据融合方法具有较好的姿态解算效果。
Claims (5)
1.一种基于可穿戴计算的手语识别方法,其特征在于,基于可穿戴计算的手语识别系统实现手语识别;该基于可穿戴计算的手语识别系统包括两只惯性数据手套、路由装置、人机交互平台;
每只惯性数据手套包括十六颗惯性传感器和一个无线传输模块;惯性传感器包括三轴加速度计、三轴陀螺仪、三轴磁力计,用于捕捉单手手掌和手指的运动信息、位置信息;无线传输模块通过传输控制协议以路由装置为中枢与人机交互平台完成交互;
人机交互平台将惯性数据手套采集的数据进行误差校正、姿态解算、手语样本分割后输入到神经网络手语识别模型中,对识别到的手势最终显示在屏幕上;
基于可穿戴计算的手语识别方法具体包括步骤如下:
步骤1:制作手语数据集;
步骤1.1:采集待识别手语的原始惯性数据,
使用惯性数据手套采集20种动态手语的原始惯性数据;
步骤1.2:将采集到的手语原始惯性数据进行预处理,
预处理包括对采集的原始惯性数据进行误差校正、姿态解算、手语样本分割、数据归一化;
步骤1.2.1:采用最小二乘法求解椭球拟合问题来标定三轴磁力计;
其中,表示三轴磁力计的测量值,表示三轴磁力计不存在误差的理论值,表示三轴磁力计零偏误差,kx,ky,kz表示三轴磁力计各轴灵敏度误差系数;kxy、kyx、kzx、kzy、kxz、kyz表示三轴磁力计各轴的耦合系数;
通过最小二乘法拟合得到椭球方程,求解误差系数K和零偏误差B0,
步骤1.2.2:姿态解算将惯性数据手套采集的原始惯性数据采用梯度下降数据融合算法提取手部四元数信息,采用以下公式进行迭代:
三轴加速度计产生的误差用误差函数Ff(q,f)表示为:
其中,[fx b fy b fz b]T为三轴加速度计的测量值;Ffx为加速度计X轴误差;Ffy为加速度计Y轴误差;Ffz为加速度计Z轴误差;q0,q1,q2,q3为旋转四元数;
三轴磁力计产生的误差用误差函数Fm(q,m)表示为:
将目标函数求偏导数,得到雅可比矩阵
最后求解出一个表示姿态的四元数,共包含两部分;一部分是利用三轴陀螺仪输出值求解微分方程解得;另一部分是通过目标函数求解得到的修正四元数;两者均描述同一时刻手部的姿态;设求解四元数微分方程得到的姿态四元数为qω,t,用α表示修正四元数所占的权重,将这两部分四元数结合,则最终的姿态四元数qt表示为;
β表示三轴陀螺仪的测量误差,通过标定算法测量得到;ts表示采样周期;则权重α与步长μ有如下关系:
最终姿态四元数表示为:
步骤1.2.2.1:利用步骤1.2.1中经校正的三轴磁力计信号确定地理北极方向,并根据手部自然下垂时的三维加速度信号和步骤1.2.1中经校正的三维磁力计信号,获得手部的初始姿态,并进行校正;
通过求解传感器坐标系与载体坐标系相对的欧拉角,利用三维加速度信号得到俯仰角θ与横滚角γ,公式如下:
步骤1.2.2.2:利用如下载体坐标系与传感器坐标系的转化公式将步骤1.2.2.1求得的欧拉角转化成载体坐标系到传感器坐标系的单位四元数:
步骤1.2.2.3:根据手部自然下垂时的运动信号和经校正的三维磁力计信号,通过重力矢量方向与地球磁场北极方向确定传感器坐标系与地理坐标系的旋转四元数,完成手部初始姿态与初始手部模型的标定,包括以下过程:
手部模型关节点坐标位置公式:
手部关节向量在地理坐标系的旋转为:
最终得到手部关节向量在地理坐标系的旋转公式:
在进行初始手部姿态校正时,载体坐标系通过手部自然下垂静止时朝向磁场北极站立的方式与地理坐标系重合,得到在初始时刻的公式:
步骤1.2.2.4:最终利用梯度下降的数据融合算法更新手部运动姿态,获取实时更新的手部四元数信息;
步骤1.2.3:手语样本分割将原始加速度、三轴陀螺仪数据和解算出的手部姿态四元数信息结合后,如下式所示;并利用高速相机对组合的手语时间序列数据进行人工手语分割并给予手语特定标签;
[ax,ay,az,gx,gy,gz,q0,q1,q2,q3]
其中,ax,ay,az为三轴加速度计采集的三轴加速度信号,gx,gy,gz为三轴陀螺仪采集的三维角速度信号,q0,q1,q2,q3为手部单位四元数;
步骤1.2.4:数据归一化将分割后给予手语特定标签的数据处于0~1区间内;
步骤1.3:对预处理后的每个受试者的手语时间序列数据按照9:1的比例进行训练集和测试集的平衡数据划分;
步骤2:建立神经网络手语识别模型;
步骤3:使用手语数据集对神经网络手语识别模型进行训练;
步骤4:对训练好的神经网络手语识别模型进行泛化性能测试;
步骤5:对测试效果达标的神经网络手语识别模型移植到人机交互平台,通过基于可穿戴计算的手语识别系统对手语进行实时识别。
2.根据权利要求1所述的基于可穿戴计算的手语识别方法,其特征在于,所述神经网络手语识别模型为双向长短时记忆神经网络模型Bi-LSTM;所述步骤2具体包括以下步骤:
步骤2.1:确定神经网络手语识别模型类型
使用Bi-LSTM模型对处理后的手语时间序列数据进行检测;Bi-LSTM模型分为两个LSTM层,输入序列分别以正序和反序输入至两个LSTM层进行特征提取;
步骤2.2:模型结构与选择模型优化函数
Bi-LSTM模型包括时间序列输入层、Bi-LSTM层、全连接层、softmax层、分类输出层;模型优化函数选择adma。
4.根据权利要求3所述的基于可穿戴计算的手语识别方法,其特征在于,所述步骤5中具体包括以下步骤:
步骤5.1:将训练好的手语识别模型加载到人机交互平台;
步骤5.2:对三轴磁力计数据进行校正,同步骤1.2.1;采集八字型随机旋转时的数据,作为三轴磁力计校正的样本采用最小二乘法进行椭球拟合校正;
步骤5.2:受试者面朝北手部自然下垂3-4秒完成初始姿态标定,开始进行手语识别;
步骤5.3:将实时采集的手语数据进行姿态解算、手语自动分割、数据归一化;其中手语自动分割方法,如下式:
步骤5.4:将处理后的数据输入加载的Bi-LSTM模型中进行识别;
步骤5.5:输出识别结果。
5.根据权利要求1所述的基于可穿戴计算的手语识别方法,其特征在于,所述步骤3中训练方式采用五折交叉验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211698335.6A CN115904086A (zh) | 2022-12-28 | 2022-12-28 | 基于可穿戴计算的手语识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211698335.6A CN115904086A (zh) | 2022-12-28 | 2022-12-28 | 基于可穿戴计算的手语识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115904086A true CN115904086A (zh) | 2023-04-04 |
Family
ID=86482286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211698335.6A Pending CN115904086A (zh) | 2022-12-28 | 2022-12-28 | 基于可穿戴计算的手语识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115904086A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116520990A (zh) * | 2023-04-28 | 2023-08-01 | 暨南大学 | 一种基于轻量级神经网络的手语识别方法、系统及手套 |
-
2022
- 2022-12-28 CN CN202211698335.6A patent/CN115904086A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116520990A (zh) * | 2023-04-28 | 2023-08-01 | 暨南大学 | 一种基于轻量级神经网络的手语识别方法、系统及手套 |
CN116520990B (zh) * | 2023-04-28 | 2023-11-24 | 暨南大学 | 一种基于轻量级神经网络的手语识别方法、系统及手套 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220241641A1 (en) | Systems and Methods of Swimming Analysis | |
CN105068657B (zh) | 手势的识别方法及装置 | |
CN109846487B (zh) | 基于MIMU/sEMG融合的大腿运动姿态测量方法和装置 | |
CN106989773B (zh) | 一种姿态传感器及姿态更新方法 | |
CN108279773B (zh) | 一种基于marg传感器和磁场定位技术的数据手套 | |
CN114676956A (zh) | 基于多维数据融合的老人跌倒风险预警系统 | |
CN111708433A (zh) | 手势数据采集手套及基于手势数据采集手套的手语手势识别方法 | |
CN107281710A (zh) | 一种矫正动作误差的方法 | |
CN116027905A (zh) | 基于惯性传感器的双人皮划艇上肢动作捕捉方法 | |
CN106970705A (zh) | 动作捕捉方法、装置和电子设备 | |
CN115904086A (zh) | 基于可穿戴计算的手语识别方法 | |
CN111966217A (zh) | 基于手势和眼动的无人机控制方法和系统 | |
WO2024094227A1 (zh) | 一种基于卡尔曼滤波和深度学习的手势姿态估计方法 | |
CN113029153A (zh) | 基于智能手机多传感器融合和svm分类的多场景pdr定位方法 | |
CN110236560A (zh) | 智能穿戴设备的六轴姿态检测方法、系统 | |
CN206270980U (zh) | 一种用于手势识别的动作捕捉手套 | |
CN116206358A (zh) | 一种基于vio系统的下肢外骨骼运动模式预测方法及系统 | |
He et al. | Design and implementation of low-cost inertial sensor-based human motion capture system | |
Xu et al. | Towards human motion tracking: an open-source platform based on multi-sensory fusion methods | |
Liu et al. | Shoulder Motion Detection Algorithm Based on MPU6050 Sensor and XGBoost Model | |
CN113873637A (zh) | 定位方法、装置、终端和存储介质 | |
Zhang et al. | Human motion capture system based on distributed wearable sensing technology | |
CN118094475B (zh) | 一种基于多传感器融合的手势识别系统 | |
Feng et al. | Design and implementation of gesture recognition system based on flex sensors | |
Song et al. | A Learning-Based Multi-Node Fusion Positioning Method Using Wearable Inertial Sensors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |