手势识别方法及装置与流程

文档序号:20022435发布日期:2020-02-28 07:15阅读:122来源:国知局
手势识别方法及装置与流程

本发明涉及人机交互技术领域,尤其涉及一种手势识别方法及装置。



背景技术:

目前,在对手势数据的处理过程中,都是通过实时分析任何状态下的手势动作,只要检测到的手势数据满足预设触发条件,便可触发与该手势数据关联的指定手势动作,但是,这种手势识别方法没有有效的手段来区别有效的手势数据和非有效的手势数据,对于用户触发的无规则的常规手势动作,采用这种方法,穿戴设备则无法正确判断该无规则的常规手势动作是否为有效的手势数据,由此,增大了因为无规则的常规手势动作意外触发指定手势动作而导致的误识别概率。



技术实现要素:

本发明的主要目的在于提供一种手势识别方法及装置,旨在提高手势识别的准确性。

为实现上述目的,本发明提供的一种手势识别方法,所述手势识别方法包括以下步骤:

在移动终端检测到手势信号时,获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数;

根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态;

根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。

优选地,所述根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态的步骤包括:

在所述第一手势状态为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第一时间阈值;

在当前时刻的第一手势状态积累时间大于第一时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并保存当前时刻的第一手势状态积累时间;

在当前时刻的第一手势状态积累时间小于第一时间阈值,且状态信号逻辑向量满足第一预设向量值时,将当前时刻的第一手势状态积累时间按照预设时间积累条件进行累加得到第二手势状态积累时间,并判断第二手势状态积累时间是否大于第二时间阈值;

若是,则将当前时刻的第二手势状态保存为识别手势状态,并保存当前时刻的第二手势状态积累时间;

若否,则将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第二手势状态积累时间。

优选地,所述根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态的步骤包括:

当所述第一手势状态为静止手势状态时,且状态信号逻辑向量满足第二预设向量值时,判断当前时刻的第一手势状态积累时间是否大于第三时间阈值;

在当前时刻的第一手势状态积累时间大于第三时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

在当前时刻的第一手势状态积累时间小于第三时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

优选地,所述根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态的步骤包括:

当所述第一手势状态为识别手势状态时,获取当前时刻关联的逻辑标记;

在所述逻辑标记满足第一预设标记,且所述第一手势状态积累时间大于识别结束阈值时,获取移动终端捕捉到的手势动作;

解析捕捉的手势动作得到对应的手势状态,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻的第一手势状态积累时间;

在所述逻辑标记满足第二预设标记,且所述第一手势状态积累时间大于第四时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

优选地,所述根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态的步骤包括:

当所述第一手势状态为特殊手势状态时,且检测到当前时刻采集的第二状态参数不满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第五时间阈值;

在当前时刻的第一手势状态积累时间大于第五时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

在当前时刻的第一手势状态积累时间小于第五时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并当前时刻的第一手势状态积累时间。

此外,为实现上述目的,本发明还提供一种手势识别装置,所述手势识别装置包括:

获取模块,用于在移动终端检测到手势信号时,获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数;

计算模块,用于根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态;

确定模块,用于根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。

优选地,所述确定模块包括:

第一判断单元,用于在所述第一手势状态为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第一时间阈值;

第一保存单元,用于在当前时刻的第一手势状态积累时间大于第一时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并保存当前时刻的第一手势状态积累时间;

第二判断单元,用于在当前时刻的第一手势状态积累时间小于第一时间阈值,且状态信号逻辑向量满足第一预设向量值时,将当前时刻的第一手势状态积累时间按照预设时间积累条件进行累加得到第二手势状态积累时间,并判断第二手势状态积累时间是否大于第二时间阈值;

第二保存单元,用于若第二手势状态积累时间大于第二时间阈值,则将当前时刻的第二手势状态保存为识别手势状态,并保存当前时刻的第二手势状态积累时间;

第三保存单元,用于若第二手势状态积累时间小于第二时间阈值,则将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第二手势状态积累时间。

优选地,所述确定模块包括:

第三判断单元,用于当所述第一手势状态为静止手势状态时,且状态信号逻辑向量满足第二预设向量值时,判断当前时刻的第一手势状态积累时间是否大于第三时间阈值;

第四保存单元,用于在当前时刻的第一手势状态积累时间大于第三时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

第五保存单元,用于在当前时刻的第一手势状态积累时间小于第三时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

优选地,所述确定模块包括:

第一获取单元,用于当所述第一手势状态为识别手势状态时,获取当前时刻关联的逻辑标记;

第二获取单元,用于在所述逻辑标记满足第一预设标记,且所述第一手势状态积累时间大于识别结束阈值时,获取移动终端捕捉到的手势动作;

第六保存单元,用于解析捕捉的手势动作得到对应的手势状态,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻的第一手势状态积累时间;

第七保存单元,用于在所述逻辑标记满足第二预设标记,且所述第一手势状态积累时间大于第四时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

优选地,所述确定模块包括:

第四判断单元,用于当所述第一手势状态为特殊手势状态时,且检测到当前时刻采集的第二状态参数不满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第五时间阈值;

第八保存单元,用于在当前时刻的第一手势状态积累时间大于第五时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

第九保存单元,用于在当前时刻的第一手势状态积累时间小于第五时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并当前时刻的第一手势状态积累时间。

本发明在移动终端检测到手势信号时,通过获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数,根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态,根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。由于本发明在检测到手势信号时,并不是立即触发与该手势信号关联的指定手势动作,而是进一步确定在当前时刻该手势信号的第一手势状态积累时间,根据该第一手势状态积累时间确定在当前时刻该手势信号是否为有效手势数据,若确定在当前时刻该手势信号为有效手势数据,则触发与该手势信号关联的指定手势动作,若确定当前时刻该手势信号为非有效数据,则不会触发指定手势动作,而是保持在距离当前时刻之前预设时间段内的第一手势状态,从而实现根据第一手势状态积累时间确定当前时刻的第二手势状态,因此减少了无规则的常规手势动作误触发指定手势动作的概率,提高了手势识别的准确性。

附图说明

图1为本发明手势识别方法的第一实施例的流程示意图;

图2为本发明识别手势动作的流程示意图;

图3为本发明手势状态之间转移规则的流程示意图;

图4为本发明图1所示第一实施例中步骤s30的细化步骤的流程示意图;

图5为本发图1所示第一实施例中步骤s30的另一细化步骤的流程示意图;

图6为本发明图1所示第一实施例中步骤s30的又一细化步骤的流程示意图;

图7为本发明图1所示第一实施例中步骤s30的再一细化步骤的流程示意图;

图8为本发明手势识别装置的第一实施例的功能模块示意图;

图9为本发明手势识别装置的第二实施例中确定模块的细化功能模块示意图;

图10为本发明手势识别装置的第三实施例中确定模块的另一细化功能模块示意图;

图11为本发明手势识别装置的第四实施例中确定模块的又一细化功能模块示意图;

图12为本发明手势识别装置的第五实施例中确定模块的再一细化功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

基于上述问题,本发明提供一种手势识别方法。

参照图1,图1为本发明手势识别方法的第一实施例的流程示意图。

在本实施例中,所述手势识别方法包括:

步骤s10,在移动终端检测到手势信号时,获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数;

在本实施例中,该移动终端可以理解为穿戴设备,如智能手环,同时本方案的手势识别方法适用于实时要求高、功耗低及计算能力差的穿戴设备。当该移动终端受到外力时,该移动终端中加速度传感器会产生相应的数据信号,即手势信号,在移动终端检测到手势信号时,对该手势信号进行采样,得到0,1,2,3…k-1,k多个采样点,其中,该移动终端是检测手势信号的同时对该手势信号进行采样,而不是在检测完毕该手势信号后再对该手势信号进行采样,将采样点k确定为当前时刻的采样点。获取该移动终端中加速度传感器在当前时刻检测到的原始加速度参数gk,该gk可以理解当前时刻加速度传感器受外力的加速度矢量,该gk可以表示为gk=(xk,yk,zk),其中,xk为gk的x轴方向的加速度分量,yk为gk的y轴方向的加速度分量,zk为gk的z轴方向的加速度分量,k为当前时间序列标记。

获取距离当前时刻之前预设时间段内的历史加速度参数gk-1,该gk-1可以理解为k-1时刻的处理后的加速度矢量,该gk-1可以表示为gk-1=(xk-1,yk-1,zk-1)。其中,该xk-1为gk-1在x轴方向处理后的加速度分量,该yk-1为gk-1在y轴方向处理后的加速度分量,zk-1为gk-1在z轴方向处理后的加速度分量,该移动终端在k-1时刻计算出该gk-1,并保存该gk-1,以供后续调用。

结合图2,采集该移动终端中加速度传感器在当前时刻检测到的原始加速度参数,通过该原始加速度参数进一步提取手势状态的特征,对提取手势状态的特征进行分类,对分类后的手势状态的特征进行手势动作识别。

步骤s20,根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态;

根据原始加速度参数gk以及历史加速度参数gk-1计算当前时刻k处理后的加速度参数gk,该gk可以表示为gk=(xk,yk,zk),其中,该xk为gk在x轴方向处理后的加速度分量,该yk为gk在y轴方向处理后的加速度分量,zk为gk在z轴方向处理后的加速度分量,该移动终端在k时刻计算出该gk,并保存该gk,以供后续调用。

该gk中的xk、yk、zk的计算公式为:

其中,l为(0,1)的实数。

根据该历史加速度参数gk-1以及该gk计算当前时刻k的状态信号逻辑向量s,该状态信号逻辑向量s可以表示为s=(sx,sy,sz),其中,sx为状态信号逻辑向量s在x轴方向的向量分量,sy为状态信号逻辑向量s在y轴方向的向量分量,sz为状态信号逻辑向量s在z轴方向的向量分量。

该状态信号逻辑向量s中的sx、sy、sz的计算公式为:

其中,λ为(0,+∞)的实数,||xk-xk-1||表示xk与xk-1的距离范数,||yk-yk-1||表示yk与yk-1的距离范数,||zk-zk-1||表示zk与zk-1的距离范数。

获取距离当前时刻之前预设时间段内的第一手势状态,即获取k-1时刻对应的第一手势状态wk-1,该第一手势状态wk-1包括特殊手势状态、普通手势状态、识别手势状态以及静止手势状态,该特殊手势状态包括原始加速度参数gk的xk、yk为gk、zk三轴的加速度矢量值都为0的自由落体手势状态,以及移动终端中加速度传感器会产生有规律的尖峰的上下楼手势状态、跳跃手势状态和计步手势状态;当该移动终端处于普通手势状态时,该移动终端中加速度传感器会产生有规律的尖峰;当该移动终端处于静止手势状态时,该移动终端中加速度传感器不会产生尖峰或者产生有规律的小尖峰(轻微震动);该识别手势状态可以理解为移动终端正在捕捉、识别手势动作。

可以理解的是,当该状态信号逻辑向量s的sx、sy、sz全为0时,表明该移动终端在当前时刻k受到外力作用,当该状态信号逻辑向量s的sx、sy、sz不全为0时,表明该移动终端在当前时刻k未受到外力作用。

步骤s30,根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。

该第一手势状态积累时间可以理解为基于该手势信号的起始采样点到当前采样点k过程中满足各手势状态(特殊手势状态、普通手势状态、识别手势状态以及静止手势状态)的积累时间的累计,例如,k-2时刻的手势状态为静止手势状态,该k-2时刻的手势状态积累时间t1=1s,当k-1时刻的状态信号逻辑向量s的sx、sy、sz不全为0,则将该t1加1得到k-1时刻的手势状态积累时间t2=1+1=2s,若该t2大于从静止手势状态转换为普通手势状态的最大时间阈值,则将k-1时刻的手势状态确定为普通手势状态,在检测到当前时刻k的状态参数满足预设特殊手势状态触发条件时,将t2加1得到当前时刻k的手势状态积累时间t3=2+1=3s,该t3可以理解为当前时刻k的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻k的第二手势状态,如当该t3大于从普通状态转换成特殊手势状态的最大时间阈值时,将当前时刻k的第二手势状态确定为特殊手势状态。

需要说明的是,将该手势信号的起始采样点的手势状态默认为普通手势状态,该第二手势状态也包括特殊手势状态、普通手势状态、识别手势状态以及静止手势状态。

结合图3,还需要说明的是,特殊手势状态可以有多个,如自由落体手势状态、上下楼手势状态、跳跃手势状态和计步手势状态,普通手势状态与特殊手势状态可以随时切换;普通手势状态下,当数据符合手势动作的预设触发条件时,可进入识别手势状态。如果识别手势状态持续保持一定时间,则进入静止手势状态;如果识别手势状态没有持续保持到一定时间,则识别指定的手势动作,再根据是识别结果进入相应手势状态;在识别手势状态下,根据手势动作的不同,不同的手势动作结束后,会使传感器进入不同的手势状态,但只能进入普通手势状态、静止手势状态、识别手势状态三种状态;静止手势状态在传感器检测到有手势动作出现时,只能进入普通手势状态。

本实施例在移动终端检测到手势信号时,通过获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数,根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态,根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。由于本发明在检测到手势信号时,并不是立即触发与该手势信号关联的指定手势动作,而是进一步确定在当前时刻该手势信号的第一手势状态积累时间,根据该第一手势状态积累时间确定在当前时刻该手势信号是否为有效手势数据,若确定在当前时刻该手势信号为有效手势数据,则触发与该手势信号关联的指定手势动作,若确定当前时刻该手势信号为非有效数据,则不会触发指定手势动作,而是保持在距离当前时刻之前预设时间段内的第一手势状态,从而实现根据第一手势状态积累时间确定当前时刻的第二手势状态,因此减少了无规则的常规手势动作误触发指定手势动作的概率,提高了手势识别的准确性。

进一步的,请参阅图4,为本发明第一实施例中步骤s30的细化步骤的流程示意图,该步骤s30的细化步骤包括:

步骤s311,在第一手势状态为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第一时间阈值;

在本实施例中,第一手势状态积累时间表示为bufftime1,在第一手势状态wk-1为普通手势状态,且检测到当前时刻k移动终端采集的第一状态参数不满足预设特殊手势状态触发条件时,控制移动终端对k-1时刻保存的手势状态积累时间bufftime0进行初始化,那么当前时刻k的第一手势状态积累时间为0,将当前时刻k第一手势状态确定为普通手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间为0以及普通手势状态,并继续对该手势信号进行采样。

在第一手势状态wk-1为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,计算在当前时刻k的第一手势状态积累时间bufftime1,该bufftime1=bufftime0+1,该bufftime0表示为k-1时刻的手势状态积累时间,判断该当前时刻k的第一手势状态积累时间bufftime1是否大于第一时间阈值to2n,该第一时间阈值to2n可以理解为从普通手势状态转换成特殊手势状态的最大时间阈值。

步骤s312,在当前时刻的第一手势状态积累时间大于第一时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并保存当前时刻的第一手势状态积累时间;

在当前时刻k的第一手势状态积累时间bufftime1大于第一时间阈值to2n时,将当前时刻k的第二手势状态确定为特殊手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及特殊手势状态,并继续对该手势信号进行采样。

步骤s313,在当前时刻的第一手势状态积累时间小于第一时间阈值,且状态信号逻辑向量满足第一预设向量值时,将当前时刻的第一手势状态积累时间按照预设时间积累条件进行累加得到第二手势状态积累时间,并判断第二手势状态积累时间是否大于第二时间阈值;

在当前时刻的第一手势状态积累时间bufftime1小于或者等于第一时间阈值to2n,但状态信号逻辑向量不满足第一预设向量值时,如在当前时刻k的bufftime1≤to2n,且状态信号逻辑向量s的sx、sy、sz不全为0时,控制移动终端对k-1时刻保存的手势状态积累时间bufftime0进行初始化,那么当前时刻k的第一手势状态积累时间为0,将当前时刻k的第二手势状态确定为普通手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间0以及普通手势状态,并继续对该手势信号进行采样。

在当前时刻k的第一手势状态积累时间bufftime1小于或者等于第一时间阈值to2n,且状态信号逻辑向量s满足第一预设向量值时,如在当前时刻k的bufftime1≤to2n,且状态信号逻辑向量s的sx、sy、sz全为0时,将当前时刻k的第一手势状态积累时间bufftime1按照预设时间积累条件进行累加得到第二手势状态积累时间bufftime2,如bufftime2=bufftime1+1。判断第二手势状态积累时间bufftime2是否大于第二时间阈值to2r,该第二时间阈值to2r可以理解为从普通手势状态转换成识别手势状态的最大时间阈值。

步骤s314,若是,则将当前时刻的第二手势状态保存为识别手势状态,并保存当前时刻的第二手势状态积累时间;

若第二手势状态积累时间bufftime2大于第二时间阈值to2r,则将当前时刻k的第二手势状态确定为识别手势状态,保存当前时刻k的处理后的加速度参数gk、第二手势状态积累时间bufftime2以及识别手势状态,并继续对该手势信号进行采样。

步骤s315,若否,则将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第二手势状态积累时间。

若第二手势状态积累时间bufftime2小于或者等于第二时间阈值to2r,则将当前时刻k的第二手势状态确定为普通手势状态,保存当前时刻k的处理后的加速度参数gk、第二手势状态积累时间bufftime2以及普通手势状态,并继续对该手势信号进行采样。

本实施例在所述第一手势状态为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,通过当前时刻的第一手势状态积累时间来判断当前时刻的第二手势状态是否为特殊手势状态,若确定当前时刻的第二手势状态为特殊手势状态,则将特殊手势状态进行保存,以供后续调用,若确定当前时刻的第二手势状态不是特殊手势状态,则进一步基于该第一手势状态积累时间计算第二手势状态积累时间,通过第二手势状态积累时间来判断当前时刻的第二手势状态是否为识别手势状态,若确定当前时刻的第二手势状态为识别手势状态,则将识别手势状态进行保存,以供后续调用,无论是通过第一手势状态积累时间来判断当前时刻的第二手势状态是否为特殊手势状态,还是通过第二手势状态积累时间来判断当前时刻的第二手势状态是否为识别手势状态,都是为了减少对指定手势动作的误触发概率,以手势识别的准确性。

进一步的,请参阅图5,为本发明第一实施例中步骤s30的细化步骤的流程示意图,该步骤s30的细化步骤还包括:

步骤s316,当第一手势状态为静止手势状态时,且状态信号逻辑向量满足第二预设向量值时,判断当前时刻的第一手势状态积累时间是否大于第三时间阈值;

在本实施例中,当第一手势状态为静止手势状态,且状态信号逻辑向量s不满足第二预设向量值时,如第一手势状态为静止手势状态,且状态信号逻辑向量s的sx、sy、sz全为0时,控制移动终端对k-1时刻保存的手势状态积累时间bufftime0进行初始化,那么当前时刻k的第一手势状态积累时间为0,将当前时刻k的第二手势状态确定为静止手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间0以及静止手势状态,并继续对该手势信号进行采样。

当第一手势状态为静止手势状态,且状态信号逻辑向量s满足第二预设向量值时,如第一手势状态为静止手势状态,且状态信号逻辑向量s的sx、sy、sz的不全为0时,计算在当前时刻k的第一手势状态积累时间bufftime1,该bufftime1=bufftime0+1,该bufftime0表示为k-1时刻的手势状态积累时间,判断该当前时刻的第一手势状态积累时间bufftime1是否大于第三时间阈值ts2o,该第一时间阈值ts2o可以理解为从静止手势状态转换成普通手势状态的最大时间阈值。

步骤s317,在当前时刻的第一手势状态积累时间大于第三时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

在在当前时刻k的第一手势状态积累时间bufftime1大于第三时间阈值ts2o时,将当前时刻k的第二手势状态确定为普通手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及普通手势状态,并继续对该手势信号进行采样。

步骤s318,在当前时刻的第一手势状态积累时间小于第三时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

在在当前时刻k的第一手势状态积累时间bufftime1小于或者等于第三时间阈值ts2o时,将当前时刻k的第二手势状态确定为静止手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及静止手势状态,并继续对该手势信号进行采样。

本实施例当所述第一手势状态为静止手势状态时,且状态信号逻辑向量满足第二预设向量值时,通过判断当前时刻的第一手势状态积累时间是否大于第三时间阈值,在当前时刻的第一手势状态积累时间大于第三时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间,在当前时刻的第一手势状态积累时间小于第三时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。由于该第三时间阈值ts2o为从静止手势状态转换成普通手势状态的最大时间阈值,在当前时刻的第一手势状态积累时间大于ts2o时,将当前时刻的第二手势状态保存为普通手势状态,而不是现有技术中通过解锁相应的手势状态才能触发指定手势动作,从而简化了触发指定手势动作的流程,提高了手势识别的准确性,改善用户体验。

进一步的,请参阅图6,为本发明第一实施例中步骤s30的细化步骤的流程示意图,该步骤s30的细化步骤还包括:

步骤s319,当第一手势状态为识别手势状态时,获取当前时刻关联的逻辑标记;

在本实施例中,当第一手势状态为识别手势状态,且当前时刻k的状态信号逻辑向量s的sx、sy、sz不全为0时,根据该当前时刻k的状态信号逻辑向量s获取对应的逻辑标记isr,由于该当前时刻k的状态信号逻辑向量s的sx、sy、sz不全为0,则获取到的逻辑标记isr=1,同时控制移动终端对k-1时刻保存的手势状态积累时间bufftime0进行初始化,那么当前时刻k的第一手势状态积累时间为0,将当前时刻k第二手势状态确定为识别手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间为0、识别手势状态以及逻辑标记isr=1,并继续对该手势信号进行采样。

当第一手势状态为识别手势状态,且当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0时,根据该当前时刻k的状态信号逻辑向量s获取对应的逻辑标记isr,由于该当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0,则获取到的逻辑标记isr=0,同时计算在当前时刻k的第一手势状态积累时间bufftime1,该bufftime1=bufftime0+1。

但是,需要说明的是,在控制移动终端在对检测到的手势信号进行采样的过程中,若k-3时刻的手势状态为识别手势状态、手势状态积累时间为bufftime-2以及逻辑标记isr=0,在采样到k-2时刻时,若k-2时刻的状态信号逻辑向量s的sx、sy、sz不全为0,则该k-2时刻的逻辑标记isr=1,控制移动终端将该k-3时刻的手势状态积累时间bufftime-2进行初始化,那么k-2时刻的手势状态积累时间为0,将k-2时刻的手势状态确定为识别手势状态,并保存k-2时刻的处理后的加速度参数gk-2、手势状态积累时间为0、识别手势状态以及逻辑标记isr=1,在采样到k-1时刻时,若当k-1时刻的状态信号逻辑向量s的sx、sy、sz全为0,但此时的逻辑标记isr保持与k-1时刻的逻辑标记isr=1一致,又因为k-1时刻的状态信号逻辑向量s的sx、sy、sz的全为0,则计算k-1时刻的手势状态积累时间为bufftime0,且由于k-2时刻的手势状态积累时间为0,那么k-1时刻的第一手势状态积累时间为bufftime0=0+1=1s,又因为k-1时刻的逻辑标记isr=1,若k-1时刻的手势状态积累时间为bufftime0小于识别结束阈值tend,该识别结束阈值tend可以理解为动作结束预判时间阈值,则确定k-1时刻的第一手势状态为识别手势状态,保存k-1时刻的处理后的加速度参数gk-2、手势状态积累时间bufftime0、识别手势状态以及逻辑标记isr=1,并继续对该手势信号进行采样;在采样到当前时刻k时,若当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0,但此时的逻辑标记isr保持与k-1时刻的逻辑标记isr=1一致,即该当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0,且逻辑标记isr=1,因此确定当前时刻k的逻辑标记isr=1为满足第一预设标记。

步骤s320,在逻辑标记满足第一预设标记,且第一手势状态积累时间大于识别结束阈值时,获取移动终端捕捉到的手势动作;

在确定当前时刻k的逻辑标记isr=1时,计算k时刻的第一手势状态积累时间为bufftime1,且由于k-1时刻的手势状态积累时间为bufftime0,那么k时刻的第一手势状态积累时间为bufftime1=bufftime0+1=1s,又因为k时刻的逻辑标记isr=1,则判断该当前时刻k的第一手势状态积累时间为bufftime1是否大于识别结束阈值tend,当当前时刻k的第一手势状态积累时间为bufftime1小于或者等于识别结束阈值tend时,将当前时刻k的第二手势状态确定为识别手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1、识别手势状态以及逻辑标记isr=1,并继续对该手势信号进行采样;当当前时刻k的第一手势状态积累时间为bufftime1大于识别结束阈值tend时,获取移动终端捕捉到的手势动作,其中,移动终端从出现逻辑标记isr=1的采样点开始捕捉,例如,在k-2时刻开始出现逻辑标记isr=1,此时开始捕捉,直到检测到手势状态积累时间大于识别结束阈值tend为止。

需要说明的是,出现逻辑标记isr=0则终止手势动作的捕捉。

步骤s321,解析捕捉的手势动作得到对应的手势状态,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻的第一手势状态积累时间;

在获取到移动终端捕捉的手势动作时,解析识别捕捉的该手势动作,得到对应的手势状态,该手势状态包括普通手势状态、识别手势状态以及静止手势状态,但是,捕捉的该手势动作所对应的手势状态是用户根据移动终端(产品)的需要而设定,例如,若用户为移动终端设定了摇动2次的手势动作对应的手势状态为普通手势状态,则当该移动终端捕捉到摇动2次的手势动作时,将当前时间k的第二手势状态确定为普通手势状态。将当前时刻k的逻辑标记isr确定为0,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻k的逻辑标记isr=0、第一手势状态积累时间为bufftime1、当前时刻k的处理后的加速度参数gk,并继续对该手势信号进行采样。

步骤s322,在逻辑标记满足第二预设标记,且第一手势状态积累时间大于第四时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

当第一手势状态为识别手势状态,且当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0时,根据该当前时刻k的状态信号逻辑向量s获取对应的逻辑标记isr,由于该当前时刻k的状态信号逻辑向量s的sx、sy、sz全为0,则获取到的逻辑标记isr=0,此时确定逻辑标记isr满足第二预设标记,同时计算在当前时刻k的第一手势状态积累时间bufftime1,该bufftime1=bufftime0+1,由于当前时刻k的逻辑标记isr=0,那么判断该当前时刻k的第一手势状态积累时间bufftime1是否大于第四时间阈值tr2s,该第四时间阈值tr2s可以理解为从识别手势状态转换成静止手势状态的最大时间阈值,当当前时刻k的第一手势状态积累时间bufftime1大于第四时间阈值tr2s时,将当前时刻k的第二手势状态确定为静止手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及静止手势状态,并继续对该手势信号进行采样;当当前时刻k的第一手势状态积累时间bufftime1小于或者等于时间阈值tr2s时,将当前时刻k的第二手势状态确定为识别手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1、识别手势状态以及逻辑标记isr=1,并继续对该手势信号进行采样。

本实施例当所述第一手势状态为识别手势状态时,获取当前时刻关联的逻辑标记,在所述逻辑标记满足第一预设标记,且所述第一手势状态积累时间大于识别结束阈值时,获取移动终端捕捉到的手势动作,解析捕捉的手势动作得到对应的手势状态,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻的第一手势状态积累时间,由于该识别结束阈值tend可以理解为动作结束预判时间阈值,那么通过设置tend使得即使当前时刻的手势动作并未执行完成,也可以通过捕捉的距离当前时刻之前预设时间段内的手势动作推算当前时刻的第二手势状态以及当前时刻,从而提高手势动作的识别效率以及第二手势状态的确定效率,进而使得能够快速响应用户的手势动作,改善用户体验。

进一步的,请参阅图7,为本发明第一实施例中步骤s30的细化步骤的流程示意图,该步骤s30的细化步骤还包括:

步骤s323,当第一手势状态为特殊手势状态时,且检测到当前时刻采集的第二状态参数不满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第五时间阈值;

在本实施例中,当第一手势状态为特殊手势状态时,且检测到当前时刻k移动终端采集的第二状态参数满足预设特殊手势状态触发条件时,控制移动终端对k-1时刻保存的手势状态积累时间bufftime0进行初始化,那么当前时刻k的第一手势状态积累时间为0,将当前时刻k第二手势状态确定为特殊手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间0以及特殊手势状态,并继续对该手势信号进行采样。

当第一手势状态为特殊手势状态时,且检测到当前时刻k移动终端采集的第二状态参数不满足预设特殊手势状态触发条件时,计算在当前时刻k的第一手势状态积累时间bufftime1,该bufftime1=bufftime0+1,该bufftime0表示为k-1时刻的手势状态积累时间,判断该当前时刻的第一手势状态积累时间bufftime1是否大于第五时间阈值tn2o,该第五时间阈值tn2o可以理解为从特殊手势状态转换成普通手势状态的最大时间阈值。

步骤s324,在当前时刻的第一手势状态积累时间大于第五时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

在当前时刻k的第一手势状态积累时间bufftime1大于第五时间阈值tn2o时,将当前时刻k的第二手势状态确定为普通手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及普通手势状态,并继续对该手势信号进行采样。

步骤s325,在当前时刻的第一手势状态积累时间小于第五时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并当前时刻的第一手势状态积累时间。

在当前时刻k的第一手势状态积累时间bufftime1大于或者第五时间阈值tn2o时,将当前时刻k的第二手势状态确定为特殊手势状态,保存当前时刻k的处理后的加速度参数gk、第一手势状态积累时间bufftime1以及特殊手势状态,并继续对该手势信号进行采样。

本实施例当所述第一手势状态为特殊手势状态时,且检测到当前时刻采集的第二状态参数不满足预设特殊手势状态触发条件时,通过判断当前时刻的第一手势状态积累时间是否大于第五时间阈值tn2o,由于该第五时间阈值tn2o为从特殊手势状态转换成普通手势状态的最大时间阈值,在当前时刻的第一手势状态积累时间大于tn2o时,将当前时刻的第二手势状态保存为普通手势状态,而不是现有技术中通过解锁相应的手势状态才能触发指定手势动作,从而简化了触发指定手势动作的流程,提高了手势识别的准确性,改善用户体验。

本发明进一步提供一种手势识别装置。

参照图8,图8为本发明手势识别装置的第一实施例的功能模块示意图。

在本实施例中,所述手势识别装置包括:获取模块10、计算模块20及确定模块30。

所述获取模块10,用于在移动终端检测到手势信号时,获取移动终端中加速度传感器当前检测到的原始加速度参数,并获取距离当前时刻之前预设时间段内的历史加速度参数;

所述计算模块20,用于根据原始加速度参数以及历史加速度参数计算当前时刻的状态信号逻辑向量,并获取距离当前时刻之前预设时间段内的第一手势状态;

所述确定模块30,用于根据状态信号逻辑向量以及第一手势状态确定当前时刻的第一手势状态积累时间,并根据第一手势状态积累时间确定当前时刻的第二手势状态。

在具体实现过程中,手势识别装置中的各个模块的功能与图1中各个方法步骤中的操作相对应。有关这些操作步骤的具体内容已经在前文做了详细的描述。因此此处不再赘述。

进一步的,基于上述第一实施例,提出本发明手势识别装置的第二实施例,在本实施例中,参照图9,所述确定模块30包括:第一判断单元311、第一保存单元312、第二判断单元313、第二保存单元314及第三保存单元315。

所述第一判断单元311,用于在第一手势状态为普通手势状态,且检测到当前时刻采集的第一状态参数满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第一时间阈值;

所述第一保存单元312,用于在当前时刻的第一手势状态积累时间大于第一时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并保存当前时刻的第一手势状态积累时间;

所述第二判断单元313,用于在当前时刻的第一手势状态积累时间小于第一时间阈值,且状态信号逻辑向量满足第一预设向量值时,将当前时刻的第一手势状态积累时间按照预设时间积累条件进行累加得到第二手势状态积累时间,并判断第二手势状态积累时间是否大于第二时间阈值;

所述第二保存单元314,用于若第二手势状态积累时间大于第二时间阈值,则将当前时刻的第二手势状态保存为识别手势状态,并保存当前时刻的第二手势状态积累时间;

所述第三保存单元315,用于若第二手势状态积累时间小于第二时间阈值,则将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第二手势状态积累时间。

在具体实现过程中,手势识别装置中的各个模块的功能与图4中各个方法步骤中的操作相对应。有关这些操作步骤的具体内容已经在前文做了详细的描述。因此此处不再赘述。

进一步的,基于上述第一实施例,提出本发明手势识别装置的第三实施例,在本实施例中,参照图10,所述确定模块30包括第三判断单元316、第四保存单元317及第五保存单元318。

所述第三判断单元316,用于当第一手势状态为静止手势状态时,且状态信号逻辑向量满足第二预设向量值时,判断当前时刻的第一手势状态积累时间是否大于第三时间阈值;

所述第四保存单元317,用于在当前时刻的第一手势状态积累时间大于第三时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

所述第五保存单元318,用于在当前时刻的第一手势状态积累时间小于第三时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

在具体实现过程中,手势识别装置中的各个模块的功能与图5中各个方法步骤中的操作相对应。有关这些操作步骤的具体内容已经在前文做了详细的描述。因此此处不再赘述。

进一步的,基于上述第一实施例,提出本发明手势识别装置的第四实施例,在本实施例中,参照图11,所述确定模块30包括第一获取单元319、第二获取单元320、第六保存单元321及第七保存单元322。

所述第一获取单元319,用于当第一手势状态为识别手势状态时,获取当前时刻关联的逻辑标记;

所述第二获取单元320,用于在逻辑标记满足第一预设标记,且第一手势状态积累时间大于识别结束阈值时,获取移动终端捕捉到的手势动作;

所述第六保存单元321,用于解析捕捉的手势动作得到对应的手势状态,将当前时刻的第二手势状态保存为与捕捉的手势动作对应的手势状态,并保存当前时刻的第一手势状态积累时间;

所述第七保存单元322,用于在逻辑标记满足第二预设标记,且第一手势状态积累时间大于第四时间阈值时,将当前时刻的第二手势状态保存为静止手势状态,并保存当前时刻的第一手势状态积累时间。

在具体实现过程中,手势识别装置中的各个模块的功能与图6中各个方法步骤中的操作相对应。有关这些操作步骤的具体内容已经在前文做了详细的描述。因此此处不再赘述。

进一步的,基于上述第一实施例,提出本发明手势识别装置的第五实施例,在本实施例中,参照图12,所述确定模块30包括第四判断单元323、第八保存单元324、第九保存单元325。

所述第四判断单元323,用于当第一手势状态为特殊手势状态时,且检测到当前时刻采集的第二状态参数不满足预设特殊手势状态触发条件时,判断当前时刻的第一手势状态积累时间是否大于第五时间阈值;

所述第八保存单元324,用于在当前时刻的第一手势状态积累时间大于第五时间阈值时,将当前时刻的第二手势状态保存为普通手势状态,并保存当前时刻的第一手势状态积累时间;

所述第九保存单元325,用于在当前时刻的第一手势状态积累时间小于第五时间阈值时,将当前时刻的第二手势状态保存为特殊手势状态,并当前时刻的第一手势状态积累时间。

在具体实现过程中,手势识别装置中的各个模块的功能与图7中各个方法步骤中的操作相对应。有关这些操作步骤的具体内容已经在前文做了详细的描述。因此此处不再赘述。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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