本发明属于用户交互,具体涉及一种运动中的手势数据处理方法、电子设备及存储介质。
背景技术:
1、随着科技的不断发展,人机交互逐渐成为人们生活中不可或缺的一部分。手势识别技术作为人机交互领域的一个重要分支,如今应用于智能家居、自动驾驶、虚拟现实等各种领域,而随着手势识别技术的不断进步,对手势识别精度有着更高的识别要求。
2、对于运动环境干扰下的手势识别,在智能数据手套的使用过程中,当使用者处于运动状态,且手臂自然摆动时,运动传感器的数据变化趋势与真实动态手势运动轨迹类似,容易将手臂的摆动误识别成真实的动态手势,需要在面向干扰环境进行实时手势分割。
技术实现思路
1、本发明要解决的问题是对于运动状态下的手势进行精准的数据处理,提出一种运动中的手势数据处理方法、电子设备及存储介质。
2、为实现上述目的,本发明通过以下技术方案实现:
3、一种运动中的手势数据处理方法,包括如下步骤:
4、s1.使用智能数据手套,采集运动过程中的实验数据,包括运动过程中的三轴加速度计数据、运动过程中的三轴陀螺仪数据;
5、s2.对步骤s1采集的运动过程中的三轴加速度计数据、运动过程中的三轴陀螺仪数据进行对比分析,提取用于运动中的手势识别数据;
6、s3.构建基于手臂运动状态检测的手臂状态分割算法模块,将步骤s2得到的用于运动中的手势识别数据输入到基于手臂运动状态检测的手臂状态分割算法模块中得到过滤后的动态手势数据;
7、s4.然后将步骤s3得到的过滤后的动态手势数据输入到基于线段拟合模型比较的动态手势分割算法模块进行手势分割,然后进行数据降噪,得到处理后的运动中的手势数据。
8、进一步的,步骤s1采集运动过程中的实验数据,运动过程控制以5km/h及以下的速度慢跑1.5s以上再做手势,慢跑的过程中自然摆臂,在做手势之前将手臂抬平到胸前,手臂保持稳定0.05s,然后做两次同一个动态手势,做完保持手臂抬平稳定0.05s,再继续慢跑1.5s以上再做手势。
9、进一步的,步骤s2对采集的运动过程中的自然摆臂到运动中抬平手臂再到运动中自然摆臂之间的状态切换的6轴传感器数据按照时间及维度作曲线图,进行分析如下,基于重力的影响三轴加速度计数据在不同手臂状态下的运动数据差别不大,无法提取出自然摆臂和抬平手臂的数据特征,无法区分手臂的运动状态,三轴陀螺仪数据在运动中手臂状态之间切换的数据特征明显,提取三轴陀螺仪数据用于运动中的手势识别数据。
10、进一步的,步骤s3构建基于手臂运动状态检测的手臂状态分割算法模块的具体实现方法包括如下步骤:
11、s3.1.利用陀螺仪信号的能量函数描述陀螺仪信号的波动情况,第i帧陀螺仪信号的能量的表达式ei为:
12、
13、其中,表示第i帧陀螺仪第j个分量值;
14、s3.2.设置陀螺仪阈值thgro、稳定态阈值thstatic、运动窗口阈值thsports_window;
15、s3.3.初始化静态波动窗口、动态波动窗口为10,然后利用步骤s2得到的用于运动中的手势识别数据,计算滑动窗口差分能量值energygro,表达式为:
16、
17、其中,xi[k]为第i帧的第k维数据,k为11维里面中的一个,abs为计算绝对值函数;
18、s3.4.通过步骤s3.3得到的滑动窗口差分能量值与陀螺仪阈值的大小关系判断是否为手臂摆动波动:
19、如果滑动窗口差分能量值小于陀螺仪阈值,若稳定态阈值是true,则当前为手臂稳定状态,令当前帧有效进入下一个步骤中基于线段拟合模型比较的动态手势分割算法模块,手臂从摆动到稳定,将运动窗口清空;
20、如果滑动窗口差分能量值大于等于陀螺仪阈值,则当前处于手臂摆动状态,则继续判断运动窗口和运动窗口阈值的大小关系,若运动窗口小于运动窗口阈值,不能区分是手臂摆动还是动态手势动作,假设当前帧有效,当前帧有效进入下一个步骤中基于线段拟合模型比较的动态手势分割算法模块,并且使运动窗口增加1;
21、若运动窗口数量超过运动窗口阈值,运动状态认定为手臂自然摆动的无效手势,清空已收集的无效手势对应的动态数据,并且使运动窗口增加1。
22、进一步的,步骤s4构建基于线段拟合模型比较的动态手势分割算法模块的具体实现方法包括如下步骤:
23、s4.1.设置陀螺仪阈值thgro、稳定态阈值thstatic、相似度阈值thsimilarity、运动窗口阈值thsports_window、手势抬平时直线的斜率k抬平;
24、s4.2.初始化静态波动窗口、动态波动窗口为10,然后利用步骤s3得到的过滤后的动态手势数据,计算滑动窗口差分能量值energygro,然后在一个时域空间下使用五帧的数据进行线性拟合,得出当前拟合直线的斜率ki,表达式为:
25、ki=(gi-gi-1)/(gi-1-gi-2)=(gi-2-gi-3)/(gi-3-gi-4)
26、其中,gi为表示第i帧的xzy三轴合成的总加速度;
27、s4.3.判断步骤s4.1中的手势抬平时直线的斜率k抬平的状态,若k抬平的值不为空,则计算抬平手臂时的直线与当前拟合直线之间的欧氏距离,表达式为:
28、distance=(k抬平-ki)2
29、为了使得线性拟合的不同直线差距增大,更易区分,使用distance’来表示两种状态之间的欧式距离的指数幂,表达式为:
30、
31、若k抬平的值为空,且thstatic==true,则为第一次手臂抬平,令k抬平=ki;
32、如果滑动窗口差分能量值小于陀螺仪阈值,并且抬平手臂时的直线与当前拟合直线之间的欧氏距离小于相似度阈值,则处于相对稳定状态且抬平手臂时的直线与当前拟合直线相似,添加动态手势分割信息,记录为手势分割结束;
33、否则则表示当前正在动态手势中,添加动态手势分割信息,记录为手势分割结束,然后返回手势分割下标;
34、s4.4.将步骤s4.3手势分割结束的动态手势数据进行数据降噪,得到处理后的运动中的手势数据,数据降噪的方法为首先对数据利用五点三次滤波法进行5点3次滤波后,再使用算术平均滤波对数据中的每个点,取其周围一定数量的采样点的平均值作为该点的输出值,总的表达式为:
35、
36、其中,y(i)为当前计算维度的第i帧原始数据的五点三次算术平均滤波法的输出值,ai为当前计算维度的第i帧的动态手势数据。
37、一种电子设备,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现所述的一种运动中的手势数据处理方法的步骤。
38、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的一种运动中的手势数据处理方法。
39、本发明的有益效果:
40、本发明所述的一种运动中的手势数据处理方法,五点三次算术平均滤波法中和了五点三次滤波法的能够保留数据序列的整体趋势和细节特征,但是数据可能会产生原理真实值的数据;和算数平均滤波虽然能够大幅度减少信号中的噪声,但是在处理的时候也会破坏信号的某些特征,可能会使得信号的峰值和谷值发生一定的变化的特点。基于线段拟合模型比较的动态手势分割算法与单纯使用加速度陀螺仪的差分能量数值分割算法相比,优点在于当用户处于运动状态还是非运动状态下,都可对动态手势进行精确地分割。单纯使用加速度陀螺仪的差分能量数值分割算法,首先他会设定一个固定的能量阈值,当加速度陀螺仪差分能量超过能量阈值时,被认为是动态手势,这种算法在用户处于非运动状态下可以得到很好的效果,识别准确率达到99%,但缺点很明显,第一点,当用户处于运动状态下,识别准确率只有0%,因为运动状态下的加速度陀螺仪差分能量不做动态手势也会超过能量阈值,不能对动态手势进行分割;第二点,如果将能量阈值提高,对于非运动状态的部分动态手势,会因为能量阈值过高而不会被正确分割,对于运动状态的动态手势,也会因为能量阈值过高导致用户需要将动态手势做的又快有准,不利于没有使用过的新用户。而基于线段拟合模型比较的动态手势分割算法的优势在于在分割动态手势时没有固定的阈值,而是将手臂抬平时的拟合直线作为分割的基准,这样即使每次手臂抬平的拟合直线都不同,算法也不需要更改阈值,都可以实时的根据当前状态进行分割,并且这种分割方式在非运动状态和运动状态都可以进行精准分割。
41、本发明所述的一种运动中的手势数据处理方法,平均识别准确率较经典的分类算法svm、knn及谱聚类分别高了7%,3%及2%左右,同时预测时间相对于其他算法识别预测时间较短,因此采用的算法识别效果得以验证,表明了提出的运动环境下的静态手势识别方法的先进性和优越性,同时符合研究内容要求。
42、本发明所述的一种运动中的手势数据处理方法,在限定的运动条件下,动态手势平均识别准确率达到83.32%,比现有的算法的识别准确率70%的识别准确率提升10%左右。并且,不需要收集大量运动中动态手势数据就能够进行手势识别,节省了大量人力和时间成本。
1.一种运动中的手势数据处理方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的一种运动中的手势数据处理方法,其特征在于,步骤s1采集运动过程中的实验数据,运动过程控制以5km/h及以下的速度慢跑1.5s以上再做手势,慢跑的过程中自然摆臂,在做手势之前将手臂抬平到胸前,手臂保持稳定0.05s,然后做两次同一个动态手势,做完保持手臂抬平稳定0.05s,再继续慢跑1.5s以上再做手势。
3.根据权利要求2所述的一种运动中的手势数据处理方法,其特征在于,步骤s2对采集的运动过程中的自然摆臂到运动中抬平手臂再到运动中自然摆臂之间的状态切换的6轴传感器数据按照时间及维度作曲线图,进行分析如下,基于重力的影响三轴加速度计数据在不同手臂状态下的运动数据差别不大,无法提取出自然摆臂和抬平手臂的数据特征,无法区分手臂的运动状态,三轴陀螺仪数据在运动中手臂状态之间切换的数据特征明显,提取三轴陀螺仪数据用于运动中的手势识别数据。
4.根据权利要求3所述的一种运动中的手势数据处理方法,其特征在于,步骤s3构建基于手臂运动状态检测的手臂状态分割算法模块的具体实现方法包括如下步骤:
5.根据权利要求4所述的一种运动中的手势数据处理方法,其特征在于,步骤s4构建基于线段拟合模型比较的动态手势分割算法模块的具体实现方法包括如下步骤:
6.一种电子设备,其特征在于,包括存储器和处理器,存储器存储有计算机程序,所述的处理器执行所述计算机程序时实现权利要求1-5任一项所述的一种运动中的手势数据处理方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一项所述的一种运动中的手势数据处理方法。
