一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于自适应学习的用户无关肌电手势识别系统

2022-04-24 19:40:39 来源:中国专利 TAG:


1.本发明涉及手势识别领域,具体涉及一种基于自适应学习的用户无关肌电手势识别系统。


背景技术:

2.随着设备智能化的发展,过去以计算机为中心的人机交互(human machine interaction,hmi)方式正转变为以人为中心的自然人机交互方式,这种转变使得人类仅凭手势或者思想即可实现与计算机的自然交流。由于表面肌电信号直接反映了肌肉的活跃程度,经过解析后能得到用户的运动意图,因此被广泛应用于人机交互领域。
3.目前,基于表面肌电信号的人机交互系统通常包括两个主要过程:1)利用用户的训练样本离线训练手势分类模型;2)利用训练后的分类模型进行在线手势识别,并将识别结果作为人机交互的控制输入,上述过程使得系统在多种手势动作下也能取得较好的识别表现。然而,上述过程所应用的方法是用户相关的,即模型的训练数据和测试数据均来自同一用户。由于皮肤阻抗、肌肉形态以及生理和心理等方面差异的原因,不同用户执行相同动作时的肌电信号会存在较大差异,使得用户相关模型应用在新用户手势识别时的分类表现变差。因此,为了保证人机交互系统的优秀表现,对于不同用户,通常需要花费大量时间进行数据采集、数据处理与建模,该过程繁琐,会极大降低用户的使用体验。所以,设计一种能简化新用户的使用过程,并能应用于穿戴式人机交互系统的用户无关方法是十分必要的。


技术实现要素:

4.有鉴于此,本发明的目的在于提供一种基于自适应学习的用户无关肌电手势识别系统,解决了因肌电信号的个体差异性而导致的模型不通用问题,无需用户再训练步骤,极大的提高了用户的使用体验,且识别正确率会动态提升。
5.为实现上述目的,本发明采用如下技术方案:
6.一种基于自适应学习的用户无关肌电手势识别系统,包括依次连接的数据获取单元、聚类单元、自适应knn近邻分类器和风险评估器;
7.所述数据获取单元,获取现有用户数据,并进行数据处理;
8.所述聚类单元,将预处理后的信号数据,采用k-means聚类找到不同动作的聚类中心,提取各个用户每种动作与聚类中心距离最近的n个样本充当训练集,用于训练自适应knn近邻分类器;
9.所述自适应knn近邻分类器,用于根据新用户数据得到对应的标签;
10.所述风险评估器对新用户数据进行评估,合格的样本则用来替换训练集的偏远样本和更新训练集样本的权值。
11.进一步的,所述数据处理包括去除信号中的工频50hz噪声、全波整流、3阶巴特沃夫低通滤波、活动段提取、特征提取以及归一化处理。
12.进一步的,所述活动段提取过程中,设置窗长为200ms、步长为50ms的滑窗,对低通
滤波后的包络线进行滑动窗口处理,每个的滑动窗口处理记为t(t);取阈值为窗内峰值的0.015倍,当t(t)内持续180ms的数据均大于阈值时,该段确定为活动段;当t(t)内大于阈值的数据持续时间少于180ms时,该段确定为静息段;
13.对每个活动段,利用非负矩阵分解算法提取肌肉协同:
[0014][0015][0016]
其中,v为样本集矩阵,w为肌肉协同矩阵,h为激活稀疏矩阵,i=1,2,3...i,o=1,2,3...o,j=1,2,3...j,i为肌肉数目,j为采样点数,o为肌肉协同数目;
[0017]
肌肉协同的数目由vaf值确定
[0018][0019]
进一步的,所述归一化处理,对于每一个肌肉协同w具体为:
[0020][0021]
其中,w_max和w_min分别为w的最大值与最小值。
[0022]
进一步的,所述采用k-means聚类找到不同动作的聚类中心,具体为:
[0023]
设待测样本为肌肉协同w,类别簇为c1,c2,c3,c4,μi为类别簇ci的质心,优化目标为最小化误差e:
[0024][0025][0026]
设置初始质心为各个手势类别的向量均值,记录每一代的类别质心,当迭代次数达到上限或者最后一代质心与上一代质心的差异小于预设值时结束;
[0027]
最终的类别质心充当模板,选择各个用户每种动作距离模板最近的n个样本充当代表样本,构成训练集。
[0028]
进一步的,所述自适应knn分类器可以自动选择合适k值,具体为:
[0029]
对于新用户待测样本w,首先计算其与第二部分得到的训练集y=[y1,y2,...yn]的欧氏距离:
[0030][0031]
其中,i=1,2,..l,l为训练集的样本数;
[0032]
接着,对距离矩阵d进行升序排序,每次最近邻个数k的取值为5的倍数,记录每个k的最大类别和第二类别的数目,直到k的取值达到上限;然后,判断两个类别的数目是否有交叉点,若存在交叉点,则最优的k取值为:
[0033][0034]
其中,p
first
为第一个交叉点;
[0035]
若无交叉点,则按照下式计算每个k的分数:
[0036][0037]
其中,s为最大类别的数目,d为最大类别中离待测样本最远的距离,然后,对score进行排序,最大值对应的k即为k。
[0038]
进一步的,所述风险评估,具体如下:
[0039]
找到测试样本标签对应手势的训练集,利用欧氏距离找到训练集与样本模板的最远点,记为p,并利用下述公式计算待测样本w替换最远点p的风险:
[0040][0041]
式中,分母的第一项代表了类内的相似程度,第二项代表了类间的差异程度,a为待测样本或最远样本,μ1代表标签对应类别的模板,μ
2-μ4代表其他类别的模板。i为特征长度,即肌肉数目;
[0042]
若测试样本的风险值小于最远点的风险值,则说明该样本的类间距离与类内距离均优于最远点,为合格样本,因此可以将测试样本替代最远点样本;
[0043]
同时,k值里面与合格样本标签相同的样本,权值更改如下:
[0044][0045]
k值里面与合格样本标签不同的样本,权值更改如下:
[0046][0047]
其中,q
ago
代表更新前的权值,q
now1
和q
now2
代表更新后的权值。
[0048]
本发明与现有技术相比具有以下有益效果:
[0049]
本发明解决了因肌电信号的个体差异性而导致的模型不通用问题。通过提取代表样本步骤降低了数据量,提高了识别速度与识别精度。通过自适应学习方法自动学习新用户的特征分布,无需用户再训练步骤,极大的提高了用户的使用体验,且识别正确率会动态提升。
附图说明
[0050]
图1是本发明系统控制原理图;
[0051]
图2是本发明一实施例中数据处理流程示意图。
[0052]
图3是本发明一实施例中自适应k值流程图;
[0053]
图4是本发明一实施例中测试样本的风险值与最远点的风险值比对流程示意图。
具体实施方式
[0054]
下面结合附图及实施例对本发明做进一步说明。
[0055]
请参照图1,本发明提供一种基于自适应学习的用户无关肌电手势识别系统,包括依次连接的数据获取单元、聚类单元、自适应knn近邻分类器和风险评估器;
[0056]
数据获取单元,获取现有用户数据,并数据处理;
[0057]
聚类单元,将数据处理后的信号数据,采用k-means聚类找到不同动作的聚类中心,提取各个用户每种动作与聚类中心距离最近的n个样本充当训练集,用于训练自适应knn近邻分类器;
[0058]
自适应knn近邻分类器,用于根据新用户数据得到对应的标签;
[0059]
风险评估器对新用户数据进行评估,合格的样本则用来替换训练集的偏远样本和更新训练集样本的权值。
[0060]
在本实施例中,参考图2,数据处理具体如下:
[0061]
对于获取的原始数据,首先需要进行数据处理,主要包括滤除50hz的工频噪声、全波整流、截止频率为3hz的3阶巴特沃夫低通滤波(截止频率的大小可根据实际的滤波情况确定)、以及活动段提取等步骤。其中,活动段提取过程中,为了保证手势识别的实时性,设置窗长为200ms、步长为50ms的滑窗,对低通滤波后的包络线进行滑动窗口处理,每个的滑动窗口处理记为t(t);取阈值为窗内峰值的0.015倍,当t(t)内持续180ms的数据均大于阈值时,该段确定为活动段。当t(t)内大于阈值的数据持续时间少于180ms时,该段确定为静息段。
[0062]
然后,对每个活动段,利用非负矩阵分解(non-negative matrix factorization,nmf)算法提取肌肉协同:
[0063][0064][0065]
其中,v为样本集矩阵,w为肌肉协同矩阵,h为激活稀疏矩阵,i=1,2,3...i,
[0066]
o=1,2,3...o,j=1,2,3...j,i为肌肉数目,j为采样点数,o为肌肉协同数目。
[0067]
肌肉协同的数目可以由vaf值确定,vaf值越大,表明此协同数目下重构的矩阵v

与数据矩阵v的差异越小,一般取vaf值为85%-90%,具体公式可以表述为:
[0068][0069]
对于每一个肌肉协同w,按下述公式进行归一化处理:
[0070][0071]
其中,w_max和w_min分别为w的最大值与最小值。
[0072]
在本实施例中,聚类单元提取代表样本,具体如下:
[0073]
假设待测样本为w,类别簇为c1,c2,c3,c4,μi为类别簇ci的质心,优化目标为最小化
误差e:
[0074][0075][0076]
为了求解式子,设置初始质心为各个手势类别的向量均值,迭代次数为100代,记录每一代的类别质心,当迭代次数达到上限或者最后一代质心与上一代质心的差异小于0.02时结束。
[0077]
最终的类别质心充当模板,选择各个用户每种动作距离模板最近的30个样本充当代表样本,多名用户的代表样本构成训练集,供自适应knn算法使用,并对于每个样本的权值设置为1。
[0078]
在本实施例中,参考图3,为了弥补传统knn算法存在的缺点,本实施例提出一种可以自动选择合适k值的方法,具体如下:
[0079]
对于新用户待测样本w,首先计算其与第二部分得到的训练集y=[y1,y2,...yn]的欧氏距离:
[0080][0081]
其中,i=1,2,..l,l为训练集的样本数。
[0082]
接着,对距离d进行升序排序,每次最近邻个数k的取值为5的倍数,记录每个k的最大类别和第二类别的数目,直到k的取值达到上限。然后,判断两个类别的数目是否有交叉点,若存在交叉点,则最优的k取值为:
[0083][0084]
其中,p
first
为第一个交叉点。
[0085]
若无交叉点,则按照下式计算每个k的分数:
[0086][0087]
其中,s为最大类别的数目,d为最大类别中离待测样本最远的距离。
[0088]
然后,对score进行排序,最大值对应的k即为k。
[0089]
参考图4,在本实施例中,通过代表样本和自适应knn分类器,新用户待测数据可以得到估计的标签,需要评估该标签是否可靠,以及该标签对应的样本更新训练集时的风险是否最小。因此,需要找到测试样本标签对应手势的训练集,利用欧氏距离找到训练集与样本模板的最远点,记为p。利用下述公式计算待测样本w替换最远点p的风险:
[0090][0091]
上述式子中,分母的第一项代表了类内的相似程度,第二项代表了类间的差异程
度。a为待测样本或最远样本,μ1代表标签对应类别的模板,μ
2-μ4代表其他类别的模板。i为特征长度,即肌肉数目。
[0092]
若测试样本的风险值小于最远点的风险值,则说明该样本的类间距离与类内距离均优于最远点,为合格样本,因此可以将测试样本替代最远点样本。
[0093]
同时,k值里面与合格样本标签相同的样本,权值更改如下:
[0094][0095]
k值里面与合格样本标签不同的样本,权值更改如下:
[0096][0097]
其中,q
ago
代表更新前的权值,q
now1
和q
now2
代表更新后的权值。
[0098]
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献