手势识别方法及其设备与流程

文档序号:12905730阅读:685来源:国知局
手势识别方法及其设备与流程

本公开涉及图像处理领域,更具体地,涉及一种手势识别方法及其设备。



背景技术:

随着人机交互技术的飞速发展,许多智能设备都支持手势操作。尤其是基于三维摄像头的手势识别技术,因其可以承载更多的人机交互信息,用途越来越广泛。例如,在增强现实(augmentedreality,简称为ar)和虚拟现实(virtualreality,简称为vr)中,举手投足间就可以让电子设备对用户的操作做出响应。

目前,相关技术中提供了多种手势识别方案。然而,在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:现有技术中的手势识别方案对用户的手势操作要求严格,一般必须严格按照预先定义的手势来操作,否则容易导致手势误识别或无法识别。

针对相关技术中的上述问题,目前还未提出有效的解决方案。



技术实现要素:

有鉴于此,本公开提供了一种手势识别方法及其设备。

本公开的一个方面提供了一种手势识别方法,包括:通过传感器获取表示手势的运动轨迹的运动轨迹数据,对上述运动轨迹数据进行处理,以确定上述运动轨迹包含的运动方向,以及根据确定出的运动方向,在确定上述运动轨迹中包含回程轨迹的情况下,将上述运动轨迹中除上述回程轨迹之外的轨迹确定为上述手势的有效轨迹。

可选地,上述方法还包括根据确定出的运动方向,在确定上述运动轨迹不包含回程轨迹的情况下,将上述运动轨迹确定为上述手势的有效轨迹。

可选地,上述运动方向至少包括第一运动方向和第二运动方向:计算上述运动轨迹在上述第一运动方向上的第一加速度斜率,计算上述运动轨迹在上述第二运动方向上的第二加速度斜率,计算上述第一加速度斜率与上述第二加速度斜率的差值,得到对应的加速度斜率差值,以及基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹。

可选地,基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹包括:在上述运动轨迹的加速度斜率差值不等于上述第一加速度斜率的情况下,确定上述运动轨迹中包含回程轨迹。

可选地,基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹包括:当上述加速度斜率差值大于第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较小的斜率所对应的运动轨迹为上述回程轨迹,或者当上述加速度斜率差值大于上述第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较大的斜率所对应的运动轨迹为上述回程轨迹。

可选地,基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹包括:当上述加速度斜率差值小于第二预设差值时,比较上述运动轨迹在上述第一运动方向上的第一运动时间和上述运动轨迹在上述第二运动方向上的第二运动时间的长短,得到第二比较结果,以及基于上述第二比较结果,确定上述运动轨迹中的回程轨迹。

本公开的另一个方面提供了一种手势识别设备,包括:传感器,用于获取表示手势的运动轨迹的运动轨迹数据,以及处理器,用于对上述运动轨迹数据进行处理,以确定上述运动轨迹包含的运动方向,并根据确定出的运动方向,在确定上述运动轨迹中包含回程轨迹的情况下,将上述运动轨迹中除上述回程轨迹之外的轨迹确定为上述手势的有效轨迹。

可选地,上述处理器还用于根据确定出的运动方向,在确定上述运动轨迹不包含回程轨迹的情况下,将上述运动轨迹确定为上述手势的有效轨迹。

可选地,上述处理器还用于:计算上述运动轨迹在上述第一运动方向上的第一加速度斜率,计算上述运动轨迹在上述第二运动方向上的第二加速度斜率,计算上述第一加速度斜率与上述第二加速度斜率的差值,得到对应的加速度斜率差值,以及基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹。

可选地,上述处理器还用于在上述运动轨迹的加速度斜率差值不等于上述第一加速度斜率的情况下,确定上述运动轨迹中包含回程轨迹。

可选地,上述处理器还用于当上述加速度斜率差值大于第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较小的斜率所对应的运动轨迹为上述回程轨迹,或者当上述加速度斜率差值大于上述第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较大的斜率所对应的运动轨迹为上述回程轨迹。

可选地,上述处理器还用于:当上述加速度斜率差值小于第二预设差值时,比较上述运动轨迹在上述第一运动方向上的第一运动时间和上述运动轨迹在上述第二运动方向上的第二运动时间的长短,得到第二比较结果,以及基于上述第二比较结果,确定上述运动轨迹中的回程轨迹。

本公开的另一个方面提供了一种手势识别系统,包括:获取模块,用于通过传感器获取表示手势的运动轨迹的运动轨迹数据,处理模块,用于对上述运动轨迹数据进行处理,以确定上述运动轨迹包含的运动方向,以及确定模块,用于根据确定出的运动方向,在确定上述运动轨迹中包含回程轨迹的情况下,将上述运动轨迹中除上述回程轨迹之外的轨迹确定为上述手势的有效轨迹。

可选地,上述确定模块还用于根据确定出的运动方向,在确定上述运动轨迹不包含回程轨迹的情况下,将上述运动轨迹确定为上述手势的有效轨迹。

可选地,上述处理模块包括:第一计算单元,用于计算上述运动轨迹在上述第一运动方向上的第一加速度斜率,第二计算单元,用于计算上述运动轨迹在上述第二运动方向上的第二加速度斜率,第三计算单元,用于计算上述第一加速度斜率与上述第二加速度斜率的差值,得到对应的加速度斜率差值,以及第一确定单元,用于基于上述加速度斜率差值确定上述运动轨迹中的回程轨迹。

可选地,上述确定单元还用于在上述运动轨迹的加速度斜率差值不等于上述第一加速度斜率的情况下,确定上述运动轨迹中包含回程轨迹。

可选地,上述确定单元还用于当上述加速度斜率差值大于第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较小的斜率所对应的运动轨迹为上述回程轨迹,或者当上述加速度斜率差值大于上述第一预设差值时,确定上述第一加速度斜率和上述第二加速度斜率中较大的斜率所对应的运动轨迹为上述回程轨迹。

可选地,上述确定单元包括:比较子单元,用于当上述加速度斜率差值小于第二预设差值时,比较上述运动轨迹在上述第一运动方向上的第一运动时间和上述运动轨迹在上述第二运动方向上的第二运动时间的长短,得到第二比较结果,以及确定子单元,用于基于上述第二比较结果,确定上述运动轨迹中的回程轨迹。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的手势识别方法及其设备的应用场景;

图2示意性示出了根据本公开实施例的手势识别方法的流程图;

图3a示意性示出了根据本公开实施例对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向的流程图;

图3b示意性示出了根据本公开实施例基于加速度斜率差值确定运动轨迹中的回程轨迹的流程图;

图4示意性示出了根据本公开实施例加速度计算结果的示意图;

图5示意性示出了根据本公开实施例的手势识别设备的框图;

图6a示意性示出了根据本公开实施例的手势识别系统的框图;

图6b示意性示出了根据本公开实施例的处理模块的框图;

图6c示意性示出了根据本公开实施例的确定单元的框图;以及

图7示意性示出了应用本公开实施例的适于实现手势识别方法及其系统的计算机系统的框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。这里使用的词语“一”、“一个(种)”和“该”等也应包括“多个”、“多种”的意思,除非上下文另外明确指出。此外,在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。

因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

本公开的实施例提供了一种手势识别方法及手势识别设备。该方法包括手势轨迹获取过程和手势轨迹识别过程。在手势轨迹获取过程中,通过传感器获取表示手势的运动轨迹的运动轨迹数据。在完成手势轨迹获取之后,进入手势轨迹识别过程,可以根据计算不同方向上加速度斜率的方法来识别手势,如判断手势是否包含回程轨迹等。

图1示意性示出了根据本公开实施例的手势识别方法及其设备的应用场景。

如图1所示,本公开实施例提供的手势识别方法及及其设备适用于ar和vr等领域智能设备的人机交互场景。在这些场景中,智能设备需要支持基于三维摄像头的手势操作,如可以是通过具有三维摄像头功能的智能设备操作的智能电视,用户希望通过左右摆动或上下摆动等手势对智能电视显示屏上的显示内容进行多种操作,如向左移动(选择或翻页)、向右移动(选择或翻页)、向上移动(选择或翻页)、向下移动(选择或翻页)等。智能设备对获取到的用户手势摆动的运动轨迹进行分析,举手投足间就可以让智能设备对用户的手势操作做出响应。

需要说明的是,本公开实施例提供的手势识别方法识别的手势可以包括多种方向,在此不做限定。对任意方向的手势来说,手势摆动的轨迹都可以分解在上、下、左、右的方向上,而左右摆动和上下摆动的手势只是在摆动方向上不同,识别方法基本相同,因此本公开实施例提供的手势识别方法及其设备将以对向左摆动的手势识别为例详细阐述本公开。

需要说明的是,在用户实际操作中,向左摆手的手势至少包括但不限于以下四种手势。

手势一:最标准的摆手手势,从右向左摆动手,但实际上这种手势比较难做出来。

手势二:用户的手不在合适的位置,用户不自觉的向右挥动一下调整位置后再向左挥动手势。这种手势相关技术容易判断错误,先误判为向右,然后再判断为向左,响应两次。

手势三:用户的手在合适的位置,从左向右挥动后,不自觉的往回收缩,这种手势也非常常见,被相关技术误识别的概率也比较大,一般会响应两次。

手势四:手势二和手势三的结合,这种手势也很常见,相关技术的识别率低,或者多次响应。

本公开的实施例提供了一种手势识别方法,包括:通过传感器获取表示手势的运动轨迹的运动轨迹数据;对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向;以及根据确定出的运动方向,在确定运动轨迹中包含回程轨迹的情况下,将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。通过识别出用户手势中的回程轨迹,并从手势轨迹中除去回程轨迹的干扰,得到有效手势轨迹,以至少部分地克服相关技术提供的方案中用户的摆动手势带有回程时,导致手势误识别或无法识别的问题,进而实现提高手势识别成功率的技术效果。

图2示意性示出了根据本公开实施例的手势识别方法的流程图。

如图2所示,该方法可以包括操作s210~操作s230,其中:

操作s210,通过传感器获取表示手势的运动轨迹的运动轨迹数据。

需要说明的是,用户通过手势摆动实现对智能设备的操作,智能设备按照预先定义好的手势对用户的手势摆动进行识别,并在智能设备上响应用户的手势摆动,最终实现人机交互。

智能设备可以包括但不限于与智能电视交互的智能设备,如可以是vr头戴式显示设备(以下简称vr头显),vr头显的传感器可以是任意一个或者多个,这个(或这些)传感器可以获取表示手势运动轨迹的运动轨迹数据。运动轨迹数据用来反映手势运动速度变化的快慢和运动方向等,如可以是手势运动轨迹在某一方向上的运动速度的加速度和在某一方向上的运动时间。

手势的运动轨迹是用户对智能设备操作时由手势的摆动形成的,如左右摆动或上下摆动,手势的运动轨迹可以包含智能设备可以识别的有效轨迹,还可以包含智能设备误识别或不识别的无效轨迹,如回程轨迹等。

操作s220,对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向。

需要说明的是,对运动轨迹数据进行处理可以包括多种方式/手段,在此不做限定。例如,可以使用计算加速度的方式,根据反映手势运动轨迹的速度变化快慢和运动方向的运动轨迹数据,确定出运动轨迹包含的运动方向,运动方向可以是一个或者多个。

操作s230,根据确定出的运动方向,在确定运动轨迹中包含回程轨迹的情况下,将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

需要说明的是,若运动轨迹包含多个运动方向,则确定运动轨迹中除有效轨迹之前还可能包含回程轨迹,则根据手势轨迹中有效轨迹的运动规律,利用运动轨迹数据识别出回程轨迹,并将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

在实现本发明构思的过程中,发明人发现,相关技术中提供的手势识别方案,只能识别出严格按照智能设备预先定义的手势,如果手势的轨迹中带有回程轨迹,则会导致误识别或者无法识别。

通过本公开的实施例,可以识别出用户手势中的回程轨迹,并去除回程轨迹的干扰,将除回程轨迹之外的手势轨迹作为有效轨迹,克服了现有技术对运动轨迹中包含回程轨迹的手势误识别或无法识别的技术问题,实现提高手势识别的成功率的技术效果。

根据本公开的实施例,根据确定出的运动方向,在确定运动轨迹不包含回程轨迹的情况下,将运动轨迹确定为手势的有效轨迹。

需要说明的是,若确定出运动轨迹中包含一个运动方向,则确定运动轨迹中不包含回程轨迹,则将运动轨迹确定为手势的有效轨迹。

下面参考图3a和图3b,对本公开实施例的手势识别方法做进一步说明。

图3a示意性示出了根据本公开实施例对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向的流程图。

如图3a所示,运动方向至少包括第一运动方向和第二运动方向,根据确定出的运动方向,确定运行轨迹中的回程轨迹可以包括操作s310~s340,其中:

操作s310,计算运动轨迹在第一运动方向上的第一加速度斜率。

操作s320,计算运动轨迹在第二运动方向上的第二加速度斜率。

操作s330,计算第一加速度斜率与第二加速度斜率的差值,得到对应的加速度斜率差值。

操作s340,基于加速度斜率差值确定运动轨迹中的回程轨迹。

需要说明的是,手势的运动方向至少包括第一运动方向d1和第二运动方向d2,在获取表示手势的运动轨迹的运动轨迹数据之后,计算运动轨迹在第一运动方向d1上的第一加速度,当第一加速度在第一运动方向d1达到最大值后,计算第一加速度斜率g1和加速度从0增加到最大值时运动的总时间t1,若第一加速度从最大值减小到0且加速度继续向相反的方向变化,则表示手势尚未结束,计算运动轨迹在第二运动方向d2上的第二加速度,当第二加速度在第二运动方向d2上达到最大值后,计算第二加速度斜率g2和加速度从0增加到最大值时运动的总时间t2,其中,加速度斜率g反应加速度变化的平稳度,运动总时间t反应动作的干净程度。计算运动轨迹在第一运动方向d1上的第一加速度斜率g1和第二运动方向d2上的第二加速度斜率g2的差值,得到运动轨迹的加速度斜率差值g3。根据手势运动轨迹中有效轨迹的运动规律,基于加速度斜率差值g3的大小确定运动轨迹中的回程轨迹是第一运动方向d1上的运动轨迹还是第二运动方向d2上的运动轨迹。

通过本公开的实施例,比较手势在不同方向上的加速度斜率,可以准确的识别出用户手势运动轨迹中的回程轨迹,提高手势识别的成功率。

根据本公开的实施例,基于加速度斜率差值确定运动轨迹中的回程轨迹可以包括:在运动轨迹的加速度斜率差值不等于第一加速度斜率的情况下,确定运动轨迹中包含回程轨迹。

需要说明的是,在第一加速度斜率g1和第二加速度斜率g2的差值g3不等于第一加速度斜率g1的情况下,可以确定第二加速度斜率g2不为零,即在手势的运动轨迹中除了包含第一运动方向d1上的第一加速度斜率g1之外,还包括第二运动方向d2上的第二加速度斜率g2。换言之,可以确定运动轨迹包含有效轨迹和回程轨迹这两个运动轨迹。

通过本公开的实施例,比较手势在不同方向上的加速度斜率差值与其中一个方向上加速度斜率的关系,可以确定用户手势运动轨迹中是否包含回程轨迹,提高手势识别的成功率。

根据本公开的实施例,基于加速度斜率差值确定运动轨迹中的回程轨迹可以包括:当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较小的斜率所对应的运动轨迹为回程轨迹;或者当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较大的斜率所对应的运动轨迹为回程轨迹。

需要说明的是,用户手势中的有效轨迹和回程轨迹的运动规律至少包括以下两种情况。

情况一:

用户手势轨迹的有效轨迹,加速度从0到最大,斜率最大加速度变化最大,并且加速度从0增加到最大再减少到0的时间较回程轨迹用时短;其他的回程手势或者调整手势,加速度从0增加到最大斜率较用户的真实摆动方向加速度增加小,且从0增加到最大再减少到0的时间较真实摆动方向时间长,即动作干脆的方向为有效轨迹的运动方向。

情况二:

用户手势轨迹的回程轨迹,加速度从0到最大,斜率最大加速度变化最大,并且加速度从0增加到最大再减少到0的时间较回程轨迹用时短;其他的回程手势或者调整手势,加速度从0增加到最大斜率较用户的真实摆动方向加速度增加小,且从0增加到最大再减少到0的时间较真实摆动方向时间长,即动作干脆的方向为回程轨迹的运动方向。

需要说明的是,在第一加速度斜率g1和第二加速度斜率g2的差值g3大于预设的误差范围的情况下,根据用户手势中的有效轨迹和回程轨迹的运动规律,确定第一加速度斜率g1和第二加速度斜率g2中较大或较小的斜率所对应的运动轨迹为回程轨迹。具体地,当动作干脆的方向为有效轨迹的运动方向时,则确定第一加速度斜率g1和第二加速度斜率g2中较小的斜率所对应的运动轨迹为回程轨迹;当动作干脆的方向为回程轨迹的运动方向时,则确定第一加速度斜率g1和第二加速度斜率g2中较大的斜率所对应的运动轨迹为回程轨迹。

通过本公开的实施例,不仅可以识别动作干脆方向为有效手势的这种一般情况,还可以识别动作干脆方向为回程手势的这种特殊情况,提高手势识别成功率。

图3b示意性示出了根据本公开实施例基于加速度斜率差值确定运动轨迹中的回程轨迹的流程图。

如图3b所示,基于加速度斜率差值确定运动轨迹中的回程轨迹可以包括操作s350~s360,其中:

操作s350,当加速度斜率差值小于第二预设差值时,比较运动轨迹在第一运动方向上的第一运动时间和运动轨迹在第二运动方向上的第二运动时间的长短,得到第二比较结果。

操作s360,基于第二比较结果,确定运动轨迹中的回程轨迹。

需要说明的是,在第一加速度斜率g1和第二加速度斜率g2的差值g3小于预设的误差范围的情况下,比较运动轨迹在第一运动方向d1上的第一运动时间t1和运动轨迹在第二运动方向d2上的第二运动时间t2的长短,确定第一运动时间t1和第二运动时间t2中较大或较小的所对应的运动轨迹为回程轨迹。

当用户手势中的有效轨迹和回程轨迹的运动规律表现为上述情况一时,动作干脆的方向为有效轨迹的运动方向,则确定第一运动时间t1和第二运动时间t2中更长的运动时间所对应的运动轨迹为回程轨迹;当用户手势中的有效轨迹和回程轨迹的运动规律表现为上述情况一时,动作干脆的方向为回程轨迹的运动方向,则确定第一运动时间t1和第二运动时间t2中更短的运动时间所对应的运动轨迹为回程轨迹。

通过本公开的实施例,不仅可以识别动作干脆方向为有效手势的这种一般情况,还可以识别动作干脆方向为回程手势的这种特殊情况,提高手势识别成功率。

图4示意性示出了根据本公开实施例加速度计算结果的示意图。

如图4所示,根据计算结果可以得到手势运动轨迹在第一运动方向d1上的加速度斜率g1和在第一运动方向d1上的第一运动时间t1,以及在第二运动方向d2上的加速度斜率g2和在第一运动方向d2上的第一运动时间t2,通过图3a~图3b中所述的根据确定出的运动方向,确定运行轨迹中的回程轨迹的方法可以分别识别出图1中四种手势中的回程轨迹,进而识别出手势中的有效轨迹为向左的运动轨迹。

图5示意性示出了根据本公开实施例的手势识别设备的框图。

如图5所示,该手势识别设备500可以包括:传感器510、处理器520。

传感器510用于用于获取表示手势的运动轨迹的运动轨迹数据。

处理器520用于对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向,并根据确定出的运动方向,在确定运动轨迹中包含回程轨迹的情况下,将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

需要说明的是,用户通过手势摆动实现对智能设备的操作,智能设备按照预先定义好的手势对用户的手势摆动进行识别,并在智能设备上响应用户的手势摆动,最终实现人机交互。

智能设备可以包括但不限于与智能电视交互的智能设备,如可以是vr头戴式显示设备(以下简称vr头显),vr头显中的传感器可以是任意一个或者多个,这个(或这些)传感器可以获取表示手势运动轨迹的运动轨迹数据。运动轨迹数据用来反映手势运动速度变化的快慢和运动方向等,如可以是手势运动轨迹在某一方向上的运动速度的加速度和在某一方向上的运动时间。

手势的运动轨迹是用户对智能设备操作时由手势的摆动形成的,如左右摆动或上下摆动,手势的运动轨迹可以包含智能设备可以识别的有效轨迹,还可以包含智能设备误识别或不识别的无效轨迹,如回程轨迹等。

需要说明的是,对运动轨迹数据进行处理可以包括多种方式/手段,在此不做限定。例如,可以使用计算加速度的方式,根据反映手势运动轨迹的速度变化快慢和运动方向的运动轨迹数据,确定出运动轨迹包含的运动方向,运动方向可以是一个或者多个。

需要说明的是,若运动轨迹包含多个运动方向,则确定运动轨迹中除有效轨迹之前还可能包含回程轨迹,则根据手势轨迹中有效轨迹的运动规律,利用运动轨迹数据识别出回程轨迹,并将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

在实现本发明构思的过程中,发明人发现,相关技术中提供的手势识别方案,只能识别出严格按照智能设备预先定义的手势,如果手势的轨迹中带有回程轨迹,则会导致误识别或者无法识别。

通过本公开的实施例,可以识别出用户手势中的回程轨迹,并去除回程轨迹的干扰,将除回程轨迹之外的手势轨迹作为有效轨迹,克服了现有技术对运动轨迹中包含回程轨迹的手势误识别或无法识别的技术问题,实现提高手势识别的成功率的技术效果。

根据本公开的实施例,处理器420还用于根据确定出的运动方向,在确定运动轨迹不包含回程轨迹的情况下,将运动轨迹确定为手势的有效轨迹。

根据本公开的实施例,处理器420还用于:计算运动轨迹在第一运动方向上的第一加速度斜率,计算运动轨迹在第二运动方向上的第二加速度斜率,计算第一加速度斜率与第二加速度斜率的差值,得到对应的加速度斜率差值,以及基于加速度斜率差值确定运动轨迹中的回程轨迹。

根据本公开的实施例,处理器420还用于在运动轨迹的加速度斜率差值不等于第一加速度斜率的情况下,确定运动轨迹中包含回程轨迹。

根据本公开的实施例,处理器420还用于当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较小的斜率所对应的运动轨迹为回程轨迹,或者当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较大的斜率所对应的运动轨迹为回程轨迹。

根据本公开的实施例,处理器420还用于:当加速度斜率差值小于第二预设差值时,比较运动轨迹在第一运动方向上的第一运动时间和运动轨迹在第二运动方向上的第二运动时间的长短,得到第二比较结果,以及基于第二比较结果,确定运动轨迹中的回程轨迹。

图6a示意性示出了根据本公开实施例的手势识别系统的框图。

如图6a所示,该手势识别系统600可以包括获取模块610、处理模块620、确定模块630。该手势识别系统可以执行参考图2描述的方法,以实现手势识别的目的。

获取模块610,用于通过传感器获取表示手势的运动轨迹的运动轨迹数据。

处理模块620,用于对运动轨迹数据进行处理,以确定运动轨迹包含的运动方向。

确定模块630,用于根据确定出的运动方向,在确定运动轨迹中包含回程轨迹的情况下,将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

需要说明的是,用户通过手势摆动实现对智能设备的操作,智能设备按照预先定义好的手势对用户的手势摆动进行识别,并在智能设备上响应用户的手势摆动,最终实现人机交互。

智能设备可以包括但不限于与智能电视交互的智能设备,如可以是vr头戴式显示设备(以下简称vr头显),vr头显的传感器可以是任意一个或者多个,这个(或这些)传感器可以获取表示手势运动轨迹的运动轨迹数据。运动轨迹数据用来反映手势运动速度变化的快慢和运动方向等,如可以是手势运动轨迹在某一方向上的运动速度的加速度和在某一方向上的运动时间。

手势的运动轨迹是用户对智能设备操作时由手势的摆动形成的,如左右摆动或上下摆动,手势的运动轨迹可以包含智能设备可以识别的有效轨迹,还可以包含智能设备误识别或不识别的无效轨迹,如回程轨迹等。

需要说明的是,对运动轨迹数据进行处理可以包括多种方式/手段,在此不做限定。例如,可以使用计算加速度的方式,根据反映手势运动轨迹的速度变化快慢和运动方向的运动轨迹数据,确定出运动轨迹包含的运动方向,运动方向可以是一个或者多个。

需要说明的是,若运动轨迹包含多个运动方向,则确定运动轨迹中除有效轨迹之前还可能包含回程轨迹,则根据手势轨迹中有效轨迹的运动规律,利用运动轨迹数据识别出回程轨迹,并将运动轨迹中除回程轨迹之外的轨迹确定为手势的有效轨迹。

在实现本发明构思的过程中,发明人发现,相关技术中提供的手势识别方案,只能识别出严格按照智能设备预先定义的手势,如果手势的轨迹中带有回程轨迹,则会导致误识别或者无法识别。

通过本公开的实施例,可以识别出用户手势中的回程轨迹,并去除回程轨迹的干扰,将除回程轨迹之外的手势轨迹作为有效轨迹,克服了现有技术对运动轨迹中包含回程轨迹的手势误识别或无法识别的技术问题,实现提高手势识别的成功率的技术效果。

根据本公开的实施例,确定模块630还用于根据确定出的运动方向,在确定运动轨迹不包含回程轨迹的情况下,将运动轨迹确定为手势的有效轨迹。

图6b示意性示出了根据本公开实施例的处理模块的框图。

如图6b所示,处理模块620包括:第一计算单元621、第二计算单元622、第三计算单元623、确定单元624。

第一计算单元621,用于计算运动轨迹在第一运动方向上的第一加速度斜率。

第二计算单元622,用于计算运动轨迹在第二运动方向上的第二加速度斜率.

第三计算单元623,用于计算第一加速度斜率与第二加速度斜率的差值,得到对应的加速度斜率差值.

确定单元624,用于基于加速度斜率差值确定运动轨迹中的回程轨迹。

根据本公开的实施例,确定单元624还用于在运动轨迹的加速度斜率差值不等于第一加速度斜率的情况下,确定运动轨迹中包含回程轨迹。

根据本公开的实施例,确定单元624还用于当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较小的斜率所对应的运动轨迹为回程轨迹;或者用于当加速度斜率差值大于第一预设差值时,确定第一加速度斜率和第二加速度斜率中较大的斜率所对应的运动轨迹为回程轨迹。

图6c示意性示出了根据本公开实施例的确定单元的框图。

如图6c所示,确定单元624包括:比较子单元625、确定子单元626。

比较子单元625,用于当加速度斜率差值小于第二预设差值时,比较运动轨迹在第一运动方向上的第一运动时间和运动轨迹在第二运动方向上的第二运动时间的长短,得到第二比较结果。

确定子单元626,用于基于第二比较结果,确定运动轨迹中的回程轨迹。

需要说明的是,系统部分各实施例中的模块/单元/子单元的实现方式/手段、所实现的功能、所解决的技术问题、以及所达到的技术效果与方法部分各实施例中对应的操作的实现方式/手段、所实现的功能、所解决的技术问题、以及所达到的技术效果相同或类似,在此不再赘述。

图7示意性示出了应用本公开实施例的适于实现手势识别方法及其系统的计算机系统的框图。图7示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图7所示,计算机系统700包括传感器710、处理器720、计算机可读存储介质730。该计算机系统700可以执行上面参考图2~图3b描述的方法,以实现识别用户手势中的回程轨迹,并去除回程轨迹的干扰,将除回程轨迹之外的手势轨迹作为有效轨迹。

具体地,传感器710例如可以包括但不限于三维摄像头。传感器710可以是用于执行参考图2~图3b描述的根据本公开实施例的方法流程中获取表示手势的运动轨迹的运动轨迹数据。

具体地,处理器720例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器720还可以包括用于缓存用途的板载存储器。处理器720可以是用于执行参考图2~图3b描述的根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

计算机可读存储介质730,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

计算机可读存储介质730可以包括计算机程序731,该计算机程序731可以包括代码/计算机可执行指令,其在由处理器720执行时使得处理器720执行例如上面结合图2~图3b所描述的方法流程及其任何变形。

计算机程序731可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序731中的代码可以包括一个或多个程序模块,例如包括731a、模块731b、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器720执行时,使得处理器720可以执行例如上面结合图2~图3b所描述的方法流程及其任何变形。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

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