CN115097928A - 手势控制方法及装置、电子设备、存储介质 - Google Patents
手势控制方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN115097928A CN115097928A CN202210042005.5A CN202210042005A CN115097928A CN 115097928 A CN115097928 A CN 115097928A CN 202210042005 A CN202210042005 A CN 202210042005A CN 115097928 A CN115097928 A CN 115097928A
- Authority
- CN
- China
- Prior art keywords
- gesture
- motion track
- detected
- tracking
- motion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种手势控制方法及装置、电子设备、存储介质,其中,方法包括:当检测到第一手势时,跟踪第一手势,以获取第一手势对应的运动轨迹;当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹;将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;根据匹配结果,输出与合成运动轨迹对应的控制指令。本发明实施例中,用于与预设运动轨迹进行匹配的合成运动轨迹是检测到退出跟踪指令与检测到第一手势之间跟踪得到的,可以包括多条非连续的运动轨迹,以提高手势控制的丰富性,通过用户预先设置的预设运动轨迹,可以实现用户自定义,便于配合不同用户的使用习惯,从而可以提高用户体验。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种手势控制方法及装置、电子设备、存储介质。
背景技术
随着科技的发展,通过手势控制设备执行相关操作已被广泛应用到交互设备中。
相关技术中,一般采用静态手势或动态手势来触发对应的功能,具体地,以汽车为例,静态手势是由车厂预先定义好的,通过识别图像中用户手部的具体姿势,来与预先定义好的静态手势进行匹配,当匹配时,触发对应的功能;例如,当检测到握拳的手势时,触发打开空调的操作;而动态手势也是由车厂预先定义好的,通过连续帧的手部动作与预先定义好的动态手势进行匹配,当匹配时,触发对应的功能;例如,当检测到向下挥手的动作时,触发调低空调温度的操作。
可见,相关技术的手势控制方式中存在手势固定、样式少、不能自定义、互动体验差等缺陷。
发明内容
有鉴于此,本发明旨在提出一种手势控制方法及装置、电子设备、存储介质,以克服现有技术手势控制方式存在手势固定、不能自定义等缺陷。
为达到上述目的,本发明的技术方案是这样实现的:
第一方面,本发明实施例提供了一种手势控制方法,所述方法包括:
当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹;
当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹;
将所述合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;
根据匹配结果,输出与所述合成运动轨迹对应的控制指令。
进一步的,所述当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹,包括:
当检测到第一手势时,确定所述第一手势对应的关键点;
跟踪所述关键点,以获取所述第一手势对应的运动轨迹。
进一步的,在所述当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹之前,所述方法还包括:
当检测到所述第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹;
当检测到所述第二手势切换成所述第一手势时,继续跟踪所述第一手势,以获取所述第一手势对应的第二运动轨迹。
进一步的,所述当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹,包括:
当检测到手势与所述第一手势、所述第二手势均不相同时,则确定检测到所述退出跟踪指令;
当检测到所述退出跟踪指令时,获取所述第一运动轨迹和所述第二运动轨迹,以得到所述合成运动轨迹。
进一步的,所述当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹,包括:
通过至少两个摄像头采集用户手势信息;
当采集到的用户手势信息中包含第一手势时,跟踪所述第一手势,确定所述第一手势对应的坐标位置,以获取所述第一手势对应的运动轨迹。
进一步的,所述方法还包括:
响应于用户设置预设运动轨迹的操作,确定用户设置的预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系;
将所述预设运动轨迹保存到所述数据库中。
进一步的,所述根据匹配结果,输出与所述合成运动轨迹对应的控制指令,包括:
当匹配成功时,获取与所述合成运动轨迹匹配的目标预设运功轨迹;
根据所述预设运动轨迹与预设控制指令之间的映射关系,确定所述目标预设运动轨迹对应的目标预设控制指令;
输出所述目标预设控制指令。
相对于现有技术,本发明所述的手势控制方法具有以下优势:
本发明所述的手势控制方法,当检测到第一手势时,跟踪第一手势,以获取第一手势对应的运动轨迹;当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹,合成运动轨迹可以包含多条非连续的运动轨迹,使得基于手势控制的手势更加丰富;接着,将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;根据匹配结果,输出与合成运动轨迹对应的控制指令;通过用户预先设置的预设运动轨迹,可以实现用户自定义,便于配合不同用户的使用习惯,从而可以提高用户体验。
第二方面,本发明实施例提供了一种手势控制装置,所述装置包括:
第一运动轨迹获取模块,用于当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹;
合成运动轨迹获取模块,用于当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹;
合成运动轨迹匹配模块,用于将所述合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;
基于匹配结果执行模块,用于根据匹配结果,输出与所述合成运动轨迹对应的控制指令。
进一步的,所述第一运动轨迹获取模块,包括:
关键点确定模块,用于当检测到第一手势时,确定所述第一手势对应的关键点;
基于关键点获取运动轨迹模块,用于跟踪所述关键点,以获取所述第一手势对应的运动轨迹。
进一步的,所述装置还包括:
第一手势切换检测模块,用于当检测到所述第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹;
第二手势切换检测模块,用于当检测到所述第二手势切换成所述第一手势时,继续跟踪所述第一手势,以获取所述第一手势对应的第二运动轨迹。
进一步的,所述合成运动轨迹获取模块,包括:
确定退出跟踪指令模块,用于当检测到手势与所述第一手势、所述第二手势均不相同时,则确定检测到所述退出跟踪指令;
所述合成运动轨迹获取模块,用于当检测到所述退出跟踪指令时,获取所述第一运动轨迹和所述第二运动轨迹,以得到所述合成运动轨迹。
进一步的,所述第一运动轨迹获取模块,包括:
用户手势信息采集模块,用于通过至少两个摄像头采集用户手势信息;
用户手势信息匹配模块,用于当采集到的用户手势信息中包含第一手势时,跟踪所述第一手势,确定所述第一手势对应的坐标位置,以获取所述第一手势对应的运动轨迹。
进一步的,所述装置还包括:
预设运动轨迹设置模块,用于响应于用户设置预设运动轨迹的操作,确定用户设置的预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系;
预设运动轨迹保存模块,用于将所述预设运动轨迹保存到所述数据库中。
进一步的,所述基于匹配结果执行模块,包括:
目标预设运动轨迹获取模块,用于当匹配成功时,获取与所述合成运动轨迹匹配的目标预设运功轨迹;
目标预设控制指令确定模块,用于根据所述预设运动轨迹与预设控制指令之间的映射关系,确定所述目标预设运动轨迹对应的目标预设控制指令;
目标预设控制指令执行模块,用于输出所述目标预设控制指令。
第三方面,本发明实施例提供了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的手势控制方法的步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的手势控制方法的步骤。
所述手势控制装置、电子设备、计算机可读存储介质与上述手势控制方法相对于现有技术所具有的优势相同,在此不再赘述。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中一种手势控制方法的步骤流程图;
图2为本发明实施例中另一种手势控制方法的步骤流程图;
图3为本发明实施例中手势控制方法的流程框图;
图4为本发明实施例中一种手势控制装置的结构框图;
图5为本发明实施例中一种电子设备的结构示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
相关技术中的手势控制方案一般采用静态手势和动态手势的控制方式,而静态手势的控制方式是通过识别图像中的手部区域,再对手部区域中的手势与设备出厂时统一的模板进行匹配,当匹配成功时,执行对应的控制操作;动态手势的控制方式是通过识别连续帧中的手部区域,对连续帧中的手部区域的位置变化与设备出厂时统一的模板进行匹配,当匹配成功时,执行对应的控制操作。
由于相关技术的手势控制方案中的模板是在设备出厂时统一设置的,因此,存在手势固定、不能很好地适应不同用户的不同习惯的缺陷;并且,相关技术的手势控制方案中识别手势的过程是通过图像来识别的,当同一个手势转换了角度后,容易导致识别不出,因此存在识别准确率低、响应效果差的缺陷;在静态手势控制方式中,静态手势只能是非常有限的几种固定手势;而动态手势控制方式基于图像识别手部区域的位置变化,只能是连续的、在与摄像头平行的平面上的位置变化,也存在动态手势相对单一的缺陷。再者,动态手势控制方式中,难以区分用户是否处于手势控制的状态,容易导致误操作。
本发明主要构思在于,通过用户自行设置用于控制设备相关操作的预设运动轨迹,使得基于手势控制的手势(包括手势和手势的运动轨迹)可以符合用户的个人习惯;通过退出跟踪指令来退出对手势的运动轨迹的跟踪,以获取由已跟踪得到的运动轨迹的合成运动轨迹,可以提高手势控制的丰富性。
参照图1,示出了本发明实施例提供的一种手势控制方法的步骤流程图,在本发明实施例中,该手势控制方法可以应用于服务器,也可以应用于终端设备。当该手势控制方式应用于服务器时,该服务器用于为终端设备提供后台服务。其中,服务器可以是一个独立运行的服务器,也可以是分布式服务器,还可以是由多个服务器组成的服务器集群。优选地,上述服务器可以是具有云计算功能的云服务器。当该手势控制方法应用于终端设备时,终端设备可以包括但不限于车载中控、智能手机、平板电脑、电话手表等电子设备。下面以应用于终端设备为例进行示例性说明。
在本发明实施例中,该手势控制方法可以包括如下步骤:
步骤101,当检测到第一手势时,跟踪第一手势,以获取第一手势对应的运动轨迹。
其中,第一手势可以是由用户自行设置的用于获取运动轨迹的手势,也可以是终端设备出厂时设置的用于获取运动轨迹的手势。可以理解,第一手势用于区分用户是否处于手势控制的状态,通过跟踪第一手势以获取第一手势对应的运动轨迹,与相关技术中直接跟踪手部相比,可以避免误判,提高手势控制的准确性。
示例性地,第一手势可以为食指和拇指捏合的手势。
当检测到食指和拇指捏合的手势时,对该手势进行跟踪,以获取该手势对应的运动轨迹,即获取该手势移动的轨迹。
可选地,可以通过至少两个摄像头采集用户手势信息,当采集到的手势信息中包含第一手势时,跟踪第一手势,确定第一手势在运动过程中对应的坐标位置,以获取第一手势对应的运动轨迹。
本实施例中,通过多个摄像头采集用户手势信息,不会因为手势转换角度导致识别不出的缺陷,从而提高手势识别的准确性和响应速度。
步骤102,当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹。
退出跟踪指令用于退出对上述第一手势的跟踪,可以理解,退出跟踪指令用于触发终端设备获取已跟踪得到的合成运动轨迹,以便进行后续与数据库中的预设运动轨迹进行匹配的步骤。示例性地,退出跟踪指令可以通过手势识别的方式来确定,例如,当检测到用于指示退出跟踪的退出手势时,则确定检测到退出跟踪指令。示例性地,退出跟踪指令还可以通过时间来确定,在一示例中,可以在开始跟踪第一手势时,启动第一定时器,当第一定时器计时结束时,则确定检测到退出跟踪指令;第一定时器计时时间可以由用户根据实际需求进行设置,例如,第一定时器计时时间可以为30秒。在另一示例中,可以通过检测预设时间段内是否存在第一手势来确定确定是否检测到退出跟踪指令;例如,当第一手势消失时,启动第二定时器,当第二定时器计时结束之前,没有检测到第一手势,则在第二定时器计时结束时,确定检测到退出跟踪指令;其中,第二定时器计时时间可以由用户根据实际需求进行设置,例如,第二定时器计时时间可以为2秒。
其中,合成运动轨迹是当前检测到退出跟踪指令与检测到第一手势之间跟踪得到的一条或多条运动轨迹。
示例性地,当当前检测到退出跟踪指令与检测到第一手势之间跟踪第一手势得到两条平行的运动轨迹,则合成运动轨迹即包含该两条平行运动轨迹。
进一步地,在本申请一可选实施例中,还可以检测用户的第二手势,该第二手势为暂停手势。即,当检测到第二手势时,将切换到第二手势之前的第一手势的运动轨迹保存到预设存储空间中,为便于区分,将预设存储空间中存储的运动轨迹记为第一运动轨迹,需要说明的是,一个运动轨迹不重复保存到预设存储空间中;当检测到退出跟踪指令时,获取从最近一次检测到第二手势至检测到退出跟踪指令之间得到的第一手势的运动轨迹,为便于区分,将此部分运动轨迹记为第二运动轨迹,同时获取预设存储空间中存储的第一运动轨迹,第一运动轨迹和第二运动轨迹的集合即为合成运动轨迹。其中,退出跟踪指令可以通过手势识别的方式来确定,也可以通过时间来确定,即当第一定时器计时结束时确定检测到退出跟踪指令,或者,当第二定时器计时结束时,若没有检测到第一手势,则确定检测到退出跟踪指令。
在本申请另一实施例中,当退出跟踪指令为第一定时器计时结束时,可以在第一定时器计时结束之前,检测第一手势,并跟踪第一手势的运动轨迹,将跟踪得到的每一条运动轨迹存储到预设存储空间中,当第一定时器计时结束时,从预设存储空间中取出所有的运动轨迹,得到合成运动轨迹。
示例性地,当检测到第一手势时,判断第一定时器状态,若第一定时器未处于计时状态,则开启第一定时器计时,并跟踪第一手势的运动轨迹,当第一手势消失时,将跟踪得到的第一运动轨迹保存到预设存储空间中;在第一定时器计时结束之前,再次检测到第一手势时,继续跟踪第一手势的第二运动轨迹,直到第一定时器计时结束时,获取预设存储空间保存的第一运动轨迹以及未保存到预设存储空间中的第二运动轨迹,得到合成运动轨迹。
本实施例在检测到退出跟踪指令时,通过获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹,其中,合成运动轨迹可以包含多条不连续的运动轨迹,实现手势控制的丰富性,以便适应不同用户的使用习惯。
步骤103,将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配。
数据库中存储有用户预先设置的多个预设运动轨迹,并且预设运动轨迹与预设控制指令之间存在映射关系。在一示例中,数据库中可以存储终端设备出厂时设置的默认运动轨迹,用户可以根据个人习惯对默认运动轨迹进行修改,得到预设运动轨迹。在另一示例中,用户也可以直接设置多个预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系,即终端设备可以响应于用户设置预设运动轨迹的操作,确定用户设置的预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系,将预设运动轨迹存储到数据库中。
在获取到合成运动轨迹后,将合成运动轨迹与数据库中的各个预设运动轨迹进行比对,判断该合成运动轨迹是否与其中一个预设运动轨迹匹配。
本实施例中,预设运动轨迹为用户根据自身使用习惯进行设置的,可以实现手势控制的个性化设置,使得用户使用体验更佳。
需要说明的是,本实施例中,预设运动轨迹可以由多条不连续的运动轨迹合成,其中的不连续可以指无法一笔得到。示例性地,当预设运动轨迹为“A”字型轨迹时,用户在操作时,可以先触发“∧”型轨迹,再触发“—”型轨迹,以合并得到“A”字型轨迹;或者,用户在操作时,也可以先触发“╱”型轨迹,再触发“╲”型轨迹,最后触发“—”型轨迹,以合并得到“A”字型轨迹。
步骤104,根据匹配结果,输出与合成运动轨迹对应的控制指令。
当匹配成功时,可以确定与合成运动轨迹匹配的目标预设运动轨迹,进而根据预设运动轨迹与预设控制指令之间的映射关系,可以确定目标预设运动轨迹对应的目标预设控制指令,以输出目标预设控制指令,即为合成运动轨迹对应的控制指令。
当匹配不成功时,说明数据库中不存在与该合成运动轨迹匹配的目标预设运动轨迹,可以认为该合成运动轨迹不能触发相应的控制指令,即对应的控制指令为空。
可选地,当匹配不成功时,还可以生成提示信息。
其中,提示信息用于提示用户已触发的运动轨迹不正确,具体可以包括文字提示信息、语音提示信息等。用户可以根据提示信息重新操作,或者,根据提示信息修改预设运动轨迹等。
在本发明实施例中,当检测到第一手势时,跟踪第一手势,以获取第一手势对应的运动轨迹;当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹,合成运动轨迹可以包含多条非连续的运动轨迹,使得基于手势控制的手势更加丰富;接着,将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;根据匹配结果,输出与合成运动轨迹对应的控制指令;通过用户预先设置的预设运动轨迹,可以实现用户自定义,便于配合不同用户的使用习惯,从而可以提高用户体验。
参照图2,示出了本发明实施例提供的另一种手势控制方法的步骤流程图,在本发明实施例中,该手势控制方法可以包括如下步骤:
步骤201,获取数据库中存储的第一手势和预设运动轨迹。
数据库中存储有用户预先设置的第一手势,以及第一手势对应的多个预设运动轨迹,并且预设运动轨迹与预设控制指令之间存在映射关系。在一示例中,数据库中可以存储终端设备出厂时设置的默认第一手势和默认运动轨迹,用户可以根据个人习惯对默认第一手势以及默认运动轨迹进行修改,得到第一手势和预设运动轨迹。在另一示例中,用户也可以直接设置第一手势和多个预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系;即终端设备可以接收用户设置的第一手势、预设运动轨迹以及预设运动轨迹与预设控制指令之间的映射关系,将第一手势和预设运动轨迹存储到数据库中。
步骤202,当检测到第一手势时,确定第一手势对应的关键点。
数据库中还可以存储第一手势对应的关键点,该关键点可以是由用户自行设置,也可以是终端设备出厂时设置。可以理解,第一手势为触发跟踪手势。
示例性地,第一手势可以为食指和拇指捏合的手势,而关键点可以是食指指尖和拇指指尖互相接触的位置点;当然,关键点也可以是食指第二个关节所在的位置点;还可以是非手部位置的点等。以第一手势是食指和拇指捏合的手势为例,非手部位置的点可以是由食指和拇指围设形成的通孔内的点等。。
示例性地,第一手势可以为食指和拇指捏合的手势或者其他任意的手势,而关键点可以是该手掌部位的质心点。
当检测到食指和拇指捏合的手势时,确定该手势为第一手势,进而基于预先存储的第一手势和关键点的对应关系,可以确定第一手势对应的关键点。
可选地,可以通过至少两个摄像头来采集用户手势信息,结合两个以上的摄像头采集的用户手势信息,可以得到立体空间内的用户手势信息;将采集到的用户手势信息与数据库中的第一手势进行比较,当采集到的用户手势信息与第一手势相匹配时,说明检测到第一手势,进而确定第一手势对应的关键点,即确定关键点所在的坐标位置。
示例性地,如图3所示,以应用于车辆中的手势控制方法为例,可以通过车辆中的OMS(Occupant MonitoringSystem,乘员监控系统)摄像头采集用户手势信息的手势图片,通过TOF(Time of flight,飞行时间)摄像头采集用户手势信息的深度信息;结合手势图片和深度信息可以确定用户手势信息对应的空间手势,将空间手势与第一手势进行比较,当空间手势与第一手势匹配时,确定第一手势对应的关键点对应的坐标位置。即可以通过OMS摄像头和TOF摄像头采集用户手势信息,以对用户手势信息进行手部姿态分类,确定对应的手势类型。
步骤203,跟踪关键点,以获取第一手势对应的运动轨迹。
在确定第一手势对应的关键点后,可以对关键点进行跟踪,以获取第一手势对应的运动轨迹。具体可以通过实时确定关键点的坐标位置来确定第一手势对应的运动轨迹。
在一示例中,关键点的坐标位置可以是将关键点平行映射到与摄像头平行的平面上得到的。
在另一示例中,关键点的坐标位置可以是空间坐标位置。继续以上述应用于车辆中的手势控制方法为例,在确定第一手势对应的关键点后,可以通过OMS摄像头和TOF摄像头实时获取的信息确定关键点的实时空间坐标,当关键点移动时,根据关键点移动过程中的空间坐标,可以确定关键点的运动轨迹,即第一手势对应的运动轨迹,该运动轨迹为空间运动轨迹;可以进一步提高运动轨迹的丰富性,从而提高手势控制的丰富性。
本实施例采用跟踪关键点的方式来获取第一手势对应的运动轨迹,相比于直接对第一手势进行跟踪以获取第一手势对应的运动轨迹而言,不仅可以方便用户灵活操作关键点运动,还可以提高获取到的运动轨迹的准确性,避免获取没有处于手势控制状态的手部运动轨迹的情况发生。
步骤204,当检测到第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹。
在本实施例中,第二手势为暂停手势,预设运动轨迹可以包含多条不连续的运动轨迹。当第一手势切换成第二手势时,将当前已跟踪得到的第一手势的运动轨迹进行保存,为了便于区分,将当前已跟踪得到的第一手势的运动轨迹记为第一运动轨迹,例如可以保存到终端设备的第一存储空间中;由于当前的手势为第二手势,因此,可以移动第二手势,以便后续从第二手势切换成第一手势时,第一手势的位置与切换成第二手势之前的第一手势的位置不同,以便得到多条不连续的运动轨迹,实现通过多条不连续的运动轨迹来提高手势控制的丰富性,以及适应不同用户的使用需求。
在本实施例中,每次从第一手势切换成第二手势时,都可以将当前已跟踪得到的运动轨迹保存到第一存储空间中,在检测到退出跟踪指令时,将第一存储空间中存储的所有运动轨迹取出,并清空第一存储空间;保证第一存储空间中存储的运动轨迹是介于两次退出跟踪指令之间的运动轨迹,即确保后续获取到的合成运动轨迹是当前退出跟踪指令和上一次退出跟踪指令之间跟踪得到的运动轨迹,也即确保后续获取到的合成运动轨迹是检测到退出跟踪指令与检测到第一手势之间跟踪得到的运动轨迹。
步骤205,当检测到第二手势切换成第一手势时,继续跟踪第一手势,以获取第一手势对应的第二运动轨迹。
本实施例中,当检测到第二手势切换成第一手势时,继续跟踪第一手势,即继续跟踪第一手势的关键点,以获取第一手势新的运动轨迹,即第二运动轨迹。
示例性地,当第一手势为食指和拇指捏合的手势时,第二手势可以为手掌张开的手势。当第一手势在空间中的运动轨迹为与地面平行的第一线段时,此时检测到食指和拇指捏合的手势切换到手掌张开的手势时,则将上述绘制的第一线段保存到第一存储空间中;当第二手势竖直向下移动一定距离后,检测到手掌张开的手势切换到食指和拇指捏合的手势时,则继续跟踪第一手势在空间中的运动轨迹,若此时第一手势在空间中的运动轨迹也为与地面平行的线段,记为第二线段,此时第二线段和第一线段是不连续的;当再次检测到食指和拇指捏合的手势切换到手掌张开的手势时,则继续将上述绘制的第二线段保存到第一存储空间中,依次类推,通过第一手势和第二手势的配合,可以得到多条不连续的运动轨迹。
步骤206,当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹。
退出跟踪指令用于退出对上述第一手势的跟踪,可以理解,退出跟踪指令用于触发终端设备获取已跟踪得到的合成运动轨迹,以便进行后续与数据库中的预设运动轨迹进行匹配的步骤。
其中,合成运动轨迹是当前退出跟踪指令与上一次退出跟踪指令之间跟踪第一手势得到的一条或多条运动轨迹,即当前检测到退出跟踪指令与检测到第一手势之间跟踪得到的一条或多条运动轨迹。也即,合成运动轨迹是当前获取的运动轨迹(未保存到第一存储空间中的第二运动轨迹)与第一存储空间中存储的第一运动轨迹的集合。
示例性地,当当前检测到退出跟踪指令与检测到第一手势之间跟踪第一手势得到两条平行的运动轨迹,则合成运动轨迹即包含该两条平行运动轨迹。
可选地,上述当检测到退出跟踪指令时,可以包括:当检测到手势与第一手势、第二手势均不相同时,则确定检测到退出跟踪指令;或者,当检测不到第一手势或第二手势时,则确定检测到退出跟踪指令。本实例中,当检测到与第一手势、第二手势均不相同的手势时,或者检测不到第一手势或第二手势时,确定检测到退出跟踪指令,可以更加便于用户操作,即用户不需要通过记忆指定的退出手势,就可实现向终端设备发送退出跟踪指令。
示例性地,第一手势可以是食指和拇指捏合的手势,第二手势可以是手掌手势,当当前手势为拳头手势,或者食指和中指竖起的V型手势,或者其他不同于第一手势和第二手势的手势时,即确定检测到退出跟踪指令。此时可以获取最近一次跟踪第一手势得到的第一运动轨迹,以及第一存储空间中存储的第二运动轨迹,由第一运动轨迹和第二运动轨迹得到合成运动轨迹。
本发明实施例可以通过手部分类模型来识别第一手势、第二手势以及用于指示退出跟踪的其他手势,以区分开始跟踪、暂停跟踪和退出跟踪三个类别。通过跟踪模型来跟踪第一手势的关键点的轨迹。
示例性地,当第一手势在空间中的运动轨迹为与地面平行的第一线段时,此时检测到第一手势切换成第二手势时,则将上述绘制的第一线段保存到第一存储空间中;当第二手势竖直向下移动一定距离后,检测到第二手势切换成第一手势时,则继续跟踪第一手势在空间中的运动轨迹,若此时第一手势在空间中的运动轨迹也为与地面平行的线段,记为第二线段,此时第二线段和第一线段是不连续的;当检测到第一手势切换成其他手势(即与第一手势和第二手势均不相同的手势)时,将第二线段和第一存储空间中存储的第一线段合并,得到两条平行的线段,即合成运动轨迹。
步骤207,将合成运动轨迹与预设运动轨迹进行匹配。
在获取到合成运动轨迹后,将合成运动轨迹与数据库中的各个预设运动轨迹进行比对,判断该合成运动轨迹是否与其中一个预设运动轨迹匹配。
步骤208,根据匹配结果,输出与合成运动轨迹对应的控制指令。
当匹配成功时,可以获取与合成运动轨迹匹配的目标预设运动轨迹,进而根据预设运动轨迹与预设控制指令之间的映射关系,可以确定目标预设运动轨迹对应的目标预设控制指令,并输出目标预设控制指令,即为合成运动轨迹对应的控制指令。
示例性地,数据库中的预设运动轨迹可以包括“A”字型轨迹、“B”字型轨迹、“C”字型轨迹以及“二”字型轨迹,其中,“A”字型轨迹对应的预设控制指令为启动音乐指令,“B”字型轨迹对应的预设控制指令为提高音量指令,“C”字型轨迹对应的预设控制指令为启动空调指令,“二”字型轨迹对应的预设控制指令为打开天窗指令。若合成运动轨迹与“二”字型轨迹匹配,则输出打开天窗指令,以执行打开天窗的操作。
当匹配不成功时,说明数据库中不存在与该合成运动轨迹匹配的目标预设运动轨迹,可以认为该合成运动轨迹不能触发相应的控制指令,即对应的控制指令为空。
在本发明实施例中,数据库中可以存储用户设置的第一手势以及预设运动轨迹,在获取数据库中的第一手势和预设运动轨迹后,可以判断检测到的手势是否为第一手势,当检测到第一手势时,确定第一手势对应的关键点,并跟踪关键点以获取第一手势对应的运动轨迹,当检测到第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹,当检测到第二手势切换到第一手势时,继续跟踪第一手势,以获得第一手势对应的第二运动轨迹,当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的多条运动轨迹,以得到合成运动轨迹,即获取当前得到的第一手势对应的第二运动轨迹以及保存的第一手势对应的第一运动轨迹,得到合成运动轨迹,合成运动轨迹可以包含多条非连续的运动轨迹,使得基于手势控制的手势更加丰富;接着,将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;根据匹配结果,输出与合成运动轨迹对应的控制指令;通过用户预先设置的第一手势和预设运动轨迹,可以实现用户自定义,便于配合不同用户的使用习惯,从而可以提高用户体验。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明的一种手势控制装置实施例的结构框图,与上述手势控制方法实施例相对应,在本发明实施例中,手势控制装置可以包括如下模块:
第一运动轨迹获取模块401,用于当检测到第一手势时,跟踪第一手势,以获取第一手势对应的运动轨迹;
合成运动轨迹获取模块402,用于当检测到退出跟踪指令时,获取检测到退出跟踪指令与检测到第一手势之间跟踪得到的合成运动轨迹;
合成运动轨迹匹配模块403,用于将合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;
基于匹配结果执行模块404,用于根据匹配结果,输出与合成运动轨迹对应的控制指令。
在本发明一可选实施例中,第一运动轨迹获取模块401,包括:
关键点确定模块,用于当检测到第一手势时,确定第一手势对应的关键点;
基于关键点获取运动轨迹模块,用于跟踪关键点,以获取第一手势对应的运动轨迹。
在本发明一可选实施例中,装置还包括:
第一手势切换检测模块,用于当检测到第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹;
第二手势切换检测模块,用于当检测到第二手势切换成第一手势时,继续跟踪第一手势,以获取第一手势对应的第二运动轨迹。
在本发明一可选实施例中,合成运动轨迹获取模块402,包括:
确定退出跟踪指令模块,用于当检测到手势与第一手势、第二手势均不相同时,则确定检测到退出跟踪指令;
合成运动轨迹获取模块402,用于当检测到退出跟踪指令时,获取第一运动轨迹和第二运动轨迹,以得到合成运动轨迹。
在本发明一可选实施例中,第一运动轨迹获取模块401,包括:
用户手势信息采集模块,用于通过至少两个摄像头采集用户手势信息;
用户手势信息匹配模块,用于当采集到的用户手势信息中包含第一手势时,跟踪第一手势,确定第一手势对应的坐标位置,以获取第一手势对应的运动轨迹。
在本发明一可选实施例中,装置还包括:
预设运动轨迹设置模块,用于响应于用户设置预设运动轨迹的操作,确定用户设置的预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系;
预设运动轨迹保存模块,用于将预设运动轨迹保存到数据库中。
在本发明一可选实施例中,基于匹配结果执行模块404,包括:
目标预设运动轨迹获取模块,用于当匹配成功时,获取与合成运动轨迹匹配的目标预设运功轨迹;
目标预设控制指令确定模块,用于根据预设运动轨迹与预设控制指令之间的映射关系,确定目标预设运动轨迹对应的目标预设控制指令;
目标预设控制指令执行模块,用于输出目标预设控制指令。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图5,本发明实施例还公开了一种电子设备,包括处理器501、存储器502、存储在存储器上并能够在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上的手势控制方法的步骤。
本发明实施例还公开了计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如上的手势控制方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种手势控制方法,其特征在于,所述方法包括:
当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹;
当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹;
将所述合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;
根据匹配结果,输出与所述合成运动轨迹对应的控制指令。
2.根据权利要求1所述的手势控制方法,其特征在于,所述当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹,包括:
当检测到第一手势时,确定所述第一手势对应的关键点;
跟踪所述关键点,以获取所述第一手势对应的运动轨迹。
3.根据权利要求2所述的手势控制方法,其特征在于,在所述当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹之前,所述方法还包括:
当检测到所述第一手势切换成第二手势时,保存当前已跟踪得到的第一运动轨迹;
当检测到所述第二手势切换成所述第一手势时,继续跟踪所述第一手势,以获取所述第一手势对应的第二运动轨迹。
4.根据权利要求3所述的手势控制方法,其特征在于,所述当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹,包括:
当检测到手势与所述第一手势、所述第二手势均不相同时,则确定检测到所述退出跟踪指令;
当检测到所述退出跟踪指令时,获取所述第一运动轨迹和所述第二运动轨迹,以得到所述合成运动轨迹。
5.根据权利要求1所述的手势控制方法,其特征在于,所述当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹,包括:
通过至少两个摄像头采集用户手势信息;
当采集到的用户手势信息中包含第一手势时,跟踪所述第一手势,确定所述第一手势对应的坐标位置,以获取所述第一手势对应的运动轨迹。
6.根据权利要求1所述的手势控制方法,其特征在于,所述方法还包括:
响应于用户设置预设运动轨迹的操作,确定用户设置的预设运动轨迹,以及预设运动轨迹与预设控制指令之间的映射关系;
将所述预设运动轨迹保存到所述数据库中。
7.根据权利要求6所述的手势控制方法,其特征在于,所述根据匹配结果,输出与所述合成运动轨迹对应的控制指令,包括:
当匹配成功时,获取与所述合成运动轨迹匹配的目标预设运功轨迹;
根据所述预设运动轨迹与预设控制指令之间的映射关系,确定所述目标预设运动轨迹对应的目标预设控制指令;
输出所述目标预设控制指令。
8.一种手势控制装置,其特征在于,所述装置包括:
第一运动轨迹获取模块,用于当检测到第一手势时,跟踪所述第一手势,以获取所述第一手势对应的运动轨迹;
合成运动轨迹获取模块,用于当检测到退出跟踪指令时,获取所述检测到退出跟踪指令与所述检测到第一手势之间跟踪得到的合成运动轨迹;
合成运动轨迹匹配模块,用于将所述合成运动轨迹与数据库中用户预先设置的预设运动轨迹进行匹配;
基于匹配结果执行模块,用于根据匹配结果,输出与所述合成运动轨迹对应的控制指令。
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的手势控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的手势控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210042005.5A CN115097928A (zh) | 2022-01-14 | 2022-01-14 | 手势控制方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210042005.5A CN115097928A (zh) | 2022-01-14 | 2022-01-14 | 手势控制方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115097928A true CN115097928A (zh) | 2022-09-23 |
Family
ID=83287821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210042005.5A Pending CN115097928A (zh) | 2022-01-14 | 2022-01-14 | 手势控制方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115097928A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117752478A (zh) * | 2024-02-22 | 2024-03-26 | 浙江强脑科技有限公司 | 一种仿生手的双手势控制方法、装置、设备及存储介质 |
-
2022
- 2022-01-14 CN CN202210042005.5A patent/CN115097928A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117752478A (zh) * | 2024-02-22 | 2024-03-26 | 浙江强脑科技有限公司 | 一种仿生手的双手势控制方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110434853B (zh) | 一种机器人控制方法、装置及存储介质 | |
US20180024643A1 (en) | Gesture Based Interface System and Method | |
US8373654B2 (en) | Image based motion gesture recognition method and system thereof | |
US20140157209A1 (en) | System and method for detecting gestures | |
CN102985897A (zh) | 高效姿势处理 | |
JP5264844B2 (ja) | ジェスチャ認識装置及び方法 | |
CN107729092B (zh) | 一种用于电子书的自动翻页方法和系统 | |
CN109144260B (zh) | 动态动作检测方法、动态动作控制方法及装置 | |
CN112383805A (zh) | 一种基于人手关键点实现电视端人机交互的方法 | |
CN111656313A (zh) | 屏幕显示切换方法、显示设备、可移动平台 | |
CN108256071B (zh) | 录屏文件的生成方法、装置、终端及存储介质 | |
CN115097928A (zh) | 手势控制方法及装置、电子设备、存储介质 | |
JP6060501B2 (ja) | 筆跡管理プログラム及び記録表示装置 | |
CN110858291A (zh) | 字符切分方法及装置 | |
US9092083B2 (en) | Contact detecting device, record display device, non-transitory computer readable medium, and contact detecting method | |
CN109753154B (zh) | 有屏设备的手势控制方法和装置 | |
CN115421591B (zh) | 手势控制装置和摄像设备 | |
CN111160097A (zh) | 一种内容识别方法及装置 | |
JP2013142980A (ja) | ジェスチャ認識装置及びそのプログラム | |
JP2013080433A (ja) | ジェスチャ認識装置及びそのプログラム | |
CN111382598A (zh) | 一种识别方法、装置和电子设备 | |
US9761009B2 (en) | Motion tracking device control systems and methods | |
CN115421590A (zh) | 一种手势控制方法、存储介质及摄像设备 | |
CN114610155A (zh) | 手势控制方法、装置、显示终端及存储介质 | |
US20170285770A1 (en) | Enhanced user interaction with a device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |