基于语音识别的应用程序控制方法及终端设备与流程

文档序号:17686507发布日期:2019-05-17 20:40阅读:224来源:国知局
本发明涉及语音语义
技术领域
:,尤其涉及一种基于语音识别的应用程序控制方法、装置、终端设备及计算机可读存储介质。
背景技术
::由于手机的普及,越来越多的能够实现不同功能的应用程序也开发并普及起来了。由于一个终端设备上安装的应用程序一般都会比较多,并且每个应用程序的功能也不止一个,因此,用户对于那么多的应用程序,一般并不容易全部熟悉并掌握其功能菜单树,所以经常会出现忘记某个应用程序的功能页面要怎么进入的情况,而这样的烦恼也因应用程序增多也越来越凸显出来。虽然现有的某些应用程序,配置了应用助手可以引导用户寻找该应用程序的功能,但是并不是所有的应用程序都有配置应用助手的功能。技术实现要素:有鉴于此,本发明提出一种用户基于语音识别的应用程序控制方法、装置、终端设备及计算机可读存储介质,能够通过处于悬浮运行状态的第二应用程序接收用户的语音信息,并识别出对应的控制命令,然后将所述控制命令发送至处于前台运行状态的第一应用程序执行相对应的功能,从而实现在不熟悉应用程序的功能菜单树的情况下也能够方便快捷地对所述应用程序的功能进行控制。首先,为实现上述目的,本发明提供一种基于语音识别的应用程序控制方法,该方法应用于终端设备,所述方法包括:获取处于前台运行状态的第一应用程序的名称及功能信息;获取处于悬浮运行状态的第二应用程序所接收到的语音信息;根据预设的命令库对所述语音信息进行识别,确认所述语音信息对应的控制命令;将所述控制命令发送至所述第一应用程序进行执行。可选地,所述方法还包括步骤:接收用户输入的个性化设置信息;根据所述个性化设置信息对所述第二应用程序设置为宠物形象图标及名称。可选地,所述“根据预设的命令库对所述语音信息进行识别,确认所述语音信息对应的控制命令”的步骤,具体包括步骤:对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息;将所述文字信息与所述第一应用程序的接口信息进行匹配,从而确定所述语音信息中的控制命令。可选地,在所述“将所述文字信息与所述第一应用程序的接口信息进行匹配”步骤之前,还包括步骤:获取所述第一应用程序的所有功能的接口信息,所述接口信息包括功能名称及对应的控制命令库。可选地,所述“对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息”步骤,具体包括步骤:根据语法规则将所述文字信息划分为至少包括一个关键字的关键字组;将所述关键字组与所述控制命令库中的每条控制命令进行相似度评价,选择相似度最高的控制命令确定为所述文字信息对应的控制命令。可选地,所述“将所述关键字组与所述控制命令库中的每条控制命令进行相似度评价”包括根据所述关键字组与所述控制命令中存在的词义相同或者相近的关键字数量占所述控制命令的关键字总数量的比例确定相似度。可选地,所述方法还包括步骤:接收所述第一应用程序反馈的对应于所述控制命令的执行结果;将所述执行结果通过所述第二应用程序进行语音提示。此外,为实现上述目的,本发明还提供一种基于语音识别的应用程序控制装置,所述装置包括:获取模块,用于获取处于前台运行状态的第一应用程序的名称及功能信息;所述获取模块,还用于获取处于悬浮运行状态的第二应用程序所接收到的语音信息;识别模块,用于根据预设的命令库对所述语音信息进行识别,确认所述语音信息对应的控制命令;发送模块,用于将所述控制命令发送至所述第一应用程序进行执行。进一步地,本发明还提出一种终端设备,所述终端设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的基于语音识别的应用程序控制程序,所述基于语音识别的应用程序控制程序被所述处理器执行时实现如上述的基于语音识别的应用程序控制方法的步骤。进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有基于语音识别的应用程序控制程序,所述基于语音识别的应用程序控制程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于语音识别的应用程序控制方法的步骤。相较于现有技术,本发明所提出的基于语音识别的应用程序控制方法、装置、终端设备及计算机可读存储介质,能够通过处于悬浮运行状态的第二应用程序接收用户的语音信息,并识别出对应的控制命令,然后将所述控制命令发送至处于前台运行状态的第一应用程序执行相对应的功能,从而实现在不熟悉应用程序的功能菜单树的情况下也能够方便快捷地对所述应用程序的功能进行控制。附图说明图1是本发明终端设备一可选的硬件架构的示意图;图2是本发明基于语音识别的应用程序控制程序一实施例的程序模块示意图;图3是本发明基于语音识别的应用程序控制方法一实施例的流程示意图。附图标记:本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。参阅图1所示,是本发明终端设备1一可选的硬件架构的示意图。所述终端设备1可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。本实施例中,所述终端设备1可包括,但不仅限于,可通过系统总线相互通信连接存储器11、处理器12、网络接口13以及拾音器14。所述终端设备1通过网络接口13连接网络(图1未标出),通过网络连接到其他终端如pc端,移动终端等。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi、通话网络等无线或有线网络。需要指出的是,图1仅示出了具有组件11-14的终端设备1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述终端设备1的内部存储单元,例如该终端设备1的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述终端设备1的外部存储设备,例如该终端设备1配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器11还可以既包括所述终端设备1的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述终端设备1的操作系统和各类应用软件,例如基于语音识别的应用程序控制程序的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。所述处理器12在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述终端设备1的总体操作,例如执行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的基于语音识别的应用程序控制程序等。所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述终端设备1与其他终端如pc端,移动终端等之间建立通信连接。所述拾音器14用于采集周围环境的语音信号。本实施例中,所述终端设备1内安装并运行有基于语音识别的应用程序控制程序时,当所述基于语音识别的应用程序控制程序运行时,能够通过处于悬浮运行状态的第二应用程序接收用户的语音信息,并识别出对应的控制命令,然后将所述控制命令发送至处于前台运行状态的第一应用程序执行相对应的功能,从而实现在不熟悉应用程序的功能菜单树的情况下也能够方便快捷地对所述应用程序的功能进行控制。至此,己经详细介绍了本发明各个实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。首先,本发明提出一种基于语音识别的应用程序控制程序。参阅图2所示,是本发明基于语音识别的应用程序控制程序一实施例的程序模块图。本实施例中,所述基于语音识别的应用程序控制程序包括一系列的存储于存储器11上的计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的基于语音识别的应用程序控制操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,基于语音识别的应用程序控制程序可以被划分为一个或多个模块。例如,在图2中,所述基于语音识别的应用程序控制程序可以被分割成设置模块201、获取模块202、识别模块203、发送模块204和提醒模块205。其中:所述设置模块201,用于根据用户输入的个性化设置信息对所述第二应用程序设置为宠物形象图标及名称。具体地,运行在终端设备的应用程序的生命周期并不是由应用程序自身直接控制的,而是由终端设备系统决定的,当所述终端设备系统运行某个应用程序时,则需要一定的内存来运行该应用程序的进程,而所述终端设备系统往往会包括好几个进程分类,比如大部分移动终端包括有:前端进程、可见进程和后台进程。前端进程就是目前显示在屏幕上和用户交互的进程,因此对于处于前端进程的应用程序,往往称所述应用程序处于前台运行状态;可见进程比前端进程重要性低,但是在交互方面影响还是很大,因为用户可能随时切换过去,所以系统不会轻易销毁它,因此对于处于可见进程的应用程序,往往称所述应用程序处于悬浮运行状态;后台进程就是用户暂时没有和这个进程交互的愿望,但是有可能稍后会与该进程进行交互,因此对于处于前端进程的应用程序,往往称所述应用程序处于前台运行状态。也就是说,当处于前台运行状态时,应用程序显示在当前页面,能够提供用户进行交互的页面,而且同一时间仅有一个应用处于前台运行状态;当处于后台运行状态时,应用虽然是运行状态,但并没有显示在当前页面,所以不能直接与用户进行交互;当处于悬浮运行状态时,应用也是显示在当前页面,能够提供用户进行交互,但是仅仅占用手机当前页面的悬浮层。在本实施例中,第二应用程序被设置以悬浮运行状态的模式。所述设置模块201可以根据用户输入的个性化设置信息对所述第二应用程序设置图标及名称,其中,图标可以设置为不同的宠物形象样式,例如:猫,狗,狐狸,熊猫等;名称可以设置为宠物称呼,例如:小智,小黄,小白等。所述第二应用程序还设置为具有语音识别功能,并在悬浮运行状态下被点击或被唤醒后,则可以接收语音信息。在本实施例中,例如,所述第二应用程序被设置为小猫样式图标,名字叫小智,然后小猫图标被触控后,例如小猫图标被触控一次或者两次,就可以接收语音信息。所述获取模块202,用于获取处于前台运行状态的第一应用程序的名称及功能信息,以及获取处于悬浮运行状态的所述第二应用程序所接收到的语音信息。具体地,当所述第二应用程序启动后,所述获取模块202会实时地获取当前处于前台运行状态的应用程序的信息。由于每个应用程序都是一个实现特定功能的软件程序,因此,每个应用程序对应地存在一个api(applicationprogramminginterface,应用编程接口),用于提供给其他应用程序或者开发人员对该应用程序进行访问或者控制。而应用程序下的各个功能属于该应用对应的软件程序下的子程序,因此,每个功能也对应有一个子api,用于提供给其他应用或者开发人员对该应用的该功能进行访问或者控制。当应用程序安装到终端设备时,终端设备会获取并记录该应用程序的名称和api,以及该应用程序的功能名称和子api。通过这种方式,终端设备将所有安装的应用程序的名称、对应该应用程序名称的api;以及该应用程序的功能名称、对应该功能名称的子api的信息作为注册表信息存储起来,然后将每个应用程序以预设样式显示到手机操作系统的显示界面的某一位置。当应用程序启动时,则需要向终端设备请求运行环境,例如运行内存等资源。因此,所述获取模块202可以获取程序的名称及功能信息,并与注册表所存储的应用程序的名称和功能信息进行匹配,当匹配成功后,则会分配运行内存等资源给所述应用程序,并实时监控该应用程序的运行状态。在本实施例中,所述获取模块202周期性地获取到当前处于前台运行状态的应用程序的信息,例如,周期可以是1秒。同时,所述获取模块202还会实时获取处于悬浮运行状态的第二应用程序所接收到的语音信息。例如:当所述第二应用程序的小猫图标被触控后,所述获取模块202则进行语音信息的接收,例如接收到“小智”的语音后,所述识别模块203识别后就会通过所述第二应用程序进行语音播报如:主人,有什么吩咐的吗?接着,所述获取模块202继续接收其他的语音信息。所述识别模块203,用于根据预设的命令库对所述语音信息进行识别,确认所述语音信息对应的控制命令。具体地,在所述获取模块202获取到处于前台运行状态的第一应用程序的名称及功能信息以及用户通过所述第二应用程序输入的语音信息后,所述识别模块203则会根据预设的命令库对所述语音信息进行识别以确认所述语音信息对应的控制命令。在本实施例中,所述识别模块203首先对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息;然后再将所述文字信息与所述第一应用程序的接口信息进行匹配,从而确定所述语音信息中的控制命令,其中,所述接口信息实际上是对应于每个应用程序的api的所有信息,包括功能名称及对应的控制命令库。例如,通过应用程序的api查找到该应用程序对应的名称,包括的功能名称;然后进一步获取到该应用程序对应的控制命令库,甚至是该应用程序下的每个功能对应的控制命令库。在本实施例中,所述控制命令库可以根据获取到的前台运行状态的应用程序的信息直接将该应用程序对应的控制命令库调取并作为预设的控制命令库使用。例如:手机上安装了a,b,c三个应用程序,当所述获取模块202获取到当前处于前台运行状态的应用程序为a,那么,a对应的控制命令库则会被设置为当前的控制命令库。也就是说,所述控制命令库是动态的,是根据当前处于前台运行状态的应用程序所决定的。当然,在其他实施例中,所述控制命令库也可以是所有应用程序的命令库的集合;或者是用户针对某些常用的应用程序分别设置的对应所述常用的应用程序的常用功能的控制命令集。例如:手机上安装了a,b,c三个应用,则所述控制命令库包括对应于a的控制命令库a、应于b的控制命令库b和应于c的控制命令库c;而用户常用的只有a下面的功能d和m,和b下面的功能e和n,c下面的功能f和g;而常用功能d,e,f分别对应了子控制命令库d,e,f;则所述控制命令库可以设置为包括d,e,f子命令库。首先,所述识别模块203对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息的过程,主要是根据根据语法规则将所述文字信息划分为至少包括一个关键字的关键字组,然后再将所述关键字组与所述控制命令库中的每条控制命令进行相似度评价,选择相似度最高的控制命令确定为所述文字信息对应的控制命令。在本实施例中,所述语法规则是结合词典数据库以及用户日常使用的字、词、短语习惯所产生的数据库而所统计出的常用的字、词、短语格式。而将识别的文字信息确认为对应的控制命令的过程,主要包括:将文字信息划分为至少包括一个关键字的关键字组。然后,根据预设的相似度判断规则将关键字组中的关键字分别与所述控制命令库中的每一条命令进行比对。接着,根据所述关键字组中的关键字与所述控制命令的关键字的相同或者相似部分占所述控制命令的比例来确定(或者计算)所述关键字组与所述控制命令的相似度。最后,再根据相似度高低进行排序,从而选择相似度最高的控制命令作为所述文字信息对应的控制命令。其中,相似度的评价,主要是根据所述关键字组与所述控制命令中存在的词义相同或者相近的关键字数量占所述控制命令的关键字总数量的比例来确定相似度。例如,控制命令中的关键字“打开”,如果预先设置有关联关系的关键字有:“开启”、“点开”、“点击”、“进入”,则当文字信息中出现其中一个关键字,比如“点开”时,则会判断为控制命令中的“打开”。以此方式,可以将所述文字信息中的关键字组识别为对应的多个控制命令中的关键字,然后再进行相似度高低比较,例如:文字信息“点开好友页面”,根据关键字的判断过程,该文字信息包括“点开”、“好友”、“页面”,分别对应控制命令中的“打开”、“好友”、“界面”三个关键字。而包括该三个关键字的控制命令实际在控制命令库中查找出两条:“打开好友界面”和“打开好友添加界面”。因此,所述识别模块203进一步地还会根据相似度高低进行排序,例如,所述文字信息包括的三个关键字,与控制命令“打开好友界面”所包括的关键字一样,因此相似度100%;而控制命令“打开好友添加界面”除了包括“打开”、“好友”、“界面”三个关键字之后,还有关键字“添加”,因此相似度为3/4=75%。因此,所述识别模块203根据相似度的高低排序,将所述文字信息“点开好友页面”确认为“打开好友界面”。所述发送模块204,用于将所述控制命令发送至所述第一应用程序进行执行。具体地,所述识别模块204将所述文字信息识别并转化为控制命令后,所述发送模块204则将所述控制命令发送到处于前台运行状态的第一应用程序执行。在本实施例中,所述获取模块202获取到的所述处于前台运行状态的手机应用的api信息,然后所述发送模块204将所述识别模块203识别出来的所述控制命令通过所述api发送到所述前台运行状态的第一应用程序进行执行。例如:所述处于前台运行状态的应用程序为微信,所述文字信息“点开好友页面”被确认为控制命令为“打开好友界面”,因此所述发送模块204将控制命令“打开好友界面”通过微信的api控制微信执行“打开好友界面”,即进入好友界面。所述提醒模块205,用于接收所述第一应用程序反馈的对应于所述控制命令的执行结果并进行提醒。在本实施例中,所述提醒模块205将所述第一应用程序对所述控制命令的执行结果通过所述第二应用程序进行语音提示。例如,所述发送模块204将控制命令“打开好友界面”通过微信的api控制微信执行“打开好友界面”,然后微信成功“打开好友界面”了,则宠物小智则会语音播报如:主人,已进入好友界面。从上文可知,所述终端设备1能够通过处于悬浮运行状态的第二应用程序接收用户的语音信息,并识别出对应的控制命令,然后将所述控制命令发送至处于前台运行状态的第一应用程序执行相对应的功能,从而实现在不熟悉应用程序的功能菜单树的情况下也能够方便快捷地对所述应用程序的功能进行控制。当然,在其他实施例中,所述基于语音识别的应用程序控制程序也可以设置成一个基于语音识别的应用程序控制装置,该装置包括所述基于语音识别的应用程序控制程序的所有程序模块一一对应的功能模块。所述基于语音识别的应用程序控制装置可作为独立的功能单元装设到网络上任一终端设备上,以便于对该终端设备上的应用程序进行控制和操作。此外,本发明还提出一种基于语音识别的应用程序控制方法,所述方法应用于终端设备。参阅图3所示,是本发明基于语音识别的应用程序控制方法一实施例的流程示意图。在本实施例中,根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。步骤s500,根据用户输入的个性化设置信息对所述第二应用程序设置为宠物形象图标及名称。具体地,该步骤先接受用户输入的个性化设置信息,然后根据所述个性化设置信息对所述第二应用程序设置为宠物形象图标及名称。在本实施例中,运行在终端设备的应用程序的生命周期并不是由应用程序自身直接控制的,而是由终端设备系统决定的,当所述终端设备系统运行某个应用程序时,则需要一定的内存来运行该应用程序的进程,而所述终端设备系统往往会包括好几个进程分类,比如大部分移动终端包括有:前端进程、可见进程和后台进程。前端进程就是目前显示在屏幕上和用户交互的进程,因此对于处于前端进程的应用程序,往往称所述应用程序处于前台运行状态;可见进程比前端进程重要性低,但是在交互方面影响还是很大,因为用户可能随时切换过去,所以系统不会轻易销毁它,因此对于处于可见进程的应用程序,往往称所述应用程序处于悬浮运行状态;后台进程就是用户暂时没有和这个进程交互的愿望,但是有可能稍后会与该进程进行交互,因此对于处于前端进程的应用程序,往往称所述应用程序处于前台运行状态。也就是说,当处于前台运行状态时,应用程序显示在当前页面,能够提供用户进行交互的页面,而且同一时间仅有一个应用处于前台运行状态;当处于后台运行状态时,应用虽然是运行状态,但并没有显示在当前页面,所以不能直接与用户进行交互;当处于悬浮运行状态时,应用也是显示在当前页面,能够提供用户进行交互,但是仅仅占用手机当前页面的悬浮层。在本实施例中,第二应用程序被设置以悬浮运行状态的模式。所述第二应用程序可以根据接收到的用户输入的个性化设置信息进行基本信息设置,基本信息包括显示图标和名称,其中,图标可以设置为不同的宠物形象样式,例如:猫,狗,狐狸,熊猫等;名称可以设置为宠物称呼,例如:小智,小黄,小白等。所述第二应用程序还设置为具有语音识别功能,并在悬浮运行状态下被点击或被唤醒后,则可以接收语音信息。在本实施例中,例如,所述第二应用程序被设置为小猫样式图标,名字叫小智,然后小猫图标被触控后,例如小猫图标被触控一次或者两次,就可以接收语音信息。步骤s502,获取处于前台运行状态的第一应用程序的名称及功能信息,以及获取处于悬浮运行状态的所述第二应用程序所接收到的语音信息。具体地,当所述第二应用程序启动后,所述终端设备会实时地获取当前处于前台运行状态的应用程序的信息。由于每个应用程序都是一个实现特定功能的软件程序,因此,每个应用程序对应地存在一个api(applicationprogramminginterface,应用编程接口),用于提供给其他应用程序或者开发人员对该应用程序进行访问或者控制。而应用程序下的各个功能属于该应用对应的软件程序下的子程序,因此,每个功能也对应有一个子api,用于提供给其他应用或者开发人员对该应用的该功能进行访问或者控制。当应用程序安装到终端设备时,终端设备会获取并记录该应用程序的名称和api,以及该应用程序的功能名称和子api。通过这种方式,终端设备将所有安装的应用程序的名称、对应该应用程序名称的api;以及该应用程序的功能名称、对应该功能名称的子api的信息作为注册表信息存储起来,然后将每个应用程序以预设样式显示到手机操作系统的显示界面的某一位置。当应用程序启动时,需要向终端设备请求运行环境,例如运行内存等资源。因此,终端设备可以获取程序的名称及功能信息,并与注册表所存储的应用程序的名称和功能信息进行匹配,当匹配成功后,则会分配运行内存等资源给所述应用程序,并实时监控该应用程序的运行状态。在本实施例中,所述终端设备周期性地获取到当前处于前台运行状态的应用程序的信息,例如,周期可以是1秒。同时,所述终端设备还会实时获取处于悬浮运行状态的第二应用程序所接收到的语音信息。例如:当所述第二应用程序的小猫图标被触控后进行语音信息的接收,例如接收到“小智”的语音后并识别出来之后,就会通过所述第二应用程序进行语音播报如:主人,有什么吩咐的吗?接着,继续接收其他的语音信息。步骤s504,根据预设的命令库对所述语音信息进行识别,确认所述语音信息对应的控制命令。具体地,所述终端设备在获取到处于前台运行状态的第一应用程序的名称及功能信息以及用户通过所述第二应用程序输入的语音信息后,还会根据预设的命令库对所述语音信息进行识别以确认所述语音信息对应的控制命令。在本实施例中,首先对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息;然后再将所述文字信息与所述第一应用程序的接口信息进行匹配,从而确定所述语音信息中的控制命令,其中,所述接口信息实际上是对应于每个应用程序的api的所有信息,包括功能名称及对应的控制命令库。例如,通过应用程序的api查找到该应用程序对应的名称,包括的功能名称;然后进一步获取到该应用程序对应的控制命令库,甚至是该应用程序下的每个功能对应的控制命令库。在本实施例中,所述控制命令库可以根据获取到的前台运行状态的应用程序的信息直接将该应用程序对应的控制命令库调取并作为预设的控制命令库使用。例如:手机上安装了a,b,c三个应用程序,当获取到当前处于前台运行状态的应用程序为a,那么,a对应的控制命令库则会被设置为当前的控制命令库。也就是说,所述控制命令库是动态的,是根据当前处于前台运行状态的应用程序所决定的。当然,在其他实施例中,所述控制命令库也可以是所有应用程序的命令库的集合;或者是用户针对某些常用的应用程序分别设置的对应所述常用的应用程序的常用功能的控制命令集。例如:手机上安装了a,b,c三个应用,则所述控制命令库包括对应于a的控制命令库a、应于b的控制命令库b和应于c的控制命令库c;而用户常用的只有a下面的功能d和m,和b下面的功能e和n,c下面的功能f和g;而常用功能d,e,f分别对应了子控制命令库d,e,f;则所述控制命令库可以设置为包括d,e,f子命令库。在该步骤中,首先所述终端设备对所述语音信息进行语义识别,从而得到所述语音信息对应的文字信息的过程,主要是根据根据语法规则将所述文字信息划分为至少包括一个关键字的关键字组,然后再将所述关键字组与所述控制命令库中的每条控制命令进行相似度评价,选择相似度最高的控制命令确定为所述文字信息对应的控制命令。在本实施例中,所述语法规则是结合词典数据库以及用户日常使用的字、词、短语习惯所产生的数据库而所统计出的常用的字、词、短语格式。而将识别的文字信息确认为对应的控制命令的过程,主要包括:将文字信息划分为至少包括一个关键字的关键字组。然后,根据预设的相似度判断规则将关键字组中的关键字分别与所述控制命令库中的每一条命令进行比对。接着,根据所述关键字组中的关键字与所述控制命令的关键字的相同或者相似部分占所述控制命令的比例来确定(或者计算)所述关键字组与所述控制命令的相似度。最后,再根据相似度高低进行排序,从而选择相似度最高的控制命令作为所述文字信息对应的控制命令。其中,相似度的评价,主要是根据所述关键字组与所述控制命令中存在的词义相同或者相近的关键字数量占所述控制命令的关键字总数量的比例来确定相似度。例如,控制命令中的关键字“打开”,如果预先设置有关联关系的关键字有:“开启”、“点开”、“点击”、“进入”,则当文字信息中出现其中一个关键字,比如“点开”时,则会判断为控制命令中的“打开”。以此方式,可以将所述文字信息中的关键字组识别为对应的多个控制命令中的关键字,然后再进行相似度高低比较,例如:文字信息“点开好友页面”,根据关键字的判断过程,该文字信息包括“点开”、“好友”、“页面”,分别对应控制命令中的“打开”、“好友”、“界面”三个关键字。而包括该三个关键字的控制命令实际在控制命令库中查找出两条:“打开好友界面”和“打开好友添加界面”。因此,所述终端设备进一步地还会根据相似度高低进行排序,例如,所述文字信息包括的三个关键字,与控制命令“打开好友界面”所包括的关键字一样,因此相似度100%;而控制命令“打开好友添加界面”除了包括“打开”、“好友”、“界面”三个关键字之后,还有关键字“添加”,因此相似度为3/4=75%。因此,所述终端设备根据相似度的高低排序,将所述文字信息“点开好友页面”确认为“打开好友界面”。步骤s506,将所述控制命令发送至所述第一应用程序进行执行。具体地,所述终端设备将所述文字信息识别并转化为控制命令后,进一步将所述控制命令发送到处于前台运行状态的第一应用程序执行。在本实施例中,所述终端设备获取到的所述处于前台运行状态的手机应用的api信息,然后将识别出来的所述控制命令通过所述api发送到所述前台运行状态的第一应用程序进行执行。例如:所述处于前台运行状态的应用程序为微信,所述文字信息“点开好友页面”被确认为控制命令为“打开好友界面”,因此将控制命令“打开好友界面”通过微信的api控制微信执行“打开好友界面”,即进入好友界面。步骤s508,接收所述第一应用程序反馈的对应于所述控制命令的执行结果并进行提醒。在本实施例中,所述终端设备将所述第一应用程序对所述控制命令的执行结果通过所述第二应用程序进行语音提示。例如,将控制命令“打开好友界面”通过微信的api控制微信执行“打开好友界面”,然后微信成功“打开好友界面”了,则宠物小智则会语音播报如:主人,已进入好友界面。本实施例所提出的基于语音识别的应用程序控制方法,能够通过处于悬浮运行状态的第二应用程序接收用户的语音信息,并识别出对应的控制命令,然后将所述控制命令发送至处于前台运行状态的第一应用程序执行相对应的功能,从而实现在不熟悉应用程序的功能菜单树的情况下也能够方便快捷地对所述应用程序的功能进行控制。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,终端设备,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1