一种基于加速度传感器的手势识别方法

文档序号:10470722阅读:342来源:国知局
一种基于加速度传感器的手势识别方法
【专利摘要】本发明公开了一种基于加速度传感器的手势识别方法,属于手势识别技术领域。本发明得手势识别方法在计算过程中,可自动判断动作的起点和终点。不需要外界的控制介入。本发明分三步(夹角、特征、状态)逐步排除掉不符合标准的手势,减少了总体计算量,同时也降低了误操作的几率。本发明的动作库特征通过采集大量手势标本获得,由系统输入,不能由用户个体自行调整设置。这样虽然对手势的特征差异性要求高,但计算量小,识别率高,提高了算法的实时性,可以以低成本达到快速识别。
【专利说明】
-种基于加速度传感器的手势识别方法
技术领域
[0001] 本发明属于手势识别技术领域,特别设及一种基于加速度传感器的手势识别方 法。
【背景技术】
[0002] 智能穿戴设备作为目前制造领域前沿方向之一,包括手势识别在内的运动识别被 广泛应用于智能穿戴设备中,将加速度传感器应用到手势识别技术领域,通过分析人手势 运动时所产生的加速度信号来进行检测、识别用户的运动状态并实现对智能设备的操作。 然而目前的加速度传感器应用于手势识别领域中存在着不能较准确的判断动作的起止点 (或需要手动设置),不能很好的判断筛选出不符合标准的手势、造成误操作等缺点。

【发明内容】

[0003] 本发明的目的在于克服上述现有技术中存在的缺点与不足,提供一种基于加速度 传感器的手势识别方法。
[0004] 本发明的目的通过下述技术方案实现:一种基于加速度传感器的手势识别方法, 包括如下步骤:
[0005] (1)通过传感器采集用户手部动作的加速度数据和角速度数据;
[0006] (2)对步骤(1)采集的数据进行卡尔曼滤波,去除手势过程中的抖动干扰和传感器 杂波;
[0007] (3)进行动作的边界检测,利用手势动作与加速度变化量的相关性,自动判断动作 的起止点,并截取此段动作数据作为本次的判断手势;
[000引(4)对步骤(3)截取的动作数据进行高通滤波和低通滤波,过滤掉非手势动作数 据,进一步剔除干扰;
[0009] (5)姿态计算,根据传感器数据计算出运动时传感器与地平面的夹角,获得姿态数 据,并根据夹角排除掉方向异常的误操作手势;
[0010] (6)根据角速度数据、加速度数据及姿态数据,与动作库中的手势动作特征进行比 对,确认手势是否有效、及手势类型;
[0011] (7)该算法匹配的手势控制装置,具有多种工作状态;根据装置的当前状态,若手 势有效,则发出对应指令;运样同一手势在不同状态下代表不同指令,可W有效减少手势数 量,便于识别,也方便用户记忆。
[0012] 所述步骤(1)采集数据时,按固定的时间间隔对加速度数据进行采样。
[0013]所述步骤(2)采用卡尔曼滤波化alman filtering),在已知测量方差的情况下,对 传感器采集到的数据,进行实时更新,算出当前真实数据的最优解,过滤掉手势过程中手的 抖动和传感器硬件本身的精度误差。
[0014] 所述步骤(3)采用基于加速度变化量的边界检测方法,计算方式如下:
[0015] 1)先分别计算每个采样点的X、y、z轴线性加速度(过滤掉重力影响),
[0016]
[0017]其中,a〇xi、a〇yi、a〇zi为第i个采样点测得x、y、z轴加速度数据,gxi、gyi、gzi为该采样 点重力加速度在x、y、z轴的分量;
[0018] 2)计算第i个采样点的加速度差分绝对值之和Aai,
[0019] Δ ai = abS(axi-ax(i-:i))+abS(ayray(i-:L))+abS(az:i-az(i-i))
[0020] 3)定义N为采样数据个数,Mth为起点和终点的检测阔值:
[0021] 如果
则i即为手势起点;
[0022] 如果
且已有起点时,则i为手势终点。
[0023] 所述步骤(4)的初步过滤方式,先考察动作库中所有手势的加速度变化量、动作时 间长度的最大值和最小值,利用边界限定规则,对步骤(3)中截取到的动作数据做判定,丢 弃掉不在此最大值和最小值范围内的数据。
[0024] 所述步骤(5)的姿态计算,计算方式如下:先根据重力加速度在x、y、z轴上的分量 gx、gy、gz,转化为表示传感器旋转角的四元数q=[w,x,y,z]"(或可直接由传感器输出四元 数);再根据四元数q计算出传感器与地面的夹角,分别是偏航角Φ(ζ轴)、俯仰角0(y轴)、横 滚角巧(X轴):
[0025]
[00%]若当前手势的夹角范围在预设范围内,则将此数据带入下一步。
[0027] 所述步骤(6)中动作库中的手势动作,基于W下特征点来区分:
[0028] ①加速度变化值中的最大值和最小值:即步骤(3)中计算的加速度差
[0029] 分绝对值之和A ai的最大值和最小值;
[0030] ②手势时间长度^ L = t终却炯-1起却炯;
[0031] ③x、y、z^轴方向的加速度变化值,并确定其中加速度变化最大的轴:
[0032]
[0033] 其中,L即为手势的时间长度;
[0034] ④X、y、ζΞ轴方向的角速度变化值,并确定其中角速度变化最大的轴:
[0035]
[0036] 其中,每个采样点的Φ、θ、爷即为步骤(5)中计算的偏航角Φ(Ζ轴)、俯仰角0(y轴)、 横滚角巧(X轴);
[0037] ⑤在x、y、zS轴上各扫过的角度:
[00;3 引
[0039] ⑥加速度变化波峰数Px、Py、Pz:在手势边界内,设备在x、y、z轴上出现的加速度波 峰数;
[0040] ⑦角速度变化波峰数Ρφ、Ρθ r?<p·在手势边界内,设备在x、y、z轴上出现的角速度波 峰数;
[0041] 针对步骤(5)得到的数据,按上述7个特征点的顺序进行逐项比对;如果与动作库 中某个手势的所有特征点都符合,则判定为该手势,终止判定过程;如找不到相符的动作, 则判断该手势无效,终止判定过程。
[0042] 所述动作库内的特征数据,通过采集不同状态、不同个体的手势标本获得,由系统 输入,不能由用户个体自行调整设置;该方案对手势的特征差异性要求高,但计算量小,识 别率高,不需要针对单个个体做适配,可W W低成本达到快速识别。
[0043] 本发明相对于现有技术具有如下的优点及效果:
[0044] 1.计算过程中,可自动判断动作的起点和终点。不需要外界的控制介入。
[0045] 2.分Ξ步(夹角、特征、状态)逐步排除掉不符合标准的手势,减少了总体计算量, 同时也降低了误操作的几率。
[0046] 3.动作库特征通过采集大量手势标本获得,由系统输入,不能由用户个体自行调 整设置。运样虽然对手势的特征差异性要求高,但计算量小,识别率高,提高了算法的实时 性,可W W低成本达到快速识别。
[0047] 4.该算法匹配的手势控制装置具有多种工作状态,同一手势在不同状态下,代表 的指令不同。运样可W减少手势数量,正好可W解决了第3条所述"手势的特征差异性要求 高"的问题,便于计算识别,也方便用户记忆。
【附图说明】
[0048] 图1是本发明基于加速度传感器的手势识别方法流程图。
[0049] 图2是本发明步骤(3)采用基于加速度变化量的边界检测方法的结果图;其中,A为 起点,B为终点。
【具体实施方式】
[0050] 下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限 于此。
[0化1]实施例1
[0052]如图1所示,本发明提供了一种基于加速度传感器的手势识别方法,包括如下步 骤:
[0053] (1)通过传感器采集用户手部动作的加速度数据和角速度数据;
[0054] (2)对步骤(1)采集的数据进行卡尔曼滤波,去除手势过程中的抖动干扰和传感器 杂波;
[0055] (3)进行动作的边界检测,利用手势动作与加速度变化量的相关性,自动判断动作 的起止点,并截取此段动作数据作为本次的判断手势;
[0056] (4)对步骤(3)截取的动作数据进行高通滤波和低通滤波,过滤掉非手势动作数 据,进一步剔除干扰;
[0057] (5)姿态计算,根据传感器数据计算出运动时传感器与地平面的夹角,获得姿态数 据,并根据夹角排除掉方向异常的误操作手势;
[0058] (6)根据角速度数据、加速度数据及姿态数据,与动作库中的手势动作特征进行比 对,确认手势是否有效、及手势类型;
[0059] (7)该算法匹配的手势控制装置,具有多种工作状态;根据装置的当前状态,若手 势有效,则发出对应指令;运样同一手势在不同状态下代表不同指令,可W有效减少手势数 量,便于识别,也方便用户记忆。
[0060] 所述步骤(1)采集数据时,按固定的时间间隔对加速度数据进行采样。
[0061] 所述步骤(2)采用卡尔曼滤波化alman filtering),在已知测量方差的情况下,对 传感器采集到的数据,进行实时更新,算出当前真实数据的最优解,过滤掉手势过程中手的 抖动和传感器硬件本身的精度误差。
[0062] 所述步骤(3)采用基于加速度变化量的边界检测方法,分析图见图2所示,计算方 式如下:
[0063] 1)先分别计算每个采样点的x、y、z轴线性加速度(过滤掉重力影响),
[0064]
[0065] 其中,aQxi、aQyi、aQzi为第i个采样点测得x、y、z轴加速度数据,gxi、gyi、gz功该采样 点重力加速度在x、y、z轴的分量;
[0066] 2)计算第i个采样点的加速度差分绝对值之和Aai,
[0067] Δ ai = abS(axi-ax(i-i))+abS(ay:L-ay(i-i))+abS(azi-az(i-i))
[0068] 3)定义N为采样数据个数,Mth为起点和终点的检测阔值:
[0069] 如果
则i即为手势起点;
[0070] 如果
邑已有起点时,则i为手势终点。
[0071] 所述步骤(4)的初步过滤方式,先考察动作库中所有手势的加速度变化量、动作时 间长度的最大值和最小值,利用边界限定规则,对步骤(3)中截取到的动作数据做判定,丢 弃掉不在此最大值和最小值范围内的数据。
[0072] 所述步骤(5)的姿态计算,计算方式如下:先根据重力加速度在x、y、z轴上的分量 gx、gy、gz,转化为表示传感器旋转角的四元数q = [w,x,y,z]"(或可直接由传感器输出四元 数);再根据四元数q计算出传感器与地面的夹角,分别是偏航角Φ(ζ轴)、俯仰角0(y轴)、横 滚角巧(X轴):
[0073]
[0074] 若当前手势的夹角范围在预设范围内,则将此数据带入下一步。
[0075] 所述步骤(6)中动作库中的手势动作,基于W下特征点来区分:
[0076] ①加速度变化值中的最大值和最小值:即步骤(3)中计算的加速度差分绝对值之 和A ai的最大值和最小值;
[0077] ②手势时间长度^ L = t终却炯-1起却炯;
[0078] ③x、y、z^轴方向的加速度变化值,并确定其中加速度变化最大的轴:
[0079]
[0080] 其中,L即为手势的时间长度;
[0081 ]④X、y、ζΞ轴方向的角速度变化值,并确定其中角速度变化最大的轴:
[0082]
[0083] 其中,每个采样点的Φ、θ、常即为步骤(5)中计算的偏航角Φ(ζ轴)、俯仰角0(y轴)、 横滚角巧(X轴);
[0084] ⑤在x、y、zS轴上各扫过的角度:
[0085]
[0086] ⑥加速度变化波峰数Px、Py、Pz:在手势边界内,设备在x、y、z轴上出现的加速度波 峰数;
[0087] ⑦角速度变化波峰数Ρ?/;、p@、Gp;在手势边界内,设备在x、y、z轴上出现的角速 度波峰数;
[0088] 针对步骤(5)得到的数据,按上述7个特征点的顺序进行逐项比对;如果与动作库 中某个手势的所有特征点都符合,则判定为该手势,终止判定过程;如找不到相符的动作, 则判断该手势无效,终止判定过程。
[0089] 所述动作库内的特征数据,通过采集不同状态、不同个体的手势标本获得,由系统 输入,不能由用户个体自行调整设置;该方案对手势的特征差异性要求高,但计算量小,识 别率高,不需要针对单个个体做适配,可W W低成本达到快速识别。
[0090] 本发明相对于现有技术具有如下的优点及效果:
[0091] 1.计算过程中,可自动判断动作的起点和终点。不需要外界的控制介入。
[0092] 2.分Ξ步(夹角、特征、状态)逐步排除掉不符合标准的手势,减少了总体计算量, 同时也降低了误操作的几率。
[0093] 3.动作库特征通过采集大量手势标本获得,由系统输入,不能由用户个体自行调 整设置。运样虽然对手势的特征差异性要求高,但计算量小,识别率高,提高了算法的实时 性,可W W低成本达到快速识别。
[0094] 4.该算法匹配的手势控制装置具有多种工作状态,同一手势在不同状态下,代表 的指令不同。运样可W减少手势数量,正好解决了第3条所述"手势的特征差异性要求高"的 问题,便于计算识别,也方便用户记忆。
[0095] 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的 限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化, 均应为等效的置换方式,都包含在本发明的保护范围之内。
【主权项】
1. 一种基于加速度传感器的手势识别方法,其特征在于:包括如下步骤: (1) 通过传感器采集用户手部动作的加速度数据和角速度数据; (2) 对步骤(1)采集的数据进行卡尔曼滤波,去除手势过程中的抖动干扰和传感器杂 波; (3) 进行动作的边界检测,利用手势动作与加速度变化量的相关性,自动判断动作的起 止点,并截取此段动作数据作为本次的判断手势; (4) 对步骤(3)截取的动作数据进行高通滤波和低通滤波,过滤掉非手势动作数据,进 一步剔除干扰; (5) 姿态计算,根据传感器数据计算出运动时传感器与地平面的夹角,获得姿态数据, 并根据夹角排除掉方向异常的误操作手势; (6) 根据角速度数据、加速度数据及姿态数据,与动作库中的手势动作特征进行比对, 确认手势是否有效、及手势类型; (7) 该算法匹配的手势控制装置,具有多种工作状态;根据装置的当前状态,若手势有 效,则发出对应指令;这样同一手势在不同状态下代表不同指令,可以有效减少手势数量, 便于识别,也方便用户记忆。2. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (1) 采集数据时,按固定的时间间隔对加速度数据进行采样。3. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (2) 采用卡尔曼滤波,在已知测量方差的情况下,对传感器采集到的数据,进行实时更新,算 出当前真实数据的最优解,过滤掉手势过程中手的抖动和传感器硬件本身的精度误差。4. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (3) 采用基于加速度变化量的边界检测方法,计算方式如下: 1) 先分别计算每个采样点过滤掉重力影响的x、y、z轴线性加速度,其中,aoxidoyhaozi为第i个采样点测得x、y、z轴加速度数据,gxi、gyi、gzi为该采样点重 力加速度在x、y、z轴的分量; 2) 计算第i个采样点的加速度差分绝对值之和Δ ai, A £ii - abs(ε?χ?_ε?χ(?-l) )+abs(ayi_ay(i-l) )+abs(azi_£iz(i-1)) 3) 定义N为采样数据个数,Mth为起点和终点的检测阙值:5. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (4) 的初步过滤方式,先考察动作库中所有手势的加速度变化量、动作时间长度的最大值和 最小值,利用边界限定规则,对步骤(3)中截取到的动作数据做判定,丢弃掉不在此最大值 和最小值范围内的数据。6. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (5) 的姿态计算,计算方式如下:先根据重力加速度在x、y、z轴上的分量gx、gy、gz,转化为表 示传感器旋转角的四元数9=[?4, 7,2]11;再根据四元数(1计算出传感器与地面的夹角,分 另IJ是z轴的偏航角iKy轴的俯仰角θ、 χ轴的横滚角识i若当前手势的夹角范围在预设范围内,则将此数据带入下一步。7. 根据权利要求1所述的基于加速度传感器的手势识别方法,其特征在于:所述步骤 (6) 中动作库中的手势动作,基于以下特征点来区分: ① 加速度变化值中的最大值和最小值:即步骤(3)中计算的加速度差分绝对值之和△ ai 的最大值和最小值; ② 手势时间长度L:L = t终綱'旷1:起綱司; ③ x、y、z三轴方向的加速度变化值,并确定其中加速度变化最大的轴:其中,L即为手势的时间长度; ④ x、y、z三轴方向的角速度变化值,并确定其中角速度变化最大的轴:其中,每个采样点的Φ、Θ、炉即为步骤(5)中计算的z轴的偏航角Φ、y轴的俯仰角θ、X轴的 横滚角炉; ⑤ 在x、y、z三轴上各扫过的角度:⑥ 加速度变化波峰数Px、Py、Pz:在手势边界内,设备在x、y、z轴上出现的加速度波峰数; ⑦ 角速度变化波峰数Ρφ、Ρθ、IV:在手势边界内,设备在x、y、z轴上出现的角速度波峰数; 针对步骤(5)得到的数据,按上述7个特征点的顺序进行逐项比对;如果与动作库中某 个手势的所有特征点都符合,则判定为该手势,终止判定过程;如找不到相符的动作,则判 断该手势无效,终止判定过程。8. 根据权利要求7所述的基于加速度传感器的手势识别方法,其特征在于:所述动作库 内的特征数据,通过采集不同状态、不同个体的手势标本获得,由系统输入,不能由用户个 体自行调整设置;该方案对手势的特征差异性要求高,但计算量小,识别率高,不需要针对 单个个体做适配,可以以低成本达到快速识别。
【文档编号】G06F3/0346GK105824420SQ201610159248
【公开日】2016年8月3日
【申请日】2016年3月21日
【发明人】李骁, 杨明胜
【申请人】李骁
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1