手势控制方法、装置、计算机可读存储介质和电子设备与流程

文档序号:31313137发布日期:2022-08-31 00:04阅读:28来源:国知局
手势控制方法、装置、计算机可读存储介质和电子设备与流程

1.本技术涉及手势虚拟操控领域,具体涉及一种手势控制方法、装置、计算机可读存储介质和电子设备。


背景技术:

2.随着手势探测和虚拟操控的推广适用,需要对手势的当前位置和状态的检测越来越精准。目前利用手势的做出的虚拟操控一般是根据所接收到的手势控制中的手势图像生成对应的控制信息。但是,往往鉴于手势动作运动过快或运动超过影像捕捉范围,或者环境因素的混淆,导致难以获取准确的手势的识别结果,并实现准确的虚拟操控。


技术实现要素:

3.为克服现有的难以获取准确的手势的识别结果的问题,本技术提供一种手势控制方法、装置、计算机可读存储介质、电子设备和增强现实设备。
4.第一方面,本技术提供了一种手势控制方法,包括以下步骤:
5.对输入的原始图像进行全局检测,获取所述原始图像中手势图像的目标位置;
6.对所述原始图像的所述目标位置所在区域进行精确检测,截取局部的手势图像;
7.对所述手势图像进行手势分类识别,得到所述手势图像中的静态手势的手势分类;
8.将多个连续识别得到手势分类的静态手势的结果形成上下文手势,根据所述上下文手势生成对应的控制指令。
9.在第一方面的可选实施例中,所述对所述原始图像的所述目标位置所在区域进行精确检测,包括:
10.将截取的手势图像输入至手势图像识别模型,获取所述手势图像中的静态手势的识别信息;
11.其中,所述手势图像识别模型是根据预设手势分类进行训练得到的。
12.在第一方面的可选实施例中,所述识别信息包括手势图像的置信度;
13.所述获取所述手势图像中的静态手势的识别信息之后,还包括:
14.当所述置信度大于预设的置信度阈值时,确认所述手势图像为包含静态手势的手势图像。
15.在第一方面的可选实施例中,所述识别信息包括手势图像中的当前手势位置信息;
16.所述方法还包括:
17.根据所述当前手势位置信息确定当前手势的跟踪框,获取所述跟踪框的高宽比;
18.当所述高宽比不符合所述静态手势的识别结果所对应的预设手势分类的高宽比设定范围时,根据预设手势分类对静态手势的识别结果进行纠正,得到纠正后的静态手势的识别结果。
19.在第一方面的可选实施例中,所述根据所述当前手势位置信息确定当前手势的跟踪框之后,还包括:
20.当所述手势图像在原有的位置,且手势图像的手势分类没有变化时,利用凯尔曼位置滤波对所述跟踪框在界面上进行稳定处理。
21.在第一方面的可选实施例中,所述的手势控制方法,所述将多个连续识别得到手势分类的静态手势的结果形成上下文手势,根据所述上下文手势生成对应的控制指令,包括:
22.将多个连续所述静态手势的识别结果添加至手势列表中;其中,所述手势列表是由连续若干个得到识别结果的静态手势组成;
23.将所述静态手势与所述手势列表中相邻的静态手势形成上下文手势;
24.将所述上下文手势与预设的上下文手势分类进行匹配,当匹配成功时,确定当前上下文手势,触发对应的控制指令。
25.在第一方面的可选实施例中,所述确定当前上下文手势之后,还包括:
26.根据所述手势分类中的子分类分别确定所述静态手势与前一静态手势的子分类;
27.若属于同一子分类,维持所述前一静态手势对应的手势状态;
28.若属于不同子分类,获取所述静态手势的手势分类,根据预设的上下文手势分类对相邻静态手势的手势状态设定,触发跳转至静态手势对应的手势状态。
29.在第一方面的可选实施例中,当匹配失败时,以所述静态手势为起点,在所述手势列表中倒置获取连续设定数量的静态手势,以出现频率最高的手势分类作为静态手势的手势分类,对所述手势列表中的静态手势的手势分类进行更新,得到更新后的上下文手势;
30.将所述更新后的上下文手势与预设的上下文手势分类进行匹配,确定当前上下文手势,触发对应的控制指令。
31.在第一方面的可选实施例中,所述的手势控制方法,其特征在于,还包括:
32.当所述静态手势与其相邻的前一静态手势不属于同一手势分类时,根据预设的手势分类对静态手势的手势状态设定,从所述前一静态手势对应的手势状态跳转至所述静态手势对应的手势状态。
33.在第一方面的可选实施例中,所述识别信息包括为手势图像中的当前手势所分配的手势编号;
34.所述将所述手势图像与预设手势分类进行匹配之前,还包括:
35.根据所述手势编号跟踪所述手势图像的变化信息。
36.在第一方面的可选实施例中,所述根据所述手势编号跟踪所述手势图像的变化信息,包括:
37.根据所述手势编号,捕捉到的方向相对两个手势图像;
38.计算两个手势图像的尺寸差值,判断所述两个手势图像是否属于同一用户。
39.在第一方面的可选实施例中,所述将所述静态手势的识别结果添加至手势列表中,包括:
40.当所述两个手势图像属于同一用户时,将所述两个手势图像中得到识别结果的当前静态左手势和当前静态右手势分别添加到左手手势列表和右手手势列表。
41.在第一方面的可选实施例中,所述的手势控制方法,还包括:
42.分别利用左手手势列表和右手手势列表跟踪静态左手势和静态右手势的运动轨迹;
43.将在静态左手势和静态右手势的运动轨迹组合得到组合后的双手动态手势,根据预设的双手动态手势进行匹配,确定组合后的双手动态手势的组合状态,触发对应的控制指令。
44.第二方面,本技术还提供了一种手势控制装置,其包括:
45.目标位置获取模块,用于对输入的原始图像进行全局检测,获取所述原始图像中手势图像的目标位置;
46.图像截取模块,用于对所述原始图像的所述目标位置所在区域进行精确检测,截取局部的手势图像;
47.手势识别模块,用于对所述手势图像进行手势分类识别,得到所述手势图像中的静态手势的手势分类;
48.手势控制模块,用于将多个连续识别得到手势分类的静态手势的结果形成上下文手势,根据所述上下文手势生成对应的控制指令。
49.第三方面,本技术还提供了一种电子设备,该电子设备包括:
50.一个或多个处理器;
51.存储器;
52.一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行实现第一方面所述的手势控制方法。
53.第四方面,本技术还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现第一方面所述的手势控制方法。
54.本技术与现有技术相比,具有以下有益效果:
55.本技术实施例所提供的手势控制方法,能够根据原始图像的识别信息经过筛选确定其是否为手势图像,并根据手势图像与预设手势分类的匹配结果,得到静态手势的识别结果,并将多个连续的静态手势的识别结果形成上下文手势,根据所述上下文手势生成对应的控制指令。根据该手势控制方法,能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
56.本技术附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
57.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
58.图1为本技术一个实施例所提供的手势控制方法的流程示意图;
59.图2为本技术的实施例所提供的实现手势控制方法的架构示意图;
60.图3为本技术实施例中对当前图像中对当前手势设定的跟踪框的示意图;
61.图4为本技术实施例所提供的部分预设手势分类的列表;
62.图5为本技术另一个实施例所提供的手势控制方法的流程示意图;
63.图6a为本技术一个实施例所提供的预设的点击上下文手势的示意;
64.图6b为本技术一个实施例所提供的预设的缩放上下文手势的示意图;
65.图6c为本技术一个实施例所提供的预设的返回上下文手势的示意图;
66.图7为本技术的实施例依据投票机制根据连续多个帧的手势分类确定静态手势的手势分类示意图;
67.图8为本技术的实施例中对于同一用户的左手和右手的静态手势的识别结果添加至手势列表的示意图;
68.图9为本技术的实施例所提供预设的旋转动态手势的示意图;
69.图10为本技术实施例所提供的又一手势控制方法的流程示意图;
70.图11为本技术一个实施例所提供的手势控制装置的结构示意图;
71.图12为本技术一个实施例所提供的一种手势识别的电子设备的结构示意图。
具体实施方式
72.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本技术的限制。
73.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、控制,但是并不排除存在或添加一个或多个其他特征、整数、步骤、控制。
74.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本技术所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
75.在本技术的实施例中,为了解决虚拟图像与实景图像相比清晰度不足,以及现实场景中存在图像与虚拟图像不协调的问题,本技术的实施例所提供的手势控制方法,能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
76.参照图1,图1为本技术一个实施例所提供的手势控制方法的流程示意图。该手势控制方法,包括以下步骤:
77.s110、对输入的原始图像进行全局检测,获取所述原始图像中手势图像的目标位置;
78.s120、对所述原始图像的所述目标位置所在区域进行精确检测,截取局部的手势图像;
79.s130、对所述手势图像进行手势分类识别,得到所述手势图像中的静态手势的手势分类;
80.s140、将多个连续识别得到手势分类的静态手势的结果形成上下文手势,根据所
述上下文手势生成对应的控制指令。
81.具体的,可以将拍摄的包含手势的原始图像,以帧为单位进行识别,此步骤中,对输入的一帧原始图像进行全局检测,通过全局检测确定原始图像中手势图像所在的目标位置。
82.在一个实施例中,对于全局检测过程,可以具体如下:
83.首先接收输入的一帧原始图像;然后将所述原始图像输入全检测器模型,检测出所述原始图像中的手势图像的目标位置,其中,所述全检测器模型为预先训练的用于对图像中手势图像进行检测的模型。
84.具体的,全检测器模型可以对一帧原图像进行全局检测,检测出一帧内所有出现手势的目标位置,对于全检测器模型,可以采用yolo、mobilenet ssd等目标检测模型。
85.此过程中,主要是实现跟踪检测过程,利用机器视觉检测技术对局部的手势图像进行精确检测。并且,根据所述目标位置在原始图像中的区域截取手势图像。
86.将其与预设手势分类的进行图像匹配,根据匹配结果,得到该手势图像的静态手势所属的手势分类的识别结果。采集多个连续确认为手势图像的手势分类的识别结果,形成连续的上下文手势,根据该上下文手势所对应的控制信息,生成对应的控制指令。
87.上述所提供的实施例中,可以运用至手势虚拟操控领域。
88.为了能够在客户端和增强现实设备的交互中能运用本技术实施例所提供的手势控制方法,分别对应的实现架构。在本实施例中,以在android平台上构建该架构进行举例说明。
89.参照图2,图2为本技术的实施例所提供的实现手势控制方法的架构示意图。
90.在图2中的架构示意图中,包括应用程序层、服务中间件层和数据处理层。
91.在应用程序层中包括手势管理程序,能够存储对应原始图像、手势图像,以及通过识别后得到的手势识别结果。当用户启用手势控制功能,产生手势控制指令。该手势管理程序可以将当前用户终端当前获取的原始图像进行保存,向服务中间层发送手势识别请求。该手势识别请求包括通过该应用程序的接口按照产生顺序所得到的原始图像。该服务中间层将该手势识别请求转发至数据处理层进行手势识别处理。
92.该数据处理层包括jni(java native interface,中文全称为java本地接口)、手势识别sdk(软件开发工具包)与外围策略程序。数据处理层通过jni将通过服务中间层转发得到的原始图像进行手势识别,根据手势识别的外围策略程序对多个连续识别得到手势分类的静态手势的结果,得到上下文手势。并且,将该上下文手势通过jni的转换、传输至服务中间层。
93.该服务中间层包括手势服务程序。该手势服务程序根据用户终端不同应用程序所发起的手势识别请求,将得到的上下文手势的信息,或者其他手势识别的信息发送至对应的应用程序层的手势管理程序。该手势管理程序根据所获取的上下文手势,生成对应的控制指令。用户终端根据该控制指令,对其显示装置,如头戴式显示装置中的显示画面进行控制。
94.本技术实施例所提供的手势控制方法,能够根据原始图像的识别信息经过筛选确定其是否为手势图像,并根据手势图像与预设手势分类的匹配结果,得到静态手势的识别结果,并将多个连续的静态手势的识别结果形成上下文手势,根据所述上下文手势生成对
应的控制指令。根据该手势控制方法,能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
95.在上述实施例的步骤s120中的对所述原始图像的所述目标位置所在区域进行精确检测,可进一步包括:将截取的手势图像输入至手势图像识别模型,手势图像中的静态手势的识别信息;其中,所述手势图像识别模型是根据预设手势分类进行训练得到的。具体地,对该手势图像识别模型进行训练时,将包含预设手势分类的各个手势分类的识别信息,以及对应的手势图像作为训练元素输入至手势图像识别模型中,并经过结果输出和迭代优化后,得到该手势图像识别模型。
96.上述所涉及的识别信息包括手势图像的置信度。
97.在此基础上,上述步骤中的获取所述手势图像中的静态手势的识别信息,可以进一步包括:当所述置信度大于预设的置信度阈值时,确认所述手势图像为包含静态手势的手势图像。
98.在本实施例中,该置信度阈值可以根据该手势图像识别模型的测试数据得到的。若当前图像的置信度不能达到该置信度阈值,确定该原始图像不存在手势图像,对该原始图像进行丢弃。若原始图像的置信度达到该置信度阈值,确认手势图像为包含静态手势的手势图像,并对该手势图像进行存储,以便后续对其和/或其与其他相邻的手势图像进行连续手势的识别处理。
99.而且,该识别信息还能够包括对手势图像的手势分类。在确定手势图像为手势图像之后,将手势图像对应的手势分类信息与预设手势分类进行匹配,确认手势图像对应的静态手势的识别结果。
100.如该手势图像的手势分类编号为2,则在手势图像识别模型的训练过程中,提供了手势分类编号为0-21的训练数据,手势图像根据手势图像与预设手势分类的匹配,能够快速确认手势图像对应的静态手势的识别结果。
101.若该手势图像的手势分类编号为在0-21的范围以外,如-1或23,则该手势图像不属于预设手势分类,甚至不包含手势图像,因此对此当前图像进行丢弃。
102.上述提供的识别信息也包括手势图像中的当前手势位置信息。在此基础上,该手势控制方法还能够进一步包括:
103.根据所述当前手势位置信息确定当前手势的跟踪框,获取所述跟踪框的高宽比;
104.当所述高宽比不符合所述静态手势的识别结果所对应的预设手势分类的高宽比设定范围时,根据预设手势分类对静态手势的识别结果进行纠正,得到纠正后的静态手势的识别结果。
105.参照图3,图3为本技术实施例中对当前图像中对当前手势设定的跟踪框的示意图。
106.在该实施例中,根据当前手势位置信息得到手势图像的最大宽度和最大长度,以及该手势图像在当前图像中的区域范围,由此得到能够完全能够覆盖手势图像的跟踪框。该跟踪框生成后,根据在当前图像实时捕获得到的手势图像的位置,实时调整跟踪框的位置与覆盖区域。通过已生成该跟踪框的当前图像的监测,获取所述跟踪框的高宽比。
107.参照图4,图4为本技术实施例所提供的部分预设手势分类的列表。
108.在本实施例中,对于所有预设手势分类中,除了该file_open_1的手势高宽比大于2,其他手势的高宽比均小于2。若经过识别后,得到的静态手势所属的手势分类,如为图3中的bloom_close_1,并且,得到的高宽比为2.1,其超过了bloom_close_2的高宽比的设定范围,则此时对该静态手势的识别结果纠正为file_open_1,通过跟踪框进一步提高手势图像的识别度。
109.根据对该手势图像的位置信息,该位置信息包括实时所在的位置区域和高宽比的范围,判断该手势图像是否在原有的位置。若得到位置信息只是在小范围内微调,则确认手势图像在原有的位置。并且,手势图像的手势分类没有变化时,利用凯尔曼位置滤波对跟踪框在界面上进行稳定处理,防止跟踪框抖动。
110.参考图5,图5为本技术另一个实施例所提供的手势控制方法的流程示意图。
111.对于上述实施例的步骤s140,还可进一步包括:
112.s150、将多个连续所述静态手势的识别结果添加至手势列表中;其中,所述手势列表是由连续若干个得到识别结果的静态手势组成;
113.s160、将所述静态手势与所述手势列表中相邻的静态手势形成上下文手势;
114.s170、将所述上下文手势与预设的上下文手势分类进行匹配。当匹配成功时,确定当前上下文手势,生成对应的控制指令。
115.在步骤s150-170中,每得到一个静态手势的识别结果,就会保存于该手势列表中,得到多个连续所述静态手势的识别结果。在该手势列表中的连续多个静态手势记录动态手势控制中的每一帧手势图像的变化,相邻的静态手势记录连续手势的变化过程。在本实施例中,对手势列表中相邻的静态手势形成上下文手势。为了对动态手势机械能识别,在本实施例中预设上下文手势分类,将上述从手势列表获取上下文手势与预设的上下文手势分类进行匹配,即将从手势列表获取上下文手势中按照生成顺序分解成每个静态手势,将预设的上下文手势分类中的分解的静态手势以及其排序进行对比,确定从手势列表获取上下文手势是否符合预设的上下文手势分类。如果符合,根据该从手势列表获取上下文手势生成对应的控制指令。
116.参考图6a-6c,图6a为本技术一个实施例所提供的预设的点击上下文手势的示意图,图6b为本技术一个实施例所提供的预设的缩放上下文手势的示意图,图6c为本技术一个实施例所提供的预设的返回上下文手势的示意图。
117.以图6a中的动作1的点击上下文手势为例,其对初始状态和终止状态的手势分类均做了设定。当在手势列表中的两个相邻的静态手势的手势分类以及排序与动作1的点击上下文手势的一致,确认该两个相邻的静态手势所形成的上下文手势为动作1的点击上下文手势,相应触发点击的控制指令。
118.在本实施例中,该预设的上下文手势可以是根据用户的一般习惯的连续手势动作设定的,从而使得可以根据用户的一般习惯的连续手势动作作为虚拟操控的基础,获取用户在手势控制中的每个手势图像,并将对其识别得到的静态手势添加到动态手势列表,并将该动态手势列表与预设的动态手势进行匹配,得到根据静态手势与其他静态手势的变化组合进行手势状态的分发处理,以便能够以一般习惯的连续手势动作发出虚拟操控指令,对虚拟操控应用进行控制。由此,用户在实现虚拟操控前,无需预先了解对应的手势操控动作,提升用户的虚拟操控体验。
119.在此基础上,本技术的实施例所提供的手势控制方法,还包括:
120.根据所述手势分类中的子分类分别确定所述静态手势与前一静态手势的子分类;若属于同一子分类,维持所述前一静态手势对应的手势状态;若属于不同子分类,获取所述静态手势的手势分类,根据预设的上下文手势分类对相邻静态手势的手势状态设定,触发跳转至静态手势对应的手势状态。
121.根据所述上下文手势与预设的上下文手势分类的匹配成功的结果开启next-hand机制。在本实施例中,该next-hand机制是用于根据上下文手势来判断是否立即触发对应控制指令的机制。当上下文手势为同一手势分类,则适用于该next-hand机制。
122.当获取静态手势,并添加至手势列表,将该静态手势与在手势列表中与其相邻的前一静态手势进行比较,当匹配成功时,即若属于同一手势分类,如该两个相邻的静态手势一个图6b中的手势分类时,则将静态手势与图6b的子分类的手势进行匹配。如静态手势与图6b中的初始状态的动作1匹配成功,而与其相邻的前一静态手势的子分类同样为初始状态的动作1,则继续维持该前一静态手势所对一个的初始状态的动作1的处理状态。
123.若该静态手势与图6b中的终止状态的动作1匹配成功,该手势分类相对于前一静态手势的初始状态的动作1发生了手势改变。根据图6b对着两个手势动作互为初始状态和终止状态的设定,根据静态手势跳转至缩放控制的终止状态,即向当前的缩放状态发出终止指令。在此基础上,若根据继续所捕获到的手势图像经过识别得到对应的静态手势为图6b中的初始状态的动作2,则又重新开启下一次的缩放状态。
124.对于将所述上下文手势与预设的上下文手势分类进行匹配,若匹配失败时,以所述静态手势为起点,在所述手势列表中倒置获取连续设定数量的静态手势,以出现频率最高的手势分类作为静态手势的手势分类,对所述手势列表中的静态手势的手势分类进行更新,得到更新后的上下文手势;将所述更新后的上下文手势与预设的上下文手势分类进行匹配,确定当前上下文手势,触发对应的控制指令。
125.根据所述上下文手势与预设的上下文手势分类的匹配失败的结果开启投票机制。在本实施例中,该投票机制是以静态手势作为起点倒置获取连续五帧的静态手势,以在该连续六帧的静态手势中出现的最频繁的手势分类确定静态手势的分类。通过该投票机制能够对手势快速移动时所产生的误检进行过滤,防止以手势快速移动而造成的静态手势的错误检测。
126.参照图7,图7为本技术的实施例依据投票机制根据连续多个帧的手势分类确定静态手势的手势分类示意图。如手势分类编号为1为静态手势的手势分类号,而0为静态手势的前五帧的静态手势的手势分类号。其中,编号为1和0的手势分类不属于同一手势分类。如图7将该六帧的图片进行排列,得到出现频繁最多的是手势分类编号为0的手势,根据投票机制的结果,将静态手势的手势分类更新为手势分类编号为0的静态手势,同时对手势分类编号为1的手势进行舍弃。
127.将更新手势分类后得到的静态手势,与其之前相邻的静态手势进行更新后的上下文手势,并与预设的上下文手势分类进行匹配,确定当前上下文手势,触发对应的控制指令。
128.在此基础上,本实施例还包括:当所述静态手势与其相邻的前一静态手势不属于同一手势分类时,根据预设的上下文手势分类对静态手势的手势状态设定,从所述前一静
态手势对应的手势状态跳转至所述静态手势对应的手势状态。
129.经过投票机制将可能因快速移动等因素所造成的手势的误检的情况排除后,将静态手势与预设的手势分类进行匹配得到对应的手势状态,并从其前一静态手势对应的手势状态跳转至静态手势对应的手势状态。
130.如经过投票机制得到静态手势为图6c中的初始状态filp1,即返回状态启动阶段。而与其相邻的前一静态手势为图6b中的终止状态的动作2,当获取到经过投票机制确定的静态手势的手势分类后,直接跳转启动返回状态。
131.上述提供的识别信息包括为手势图像中的当前手势所分配的手势编号。
132.以此为基础,上述提供的手势控制方法的实施例,在步骤s160的将所述手势图像与预设手势分类进行匹配之前,还包括:根据所述手势编号跟踪所述手势图像的变化信息。
133.在当前图像中识别得到手势图像时,根据为该手势图像分配一手势编号,如001。当该手势图像持续在当前图像持续存在时,给该手势图像所分配的手势编号不变。若手势超过图像的捕捉画面使得手势图像消失在当前图像,并超过设定时长,则重新为该手势图像分配另一手势编号。若手势图像消失在当前图像小于设定时长,根据重新获取的手势图像与之前已分配手势编号的手势图像进行匹配,当匹配成功时,该重新获取的手势图像沿用原来的手势编号。
134.在本实施例中,利用该手势编号跟踪对应的手势图像的变化信息,包括手势区域、位置信息,以及手势分类和状态的变更。
135.若在当前图像中出现多个手势图像时,根据用户手势尺寸的设定范围,判断手势图像是属于进行控制的用户,还是当前环境中所出现的其他手势。若确定为手势图像属于进行控制的用户时,为对应尺寸的手势图像分配手势编号。当在图像中捕捉到两个手势图像,若通过计算得到两个手势图像的尺寸差值在设定范围内。则判断所述两个手势图像是否属于同一用户。
136.在本实施例中,若两个手势图像的尺寸均符合用户手势尺寸的设定范围时,判断所述两个手势图像属于同一用户,同时分别启动对该两个手势图像的识别处理。
137.参照图8,图8为本技术的实施例中对于同一用户的左手和右手的静态手势的识别结果添加至手势列表的示意图。
138.在此场景下,对步骤s150中的将所述静态手势的识别结果添加至手势列表中,可以进一步包括:
139.当所述两个手势图像属于同一用户时,将所述两个手势图像中得到识别结果的当前静态左手势和当前静态右手势分别添加到左手手势列表和右手手势列表。
140.参考图8,分别建立左手手势列表和右手手势列表,分别用于存储左手、右手的连续10帧的静态手势的识别结果。并且根据该两个手势列表,可按照上述提供的实施例,分别对用户的左手和右手的手势图像进行识别处理,以及根据识别处理的结果,进一步确认各自或组合后的当前上下文手势,触发对应的控制指令。
141.上述左手手势列表和右手手势列表中分别保存已完成识别的连续的静态左手势和连续的静态右手势。通过上述两个手势列表跟踪每个静态左手势和静态右手势在连续时刻的位置区域,以便确认对应手势的运动轨迹。将静态左手势和静态右手势在连续时刻的运动轨迹,并进行组合后得到组合后的双手动态手势,并将组合后的双手动态手势与预设
的双手动态手势进行匹配,确定组合后的双手动态手势的组合状态,触发对应的控制指令。
142.参照图9,图9为本技术的实施例所提供预设的旋转动态手势的示意图。
143.可以根据上述关于对静态手势的识别方法,确认得到的连续的静态左手势和连续的静态右手势均与图6a中的终止状态的动作1的手势匹配成功,并根据对左手手势列表和右手手势列表进行跟踪,确定连续的静态左手势和连续的静态右手势的运动轨迹分别是大致相同的方向的两个圆型轨迹,并且,该两个圆型轨迹的中心相近。根据与图9中的预设的旋转动态手势进行匹配,确认该连续的静态左手势和连续的静态右手势组合后的双手动态手势为旋转动态手势,并将连续的静态左手势和连续的静态右手势的圆型轨迹中的图像发出旋转指令。除了图8的预设的旋转动态手势,还可以预设其他动态手势,如缩放、捕捉、拍照、驾驶、铺展或收回等。
144.参照图10,图10为本技术实施例所提供的又一手势控制方法的流程示意图。
145.s1010、对输入的原始图像进行全局检测,获取所述原始图像中手势图像的目标位置,得到手势图像中的静态手势的识别信息;
146.s1020、截取局部的手势图像,对该手势图像进行筛选;
147.s1030、根据手势图像的跟踪框的高宽比,纠正静态手势的手势分类;
148.s1040、利用凯尔曼位置滤波对所述跟踪框在界面上进行稳定处理;
149.s1050、将静态手势的识别结果添加至手势列表中;
150.s1060、利用next-hand机制,确认静态手势与其前一静态手势是否形成上下文手势;如果是,则转至步骤s970,否则,转至步骤s980;
151.s1070、手势状态处理;
152.s1080、利用投票机制,以连续多个静态手势出现频率更新静态手势的识别结果;
153.s1090、根据手势状态处理的结果,生成对应的控制指令。
154.对于上述涉及到的手势控制方法均可在利用手势进行虚拟操控的设备中运用,如增强现实设备。该增强现实设备可以通过前置摄像头获取的手势图像,根据手势图像与预设手势进行匹配,确定手势对应的状态,并向该增强现实设备的显示区域发出对应的控制指令。
155.基于与上述手势控制方法相同的申请构思,本技术实施例还提供了一种手势控制装置1100。参考图11,图11为本技术一个实施例所提供的手势控制装置的结构示意图。
156.目标位置获取模块1110,用于对输入的原始图像进行全局检测,获取所述原始图像中手势图像的目标位置;
157.图像截取模块1120,用于对所述原始图像的所述目标位置所在区域进行精确检测,截取局部的手势图像;
158.手势识别模块1130,用于对所述手势图像进行手势分类识别,得到所述手势图像中的静态手势的手势分类;
159.手势控制模块1140,用于将多个连续识别得到手势分类的静态手势的结果形成上下文手势,根据所述上下文手势生成对应的控制指令。
160.本技术实施例所提供的手势控制装置1100,能够根据原始图像的识别信息经过筛选确定其是否为手势图像,并根据手势图像与预设手势分类的匹配结果,得到静态手势的识别结果,并将多个连续的静态手势的识别结果形成上下文手势,根据所述上下文手势生
成对应的控制指令。根据该手势控制方法,能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
161.基于与本技术实施例中所示的方法相同的原理,本技术实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机控制指令;处理器,用于通过调用计算机控制指令执行实施例所示的方法。与现有技术相比,本技术实施例中的电子设备能够根据原始图像的识别信息经过筛选确定其是否为手势图像,并根据手势图像与预设手势分类的匹配结果,得到静态手势的识别结果,并将多个连续的静态手势的识别结果形成上下文手势,根据所述上下文手势生成对应的控制指令。根据该手势控制方法,能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
162.参照图12,图12为本技术一个实施例所提供的一种手势识别的电子设备的结构示意图。
163.在一个可选实施例中提供了一种电子设备,如图12所示,图12所示的电子设备1200包括:处理器1201和存储器1203。其中,处理器1201和存储器1203相连,如通过总线1202相连。可选地,电子设备1200还可以包括收发器1204。需要说明的是,实际应用中收发器1204不限于一个,该电子设备1200的结构并不构成对本技术实施例的限定。
164.其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图12示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
165.本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本技术实施例中的计算机可读存储介质能够排除当前图像中的环境因素对手势的识别结果的干扰,而且,也避免因手势动作运动过快或运动超过影像捕捉范围等因素,影响手势的识别质量。
166.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
167.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
168.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
169.以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行
任意组合而形成的其它技术方案。例如上述特征与本技术中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1