一种语音搜索方法、装置及终端的利记博彩app
【专利摘要】本发明实施例公开了一种语音搜索方法,该方法包括:终端获取用户的录音数据;所述终端对所述录音数据进行本地识别,得到本地识别结果;所述终端根据预先设置的语法及相似度阈值对所述本地识别结果进行有效性判断;若所述终端确定所述本地识别结果有效,则所述终端确定所述本地识别结果为语音搜索结果;若所述终端确定所述本地识别结果无效,则所述终端将所述录音数据发送至云端服务器,接收所述云端服务器发送的对所述录音数据进行云端识别得到的云端识别结果,并确定所述云端识别结果为所述语音搜索结果。同时,本发明实施例还公开了一种装置及终端。
【专利说明】
一种语音搜索方法、装置及终端
技术领域
[0001]本发明涉及信息搜索领域,尤其涉及一种语音搜索方法、装置及终端。
【背景技术】
[0002]随着智能终端的硬件性能的提升以及操作系统功能的日益强大,智能终端包含的信息量也越来越大,使得用户从大量的信息中搜索自己想要的信息非常困难。目前,智能终端采用的比较便捷的搜索方式是语音搜索,即对用户输入的语音信息进行语音识别,并根据语音识别的结果从智能终端存储的大量信息中获得用户想要的信息。但是,现有技术中的语音搜索方法的搜索范围受到智能终端本地存储数据的限制。
【发明内容】
[0003]为解决上述技术问题,本发明实施例期望提供一种语音搜索方法、装置及终端,扩大终端的语音搜索范围。
[0004]本发明的技术方案是这样实现的:
[0005]第一方面,本发明实施例提供一种语音搜索方法,包括:终端获取用户的录音数据;所述终端对所述录音数据进行本地识别,得到本地识别结果;所述终端根据预先设置的语法及相似度阈值对所述本地识别结果进行有效性判断;若所述终端确定所述本地识别结果有效,则所述终端确定所述本地识别结果为语音搜索结果;若所述终端确定所述本地识别结果无效,则所述终端将所述录音数据发送至云端服务器,接收所述云端服务器发送的对所述录音数据进行云端识别得到的云端识别结果,并确定所述云端识别结果为所述语音搜索结果。
[0006]进一步地,所述终端根据预先设置的语法及相似度阈值对所述本地识别结果进行有效性判断具体包括:若所述本地识别结果在所述语法范围内且所述本地识别结果的相似度高于或等于所述相似度阈值,则确定所述本地识别结果有效;若存在以下三种情况中的至少一种:所述本地识别结果为空、所述本地识别结果不在所述语法范围内、所述本地识别结果的相似度低于所述相似度阈值,则确定所述本地识别结果无效。
[0007]进一步地,在所述终端确定所述本地识别结果为语音搜索结果之后还包括:所述终端根据本地数据库中的数据,执行与所述语音搜索结果对应的操作。
[0008]进一步地,在所述终端确定所述云端识别结果为所述语音搜索结果之后还包括:所述终端向所述云端服务器请求与所述语音搜索结果对应的数据,接收所述云端服务器发送的所述数据,并执行与所述语音搜索结果对应的操作。
[0009]第二方面,本发明实施例提供一种语音搜索装置,包括:获取单元、本地识别单元、判断单元、云端识别单元及确定单元,其中:所述获取单元,用于获取用户的录音数据;所述本地识别单元,用于对所述获取单元获取的所述录音数据进行本地识别,得到本地识别结果;所述判断单元,用于根据预先设置的语法及相似度阈值对所述本地识别单元得到的所述本地识别结果进行有效性判断;所述云端识别单元,用于在所述判断单元确定所述本地识别结果无效时,将所述录音数据发送至云端服务器,接收所述云端服务器发送的对所述录音数据进行云端识别得到的云端识别结果;所述确定单元,用于在所述判断单元确定所述本地识别结果有效时,确定所述本地识别结果为语音搜索结果;在所述判断单元确定所述本地识别结果无效时,确定所述云端识别单元得到的所述云端识别结果为所述语音搜索结果。
[0010]进一步地,所述判断单元具体用于:若所述本地识别单元得到的所述本地识别结果在所述语法范围内且所述本地识别结果的相似度高于或等于所述相似度阈值,则确定所述本地识别结果有效;若存在以下三种情况中的至少一种:所述本地识别结果为空、所述本地识别结果不在所述语法范围内、所述本地识别结果的相似度低于所述相似度阈值,则确定所述本地识别结果无效。
[0011]进一步地,所述装置还包括:第一执行单元,用于在所述确定单元确定所述本地识别结果为语音搜索结果之后,根据本地数据库中的数据,执行与所述语音搜索结果对应的操作。
[0012]进一步地,所述装置还包括:第二执行单元,用于在所述确定单元确定所述云端识别结果为所述语音搜索结果之后,向所述云端服务器请求与所述语音搜索结果对应的数据,接收所述云端服务器发送的所述数据,并执行与所述语音搜索结果对应的操作。
[0013]第三方面,本发明实施例提供一种终端,包括第二方面所述的语音搜索装置。
[0014]本发明实施例提供了一种语音搜索方法、装置及终端,通过终端获取用户的录音数据,对录音数据进行本地识别并得到本地识别结果,再对本地识别结果进行有效性判断,若终端得到的本地识别结果是无效的,则将录音数据发送至云端服务器,接收云端服务器发送的对该录音数据进行云端识别得到的云端识别结果,并确定云端识别结果为语音搜索结果,如此,将本地识别和云端识别相结合,扩大了终端的语音搜索的搜索范围。
【附图说明】
[0015]图1为本发明实施例提供的一种语音搜索方法的流程示意图;
[0016]图2为本发明实施例提供的另一种语音搜索方法的流程示意图;
[0017]图3为本发明实施例提供的一种以语音搜索并播放音乐为例的语音搜索方法的流程示意图;
[0018]图4为本发明实施例提供的一种语音搜索装置的结构示意图;
[0019]图5为本发明实施例提供的另一种语音搜索装置的结构示意图。
【具体实施方式】
[0020]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0021]图1示出了本发明实施例提供的一种语音搜索方法,参考图1,该方法包括:
[0022]SlOl:终端获取用户的录音数据;
[0023]需要说明的是,终端可以通过多种方式获取用户的录音数据,例如通过开启终端的录音功能,录入用户的语音,得到录音数据。
[0024]S102:终端对录音数据进行本地识别,得到本地识别结果;
[0025]需要补充的是,终端对录音数据进行本地识别可以采用多种语音识别方法,举例来说,终端可以采用模式匹配法对录音数据进行本地识别,具体来说终端预先存储本地数据库中数据所对应的语音信息,对语音信息进行特征提取,获得特征信息,将特征信息作为模板存入模板库,在需要对录音数据进行本地识别时,将录音数据的特征信息依次与模板库中的每个模板进行相似度比较,将相似度最高者作为本地识别结果。
[0026]在本发明实施例中,终端对录音数据进行本地识别可能获得多个本地识别结果,从而需要对每个本地识别结果均进行有效性判断,以获得更加准确的本地识别结果。
[0027]S103:终端根据预先设置的语法及相似度阈值对本地识别结果进行有效性判断;
[0028]其中,语法,是终端根据自身支持的常用操作、使用场景及用户语言习惯等来定义的,例如,终端根据自身对音乐播放器的“播放”操作,设置“播放王菲的歌”、“播放红豆”等形式的语法,或是根据用户的用语习惯,设置“我想听红豆”等形式的语法。
[0029]相似度阈值,是终端预先设定的录音数据的特征参数与语法文件中的数据的相似度门限值,其中,语法文件是由终端的本地数据库中的数据生成的,包括各类数据的详细信息,例如包括分别与音乐数据中的歌曲名称、专辑名称、艺术家名称相对应的歌曲名称语法子文件、专辑名称语法子文件、艺术家名称语法子文件。
[0030]示例性地,终端根据预先设置的语法及相似度阈值对本地识别结果进行有效性判断具体包括:
[0031]若本地识别结果在语法范围内且本地识别结果的相似度高于或等于相似度阈值,则确定该本地识别结果有效;若存在以下三种情况中的至少一种:本地识别结果为空、本地识别结果不在语法范围内、本地识别结果的相似度低于相似度阈值,则确定该本地识别结果无效。
[0032]举例来说,若录音数据中,用户录入的语音含糊不清,则本地识别结果可能为空,从而确定该本地识别结果无效;若本地识别结果不为空,但用户录入的语音不合语法,例如,用户录入的语音为“找到歌曲红豆”,而语法中并没有设置这样的语句,则本地识别结果不在语法范围内,从而确定该本地识别结果无效;若用户录入符合语法的语音,例如,“播放红豆”,但终端并没有存储红豆这首歌曲,则本地识别结果的相似度低于预先设置的相似度阈值,从而确定该本地识别结果无效。
[0033]若终端确定本地识别结果有效,则执行步骤S104:终端确定本地识别结果为语音搜索结果。
[0034]若终端确定本地识别结果无效,则执行步骤S105:终端将录音数据发送至云端服务器,接收云端服务器发送的对该录音数据进行云端识别得到的云端识别结果,并确定云端识别结果为语音搜索结果。
[0035]需要说明的是,本地识别是终端根据本地存储的数据信息对录音数据进行识别,其识别速度快,但是识别范围仅限终端存储的数据;而云端服务器对录音数据进行云端识另IJ,利用互联网上丰富的资源,如大量的语言识别模型和声学识别模型,可以对录音数据进行更大范围的语音识别,识别准确度更高。
[0036]可以理解地,若终端经过本地识别,获得有效的本地识别结果,说明终端上存储有用户想要搜索的相关信息,那么可以直接确定本地识别结果为语音搜索结果;若终端经过本地识别,获得无效的本地识别结果,说明终端上没有存储用户想要搜索的相关信息,因此需要将录音数据发送至云端服务器,以获得更大范围的云端识别结果,由此可以看出,本发明实施例通过将终端进行的本地识别和云端服务器进行的云端识别相结合,扩展了终端现有的语音搜索的搜索范围。
[0037]示例性地,参考图2,在步骤S104之后,还包括:
[0038]S106:终端根据本地数据库中的数据,执行与语音搜索结果对应的操作。
[0039]示例性地,继续参考图2,在步骤S105之后,还包括:
[0040]S107:终端向云端服务器请求与语音搜索结果对应的数据,接收云端服务器发送的上述数据,并执行与语音搜索结果对应的操作。
[0041]例如,在步骤S106和步骤S107中,若语音搜索结果是一首音乐名称,那么执行与语音搜索结果对应的操作包括播放该音乐、删除该音乐、编辑该音乐名称等。
[0042]图3示出了本发明实施例提供的以语音搜索并播放音乐为例的语音搜索方法,参考图3,该方法包括:
[0043]S301:终端设置相似度阈值和语法;
[0044]其中,语法可以包括谓语“播放” +宾语“歌曲名称”,谓语“想听” +宾语“歌曲名称”等。
[0045]S302:终端获取用户的录音数据“播放海阔天空”;
[0046]S303:终端对该录音数据进行本地识别,得到本地识别结果;
[0047]S304:终端根据预先设置的语法及相似度阈值对本地识别结果进行有效性判断;
[0048]S305:终端确定本地识别结果无效;
[0049]S306:终端将录音数据“播放海阔天空”发送至云端服务器;
[0050]S307:云端服务器对录音数据“播放海阔天空”进行云端识别,得到的云端识别结果为“播放海阔天空”,并发送给终端;
[0051]S308:终端接收该云端识别结果“播放海阔天空”,并确定“播放海阔天空”为语音搜索结果;
[0052]S309:终端根据语音搜索结果,向云端服务器请求“海阔天空”的音乐文件,接收云端服务器发送的“海阔天空”的音乐文件,并播放“海阔天空”。
[0053]本发明实施例提供的一种语音搜索方法,通过终端获取用户的录音数据,对录音数据进行本地识别并得到本地识别结果,再对本地识别结果进行有效性判断,若终端得到的本地识别结果是无效的,则将录音数据发送至云端服务器,接收云端服务器发送的对该录音数据进行云端识别得到的云端识别结果,并确定云端识别结果为语音搜索结果,如此,将本地识别和云端识别相结合,扩大了终端的语音搜索的搜索范围。
[0054]图4示出了本发明实施例提供的一种语音搜索装置的结构示意图,参考图4,该语音搜索装置40包括:获取单元401、本地识别单元402、判断单元403、云端识别单元404及确定单元405,其中:
[0055]获取单元401,用于获取用户的录音数据;
[0056]本地识别单元402,用于对获取单元401获取的录音数据进行本地识别,得到本地识别结果;
[0057]判断单元403,用于根据预先设置的语法及相似度阈值对本地识别单元402得到的本地识别结果进行有效性判断;
[0058]云端识别单元404,用于在判断单元403确定本地识别结果无效时,将录音数据发送至云端服务器,接收云端服务器发送的对录音数据进行云端识别得到的云端识别结果;
[0059]确定单元405,用于在判断单元403确定本地识别结果有效时,确定本地识别结果为语音搜索结果;在判断单元403确定本地识别结果无效时,确定云端识别单元404得到的云端识别结果为语音搜索结果。
[0060]示例性地,判断单元403具体用于:
[0061]若本地识别单元402得到的本地识别结果在语法范围内且本地识别结果的相似度高于或等于相似度阈值,则确定本地识别结果有效;若存在以下三种情况中的至少一种:本地识别结果为空、本地识别结果不在语法范围内、本地识别结果的相似度低于相似度阈值,则确定本地识别结果无效。
[0062]示例性地,参考图5,该装置还包括:
[0063]第一执行单元406,用于在确定单元405确定本地识别结果为语音搜索结果之后,根据本地数据库中的数据,执行与语音搜索结果对应的操作。
[0064]第二执行单元407,用于在确定单元405确定云端识别结果为语音搜索结果之后,向云端服务器请求与语音搜索结果对应的数据,接收云端服务器发送的数据,并执行与语音搜索结果对应的操作。
[0065]本发明实施例还提供了的一种终端,该终端包括上述任一实施例中所述的语音搜索装置。
[0066]需要说明的是,终端可以包括智能手机、平板电脑等可以进行语音识别的智能设备,本发明实施例对此不做具体限制。
[0067]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0068]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0069]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0070]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0071] 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【主权项】
1.一种语音搜索方法,其特征在于,包括: 终端获取用户的录音数据; 所述终端对所述录音数据进行本地识别,得到本地识别结果; 所述终端根据预先设置的语法及相似度阈值对所述本地识别结果进行有效性判断; 若所述终端确定所述本地识别结果有效,则所述终端确定所述本地识别结果为语音搜索结果;若所述终端确定所述本地识别结果无效,则所述终端将所述录音数据发送至云端服务器,接收所述云端服务器发送的对所述录音数据进行云端识别得到的云端识别结果,并确定所述云端识别结果为所述语音搜索结果。2.根据权利要求1所述的方法,其特征在于,所述终端根据预先设置的语法及相似度阈值对所述本地识别结果进行有效性判断具体包括: 若所述本地识别结果在所述语法范围内且所述本地识别结果的相似度高于或等于所述相似度阈值,则确定所述本地识别结果有效;若存在以下三种情况中的至少一种:所述本地识别结果为空、所述本地识别结果不在所述语法范围内、所述本地识别结果的相似度低于所述相似度阈值,则确定所述本地识别结果无效。3.根据权利要求1所述的方法,其特征在于,在所述终端确定所述本地识别结果为语音搜索结果之后还包括: 所述终端根据本地数据库中的数据,执行与所述语音搜索结果对应的操作。4.根据权利要求1所述的方法,其特征在于,在所述终端确定所述云端识别结果为所述语音搜索结果之后还包括: 所述终端向所述云端服务器请求与所述语音搜索结果对应的数据,接收所述云端服务器发送的所述数据,并执行与所述语音搜索结果对应的操作。5.—种语音搜索装置,其特征在于,包括:获取单元、本地识别单元、判断单元、云端识别单元及确定单元,其中: 所述获取单元,用于获取用户的录音数据; 所述本地识别单元,用于对所述获取单元获取的所述录音数据进行本地识别,得到本地识别结果; 所述判断单元,用于根据预先设置的语法及相似度阈值对所述本地识别单元得到的所述本地识别结果进行有效性判断; 所述云端识别单元,用于在所述判断单元确定所述本地识别结果无效时,将所述录音数据发送至云端服务器,接收所述云端服务器发送的对所述录音数据进行云端识别得到的云端识别结果; 所述确定单元,用于在所述判断单元确定所述本地识别结果有效时,确定所述本地识别结果为语音搜索结果;在所述判断单元确定所述本地识别结果无效时,确定所述云端识别单元得到的所述云端识别结果为所述语音搜索结果。6.根据权利要求5所述的装置,其特征在于,所述判断单元具体用于: 若所述本地识别单元得到的所述本地识别结果在所述语法范围内且所述本地识别结果的相似度高于或等于所述相似度阈值,则确定所述本地识别结果有效;若存在以下三种情况中的至少一种:所述本地识别结果为空、所述本地识别结果不在所述语法范围内、所述本地识别结果的相似度低于所述相似度阈值,则确定所述本地识别结果无效。7.根据权利要求5所述的装置,其特征在于,还包括:第一执行单元,用于在所述确定单元确定所述本地识别结果为语音搜索结果之后,根据本地数据库中的数据,执行与所述语音搜索结果对应的操作。8.根据权利要求5所述的装置,其特征在于,还包括:第二执行单元,用于在所述确定单元确定所述云端识别结果为所述语音搜索结果之后,向所述云端服务器请求与所述语音搜索结果对应的数据,接收所述云端服务器发送的所述数据,并执行与所述语音搜索结果对应的操作。9.一种终端,其特征在于,包括权利要求5至8所述的语音搜索装置。
【文档编号】G06F17/30GK105824857SQ201510012659
【公开日】2016年8月3日
【申请日】2015年1月8日
【发明人】李向阳
【申请人】中兴通讯股份有限公司