CN109857245B - 一种手势识别方法和终端 - Google Patents
一种手势识别方法和终端 Download PDFInfo
- Publication number
- CN109857245B CN109857245B CN201711237225.9A CN201711237225A CN109857245B CN 109857245 B CN109857245 B CN 109857245B CN 201711237225 A CN201711237225 A CN 201711237225A CN 109857245 B CN109857245 B CN 109857245B
- Authority
- CN
- China
- Prior art keywords
- gesture recognition
- terminal
- gesture
- application program
- ultrasonic waves
- 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.)
- Active
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
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C23/00—Non-electrical signal transmission systems, e.g. optical systems
- G08C23/02—Non-electrical signal transmission systems, e.g. optical systems using infrasonic, sonic or ultrasonic waves
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例公开了一种手势识别方法和终端,用于提高在终端的应用程序上手势识别的精确度,降低对终端的计算性能的要求。本发明实施例提供一种手势识别方法,所述方法应用于终端,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述方法包括:根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;根据接收到的所述第二超声波进行手势识别,得到手势识别结果;根据所述手势识别结果在所述应用程序执行相应的手势指令。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种手势识别方法和终端。
背景技术
用户可以使用手机浏览器来获取网络资源,例如访问网页。用户在手机浏览器上的输入方式主要是接触式输入,即用户需要在手机终端的触摸屏或者物理按键上进行手动输入。但是这种输入方式受到应用场景的局限,例如有些场景无法进行手动输入,比如在厨房做菜,需要翻食谱时不方便进行翻页切换等操作,又如在开车的时候,不方便进行手机操作。
为了解决接触式输入存在的使用场景受限情况,现有技术提供了非接触的输入方式,例如手势识别,可以方便用户的使用。手势识别目前主要采用图像识别的方式来识别用户所作出的手势。但是基于图像识别的手势识别,存在图像识别算法复杂、计算量大、功耗高、容易受到光线的影响等问题,因此现有技术中这种手势识别存在对终端设备的性能要求高、无法实现在手机浏览器上的精确识别。
发明内容
本发明实施例提供了一种手势识别方法和终端,用于提高在终端的应用程序上的手势识别精确度,降低对终端的计算性能的要求。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种手势识别方法,所述方法应用于终端,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述方法包括:
根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;
当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;
通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;
根据接收到的所述第二超声波进行手势识别,得到手势识别结果;
根据所述手势识别结果在所述应用程序执行相应的手势指令。
第二方面,本发明实施例还提供一种终端,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述终端包括:
模式确定模块,用于根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;
超声波发送模块,用于当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;
超声波采集模块,用于通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;
手势识别模块,用于根据接收到的所述第二超声波进行手势识别,得到手势识别结果;
指令执行模块,用于根据所述手势识别结果在所述应用程序执行相应的手势指令。
第三方面,本申请实施例还提供一种终端,所述终端包括:扬声器、麦克风、处理器和存储器;
所述处理器和所述扬声器、所述麦克风、所述存储器进行相互的通信;
所述存储器用于存储指令;
所述扬声器,用于在所述处理器的控制下播放第一超声波;
所述麦克风,用于在所述处理器的控制下接收第二超声波;
所述处理器用于执行所述存储器中的所述指令,执行如前述第一方面中任一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:
在本发明实施例中,终端内设置有扬声器和麦克风,且该终端上安装了应用程序。首先根据应用程序的输入控制指示确定终端是否开启手势识别模式,在该终端确定开启手势识别模式时,通过扬声器播放第一超声波,然后通过麦克风接收第二超声波,第二超声波为对第一超声波进行采集后得到的波形数据,接下来根据接收到的第二超声波进行手势识别,得到手势识别结果,最后根据该手势识别结果在应用程序执行相应的手势指令。本发明实施例中可以通过超声波的发送与检测就可以识别出用户的动作,提高手势识别的精确率,并且实现了对用户在应用程序上的手势指令控制。并且使用终端内置的扬声器和麦克风就可以完成,降低了手势识别的复杂度,降低了对终端的计算性能的要求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种手势识别方法的流程方框示意图;
图2为本发明实施例提供的超声波发送的流程示意图;
图3为本发明实施例提供的超声波接收的流程示意图;
图4为本发明实施例提供的一维手势识别处理的流程示意图;
图5为本发明实施例提供的二维手势识别处理的流程示意图;
图6为本发明实施例提供的手势识别动作管理的流程示意图;
图7-a为本发明实施例提供的手势识别的动作开启的示意图;
图7-b为本发明实施例提供的手势识别的动作结束的示意图;
图8为本发明实施例提供的手势识别的基本操作的示意图;
图9-a为本发明实施例提供的一种终端的组成结构示意图;
图9-b为本发明实施例提供的一种模式识别模块的组成结构示意图;
图9-c为本发明实施例提供的另一种终端的组成结构示意图;
图9-d为本发明实施例提供的另一种终端的组成结构示意图;
图10为本发明实施例提供的手势识别方法应用于终端的组成结构示意图;
图11为本发明实施例提供另一种终端的组成结构示意图。
具体实施方式
本发明实施例提供了一种手势识别方法和终端,用于提高在终端的应用程序上的手势识别精确度,降低对终端的计算性能的要求。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
以下分别进行详细说明。
本发明手势识别方法的一个实施例,具体可以应用于终端对用户的手势识别场景中。请参阅图1所示,本发明实施例提供的手势识别方法应用于终端,终端中配置有扬声器和麦克风,终端上安装有应用程序,例如终端上可安装的应用程序包括:浏览器APP,或者办公软件APP,或者游戏APP等,此处不做限定。本发明实施例提供的手势识别方法,包括如下步骤:
101、根据应用程序的输入控制指示确定终端是否开启手势识别模式。
在本发明实施例中,终端上安装有应用程序,用户可以使用该应用程序,例如用户可以使用浏览器APP查询网页。输入控制指示具体可以设置在应用程序的设置菜单上,也可以设置在该应用程序的配置文件中,例如输入控制指示可以设置在安装配置文件中,在应用程序安装到终端上时由用户来配置该输入控制指示。又如。在应用程序的输入控制指示菜单上可以设置手势识别模式的开启页面,若用户选择启用手势识别模式,则可以确定该终端开启了手势识别模式,若用户没有开启手势识别模式,则可以确定该终端关闭了手势识别模式。
需要说明的是,在本发明实施例中,当终端确定开启手势识别模式时,才触发执行后续步骤,否则结束本发明实施例中的手势识别方法。本发明实施例中通过应用程序的输入控制指示可以控制终端是否启用手势识别模式。
在本发明的一些实施例中,步骤101根据应用程序的输入控制指示确定终端是否开启手势识别模式,包括:
根据应用程序的配置文件确定应用程序的输入控制指示是否为默认开启手势识别模式;
检测应用程序在终端上是否运行成功;
在应用程序运行成功时,若终端默认开启手势识别模式,确定终端开启了手势识别模式。
其中,本发明实施例中可以配置应用程序的输入控制指示为默认开启手势识别模式,则可以在应用程序在终端上运行起来后就自动打开手势识别模式,从而可以省去用户重新设置是否开启的麻烦,简化用户的操作。使得用户在运行某个应用程序时,就可以自动启用手势识别模式。
在本发明的一些实施例中,步骤101根据应用程序的输入控制指示确定终端是否开启手势识别模式,包括:
根据应用程序的配置文件确定应用程序的输入控制指示为第一二维手势开启手势识别模式,或者第二二维手势关闭手势识别模式;
当检测到第一二维手势时,确定终端开启了手势识别模式;
当检测到第二二维手势时,确定终端关闭了手势识别模式。
其中,本发明实施例中手势识别模式的开启和关闭还可以由预设的一些手势动作来决定,例如可以预设一些二维手势,通过这些预设的二维手势由用户来控制终端是否开启手势识别模式,从而满足用户对终端的实时控制需求。举例说明,根据应用程序的配置文件确定应用程序的输入控制指示可以为第一二维手势开启手势识别模式,则终端可以通过扬声器发射超声波,通过麦克风采集超声波,从而识别出用户是否做了预设的某一个手势动作(例如第一二维手势),只有该预设的手势动作被检测出时可以开启手势识别模式。又如,根据应用程序的配置文件确定应用程序的输入控制指示可以为第二二维手势关闭手势识别模式,则终端可以通过扬声器发射超声波,通过麦克风采集超声波,从而识别出用户是否做了预设的某一个手势动作(例如第二二维手势),只有该预设的手势动作被检测出时就可以关闭手势识别模式。
在本发明的一些实施例中,除了执行前述的方法步骤之外,本发明实施例提供的手势识别方法还可以包括如下步骤:
当扬声器播放训练超声波时,通过麦克风录制指定手势动作的波形数据;
根据指定手势动作的波形数据建立手势波形模板库;
根据手势波形模板库确定指定手势动作对应的手势识别结果。
本发明实施例中,用户操作不同类型的终端进行手势识别时,由于不同的终端机型对用户手势动作接收到的波形数据存在差异,为了提升手势动作的匹配准确度,本发明实施例中建立手势波形模板库。例如为了解决终端的计算能力不足问题,还可以建立基于云端服务器的手势波形模板库。用户录制了指定手势动作的波形数据,云端服务器就可以建立手势波形模板库,采用机器学习的方法进行手势识别,提升手势匹配的准确度。云端服务器可以包括两个组成部分:一部分是离线手势波形模板库训练,一部分是在线手势识别。终端可以将接收到的第二超声波提取到超声波数据,然后将该超声波数据发送给云端服务器,该云端服务器可以采用在线云端识别的方式通过手势波形模板库获取到手势识别结果,然后云端服务器将该手势识别结果发送给终端,使得不同终端类型都可以获取到适用于该终端类型的手势识别结果,例如,通过终端的配置文件可以获取到终端的类型信息和终端的配置信息,例如终端的系统类型、操作系统版本、终端采用的处理器个数、内容空间大小,从而根据终端的类型信息和终端的配置信息进入为这种终端所设置的手势波形模板库,从而提高手势匹配的准确度。
102、当终端确定开启手势识别模式时,通过扬声器播放第一超声波。
在本发明实施例中,终端内置有扬声器,终端可以首先生成超声波信号,然后通过扬声器播放出超声波,将扬声器播放出的超声波定义为“第一超声波。该第一超声波从终端所在的位置发射出去之后,该第一超声波碰到目标障碍物会向终端所在的位置进行反射。其中,目标障碍物主要是用户的人手,例如用户的单个或多个手指,或者用户的一个或两个手掌等。
在本发明实施例中,终端可以使用内置的超声波发生器来产生超声波,然后通过终端内置的扬声器来发送超声波。超声波发生器通过机械振动的方式产生超声波,通常以纵波的方式在弹性介质内传播,是一种能量的传播形式。超声波的波长短,方向性好。超声波发生器产生的超声波频率高于20000赫兹,方向性好,穿透能力强,易于获得较集中的声能。
在本发明的一些实施例中,通过扬声器播放第一超声波之后,本发明实施例提供的手势识别方法还包括:
检测扬声器播放的第一超声波的信号波形是否存在异常;
若第一超声波的信号波形存在异常,重新执行前述步骤102:通过扬声器播放第一超声波;
若第一超声波的信号波形不存在异常,触发执行如下步骤103:通过麦克风接收第二超声波。
其中,在扬声器播放第一超声波之后,可以对播放数据进行异常检测,例如从时域、频域等多维度对第一超声波的信号波形进行检测。举例说明如下,终端可以检测播放的数据有没有丢帧,例如判断采样到的频率点数是否与扬声器在1秒钟内播放的频率点数相同。又如,可以检测终端内置的扬声器是否存在播放异常。又如,终端可以在频域查看信号的能量是不是正常,比如播放的超声波信号为20khz,判断接收到的超声波能量是不是20khz。又如,终端在播放超声波时,还可以用快节奏的音乐播放检测有没有丢帧。通过前述对第一超声波的信号波形的异常判断,可以提高接收超声波的成功率。
103、通过麦克风接收第二超声波,第二超声波为对第一超声波进行采集后得到的波形数据。
在本发明实施例中,扬声器播出第一超声波之后,可以通过终端内置的麦克风来接收声波信号,将麦克风接收到的声波信号定义为“第二超声波”。其中终端内置的麦克风可以是一个或者多个,此处不做限定。通常从终端的周围环境中接收到的第二超声波是混合信号,混合有通过目标障碍物反射后的超声波,以及扬声器发射的超声波,以从终端的附近发射出的超声波。
在本发明的一些实施例中,步骤103通过麦克风接收第二超声波之后,本发明实施例提供的手势识别方法还包括:
检测接收到的第二超声波的信号波形是否存在异常;
若第二超声波的信号波形存在异常,丢弃接收到的第二超声波;
若第二超声波的信号波形不存在异常,触发执行如下步骤:根据接收到的第二超声波进行手势识别。
其中,终端采集到第二超声波之后,还可以判断录制的信号波形是否存在异常,例如接收到的信号波形是否完整,即是否存在丢帧的情况。例如可以从频域、时域等多维度进行检测,否则影响后面的手势识别结果。检测的方法有多种,例如判断接收到的信号波形能量是否等于播放的信号波形能量。又如每秒录制的频率点数是不是和采样频率相同。又如信号的时频图能量有没有杂质。通过前述对第二超声波的异常判断,只有在接收到的第二超声波不存在异常时才执行手势识别,从而提高手势识别的准确率。
在本发明的一些实施例中,步骤103通过麦克风接收第二超声波,包括:
按照预设的录制参数控制麦克风录制终端的周围环境中的声波信号;
将录制到的声波信号存储到终端的录制缓冲区中,其中,录制缓冲区中存储的声波信号为第二超声波。
其中,终端预设的录制参数可以有多种,例如单声道或者多声道。终端可以根据需求选择单声道、多声道等方式录制。又如录制参数还可以包括采样频率,该采样频率和超声波的发送频率相同。在采集到声波信号之后,终端可以将该声波信号存储到录制缓冲区中。录制缓冲区的大小可以按照如下方式设置,若录制缓冲区设置的太小,有可能会导致丢帧,一般设置2倍以上的最小缓冲区的大小。
104、根据接收到的第二超声波进行手势识别,得到手势识别结果。
在本发明实施例中,通过前述步骤103采集到第二超声波之后,可以对接收到的第二超声波进行手势识别,由于扬声器发射出的第一超声波会被用户的人手所阻挡,麦克风会采集到人手阻挡后的超声波,因此通过对麦克风接收到的第二超声波的接收位置、波形能量等分析,就可以识别出用户所做的手势,得到手势识别结果。
在本发明的一些实施例中,除了执行前述的方法步骤之外,步骤104根据接收到的第二超声波进行手势识别,得到手势识别结果之后,本发明实施例提供的手势识别方法还可以包括如下步骤:
通过所述应用程序的显示界面显示手势识别成功的提示信息。
其中,本发明实施例中终端的应用程序的显示界面还可以实现与用户的实时互动,通过步骤104据接收到的第二超声波进行手势识别,得到手势识别结果,说明当前的手势识别成功,为了避免用户重复多个做相同的动作,终端的应用程序的显示界面还可以显示提示信息,例如通过显示界面上显示的一个动画告诉用户当前手势识别程序,或者通过文字或者声音来提示用户,此处不做限定。
105、根据手势识别结果在应用程序执行相应的手势指令。
在本发明实施例中,得到手势识别结果之后,终端可以响应用户所在的手势,可以根据手势识别结果执行相应的手势指令,例如响应用户的手势指令来操作终端的应用程序。例如手势识别结果为画圆圈,终端在应用程序上执行手势识别结果对应的手势指令:打开应用程序或者对应用程序的某个菜单进行操作等。其中,手势识别结果与手势指令的对应关系可以根据用户在终端上的预配置列表来确定。举例说明,终端对用户的手势进行识别得到手势识别结果,终端可以在浏览器应用程序上执行用户的手势指令,例如在浏览器的搜索框中输入文字。
在本发明的一些实施例中,步骤102通过扬声器播放第一超声波,包括:
通过扬声器播放N个频率的第一超声波,N为大于或等于1的正整数;
在这种实现场景下,步骤103通过麦克风接收第二超声波,包括:
通过麦克风从终端的周围环境中采集到N个频率的第二超声波。
其中,终端可以发射一个或多个频率的超声波,例如发送多个不同频率的超声波,这些超声波之间可以间隔相同的距离。终端通过麦克风可以分别采集扬声器播放的一个或多个频率的超声波。
在本发明的一些实施例中,步骤104根据接收到的第二超声波进行手势识别,得到手势识别结果,包括:
当N的取值为1时,根据第二超声波的波形能量进行一维度的手势识别,得到第一手势识别结果,第一手势识别结果包括:手势靠近终端,或者远离终端。
其中,终端可以通过扬声器发射一个超声波,则终端可以通过麦克风采集到该超声波,终端对接收到的一个超声波可以进行粗粒度的一维手势识别,通过多普勒的波形能量变化从而得到第一手势识别结果,该第一手势识别结果包括:手势靠近终端,或者远离终端。
在本发明的另一些实施例中,步骤104根据接收到的第二超声波进行手势识别,得到手势识别结果,包括:
当N的取值大于或等于2时,对N个第二超声波分别计算出手势的移动距离;
从N个手势的移动距离中排除出异常的移动距离,对于保留的移动距离进行一维度的手势识别,得到第一手势识别结果,第一手势识别结果包括:手势靠近终端,或者远离终端,或者相对于终端向左移动,或者相对于终端向右移动,或者相对于终端向上移动,或者相对于终端向下移动。
其中,终端可以通过扬声器发射多个超声波,则终端可以通过麦克风分别采集到各个超声波,终端对接收到的多个超声波可以进行细粒度的一维手势识别。例如,采用N个频率的超声波相位变化计算距离,反应比较灵敏。发射17500HZ-23000HZ中间的N个超声波,相邻两个超声波之间间隔相同的距离,采样频率48000Hz,可以采样512个点实时计算距离变化,反应时间在10.7ms。在声音传输的过程中会有些多径效应,还有些背景静态物体的干扰,为了减少多径效应和背景的干扰,可以用动态信号减去背景的干扰,用N个频率计算N个距离,根据最小二乘法,计算偏差,把偏差大的频率距离去掉,保留偏差小的距离。通过排除异常的距离,可以提升距离的计算精度。
在本发明的一些实施例中,步骤103通过麦克风接收第二超声波,包括:
通过终端的两个麦克风分别采集到第二超声波。
在这种实现场景下,步骤104根据接收到的第二超声波进行手势识别,得到手势识别结果,包括:
根据两个麦克风分别接收到的第二超声波计算手势的相对位置和初始位置;
根据计算出的相对位置和初始位置进行二维度的手势识别,得到第二手势识别结果,第二手势识别结果包括:手势变化的二维坐标。
其中,为了提高手势识别的精度,终端内可以设置至少两个麦克风来分别采集第二超声波。则对于每个麦克风接收到的第二超声波,都可以计算出手势的相对位置和初始位置。其中,手势的相对位置是指基于第二超声波的相位测量得到手势相对于终端的位置,手势的初始位置是指用户手势在初次识别时的位置。通过前述计算出的手势的相对位置和初始位置,可以进行二维的手势识别,得到手势的精确坐标,提高手势识别的准确度,防止误操作。
通过前述实施例对本发明的举例说明可知,终端内设置有扬声器和麦克风,且该终端上安装有应用程序。首先根据应用程序的输入控制指示确定终端是否开启手势识别模式,在该终端确定开启手势识别模式时,通过扬声器播放第一超声波,然后通过麦克风接收第二超声波,第二超声波为对第一超声波进行采集后得到的波形数据,接下来根据接收到的第二超声波进行手势识别,得到手势识别结果,最后根据该手势识别结果在应用程序执行相应的手势指令。本发明实施例中可以通过超声波的发送与检测就可以识别出用户的动作,提高手势识别的精确率,并且实现了对用户在应用程序上的手势指令控制。并且使用终端内置的扬声器和麦克风就可以完成,降低了手势识别的复杂度,降低了对终端的计算性能的要求。
为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。
本发明实施例可以应用到手机浏览器、游戏应用程序(Application,APP)中,本发明实施例可以实现高精度、低延迟、无需任何外设、非接触式的一维和二维的手势识别。本发明实施例基于终端的扬声器和麦克风进行超声波手势检测,不需要任何外部设备。举例说明如下,本发明实施例中用户不需要手动的操作终端的触摸屏,也不需要从键盘输入任何指令,用户只需要作出手势动作,本发明实施例中的终端就可以通过超声波的发送与接收来检测出用户所作出的手势动作,从而在终端的应用程序上执行该手势动作对应的手势指令,例如用户通过做手势来操作游戏应用程序,可以控制游戏应用程序中的角色移动,游戏应用程序的开启与关闭等。
接下来以在浏览器APP的浏览场景中的手势识别为例,用户可以操作基本的上、下、左、右等常见的浏览场景。
请参阅图2所示,对超声波发送过程进行举例说明。
201、设置超声波的发送频率和采样频率。例如发送N(N>=1)个频率的超声波,采样频率大于等于两倍的发射频率。
202、设置超声波播放方式。
其中,终端可以采用静态和流式等多种播放方式,可以根据用户的需求设置。
超声波的播放要求比较严格,如果出现播放异常或者丢帧的情况,会导致计算异常或者错误,所以超声波的播放流程数据获取流程需要提前准备好,播放流程逻辑需要保证播放的波形数据没有丢帧,即需要播放的波形数据是完整的。
203、检测扬声器播放的声波信号。
其中,终端可以检测播放的数据是否异常,可以从时域、频域等多维度检测。检测有多种方式,举例说明,播放的数据检测有没有丢帧,是不是1秒钟播放采样频率个点数。又如检测播放模块有没有报异常。又如在频域上查看信号的能量是不是正常,比如播放的频率是20khz,接收的信号频率是不是20khz。另外,播放过程还可以用快节奏的音乐播放检测有没有丢帧。
如图3所示,接下来对超声波接收进行举例说明。
301、设置麦克风的录制参数。
其中,可以根据需求选择单声道、多声道等方式录制,采样频率为超声波的发送频率的两倍。根据奈奎斯特采样定律,采样频率和播放频率比较,采样频率可以是播放频率的2倍。如果录制缓冲区设置的太小,有可能会导致丢帧,一般设置2倍以上的最小缓冲区的大小。
302、启动录制线程。
其中,从麦克风读取数据,要防止播放的数据录制线程没有录制完全,从而导致出现丢帧的情况。录制线程的逻辑尽量轻量,保证一秒钟接收采样频率个点数。
303、检测麦克风的录制数据。
其中,录制的信号波形是否完整,有无丢帧,需要从频域、时域等多维度进行检测,否则影响后面的手势识别结果。检测的方法有多种,比如接收到的信号能量是不是播放的频率的能量。又如,每秒录制的点数是不是和采样频率相同。又如,可以通过信号的时频图能量有没有杂质。
本发明实施例中,超声波处理过程可以具体是一维手势识别处理,或者二维手势识别处理,接下来分别进行举例说明。
首先对一维手势识别处理进行说明,请参阅图4所示,一维手势识别处理可实现两种方案。
其中一种粗粒度的手势识别,主要包括:
401、获取超声波的波形能量。采用多普勒原理,手势靠近远离的过程中,在频谱上可以看到波形能量的明显变化。
402、对于波形的变化的速度、加速度等多维特征进行建模,得到一维的手势变化。主要是根据多普勒效应,手势靠近远离的过程中,波形的变化趋势不同,根据波形变化的方向和加速度进行计算。举例说明如下,发射20000Hz的超声波,采样频率44100Hz,每次可以采样4096个点进行计算。
另一种细粒度的手势识别,主要包括:
403、采用N个频率的超声波相位变化计算距离,反应比较灵敏。发射17500HZ-23000HZ中间的N个超声波,相邻两个超声波之间间隔相同的距离,采样频率48000Hz,可以采样512个点实时计算距离变化,反应时间在10.7ms。
404、为了计算更准确,针对N个频率相位变化计算的距离,通过算法排除异常的距离,提升距离的计算精度。声音传输的过程中会有些多径效应,还有些背景静态物体的干扰,为了减少多径效应和背景的干扰,会减去背景的干扰,用N个频率计算N个距离,根据最小二乘法,计算偏差,把偏差大的频率距离去掉,保留偏差小的距离。
接下来对二维手势识别处理进行说明,请参阅图5所示,主要包括如下过程:
501、利用两个麦克风分别采集超声波。
502、判断两个麦克风的超声波计算是否完成。
其中,在手势移动的过程中,两个麦克风对波形产生的影响不同,因此可以得到两个方向的变化。
二维手势识别处理主要解决手势动作的二维坐标的识别,从而实现二维图形(画圈、画正方形、画三角形等)或者写汉字的识别。利用扬声器和2个麦克风,可以采样两个声道的数据。
对于每个麦克风声道都执行步骤503和步骤504。
503、基于一维手势识别,计算出手势移动的相对距离。
其中,基于一维手势识别的相位可以计算出手势移动的相对距离。
504、基于信号计算得到手势的初始位置。
其中,基于麦克风接收到的信号可以计算出手势的粗粒度的初始位置。初始位置是指接收到超声波时检测出的手势的初始位置。
505、结合两个方向上的坐标,得到二维的手势识别。
在两个麦克风声道的初始位置和相对位置计算完成之后,可以结合x和y两个方向上的坐标的计算二维的手势识别,可以得到手势识别的精确坐标(x,y),通过初始位置以及相对位置的变化,可以得到实时的手势位置
如图6所示,接下来对手势识别的管理进行举例说明。通过对手势识别行动作管理,避免误操作和不必要的打扰。主要包括:
601、根据用户的二维手势判断手势识别的功能的开启和关闭。
用户可以根据需求设置自己喜欢的手势,建议采用复杂的二维手势,比如画圈、画正方形、画三角形之类的。如图7-a所示,手势识别的动作开启可以是比划一个圆形,如图7-b所示,手势识别的动作关闭可以是比划一个正方形。
602、根据用户的一维手势执行手势识别的操作功能。
其中,用户可以设置手势识别的动作,可以满足基本的操作需求。如图8所示,手势识别基本操作可以包括上下左右等基本动作。
需要说明的是,在本发明实施例中,为了解决计算负担太重,会影响超声波的播放和录制,进而影响手势识别的准确度,本发明实施例中可以采用高效的编程语言,比如计算逻辑用c语言来实现,例如采用指针运算,优化处理器的消耗高的逻辑操作,尽量减少内存拷贝、输入输出操作,减少计算时间。因此,本发明实施例中一维的手势识别计算的耗时可以减少到ms级别。
在手势识别场景中,手势识别的准确性和最快速的响应时间是最重要的,本发明实施例中可以防止用户的误操作,手势识别模式的开启和结束可以采用二维手势动作的识别方式。为了更快更精确的识别一个工作,比如靠近、远离、向左、向右,本发明实施例提出一维手势的识别方式,其中,基于超声波相位的方式可以达到毫秒(mm)级别的精度。在手机终端的硬件受限的情况下,本发明实施例可以尽可能的提高计算性能,节省计算的时间。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图9-a所示,本发明实施例提供的一种终端900,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述终端可以包括:模式确定模块901、超声波发送模块902、超声波采集模块903、手势识别模块904和指令执行模块905,其中,
模式确定模块901,用于根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;
超声波发送模块902,用于当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;
超声波采集模块903,用于通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;
手势识别模块904,用于根据接收到的所述第二超声波进行手势识别,得到手势识别结果;
指令执行模块905,用于根据所述手势识别结果在所述应用程序执行相应的手势指令。
在本发明的一些实施例中,所述超声波发送模块902,具体用于通过所述扬声器播放N个频率的第一超声波,所述N为大于或等于1的正整数;
所述超声波采集模块,用于通过所述麦克风从所述终端的周围环境中采集到N个频率的第二超声波。
进一步的,在本发明的一些实施例中,所述手势识别模块904,具体用于当所述N的取值为1时,根据所述第二超声波的波形能量进行一维度的手势识别,得到第一手势识别结果,所述第一手势识别结果包括:手势靠近所述终端,或者远离所述终端。
在本发明的一些实施例中,请参阅图9-b所示,模式确定模块901,包括:
控制指示解析模块9011,用于根据所述应用程序的配置文件确定所述应用程序的输入控制指示是否为默认开启手势识别模式;
程序检测模块9012,用于检测所述应用程序在所述终端上是否运行成功;
模式开启模块9013,用于在所述应用程序运行成功时,若所述终端默认开启手势识别模式,确定所述终端开启了手势识别模式。
在本发明的一些实施例中,模式确定模块901,具体用于根据所述应用程序的配置文件确定所述应用程序的输入控制指示为第一二维手势开启手势识别模式,或者第二二维手势关闭手势识别模式;当检测到第一二维手势时,确定所述终端开启了手势识别模式;当检测到第二二维手势时,确定所述终端关闭了手势识别模式。
在本发明的一些实施例中,请参阅图9-c所示,所述终端900,还包括:模板库建立模块906和手势动作匹配模块907,其中,
超声波采集模块903,用于当所述扬声器播放训练超声波时,通过所述麦克风录制指定手势动作的波形数据;
模板库建立模块906,用于根据所述指定手势动作的波形数据建立手势波形模板库;
手势动作匹配模块907,用于根据所述手势波形模板库确定所述指定手势动作对应的手势识别结果。
在本发明的一些实施例中,请参阅图9-d所示,所述终端900,还包括:
显示模块908,用于所述手势识别模块904根据接收到的所述第二超声波进行手势识别,得到手势识别结果之后,通过所述应用程序的显示界面显示手势识别成功的提示信息。
在本发明的一些实施例中,所述手势识别模块904,包括:
距离计算模块,用于当所述N的取值大于或等于2时,对N个所述第二超声波分别计算出手势的移动距离;
一维识别模块,用于从N个所述手势的移动距离中排除出异常的移动距离,对于保留的移动距离进行一维度的手势识别,得到第一手势识别结果,所述第一手势识别结果包括:手势靠近所述终端,或者远离所述终端,或者相对于所述终端向左移动,或者相对于所述终端向右移动,或者相对于所述终端向上移动,或者相对于所述终端向下移动。
在本发明的一些实施例中,所述超声波采集模块903,具体用于通过所述终端的两个麦克风分别采集到第二超声波;
所述手势识别模块904,包括:
位置计算模块,用于根据所述两个麦克风分别接收到的第二超声波计算手势的相对位置和初始位置;
二维识别模块,用于根据计算出的相对位置和初始位置进行二维度的手势识别,得到第二手势识别结果,所述第二手势识别结果包括:手势变化的二维坐标。
在本发明的一些实施例中,所述超声波采集模块903,包括:
声波录制模块,用于按照预设的录制参数控制所述麦克风录制所述终端的周围环境中的声波信号;
信号存储模块,用于将录制到的所述声波信号存储到所述终端的录制缓冲区中,其中,所述录制缓冲区中存储的声波信号为所述第二超声波。
通过以上对本发明实施例的描述可知,终端内设置有扬声器和麦克风,且该终端上安装有应用程序。首先根据应用程序的输入控制指示确定终端是否开启手势识别模式,在该终端确定开启手势识别模式时,通过扬声器播放第一超声波,然后通过麦克风接收第二超声波,第二超声波为对第一超声波进行采集后得到的波形数据,接下来根据接收到的第二超声波进行手势识别,得到手势识别结果,最后根据该手势识别结果在应用程序执行相应的手势指令。本发明实施例中可以通过超声波的发送与检测就可以识别出用户的动作,提高手势识别的精确率,并且实现了对用户在应用程序上的手势指令控制。并且使用终端内置的扬声器和麦克风就可以完成,降低了手势识别的复杂度,降低了对终端的计算性能的要求。
本发明实施例还提供了另一种终端,如图10所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point ofSales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图10示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图10,手机包括:射频(Radio Frequency,RF)电路1010、存储器1020、输入单元1030、显示单元1040、传感器1050、音频电路1060、无线保真(wireless fidelity,WiFi)模块1070、处理器1080、以及电源1090等部件。本领域技术人员可以理解,图10中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图10对手机的各个构成部件进行具体的介绍:
RF电路1010可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1080处理;另外,将设计上行的数据发送给基站。通常,RF电路1010包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路1010还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1030可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1030可包括触控面板1031以及其他输入设备1032。触控面板1031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1031上或在触控面板1031附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1080,并能接收处理器1080发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1031。除了触控面板1031,输入单元1030还可以包括其他输入设备1032。具体地,其他输入设备1032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1040可包括显示面板1041,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1041。进一步的,触控面板1031可覆盖显示面板1041,当触控面板1031检测到在其上或附近的触摸操作后,传送给处理器1080以确定触摸事件的类型,随后处理器1080根据触摸事件的类型在显示面板1041上提供相应的视觉输出。虽然在图10中,触控面板1031与显示面板1041是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1031与显示面板1041集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1050,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1041的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1060、扬声器1061,传声器1062、麦克风1063可提供用户与手机之间的音频接口。音频电路1060可将接收到的音频数据转换后的电信号,传输到扬声器1061,由扬声器1061转换为声音信号输出;另一方面,传声器1062将收集的声音信号转换为电信号,由音频电路1060接收后转换为音频数据,再将音频数据输出处理器1080处理后,经RF电路1010以发送给比如另一手机,或者将音频数据输出至存储器1020以便进一步处理。扬声器1061可以生成超声波信号,然后麦克风1063可以从手机周围采集超声波信号。
WiFi属于短距离无线传输技术,手机通过WiFi模块1070可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图10示出了WiFi模块1070,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1080是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1080可包括一个或多个处理单元;优选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
手机还包括给各个部件供电的电源1090(比如电池),优选的,电源可以通过电源管理系统与处理器1080逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器1080还具有控制执行以上由终端执行的手势识别方法流程。例如,处理器1080对超声波的识别过程可以参阅前述实施例中的描述。
接下来介绍本申请实施例提供的另一种终端,请参阅图11所示,AMF1100包括:
扬声器1101、麦克风1102、处理器1103和存储器1104(其中AMF1100中的处理器1103的数量可以一个或多个,图11中以一个处理器为例)。在本申请的一些实施例中,扬声器1101、麦克风1102、处理器1103和存储器1104可通过总线或其它方式连接,其中,图11中以通过总线连接为例。
存储器1104可以包括只读存储器和随机存取存储器,并向处理器1103提供指令和数据。存储器1104的一部分还可以包括非易失性随机存取存储器(英文全称:Non-VolatileRandom Access Memory,英文缩写:NVRAM)。存储器1104存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器1103控制AMF的操作,处理器1103还可以称为中央处理单元(英文全称:Central Processing Unit,英文简称:CPU)。具体的应用中,AMF的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本申请实施例揭示的方法可以应用于处理器1103中,或者由处理器1103实现。处理器1103可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1103中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1103可以是通用处理器、数字信号处理器(英文全称:digital signal processing,英文缩写:DSP)、专用集成电路(英文全称:Application Specific Integrated Circuit,英文缩写:ASIC)、现场可编程门阵列(英文全称:Field-Programmable Gate Array,英文缩写:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1104,处理器1103读取存储器1104中的信息,结合其硬件完成上述方法的步骤。
所述扬声器1101,用于在所述处理器的控制下播放第一超声波;
所述麦克风1102,用于在所述处理器的控制下接收第二超声波;
本申请实施例中,处理器1103,用于执行所述存储器中的所述指令,执行如前述实施例中的方法。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种手势识别方法,其特征在于,所述方法应用于终端,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述方法包括:
根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;
当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;
通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;
根据接收到的所述第二超声波进行手势识别,得到手势识别结果;
根据所述手势识别结果在所述应用程序执行相应的手势指令;
所述通过所述扬声器播放第一超声波,包括:
通过所述扬声器播放N个频率的第一超声波,所述N为大于或等于1的正整数;
所述根据接收到的所述第二超声波进行手势识别,得到手势识别结果,包括:
当所述N的取值大于或等于2时,对N个所述第二超声波分别计算出手势的移动距离;
从N个所述手势的移动距离中排除出异常的移动距离,对于保留的移动距离进行一维度的手势识别,得到第一手势识别结果,所述第一手势识别结果包括:手势靠近所述终端,或者远离所述终端,或者相对于所述终端向左移动,或者相对于所述终端向右移动,或者相对于所述终端向上移动,或者相对于所述终端向下移动。
2.根据权利要求1所述的方法,其特征在于,所述根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式,包括:
根据所述应用程序的配置文件确定所述应用程序的输入控制指示是否为默认开启手势识别模式;
检测所述应用程序在所述终端上是否运行成功;
在所述应用程序运行成功时,若所述终端默认开启手势识别模式,确定所述终端开启了手势识别模式。
3.根据权利要求1所述的方法,其特征在于,所述根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式,包括:
根据所述应用程序的配置文件确定所述应用程序的输入控制指示为第一二维手势开启手势识别模式,或者第二二维手势关闭手势识别模式;
当检测到第一二维手势时,确定所述终端开启了手势识别模式;
当检测到第二二维手势时,确定所述终端关闭了手势识别模式。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述扬声器播放训练超声波时,通过所述麦克风录制指定手势动作的波形数据;
根据所述指定手势动作的波形数据建立手势波形模板库;
根据所述手势波形模板库确定所述指定手势动作对应的手势识别结果。
5.根据权利要求1所述的方法,其特征在于,所述根据接收到的所述第二超声波进行手势识别,得到手势识别结果之后,所述方法还包括:
通过所述应用程序的显示界面显示手势识别成功的提示信息。
6.根据权利要求1所述的方法,其特征在于,所述通过所述麦克风接收第二超声波,包括:
通过所述终端的两个麦克风分别采集到第二超声波;
所述根据接收到的所述第二超声波进行手势识别,得到手势识别结果,包括:
根据所述两个麦克风分别接收到的第二超声波计算手势的相对位置和初始位置;
根据计算出的相对位置和初始位置进行二维度的手势识别,得到第二手势识别结果,所述第二手势识别结果包括:手势变化的二维坐标。
7.一种终端,其特征在于,所述终端中配置有扬声器和麦克风,所述终端上安装有应用程序,所述终端包括:
模式确定模块,用于根据所述应用程序的输入控制指示确定所述终端是否开启手势识别模式;
超声波发送模块,用于当所述终端确定开启手势识别模式时,通过所述扬声器播放第一超声波;
超声波采集模块,用于通过所述麦克风接收第二超声波,所述第二超声波为对所述第一超声波进行采集后得到的波形数据;
手势识别模块,用于根据接收到的所述第二超声波进行手势识别,得到手势识别结果;
指令执行模块,用于根据所述手势识别结果在所述应用程序执行相应的手势指令;
所述超声波发送模块902,具体用于通过所述扬声器播放N个频率的第一超声波,所述N为大于或等于1的正整数;
所述手势识别模块,包括:
距离计算模块,用于当所述N的取值大于或等于2时,对N个所述第二超声波分别计算出手势的移动距离;
一维识别模块,用于从N个所述手势的移动距离中排除出异常的移动距离,对于保留的移动距离进行一维度的手势识别,得到第一手势识别结果,所述第一手势识别结果包括:手势靠近所述终端,或者远离所述终端,或者相对于所述终端向左移动,或者相对于所述终端向右移动,或者相对于所述终端向上移动,或者相对于所述终端向下移动。
8.一种终端,其特征在于,所述终端包括:扬声器、麦克风、处理器和存储器;
所述处理器和所述扬声器、所述麦克风、所述存储器进行相互的通信;
所述存储器用于存储指令;
所述扬声器,用于在所述处理器的控制下播放第一超声波;
所述麦克风,用于在所述处理器的控制下接收第二超声波;
所述处理器,用于执行所述存储器中的所述指令,执行如权利要求1至6中任一项所述的方法。
9.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-6任意一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711237225.9A CN109857245B (zh) | 2017-11-30 | 2017-11-30 | 一种手势识别方法和终端 |
PCT/CN2018/117864 WO2019105376A1 (zh) | 2017-11-30 | 2018-11-28 | 手势识别方法、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711237225.9A CN109857245B (zh) | 2017-11-30 | 2017-11-30 | 一种手势识别方法和终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109857245A CN109857245A (zh) | 2019-06-07 |
CN109857245B true CN109857245B (zh) | 2021-06-15 |
Family
ID=66664706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711237225.9A Active CN109857245B (zh) | 2017-11-30 | 2017-11-30 | 一种手势识别方法和终端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109857245B (zh) |
WO (1) | WO2019105376A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021007733A1 (zh) * | 2019-07-12 | 2021-01-21 | Oppo广东移动通信有限公司 | 识别操作终端设备的手势的方法和终端设备 |
CN111722715A (zh) * | 2020-06-17 | 2020-09-29 | 上海思立微电子科技有限公司 | 一种手势控制系统及电子设备 |
CN111929689B (zh) * | 2020-07-22 | 2023-04-07 | 杭州电子科技大学 | 一种基于手机自带传感器的物体成像方法 |
CN114647301B (zh) * | 2020-12-17 | 2024-08-27 | 上海交通大学 | 一种基于声音信号的车载应用手势交互方法及系统 |
CN112860070A (zh) * | 2021-03-03 | 2021-05-28 | 北京小米移动软件有限公司 | 设备交互方法、设备交互装置、存储介质及终端 |
CN112987925B (zh) * | 2021-03-04 | 2022-11-25 | 歌尔科技有限公司 | 一种耳机及其控制方法、装置 |
CN112965639B (zh) * | 2021-03-17 | 2024-09-03 | 北京小米移动软件有限公司 | 手势识别方法及装置、电子设备、存储介质 |
CN115981454A (zh) * | 2021-10-13 | 2023-04-18 | 华为技术有限公司 | 非接触式手势控制方法和电子设备 |
CN115002278B (zh) * | 2022-05-12 | 2023-10-10 | 中国电信股份有限公司 | 无线设备手势控制方法及装置、存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718064A (zh) * | 2016-01-22 | 2016-06-29 | 南京大学 | 基于超声波的手势识别系统与方法 |
CN105807923A (zh) * | 2016-03-07 | 2016-07-27 | 中国科学院计算技术研究所 | 一种基于超声波的凌空手势识别方法及系统 |
CN107066086A (zh) * | 2017-01-17 | 2017-08-18 | 上海与德信息技术有限公司 | 一种基于超声波的手势识别方法及装置 |
CN107291308A (zh) * | 2017-07-26 | 2017-10-24 | 上海科世达-华阳汽车电器有限公司 | 一种手势识别装置及其识别方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577107A (zh) * | 2013-10-29 | 2014-02-12 | 广东欧珀移动通信有限公司 | 一种利用多点触控快速启动应用的方法及智能终端 |
US11106273B2 (en) * | 2015-10-30 | 2021-08-31 | Ostendo Technologies, Inc. | System and methods for on-body gestural interfaces and projection displays |
US10632500B2 (en) * | 2016-05-10 | 2020-04-28 | Invensense, Inc. | Ultrasonic transducer with a non-uniform membrane |
-
2017
- 2017-11-30 CN CN201711237225.9A patent/CN109857245B/zh active Active
-
2018
- 2018-11-28 WO PCT/CN2018/117864 patent/WO2019105376A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718064A (zh) * | 2016-01-22 | 2016-06-29 | 南京大学 | 基于超声波的手势识别系统与方法 |
CN105807923A (zh) * | 2016-03-07 | 2016-07-27 | 中国科学院计算技术研究所 | 一种基于超声波的凌空手势识别方法及系统 |
CN107066086A (zh) * | 2017-01-17 | 2017-08-18 | 上海与德信息技术有限公司 | 一种基于超声波的手势识别方法及装置 |
CN107291308A (zh) * | 2017-07-26 | 2017-10-24 | 上海科世达-华阳汽车电器有限公司 | 一种手势识别装置及其识别方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2019105376A1 (zh) | 2019-06-06 |
CN109857245A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109857245B (zh) | 一种手势识别方法和终端 | |
US11237724B2 (en) | Mobile terminal and method for split screen control thereof, and computer readable storage medium | |
CN104383681B (zh) | 游戏进程控制方法、装置和移动终端 | |
CN106303733B (zh) | 播放直播特效信息的方法和装置 | |
CN103634717B (zh) | 一种利用耳机控制的方法、装置及终端设备 | |
WO2016119580A1 (zh) | 一种开启终端的语音输入功能的方法、装置和终端 | |
CN109240551B (zh) | 使用手势控制电子装置的方法及相关产品 | |
CN106293901B (zh) | 一种终端应用的进程管理方法及装置 | |
TW201516844A (zh) | 一種物件選擇的方法和裝置 | |
WO2018166204A1 (zh) | 一种控制指纹识别模组的方法、移动终端及存储介质 | |
CN108958593B (zh) | 一种确定通讯对象的方法及移动终端 | |
CN103677633B (zh) | 屏幕解锁方法、装置和终端 | |
CN107390923B (zh) | 一种屏幕防误触方法、装置、存储介质和终端 | |
WO2015000429A1 (zh) | 智能选词的方法和装置 | |
CN106371749A (zh) | 一种终端控制的方法和装置 | |
WO2018133642A1 (zh) | 指纹识别模组、指纹识别方法及相关产品 | |
CN108958629B (zh) | 分屏退出方法、装置、存储介质和电子设备 | |
CN105022552A (zh) | 一种显示消息列表的方法和装置 | |
CN113050863A (zh) | 页面切换方法、装置、存储介质及电子设备 | |
CN107466387A (zh) | 一种检测触摸方式的方法及装置 | |
WO2018039914A1 (zh) | 一种数据复制方法及用户终端 | |
CN107193551B (zh) | 一种生成图像帧的方法和装置 | |
CN105630315A (zh) | 调节数量的方法和装置 | |
CN110277097B (zh) | 数据处理方法及相关设备 | |
CN109032482B (zh) | 分屏控制方法、装置、存储介质和电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |