首页 / 专利库 / 联轴器,法兰和接头 / 机械接头 / 移动关节 / 基于手势识别的命令激活方法和系统

基于手势识别的命令激活方法和系统

阅读:392发布:2023-01-22

专利汇可以提供基于手势识别的命令激活方法和系统专利检索,专利查询,专利分析的服务。并且本 发明 描述了 虚拟现实 (VR), 增强现实 (AR)或 混合现实 (MR)系统(统称为“视觉增强系统”)中的手势激活命令的各方面。作为示例,这些方面可以包括识别 深度相机 前面的手势并响应于识别的手势执行一个或多个命令。手势激活命令可以包括执行诸如启动应用程序、终止应用程序、打开开始菜单等操作。,下面是基于手势识别的命令激活方法和系统专利的具体信息内容。

1.一种视觉增强系统中的用户交互方法,包括:
通过深度相机收集手的深度图
通过关节分析器识别所述深度图中手的一个或多个关节;
通过手势分析器、基于所述深度图中识别的关节,确定手的手势;和
响应于所确定的手势,通过命令响应组件执行相应的操作。
2.如权利要求1所述的方法,其中所述深度图包括与手的一个或多个相应部位和所述深度相机之间的距离有关的信息。
3.如权利要求1所述的方法,其中所述确定手势的步骤包括:基于所述深度图中识别的一个或多个关节,识别伸直的手指的数量。
4.如权利要求3所述的方法,其中所述确定手势步骤还包括基于所识别的伸直的手指的数量来确定当前静态手势。
5.如权利要求4所述的方法,其中所述确定手势的步骤还包括:基于所确定的当前静态手势与先前确定的静态手势之间的比较来确定动态手势。
6.如权利要求5所述的方法,其中将所述动态手势确定为选自:逐渐闭合手,逐渐张开手,闭合手,张开手,从左向右滑动一根手指,用一根或多根伸直的手指点击,或从右向左滑动一根手指。
7.如权利要求6所述的方法,其中所述执行相应操作的步骤包括响应于确定为张开手的动态手势,启动包括一个或多个选项项目的菜单。
8.如权利要求6所述的方法,其中所述执行相应操作的步骤包括:响应于所述确定为闭合手的动态手势,终止包括一个或多个选项项目的菜单。
9.如权利要求6所述的方法,其中所述执行相应操作的步骤包括:响应于所述确定为从左向右滑动一根手指的动态手势,从左到右移动菜单中的一个或多个选项项目。
10.如权利要求6所述的方法,其中所述执行相应操作的步骤包括:响应于所述确定为从右向左滑动一根手指的动态手势,从右向左移动菜单中的一个或多个选项项目。
11.如权利要求6所述的方法,其中所述执行相应操作的步骤包括:响应于所述确定为点击选项项目的动态手势,启动对应于选项项目的应用程序。
12.一种用于视觉增强系统中的用户交互的系统,包括:
深度相机,将其配置为收集手的深度图;
关节分析器,用于识别所述深度图中手的一个或多个关节;
手势分析器,将其配置为基于所述深度图中所识别的关节来确定手的手势;和命令响应组件,将其配置为响应于所确定的手势执行相应的操作。
13.如权利要求12所述的系统,其中所述深度图包括与手的一个或多个部位和深度相机之间的距离有关的信息。
14.如权利要求12所述的系统,其中将所述手势分析器配置为基于所述深度图中所识别的一个或多个关节来识别伸直的手指的数量。
15.如权利要求14所述的系统,其中将所述手势分析器配置为基于所识别的伸直的手指的数量来确定当前静态手势。
16.如权利要求15所述的系统,
其中所述系统还包括手状态存储装置,
其中,将所述手势分析器配置为基于所确定的当前静态手势与存储在手状态存储装置中的先前确定的静态手势之间的比较来确定动态手势。
17.如权利要求16所述的系统,其中将所述动态手势确定为选自:逐渐闭合手,逐渐张开手,闭合手,张开手,从左向右滑动一根手指,用一根或多根伸直的手指点击,或从右向左滑动一根手指。
18.如权利要求17所述的系统,其中将所述命令响应组件配置为响应于所述确定为张开手的动态手势,发起包括一个或多个选项项目的菜单。
19.如权利要求17所述的系统,其中将所述命令响应组件配置为响应于确定为闭合手的动态手势,终止包括一个或多个选项项目的菜单。
20.如权利要求17所述的系统,其中将所述命令响应组件配置为响应于所述确定为从左向右滑动一根手指的动态手势,从左向右移动菜单中的一个或多个选项项目。
21.如权利要求17所述的系统,其中将所述命令响应组件配置为响应于所述确定为从右向左滑动一根手指的动态手势,从右向左移动菜单中的一个或多个选项项目。
22.如权利要求17所述的系统,其中将所述命令响应组件配置为响应于所述确定为点击所述选项项目的所述动态手势,发起对应于选项项目的应用程序。

说明书全文

基于手势识别的命令激活方法和系统

技术领域

[0001] 本发明涉及视觉增强技术领域,尤其涉及视觉增强系统中的基于手势识别的命令激活方法和系统。

背景技术

[0002] 视觉增强系统指的是提供与现实世界对象相关联的补充信息的头戴式设备。例如,视觉增强系统可以包括配置成显示补充信息的近眼显示器。通常,补充信息可以显示在现实世界对象附近。例如,电影院可以显示电影时间表,使得用户在他/她看电影院时可以不需要搜索电影信息。
[0003] 传统上,视觉增强系统还可以包括用于接收来自用户的输入或命令的遥控器。例如,两个运动跟踪输入装置可以包括在视觉增强系统中,以用于接收来自用户的命令。然而,遥控器可能需要额外的电源,以及到头戴式设备的无线信号的传输。

发明内容

[0004] 以下呈现一个或多个方面的简要概述,以便提供对这些方面的基本理解。该概述不是对所有预期方面的广泛综述,而且既不是要标识出所有方面的关键或者决定性元素、也不是要界定任何或者所有方面的范围。其唯一目的是以简单形式给出一个或多个方面的某些概念,作为对稍后给出的更详细说明的序言。
[0005] 本发明的一个示例方面提供了用于视觉增强系统中的用户交互的示例方法。示例方法可以包括通过深度相机收集手的深度图。示例方法还可以包括通过关节分析器识别深度图中的手的一个或多个关节,并且基于深度图中所识别的关节,通过手势分析器来确定手的手势。另外,示例方法可以包括:响应于所确定的手势,通过命令响应组件执行相应的操作。
[0006] 本发明的另一示例方面提供了用于视觉增强系统中的用户交互的示例系统。示例系统可以包括深度相机,将其配置为收集手的深度图。示例系统还可包括:关节分析器,将其配置为识别深度图中的手的一个或多个关节;以及手势分析器,将其配置为基于深度图中所识别的关节来确定手的手势。另外,示例系统可以包括命令响应组件,将其配置为响应于所确定的手势执行相应的操作。
[0007] 为了实现上述目的和相关目的,一个或多个方面包括下面充分描述的并在权利要求中具体指出的多个特征。以下描述和附图详细阐述了一个或多个方面的某些说明性特征。然而,这些特征仅仅指示各种方面的原理可以采用的各种方式中的一些,并且该描述旨在包括所有这些方面及其等同物。

附图说明

[0008] 在下文中将结合附图描述所公开的方面,提供这些附图是为了说明而不是限制所公开的方面,其中相同的标号表示相同的元件,并且其中:
[0009] 图1示出了被配置为识别动态手势的示例视觉增强系统;
[0010] 图2示出了被配置为识别其他动态手势的示例视觉增强系统;
[0011] 图3是示出可以实现基于手势识别的命令激活的示例视觉增强系统的框图
[0012] 图4示出了由示例视觉增强系统响应于一个或多个动态手势而显示的示例菜单;和
[0013] 图5是基于手势识别的用于命令激活的示例方法的流程图

具体实施方式

[0014] 现在参考附图描述各个方面。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对一个或多个方面的透彻理解。然而,显而易见的是,可以在没有这些具体细节的情况下实践这些方面。
[0015] 在本发明中,术语“包含”和“包括”及其衍生词意味着包含而不是限制;术语“或”,也是非限定性地,是指:和/或。
[0016] 在本说明书中,用于说明本发明的原理的以下各种实施例仅用于说明目的,因此不应被理解为以任何方式限制本发明的范围。以下结合附图的描述是为了便于彻底理解由权利要求及其等同物限定的本发明的说明性实施例。在以下描述中存在具体细节以便于理解。但是,这些细节仅用于说明目的。因此,本领域技术人员应该理解,在不脱离本发明的范围和精神的情况下,可以对本说明书中所示的实施例进行各种变更和修改。另外,为了清楚和简明的目的,没有描述一些已知的功能和结构。此外,在整个附图中,相同的附图标记表示相同的功能和操作。
[0017] 在下文中公开的视觉增强系统可以包括深度相机,将其配置为收集用户的手的深度图。深度图可以包括距离信息,该距离信息包括从手的关节到深度相机的距离。基于深度图,可以将视觉增强系统配置为识别手的关节,并且根据关节的相对位置识别手势。响应于识别的手势,可以将视觉增强系统配置为执行分别与手势相关联的命令。因此,可能不需要遥控器来向视觉增强系统输入命令。
[0018] 图1示出了被配置为识别动态手势的示例视觉增强系统102。
[0019] 如图所示,示例性视觉增强系统102可包括深度相机104和显示器106。深度相机104可以参考被配置为测量相机与一个或多个物体之间的距离的相机。可以将显示器106配置为显示与视觉增强系统102的镜片相关的信息。在一些实施例中,深度相机104可以指的是飞行时间(ToF)相机,将其配置为测量从相机发射到一个或多个物体并从物体反射到相机的光信号的相应往返时间。通过测量光信号的往返时间,可以将深度相机104配置为基于已知的光速确定距离。这样,由深度相机104捕获的对象可以与包括二维图像中的坐标和距离的三维位置相关联。在其他实施例中,深度相机104可以基于结构光或立体视觉系统来实现。
[0020] 通常,当深度相机104捕获深度图时,可以将处理单元(例如,处理单元302)配置为确定手是否包括在深度图中。可以基于神经网络训练来执行这种确定,例如,基于机器学习来检测手。利用类似的技术,可以将处理单元配置为在深度图中检测和识别手的关节。在一些实施例中,还可以将处理单元配置为检测和识别手的指尖。所识别的关节和指尖在图1中由虚线圆圈示出。也就是说,深度图可以包括手的关节和/或指尖的三维位置。
[0021] 基于包括所识别的手的关节的深度图,还可以将处理单元配置为确定手的手势。在至少一些实施例中,可以将处理单元配置为基于从相应指尖到手掌中心的距离来计算手的伸直的手指的数量。例如,如果伸直的手指的数量是五,则可以将处理单元配置为将手势确定为张开的手。如果伸直的手指的数量为零,则处理单元可将手势确定为拳头。如果伸直的手指的数量是1,则可以将手势确定为一根手指。也可以基于计数类似地识别诸如两根伸直的手指之类的其他手势。
[0022] 此外,可以将处理单元配置为生成手的状态并将手的状态存储为手状态历史。每个手状态可以包括确定的手势和关节的相应三维位置。例如,手状态可以包括指示“拳头”的手势和关节的对应三维位置的信息。在另一实施例中,手状态可包括指示“张开的手”的手势和关节的对应三维位置的信息。生成的手状态可以存储为具有与每个手状态相关联的时间戳的手状态历史。
[0023] 在一些实施例中,当处理单元识别当前手状态时,可以将处理单元配置为将当前手状态与存储在手状态历史中的先前识别的手状态进行比较,以便确定动态手势。例如,处理单元可识别指示为拳头的当前手状态并将当前手状态存储在手状态历史中。如果当前手状态指示为拳头并且先前识别的手状态指示张开的手,则可将处理单元配置为将动态手势确定为“闭合手”。在要求保护的本发明的一个或多个实施例中,可以将处理单元配置为以深度相机的频率或以用户预先确定的频率(例如,每秒24到每秒60帧)确定动态手势。
[0024] 类似地,可以将处理单元配置为如果当前手状态被识别为“张开手”并且先前识别的手状态指示为“拳头”,则将动态手势确定为“张开的手”。
[0025] 对于每个动态手势,可以将处理单元配置为附上附加信息。例如,附加信息可包括关节和指尖的位移。也就是说,可以将当前手状态和先前识别的手状态之间的关节和指尖的位置的变化附加到动态手势。可以存储动态手势和关节以及指尖的位移的组合,并将其称为手势命令。
[0026] 图2示出了被配置为识别其他动态手势的示例视觉增强系统102。
[0027] 类似于图1,可以将深度相机104配置为收集包括手的关节和指尖的三维信息的深度图。关节和指尖的三维信息可包括从关节和指尖到深度相机104的相应距离。
[0028] 可以将视觉增强系统102的处理单元配置为基于由深度图指示的伸直的手指的数量来确定手势。如图所示,可以将处理单元配置为识别指示一根手指并且包括关节和指尖的对应三维位置的手状态。手状态可以存储在手状态历史中。
[0029] 此外,可以将示例视觉增强系统102的处理单元配置为识别当前手状态,该当前手状态还指示一根手指并且包括关节和指尖的三维位置。通过将当前手状态与先前识别的手状态进行比较,处理单元可以确定当前手势与先前识别的手势相同,但是关节和指尖的位置可能已经改变。基于关节和指尖的位置的变化,可以将处理单元配置为计算关节和指尖的位移。
[0030] 在一些实施例中,可以将处理单元配置为基于关节和指尖的位移来确定动态手势。例如,当关节和指尖的位移指示从左到右的移动时,处理单元可将动态手势识别为“从左向右滑动的一根手指”。在一些其他实施例中,当一根伸直的手指的关节的位移超过预定的深度阈值但是手的其他关节的位移在预定的深度阈值内时,处理单元可以将动态手势识别为“用一根手指点击”。
[0031] 图3是示出示例视觉增强系统102的框图,通过该示例视觉增强系统102可以实现基于手势识别的命令激活。
[0032] 如上所述,视觉增强系统102可以包括深度相机104,将深度相机104配置为收集手的深度图。深度图可以由深度相机104发送到处理单元302。处理单元302的组件可以实现为硬件固件软件或其任何组合。
[0033] 在接收到手的深度图时,可以将处理单元302的关节分析器304配置为识别深度图中的手的一个或多个关节和指尖。在至少一些实施例中,可以将关节分析器304配置为基于神经网络训练来检测和识别关节和指尖,所述神经网络训练可以涉及在足够数量的图像中手动标记关节。所识别的关节和指尖可以与三维位置信息相关联并且在深度图中标记。
[0034] 基于包括所识别的关节和指尖的深度图,可以将手势分析器306配置为确定手势。更详细地,可以将包括在手势分析器306中的静态手势分析器311配置为计算深度图中的伸直的手指的数量。在至少一些实施例中,可以将静态手势分析器311配置为基于从相应的指尖到手掌的中心的距离来确定伸直的手指。例如,当从相应的指尖到手掌中心的距离等于或大于预定距离时,可以将静态手势分析器311配置为识别伸直的手指。当从相应的指尖到手掌中心的距离小于预定距离时,静态手势分析器311可以不将该手指计为伸直的手指。
[0035] 根据识别的伸直的手指的数量,可以将静态手势分析器311配置为在深度图中确定手的手势。例如,如果伸直的手指的数量是五,则可以将静态手势分析器311配置为将手势确定为张开的手。如果确定伸直的手指的数量是一,则可以将静态手势分析器311配置为将手势确定为一根手指。如果伸直的手指的数量为零,则可以将静态手势分析器311配置为将手势确定为拳头。可以基于伸直的手指的数量类似地确定诸如两根手指的其他手势。
[0036] 识别的手势可以由一个或多个手势代码之一表示(例如,“拳头”可以由二进制代码“00”表示)。可以将手势代码发送给包括在手状态生成器313中的手势分析器306。可以将手状态生成器313配置为将关节和指尖的三维位置与手势代码相关联以生成手状态。例如,指示张开的手的手势代码可以与基于关节和指尖的三维位置计算的五个指尖之间的距离相关联。五个指尖之间的距离可以指示手的张开程度,例如,部分张开或完全张开。指示一根手指的手势代码可以与从伸直的手指的指尖到基于关节和指尖的三维位置计算的手的中心的距离相关联。
[0037] 由手状态生成器313生成的手状态可以进一步存储在手状态存储装置305中的手状态历史中。在一些实施例中,所生成的手状态可以与对应的时间戳一起存储在手状态历史中,并且可以将其作为当前手状态发送给包括在手势分析器306中的动态手势分析器315。
[0038] 可以将动态手势分析器315配置为将当前手状态与手状态历史中的一个或多个先前手状态进行比较以确定动态手势。例如,当手状态历史中的前一手状态是拳头并且当前手状态是张开的手时,可以将动态手势分析器315配置为将动态手势确定为“张开手”。值得注意的是,当前一手状态是张开的手并且当前手状态也是将手进一步张开,即指尖之间的距离增加时,可以将动态手势分析器315配置为将动态手势确定为“逐渐张开手”。在这种情况下,可以将动态手势分析器315配置为基于与前一手状态相关联的时间戳来确定张开的速度。
[0039] 在一些其他实施例中,当手状态历史中的前一手状态是张开的手并且当前手状态是拳头时,可以将动态手势分析器315配置为将动态手势确定为“闭合手”。类似地,当前一手状态是张开的手并且当前手状态也是张开较少的张开的手,即指尖之间的距离减小时,可以将动态手势分析器315配置为将动态手势确定为“逐渐闭合手”。
[0040] 此外,当手状态历史中的前一手状态是一根手指并且当前手状态也是一根手指时,可以将动态手势分析器315配置为基于关节的三维位置的变化(即,关节的位移)来确定动态手势。
[0041] 例如,当一根伸直的手指的关节和指尖的位移指示从左到右的移动时,动态手势分析器315可以将动态手势识别为“从左向右滑动的一根手指”。一些其他实施例中,当一根伸直的手指的关节的位移超过预定的深度阈值但是手的其他关节的位移在预定的深度阈值内时,动态手势分析器315可以将动态手势识别为“用一根手指点击”。
[0042] 此外,可以将动态手势分析器315配置为将附加信息与所确定的动态手势相关联。附加信息可包括关节和指尖的位移。也就是说,当前手状态和前一手状态之间的关节和指尖的位置的改变可以与动态手势相关联。例如,与“张开手”相关联的附加信息可以包括从前一手状态中的位置开始的关节的位移。
[0043] 可以存储动态手势和关节以及指尖的位移的组合,并将其称为手势命令。可以将动态手势分析器315配置为将手势命令发送到命令响应组件308。
[0044] 可以将命令响应组件308配置为响应于手势命令发起一个或多个操作。例如,可以将命令响应组件308配置为响应于包括被确定为“张开手”的动态手势的手势命令来发起包括一个或多个选项项目的菜单。在一些实施例中,可以将命令响应组件308配置为响应于包括被确定为“逐渐张开手”的动态手势的手势命令,逐渐启动菜单,例如,逐渐增加菜单的大小。
[0045] 可以将命令响应组件308配置为响应于包括被确定为“闭合手”的动态手势的手势命令来终止菜单。类似地,可以将命令响应组件308配置为响应于包括被确定为“逐渐闭合手”的动态手势的手势命令,逐渐关闭菜单,例如,逐渐减小菜单的大小。
[0046] 此外,可以将命令响应组件308配置为响应于包括被确定为“从左向右滑动的一根手指”的动态手势的手势命令,从左向右移动菜单中包括的一个或多个选项项目。特别地,可以将命令响应组件308配置为以与手指相同的速度移动一个或多个选项项目。类似地,可以将命令响应组件308配置为响应于包括被确定为“从右向左滑动的一根手指”的动态手势的手势命令,从右向左移动菜单中包括的一个或多个选项项目。
[0047] 此外,可以将命令响应组件308配置为响应于包括“用一根手指点击”的动态手势的手势命令来发起对应于选项项目之一的应用程序或程序。
[0048] 在上述过程期间,菜单和选项项目可以在显示器106上显示。显示器106可以包括DLP投影仪或LCOS微显示器,或OLED显示器,或激光MEMS扫描仪
[0049] 图4示出了由示例视觉增强系统响应于一个或多个手势命令而显示的示例菜单。
[0050] 如图所示,可以将显示器106配置为显示包括一个或多个选项项目的菜单,例如选项项目402A-402G。每个选项项目可以对应于应用程序或程序。如图4所示,选项项目402A-402G可以显示成一排。在一些其他实施例中,选项项目402A-402G可以呈环形显示。中心的选项项目,例如选项项目402D,可以与其他选项项目不同地显示,以指示中心的选项项目是当前选择的选项项目。
[0051] 响应于包括被确定为“从左向右滑动的一根手指”的动态手势的手势命令,可以将命令响应组件308配置为将所有选项项目移动到右侧。类似地,响应于包括被确定为“从右向左滑动的一根手指”的动态手势的手势命令,可以将命令响应组件308配置为将所有选项项目移动到左侧。
[0052] 在至少一些实施例中,可以将命令响应组件308配置为以与手指相同的速度移动选项项目402A-402G并且在手指停止时停止选项项目的移动。可以基于关节和指尖的位移以及与前一手状态和当前手状态相关联的相应时间戳来计算手指的速度。在这些实施例中,选项项目402A-402G可以与手指一起以相同的速度移动并且在手指停止时停止。当手指停止时,当前选择的选项项目可以是位于中心的选项项目,例如选项项目402C或选项项目402E。
[0053] 响应于包括为“用一根手指点击”的动态手势的手势命令,可以将命令响应组件308配置为发起对应于当前选择的选项项目的应用程序。
[0054] 图5是基于手势识别的用于命令激活的示例方法500的流程图。示例方法500中包括的操作可以由根据图3描述的组件执行。
[0055] 在框502处,示例方法500可以包括通过深度相机收集手的深度图。例如,可以将深度相机104配置为测量从相机发射到一个或多个物体并从物体反射到相机的光信号的相应往返时间。通过测量光信号的往返时间,可以将深度相机104配置为基于已知的光速确定距离。这样,由深度相机104捕获的对象可以与包括二维图像中的坐标和距离的三维位置相关联。在其他实施例中,深度相机104可以基于结构光或立体视觉系统。
[0056] 在框504处,示例方法500可以包括通过关节分析器识别深度图中的手的一个或多个关节。例如,可以将处理单元302的关节分析器304配置为识别深度图中的手的一个或多个关节和指尖。在至少一些实施例中,可以将关节分析器304配置为基于神经网络训练来检测和识别关节和指尖,所述神经网络训练可以涉及在足够数量的图像中手动标记关节。所识别的关节和指尖可以与三维位置信息相关联并且在深度图中标记。
[0057] 在框506处,示例方法500可以包括由手势分析器基于深度图中所识别的关节来确定手的手势。例如,可以将手势分析器306配置为基于深度图中所识别的关节和指尖确定手势。可以在框510、512和514中指示框506的子操作。
[0058] 在框510处,示例方法500可以包括基于深度图中所识别的一个或多个关节来识别伸直的手指的数量。例如,可以将包括在手势分析器306中的静态手势分析器311配置为计算深度图中的伸直的手指的数量。在至少一些实施例中,可以将静态手势分析器311配置为基于从相应的指尖到手掌的中心的距离来确定伸直的手指。例如,当从相应的指尖到手掌中心的距离等于或大于预定距离时,可以将静态手势分析器311配置为识别伸直的手指。当从相应的指尖到手掌中心的距离小于预定距离时,静态手势分析器311可以不将该手指计为伸直的手指。
[0059] 在框512处,示例方法500可以包括基于所识别的伸直的手指的数量来确定当前静态手势。例如,可以将静态手势分析器311配置为确定深度图中的手的手势。例如,如果伸直的手指的数量是五,则可以将静态手势分析器311配置为将手势确定为张开的手。如果确定伸直的手指的数量是一,则可以将静态手势分析器311配置为将手势确定为一根手指。如果伸直的手指的数量为零,则可以将静态手势分析器311配置为将手势确定为拳头。可以基于伸直的手指的数量类似地确定诸如两根手指的其他手势。
[0060] 识别的手势可以由一个或多个手势代码之一表示(例如,“拳头”可以由二进制代码“00”表示)。可以将手势代码发送给包括在手状态生成器313中的手势分析器306。可以将手状态生成器313配置为将关节和指尖的三维位置与手势代码相关联以生成手状态。例如,指示张开的手的手势代码可以与基于关节和指尖的三维位置计算的五个指尖之间的距离相关联。五个指尖之间的距离可以指示手的张开程度,例如,部分张开或完全张开。指示一根手指的手势代码可以与从伸直的手指的指尖到基于关节和指尖的三维位置计算的手掌中心的距离相关联。
[0061] 由手状态生成器313生成的手状态可以进一步存储在手状态存储装置305中的手状态历史中。在一些实施例中,所生成的手状态可以与对应的时间戳一起存储在手状态历史中,并且可以将其作为当前手状态发送给包括在手势分析器306中的动态手势分析器315。
[0062] 在框514处,示例方法500可以包括基于所确定的当前静态手势与先前确定的静态手势之间的比较来确定动态手势。例如,可以将动态手势分析器315配置为将当前手状态与手状态历史中的一个或多个先前手状态进行比较以确定动态手势。例如,当手状态历史中的前一手状态是拳头并且当前手状态是张开的手时,可以将动态手势分析器315配置为将动态手势确定为“张开手”。值得注意的是,当前一手状态是张开的手并且当前手状态也是将手进一步张开,即指尖之间的距离增加时,可以将动态手势分析器315配置为将动态手势确定为“逐渐张开手”。在这种情况下,可以将动态手势分析器315配置为基于与前一手状态相关联的时间戳来确定张开的速度。
[0063] 在一些其他实施例中,当手状态历史中的前一手状态是张开的手并且当前手状态是拳头时,可以将动态手势分析器315配置为将动态手势确定为“闭合手”。
[0064] 此外,当手状态历史中的前一手状态是一根手指并且当前手状态也是一根手指时,可以将动态手势分析器315配置为基于关节的三维位置的变化(即,关节的位移)来确定动态手势。
[0065] 例如,当一根伸直的手指的关节和指尖的位移指示从左到右的移动时,动态手势分析器315可以将动态手势识别为“从左向右滑动的一根手指”。一些其他实施例中,当一根伸直的手指的关节的位移超过预定的深度阈值但是手的其他关节的位移在预定的深度阈值内时,动态手势分析器315可以将动态手势识别为“用一根手指点击”。
[0066] 此外,可以将动态手势分析器315配置为将附加信息与所确定的动态手势相关联。附加信息可包括关节和指尖的位移。也就是说,当前手状态和前一手状态之间的关节和指尖的位置的改变可以与动态手势相关联。例如,与“张开手”相关联的附加信息可以包括从前一手状态中的位置开始的关节的位移。
[0067] 可以存储动态手势和关节以及指尖的位移的组合,并将其称为手势命令。可以将动态手势分析器315配置为将手势命令发送到命令响应组件308。
[0068] 在框508处,示例方法500可以包括:响应于所确定的手势,通过命令响应组件执行相应的操作。例如,可以将命令响应组件308配置为响应于手势命令发起一个或多个操作。可以在框516、518、520、522和524中指示框508的子操作。
[0069] 在框516处,示例方法可以包括响应于被确定为张开手的动态手势,发起包括一个或多个选项项目的菜单。例如,可以将命令响应组件308配置为响应于包括被确定为“张开手”的动态手势的手势命令来发起包括一个或多个选项项目的菜单。在一些实施例中,可以将命令响应组件308配置为响应于包括被确定为“逐渐张开手”的动态手势的手势命令,逐渐启动菜单,例如,逐渐增加菜单的大小。
[0070] 在框518处,示例方法可以包括响应于被确定为闭合手的动态手势,终止包括一个或多个选项项目的菜单。例如,可以将命令响应组件308配置为响应于包括被确定为“闭合手”的动态手势的手势命令来终止菜单。类似地,可以将命令响应组件308配置为响应于包括被确定为“逐渐闭合手”的动态手势的手势命令,逐渐关闭菜单,例如,逐渐减小菜单的大小。
[0071] 在框520处,示例方法可以包括响应于被确定为从左向右滑动一根手指的动态手势,从左到右移动菜单中的一个或多个选项项目。例如,可以将命令响应组件308配置为响应于包括被确定为“从左向右滑动的一根手指“的动态手势的手势命令,从左向右移动菜单中包括的一个或多个选项项目。在至少一些实施例中,可以将命令响应组件308配置为以与手指相同的速度移动选项项目并且在手指停止时停止选项项目的移动。可以基于关节和指尖的位移以及与前一手状态和当前手状态相关联的相应时间戳来计算手指的速度。
[0072] 在框522处,示例方法可以包括响应于被确定为从右向左滑动一根手指的动态手势,从右向左移动菜单中的一个或多个选项项目。例如,可以将命令响应组件308配置为响应于包括被确定为“从右向左滑动的一根手指”的动态手势的手势命令,从右向左移动菜单中包括的一个或多个选项项目。类似地,可以将命令响应组件308配置为以与手指相同的速度移动选项项目,并且当手指停止时停止选项项目的移动。
[0073] 在框524处,示例方法可以包括响应于被确定为点击选项项目的动态手势,发起对应于选项项目的应用程序。例如,可以将命令响应组件308配置为响应于包括为“用一根手指点击”的动态手势的手势命令来发起对应于选项项目之一的应用程序或程序。
[0074] 应理解,所公开的过程中的步骤的特定顺序或层次是示例性方法的说明。基于设计偏好,应理解,可以重新排列过程中的步骤的特定顺序或层次。此外,可以组合或省略一些步骤。所附方法要求保护以样本顺序呈现各个步骤的元素,并不意味着限于所呈现的特定顺序或层次。
[0075] 提供先前的描述是为了使所属领域的技术人员能够实践本文中所描述的各个方面。对于本领域技术人员来说,对这些方面的各种修改是显而易见的,并且本文定义的一般原理可以应用于其他方面。因此,权利要求不旨在对本文所示的方面进行限制,而是与符合语言权利要求的完整范围相一致,其中而是应被授予与语言上的权利要求相一致的全部范围,其中对要素的单数形式的引述除非特别声明,否则并非旨在表示“有且仅有一个”,而是“一个或多个”。除非另外特别说明,否则术语“一些”是指一个或多个。本公开通篇描述的各种方面的要素为本领域普通技术人员当前或今后所知的所有结构上和功能上的等效方案通过引述被明确纳入于此,且旨在被权利要求所涵盖。此外,本公开中所公开的任何内容都并非旨在贡献给公众,无论这样的公开是否在权利要求书中被显式地叙述。没有任何权利要求元素应被解释为装置加功能,除非该元素是使用短语“用于……的装置”来明确叙述的。
[0076] 此外,术语“或”旨在表示包含性的“或”而不是排他性的“或”。也就是说,除非另有说明或从上下文中清楚,否则短语“X使用A或B”旨在表示任何自然的包含性排列。也就是说,通过以下任何一种情况满足短语“X使用A或B”:X使用A;X使用B;或者X使用A和B。另外,本申请和所附权利要求中使用的冠词“一”和“一个”通常应理解为表示“一个或多个”,除非另有说明或从上下文中清楚地指向单数形式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈