1.一种动态手势识别方法,其特征是,包括以下步骤:获取手部运动数据,包括三轴加速度和角速度数据;
对手部运动数据进行处理,截取有效的手势动作数据;
对手势动作数据进行特征提取,得到特征值,包括手势动作的长度、加速度的平均值、角速度的平均值以及加速度的极值点;
获取待测手势动作数据,基于BP神经网络算法与K-means算法对待测手势动作数据进行动态手势识别。
2.根据权利要求1所述的动态手势识别方法,其特征是,获取手势开始时刻的手部运动数据、手势动作时的手部运动数据和手势结束时刻的手部运动数据。
3.根据权利要求1所述的动态手势识别方法,其特征是,所述对手部运动数据进行处理的步骤包括:根据相邻三轴加速度数据之间的差值以及相邻三轴角速度数据之间的差值去除跳点;
采用移动平均法对去除跳点后的三轴加速度和角速度数据进行平滑滤波,得到光滑的三轴加速度和角速度数据;
确定手势动作开始时和手势动作结束时的加速度与角速度的阈值,截取有效的手势动作数据。
4.根据权利要求3所述的动态手势识别方法,其特征是,所述去除跳点的方法为:判断每个三轴加速度数据与其前后相邻的三轴加速度数据的关系,如果相邻三轴加速度数据之间的差值大于设定值,则将该三轴加速度值替换成与其相邻的多个三轴加速度数据的平均值;
判断每个三轴角速度数据与其前后相邻的三轴角速度数据的关系,如果相邻三轴角速度数据之间的差值大于设定值,则将该三轴角速度值替换成与其相邻的多个三轴角速度数据的平均值。
5.根据权利要求1所述的动态手势识别方法,其特征是,所述对手势动作数据进行特征提取的步骤包括:计算手势开始时刻与手势结束时刻之间的手势动作数据的个数;
利用手势动作数据,计算三轴加速度和角速度平均值;
将每个三轴加速度数据相加,得到相应的加速度值,比较每个加速度值与其前后相邻的加速度值的大小;若该加速度值分别大于前后相邻的加速度值,则将该加速度值作为加速度的极大值;若该加速度值分别小于前后相邻的加速度值,则将该加速度值作为加速度的极小值。
6.根据权利要求1所述的动态手势识别方法,其特征是,所述基于BP神经网络算法与K-means算法对待测手势动作数据进行动态手势识别的步骤包括:利用截取的手势动作数据BP神经网络;
获取待测手势动作数据,利用训练后的BP神经网络对待测手势动作数据进行识别,输出识别结果至K-means算法;
利用K-means算法对BP神经网络的输出识别结果进行再次识别,得到最终识别结果。
7.根据权利要求6所述的动态手势识别方法,其特征是,所述利用训练后的BP神经网络对待测手势动作数据进行识别的步骤包括:输入待测手势动作数据和期望输出值;
计算各神经层的实际输出值;
根据实际输出值和期望输出值,计算全局误差;
计算反向误差;
更新网络的权值和偏差;
进一步的,所述利用K-means算法对BP神经网络的输出识别结果进行再次识别的步骤包括:将BP神经网络的输出结果作为样本,设置聚类数;
随机的抽取K个样本作为聚类中心;
计算所有样本到各个聚类中心的欧几里得距离,根据距离越小相似性越高的原则进行归类,得到初始的聚类结果,计算该聚类结果中所有样本的均值,作为新的聚类中心;
重复执行上述步骤,直至满足终止条件。
8.一种动态手势识别系统,其特征是,包括:
数据获取模块,用于获取手部运动数据,包括三轴加速度数据和三轴角速度数据;
数据处理模块,用于对手部运动数据进行处理,截取有效的手势动作数据;
特征提取模块,用于对手势动作数据进行特征提取,得到特征值,包括手势动作的长度、加速度的平均值、角速度的平均值以及加速度的极值点;
手势识别模块,用于获取待测手势动作数据,基于BP神经网络算法与K-means算法对待测手势动作数据进行动态手势识别。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征是,该程序被处理器执行时实现如权利要求1-7中任一项所述的动态手势识别方法中的步骤。
10.一种处理装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-7中任一项所述的动态手势识别方法中的步骤。