基于改进的K-means聚类算法的机器人手势识别方法与流程

文档序号:21366171发布日期:2020-07-04 04:41阅读:652来源:国知局
基于改进的K-means聚类算法的机器人手势识别方法与流程

本发明涉及机器人手势识别领域,特别是涉及基于改进的k-means聚类算法的机器人手势识别方法。



背景技术:

随着人工智能和虚拟现实技术的不断发展,人机交互系统已经成为当前的研究热点。现今,作为一种新兴的人机交互方式,手势识别得到了很多研究者的重视,并产生了一系列有效的成果,且在诸如智能机器人、智能驾驶等设备中得到了广泛的应用。手势识别,简单的来说就是让机器在视觉或传感器采集系统的辅助下来理解人类所想要表达的思想,即通过无接触的方式完成交互过程,从而通过机器人完成相应的动作,在真正意义上实现智能化。

针对机器人手势识别的问题,国内涉及该问题解决方案的专利有“一种基于深度视觉的协作机器人手势识别方法及装置”(201910176271.5),预先获取手势模板集合,同时获取待识别手势的若干张深度图;针对每一个手势模板,获取所述待识别手势与所述手势模板的距离,并将与所述待识别手势之间距离最小的手势模板作为所述待识别手势的识别结果,进而根据对应于识别结果的控制参数进行协作机器人的控制。国家发明专利“一种基于智能机器人的手势识别方法”(201910118356.8),通过调用机器人自带的摄像头获取手势图像,并建立手势模板;通过基于肤色检测和基于最大类间方差对手势进行分割;使用中值滤波算法对分割后的手势图像进行去噪,并提取手势边缘轮廓;而后基于手势模板、手势边缘轮廓,采用欧式距离的模板匹配法,得到识别结果。以上两个发明专利都是对手势图片进行识别,过大维度的图片数据,一方面增大了模型的训练难度,另一方面在实际应用时,也增加了模型判别的时间。



技术实现要素:

为解决上述问题,本发明在微纳光纤传感器、k-means聚类算法的基础上,提出了基于改进的k-means聚类算法的机器人手势识别方法。首先利用微纳光纤传感器采集不用手势下对应的数据;而后利用改进的k-means聚类算法依次确定不同手势对应的聚类中心和类别阈值;同时该模型支持在线的更新优化,大大的提高了模型的泛化性;最后成功应用于实际,实现了机器人对不同手势的精准识别。为达此目的,本发明提供基于改进的k-means聚类算法的机器人手势识别方法,具体步骤如下,其特征在于:

步骤1,利用嵌有微纳光纤传感器的手套采集手部运动的数据,其中传感器采集数据维度为6维;

步骤2,通过手套上的wifi模块将微纳光纤传感器采集到的数据上传给机器人;

步骤3,机器人结合改进的k-means聚类算法预先确定不同手势对应的聚类中心;

步骤4,计算当前微纳传感器采集的数据至预先确定的不同手势的聚类中心的欧氏距离;

步骤5,将所计算的各欧氏距离与相应类别的阈值进行比较,如果欧式距离比类别阈值低,则判定为该类,否则,重新训练模型;

步骤6,机器人根据判断的结果完成相应的动作,至此,一个完整的闭环结束。

进一步,步骤3中利用改进的k-means聚类算法预先确定不同手势对应的聚类中心的具体步骤为:

步骤3.1,在所有的样本点中任意选择一个样本点作为第一个类别的初始聚类中心c1;

步骤3.2,对于整个训练样本集x={xj|j=1,2,...,n},计算每一个样本x至聚类中心的距离,将最大距离对应的样本的所在位置作为新的聚类中心;

步骤3.3,重复步骤3.2,直至确定k个聚类中心ci(1≤i≤k);

步骤3.4,对整个训练样本集x={xj|j=1,2,...,n},分别计算各样本点xj到步骤3.3所确定的k个聚类中心ci(1≤i≤k)的欧式距离,对于s维的样本来说,样本xj到第i类聚类中心ci的欧氏距离为:

步骤3.5,将样本分类到最近的欧式距离所在的类别中,遍历整个样本空间后完成对k个类簇的构建;

步骤3.6,对每个类簇,以该簇内所有样本点的均值向量作为新的类簇中心,即类簇的更新准则为:

式中,ci为更新后的各类簇的中心,mi表示第i个类簇中样本的总数,表示类簇中所有样本向量的各维度之和。

步骤3.7,重复步骤3.4-步骤3.6,直至平方误差函数收敛或迭代次数达到设定的次数,其中平方误差函数表达式为:

进一步,步骤5中若实时采集的数据至各聚类中心的欧氏距离比任意的类别阈值大,则重新训练模型的具体描述为:

通过先验知识给实时采集的样本制作标签,然后将该数据带入到已训练完成的模型中对模型进行更新修正:更新各类别的聚类中心和相应的类别阈值。此处模型支持更新优化,大大的提高了模型的泛化性。

本发明基于改进的k-means聚类算法的机器人手势识别方法,有益效果:本发明的技术效果在于:

1.本发明利用六维微纳光纤传感器实时采集当前手势下的数据,较传统的通过图片形式进行手势识别的数据采集方法有着更低的样本维度,缩短了模型的训练时间,提高了模型的判别速度,同时也保证了很高的精度;

2.本发明利用改进的k-means聚类算法对不同的手势进行聚类分析,较传统的k-means聚类方法在避免出现错误的初始聚类中心方面有着更好的改善,同时可以精确的实现对不同手势的分类以及类别阈值的确定;

3.本发明的机器人手势识别模型支持优化更新,即:当已训练好的模型无法对实时采集的数据进行分类判别,则将此时的数据作为训练数据代入至模型中进行重新训练,从而实现对各手势类别对应的类别中心和类别阈值的更新,因此大大的提高了模型的泛化性。

附图说明

图1为本发明的流程图;

图2为本发明中利用改进的k-means聚类算法识别不同手势的聚类中心和与类别阈值的示意图;

具体实施方式

下面结合附图与具体实施方式对本发明作进一步详细描述:

本发明提出了基于改进的k-means聚类算法的机器人手势识别方法,旨在简单高效的实现机器人对不同手势的精确识别。

图1为本发明的流程图。下面结合流程图对本发明的步骤作详细介绍。

步骤1,利用嵌有微纳光纤传感器的手套采集手部运动的数据,其中传感器采集数据维度为6维;

步骤2,通过手套上的wifi模块将微纳光纤传感器采集到的数据上传给机器人;

步骤3,机器人结合改进的k-means聚类算法预先确定不同手势对应的聚类中心;

步骤3.1,在所有的样本点中任意选择一个样本点作为第一个类别的初始聚类中心c1;

步骤3.2,对于整个训练样本集x={xj|j=1,2,...,n},计算每一个样本x至聚类中心的距离,将最大距离对应的样本的所在位置作为新的聚类中心;

步骤3.3,重复步骤3.2,直至确定k个聚类中心ci(1≤i≤k);

步骤3.4,对整个训练样本集x={xj|j=1,2,...,n},分别计算各样本点xj到步骤3.3所确定的k个聚类中心ci(1≤i≤k)的欧式距离,对于s维的样本来说,样本xj到第i类聚类中心ci的欧氏距离为:

步骤3.5,将样本分类到最近的欧式距离所在的类别中,遍历整个样本空间后完成对k个类簇的构建;

步骤3.6,对每个类簇,以该簇内所有样本点的均值向量作为新的类簇中心,即类簇的更新准则为:

式中,ci为更新后的各类簇的中心,mi表示第i个类簇中样本的总数,表示类簇中所有样本向量的各维度之和。

步骤3.7,重复步骤3.4-步骤3.6,直至平方误差函数收敛或迭代次数达到设定的次数,其中平方误差函数表达式为:

步骤4,计算当前微纳传感器采集的数据至预先确定的不同手势的聚类中心的欧氏距离;

步骤5,将所计算的各欧氏距离与相应类别的阈值进行比较,如果欧式距离比类别阈值低,则判定为该类,否则,重新训练模型。其中重新训练模型的具体描述为:通过先验知识给实时采集的样本制作标签,然后将该数据带入到已训练完成的模型中对模型进行更新修正:更新各类别的聚类中心和相应的类别阈值。此处模型支持更新优化,大大的提高了模型的泛化性。

步骤6,机器人根据判断的结果完成相应的动作,至此,一个完整的闭环结束。

图2为本发明中利用改进的k-means聚类算法识别不同类别的聚类中心和与类别阈值的示意图。从图示可以看出,利用改进的k-means聚类算法可以简单有效的确定不同类别的聚类中心和边界,进而得出相应的类别阈值。

以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1