语音唤醒方法、装置、电子设备及存储介质转让专利

申请号 : CN201910846703.9

文献号 : CN110570857B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈孝良焦伟冯大航

申请人 : 北京声智科技有限公司

摘要 :

一种语音唤醒,应用于语音交互技术领域,包括:构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图,当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对待解码的语音信号进行解码,得到待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分,利用第一得分与第二得分,判断是否进入唤醒状态。本申请还公开了一种语音唤醒装置、电子设备及存储介质。可提高语音唤醒识别效果,有效避免仅使用基本解码图进行语音识别导致的唤醒准确率低的技术问题,同时,采用唤醒词解码图可支持多个唤醒词唤醒。

权利要求 :

1.一种语音唤醒方法,其特征在于,包括:

构建WFST解码图,所述WFST解码图包括唤醒词解码图和基本解码图;

当接收到待解码的语音信号后,分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分;

利用所述第一得分与所述第二得分,判断是否进入唤醒状态;

其中,所述唤醒词解码图中每一条路径均表示一个唤醒词的解码路径,所述唤醒词解码图中的唤醒词包括服务器中预置的唤醒词和/或用户自定义的唤醒词;

所述基本解码图中的每一条路径均表示一个发音的解码路径,所述基本解码图包括每个中文汉字发音的解码路径和/或英文单词的解码路径。

2.根据权利要求1所述的语音唤醒方法,其特征在于,所述分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分包括:从所述待解码的语音信号中获取当前语音帧;

提取所述当前语音帧的声学特征;

将所述声学特征输入至预先构建的声学模型,得到所述当前语音帧内各声学单元的后验概率;

遍历所述唤醒词解码图和所述基本解码图中所有活跃节点的出边;

获取所述出边的输入标签对应的声学单元对应的后验概率,将所述后验概率表示为所述出边的分数;

将所述出边的分数和所述出边对应的源节点上的分数进行累计,得到累计分数,将所述累计分数作为所述出边的到达节点的分数;

判断所述待解码的语音信号是否已到达最后语音帧;

若否,则将所述待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和所述当前的活跃节点的出边的到达节点作为所述当前语音帧的活跃节点,执行所述提取所述当前语音帧的声学特征的步骤;

若是,则将所述唤醒词解码图的终止节点上的累计分数作为所述第一得分,以及,将所述基本解码图的终止节点上的累计分数作为所述第二得分。

3.根据权利要求2所述的语音唤醒方法,其特征在于,所述将所述累计分数作为所述出边的到达节点的分数时,若所述到达节点上存在已有分数,则比较所述累计分数与所述已有分数的大小,将数值大的分数作为所述出边的到达节点的分数。

4.根据权利要求2或3所述的语音唤醒方法,其特征在于,所述唤醒词解码图和所述基本解码图具有同一起始节点;

当所述当前语音帧为所述待解码的语音信号的首个语音帧时,将所述起始节点设置为活跃节点。

5.根据权利要求1所述的语音唤醒方法,其特征在于,所述利用所述第一得分与所述第二得分,判断是否进入唤醒状态包括:计算所述第一得分和所述第二得分之间的差值;

判断所述差值是否小于预设阈值;

若所述差值小于所述预设阈值,则进入唤醒状态。

6.根据权利要求1所述的语音唤醒方法,其特征在于,所述构建WFST解码图包括:获取用户上传的唤醒词;

在所述唤醒词解码图中设置所述唤醒词的解码路径。

7.一种语音唤醒装置,其特征在于,包括:

构建模块,用于构建WFST解码图,所述WFST解码图包括唤醒词解码图和基本解码图;

解码模块,用于当接收到待解码的语音信号后,分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分;

判断模块,用于利用所述第一得分与所述第二得分,判断是否进入唤醒状态;

其中,所述唤醒词解码图中每一条路径均表示一个唤醒词的解码路径,所述唤醒词解码图中的唤醒词包括服务器中预置的唤醒词和/或用户自定义的唤醒词;

所述基本解码图中的每一条路径均表示一个发音的解码路径,所述基本解码图包括每个中文汉字发音的解码路径和/或英文单词的解码路径。

8.根据权利要求7所述的语音唤醒装置,其特征在于,所述解码模块包括:第一获取子模块,用于从所述待解码的语音信号中获取当前语音帧;

提取子模块,用于提取所述当前语音帧的声学特征;

输入子模块,用于将所述声学特征输入至预先构建的声学模型,得到所述当前语音帧内各声学单元的后验概率;

遍历子模块,用于遍历所述唤醒词解码图和所述基本解码图中所有活跃节点的出边;

第二获取子模块,用于获取所述出边的输入标签对应的声学单元对应的后验概率,将所述后验概率表示为所述出边的分数;

累计子模块,用于将所述出边的分数和所述出边对应的源节点上的分数进行累计,得到累计分数,将所述累计分数作为所述出边的到达节点的分数;

判断子模块,用于判断所述待解码的语音信号是否已到达最后语音帧;

第一执行子模块,用于若否,则将所述待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和所述当前的活跃节点的出边的到达节点作为所述当前语音帧的活跃节点,执行所述提取所述当前语音帧的声学特征的步骤;

第二执行子模块,用于若是,则将所述唤醒词解码图的终止节点上的累计分数作为所述第一得分,以及,将所述基本解码图的终止节点上的累计分数作为所述第二得分。

9.一种电子设备,包括:存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现权利要求1至6中的任一项所述的语音唤醒方法中的各个步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至6中的任一项所述的语音唤醒方法中的各个步骤。

说明书 :

语音唤醒方法、装置、电子设备及存储介质

技术领域

[0001] 本申请涉及语音交互技术领域,尤其涉及一种语音唤醒方法、装置、电子设备及存储介质。

背景技术

[0002] 随着智能交互技术的快速发展和市场需求的不断扩展,语音唤醒技术在近年来取得长足发展,至今已经在多个领域中得到广泛的应用。语音唤醒技术,是对输入的语音信号进行检测,确定语音信号中是否包含唤醒词。利用语音唤醒技术可以实现众多应用场景中的智能语音交互,例如智能音箱,车载、智能家居控制等。
[0003] 现有技术中,实现语音唤醒的方法通常是使用深度神经网络训练一个二分类的神经网络,将待识别的语音信号输入该二分类的神经网络,由该二分类的神经网络返回判断结果,即这段音频是否包括唤醒词,根据判断结果确定是否进行唤醒。采用这种方案,首先二分类的神经网络训练时间长,且二分类的神经网络建模粒度很大,识别效果难以保证,同时一个神经网络只支持一个唤醒词,如果换一个唤醒词的话还需要重新开始训练一个新的二分类的神经网络。

发明内容

[0004] 本申请的主要目的在于提供一种语音唤醒方法、装置、电子设备及存储介质,旨在解决现有技术中语音唤醒识别效果不佳,无法同时支持多个唤醒词的技术问题。
[0005] 为实现上述目的,本申请实施例第一方面提供一种语音唤醒方法,包括:
[0006] 构建WFST解码图,所述WFST解码图包括唤醒词解码图和基本解码图;
[0007] 当接收到待解码的语音信号后,分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分;
[0008] 利用所述第一得分与所述第二得分,判断是否进入唤醒状态。
[0009] 进一步地,所述分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分包括:
[0010] 从所述待解码的语音信号中获取当前语音帧;
[0011] 提取所述当前语音帧的声学特征;
[0012] 将所述声学特征输入至预先构建的声学模型,得到所述当前语音帧内各声学单元的后验概率;
[0013] 遍历所述唤醒词解码图和所述基本解码图中所有活跃节点的出边;
[0014] 获取所述出边的输入标签对应的声学单元对应的后验概率,将所述后验概率表示为所述出边的分数;
[0015] 将所述出边的分数和所述出边对应的源节点上的分数进行累计,得到累计分数,将所述累计分数作为所述出边的到达节点的分数;
[0016] 判断所述待解码的语音信号是否已到达最后语音帧;
[0017] 若否,则将所述待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和所述当前的活跃节点的出边的到达节点作为所述当前语音帧的活跃节点,执行所述提取所述当前语音帧的声学特征的步骤;
[0018] 若是,则将所述唤醒词解码图的终止节点上的累计分数作为所述第一得分,以及,将所述基本解码图的终止节点上的累计分数作为所述第二得分。
[0019] 进一步地,所述将所述累计分数作为所述出边的到达节点的分数时,若所述到达节点上存在已有分数,则比较所述累计分数与所述已有分数的大小,将数值大的分数作为所述出边的到达节点的分数。
[0020] 进一步地,所述唤醒词解码图和所述基本解码图具有同一起始节点;
[0021] 当所述当前语音帧为所述待解码语音信号的首个语音帧时,将所述起始节点设置为活跃节点。
[0022] 进一步地,所述利用所述第一得分与所述第二得分,判断是否进入唤醒状态包括:
[0023] 计算所述第一得分和所述第二得分之间的差值;
[0024] 判断所述差值是否小于预设阈值;
[0025] 若所述差值小于所述预设阈值,则进入唤醒状态。
[0026] 进一步地,所述构建WFST解码图包括:
[0027] 获取用户上传的唤醒词;
[0028] 在所述唤醒词解码图中设置所述唤醒词的解码路径。
[0029] 本申请实施例第二方面提供一种语音唤醒装置,包括:
[0030] 构建模块,用于构建WFST解码图,所述WFST解码图包括唤醒词解码图和基本解码图;
[0031] 解码模块,用于当接收到待解码的语音信号后,分别利用所述唤醒词解码图和所述基本解码图对所述待解码的语音信号进行解码,得到所述待解码的语音信号分别基于所述唤醒词解码图的第一得分和基于所述基本解码图的第二得分;
[0032] 判断模块,用于利用所述第一得分与所述第二得分,判断是否进入唤醒状态。
[0033] 进一步地,所述解码模块包括:
[0034] 第一获取子模块,用于从所述待解码的语音信号中获取当前语音帧;
[0035] 提取子模块,用于提取所述当前语音帧的声学特征;
[0036] 输入子模块,用于将所述声学特征输入至预先构建的声学模型,得到所述当前语音帧内各声学单元的后验概率;
[0037] 遍历子模块,用于遍历所述唤醒词解码图和所述基本解码图中所有活跃节点的出边;
[0038] 第二获取子模块,用于获取所述出边的输入标签对应的声学单元对应的后验概率,将所述后验概率表示为所述出边的分数;
[0039] 累计子模块,用于将所述出边的分数和所述出边对应的源节点上的分数进行累计,得到累计分数,将所述累计分数作为所述出边的到达节点的分数;
[0040] 判断子模块,用于判断所述待解码的语音信号是否已到达最后语音帧;
[0041] 第一执行子模块,用于若否,则将所述待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和所述当前的活跃节点的出边的到达节点作为所述当前语音帧的活跃节点,执行所述提取所述当前语音帧的声学特征的步骤;
[0042] 第二执行子模块,用于若是,则将所述唤醒词解码图的终止节点上的累计分数作为所述第一得分,以及,将所述基本解码图的终止节点上的累计分数作为所述第二得分。
[0043] 本申请实施例第三方面提供了一种电子设备,包括:
[0044] 存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本申请实施例第一方面提供的语音唤醒方法。
[0045] 本申请实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例第一方面提供的语音唤醒方法。
[0046] 从上述本申请实施例可知,本申请提供的语音唤醒方法、装置、电子设备及存储介质,通过构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图,当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对待解码的语音信号进行解码,得到待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分,利用第一得分与第二得分,判断是否进入唤醒状态,可提高语音唤醒识别效果,有效避免仅使用基本解码图进行语音识别导致的唤醒准确率低的技术问题,同时,采用唤醒词解码图可支持多个唤醒词唤醒。

附图说明

[0047] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0048] 图1为本中请一实施例提供的语音唤醒方法的流程示意图;
[0049] 图2为本申请一实施例提供的语音唤醒方法中解码过程的流程示意图;
[0050] 图3为本申请一实施例提供的WFST解码图的结构示意图;
[0051] 图4为本申请一实施例提供的语音唤醒装置的结构示意图;
[0052] 图5示出了一种电子设备的硬件结构示意图。

具体实施方式

[0053] 为使得本申请的申请目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0054] 语音唤醒技术的应用载体一般是语音识别系统,主体通常包含有服务器及终端,语音信号一般由终端输入后发送到服务器,由服务器对语音信号进行语音识别处理并返回相应的结果。例如,用户通过智能音箱讲一段话,智能音箱会将用户讲的这段语音发送到服务器进行语音识别,然后,接收服务器返回的语音识别结果,最终智能音箱根据该语音识别结果执行相应的控制操作,例如,唤醒该智能音箱。除此之外,上述的智能音箱还可以是各种智能设备,例如智能电视、平板甚至是其他各种智能家电、智能办公设备等。
[0055] 需要说明的是,本申请中的语音唤醒方法的各个步骤,可以部分步骤在终端上执行,其余部分步骤在服务器上执行,也可以在终端上执行各个步骤,例如离线的语音识别唤醒,因此下述通过服务器执行各个步骤是示例性的执行方式,而非全部的执行方式。
[0056] 请参阅图1,图1为本申请一实施例提供的语音唤醒方法的流程示意图,该方法主要包括以下步骤:
[0057] S101、构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图;
[0058] WFST解码图是指一种基于加权有限状态转换器(WFST,Weighted Finaite-State Transducer)的用于语音识别的解码网络。在本申请中,WFST解码图包括唤醒词解码图和基本解码图。
[0059] 唤醒词解码图中每一条路径均表示一个唤醒词的解码路径。唤醒词例如,小度、Siri等。其中,唤醒词解码图中的唤醒词包括服务器中预置的唤醒词和/或用户自定义的唤醒词。更多的,后期用户可以对已有的唤醒词(包括预置的唤醒词和用户自定义的唤醒词)进行删除或者再添加新的唤醒词。
[0060] 其中,添加唤醒词可以在构建唤醒词解码图时进行添加,也可以在唤醒词解码图构建完成后,动态的添加到构建好的唤醒词解码图中,且添加之后可立即支持该唤醒词。
[0061] 其中,用户添加自定义唤醒词的方法包括:用户上传自定义的唤醒词,服务器自动在唤醒词解码图中设置该唤醒词的解码路径,进而实现系统对该唤醒词的识别;或者,用户上传自定义的唤醒词,通过人工方式在唤醒词解码图中设置该唤醒词的解码路径。
[0062] 基本解码图中的每一条路径均表示一个发音的解码路径,发音例如,xiao、du等。服务器利用基本解码图对待解码的语音信号进行解码,在基本解码图中会选择出一条最佳路径。该最佳路径可以是基本解码图的所有路径中得分值最高的路径,也可以是路径搜索过程中满足预置规则的路径。预置规则例如,维特比算法。可理解的,基本解码图包括每个中文汉字发音的解码路径和/或英文单词的解码路径。
[0063] S102、当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对该待解码的语音信号进行解码,得到该待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分;
[0064] 接收到待解码的语音信号后,可通过消除噪声、信道失真等方法对语音信号进行增强,然后将语音信号从时域转化到频域,在频域中分别利用该唤醒词解码图和该基本解码图对该语音信号进行解码。
[0065] 然后,服务器采用两种解码图对同一语音信号进行解码,由于唤醒词解码图中每一条路径仅表示特定的唤醒词,因此,当该唤醒词解码图中包含有该语音信号中的包含唤醒词时,唤醒词解码图中对应该唤醒词的解码路径的得分才会与基本解码图中选择出的最佳路径的得分相近,也即该待解码的语音信号基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分相近。可理解的,该唤醒词解码图中不包含有该语音信号中的包含唤醒词时,唤醒词解码图中对应该唤醒词的解码路径的得分会远小于基本解码图中选择出的最佳路径的得分,也即该待解码的语音信号基于该唤醒词解码图的第一得分远小于基于该基本解码图的第二得分。
[0066] S103、利用该第一得分与该第二得分,判断是否进入唤醒状态。
[0067] 在本申请其中一个实施例中,步骤S103包括:计算该第一得分和该第二得分之间的差值;判断该差值是否小于预设阈值;若该差值小于该预设阈值,则进入唤醒状态。
[0068] 具体的,若该差值小于该预设阈值,也即该待解码的语音信号基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分相近,证明唤醒词解码图中极大可能存在表示该唤醒词的解码路径,也即该语音信号中包含该唤醒词,则控制对应终端进入唤醒状态。
[0069] 可理解的,若该差值不小于该预设阈值,则不进入唤醒状态。
[0070] 具体的,若该差值不小于该预设阈值,也即该待解码的语音信号基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分相差较大,证明唤醒词解码图中极小可能存在表示该唤醒词的解码路径,也即该语音信号中极小可能包含该唤醒词,则不控制对应终端进入唤醒状态。
[0071] 其中,该终端可以是与发送待解码语音信号给服务器的同一终端,也可以是语音信号所对应需要控制的其它终端,例如,智能电视、智能家居或者其他智能交互设备。
[0072] 在本申请实施例中,构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图,当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对该待解码的语音信号进行解码,得到该待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分,利用该第一得分与该第二得分,判断是否进入唤醒状态,可提高语音唤醒识别效果,有效避免仅使用基本解码图进行语音识别导致的唤醒准确率低的技术问题,同时,采用唤醒词解码图可支持多个唤醒词唤醒。
[0073] 参阅图2,在其中一个实施例中,对于步骤S102,具体包含如下步骤:
[0074] S1021、从该待解码的语音信号中获取当前语音帧;
[0075] 从接收到终端发送的待解码的语音信号开始,服务器可以按照时间顺序将待解码的语音信号划分为多个语音帧,每个帧内包括预设时间段内的语音信号数据,该预设时间段一般极短,例如,0.05秒或0.1秒等。在本申请中,在接收到待解码的语音信号的初始时刻时,该当前语音帧即为首个语音帧。
[0076] S1022、提取该当前语音帧的声学特征;
[0077] 在获取到当前语音帧后,服务器对该当前语音帧进行特征提取以得到该当前语音帧内的声学特征信息。声学特征提取的过程可以采用本领域常规技术手段来实现,本申请不对本步骤所采用的方法进行具体限定,例如可以采用线性预测倒谱系数法(LPCC,Linear PredictionCepstrum Coefficient)、美尔频率倒谱系数法(MFCC,Mel Frequency Cepstrum Coefficient)、感知线性预测参数法(PLP,Perceptual Linear Predict ive)和梅尔标度滤波法(FBANK,Melscale Filter Bank)中的任意一种。
[0078] S1023、将该声学特征输入至预先构建的声学模型,得到该当前语音帧内各声学单元的后验概率;
[0079] 声学模型是一种概率图模型,可以用来表示序列之间的相关关系,在语音识别领域中,采用声学模型对声学单元和声学特征之间的关系建模,表示某一声学特征矢量序列对某一状态序列的后验概率。
[0080] 其中,该声学模型可以是卷积神经网络、循环神经网络、深度神经网络、高斯混合模型和长短期记忆网络中的任意一种或多种。同时,声学模型的构建可以通过本领域的常规技术手段进行,本申请不对构建声学模型的方法进行具体限定。
[0081] 其中,在英语中一般采用音素作为声学单元,例如,/ei/、/au/,汉语中一般采用声韵母作为声学单元,例如,ai,ang,大词汇量连续一般采用子词作为声学单元,例如,音节、半音节。本申请不对声学单元的选取做出具体限制。实际应用中,可根据需要选择适合的声学单元。
[0082] S1024、遍历该唤醒词解码图和该基本解码图中所有活跃节点的出边;
[0083] 解码图由节点和边组成。其中,节点表示当前解码状态,例如,起始节点表示当前开始解码的状态。每条边表示每个声学单元的解码过程。
[0084] 活跃节点是指当前参与解码的节点。
[0085] 在本申请其中一个实施例中,如图3所示,唤醒词解码图和基本解码图具有相同的起始节点(如图3所示的节点1),不同的终止节点(如图3所示的基本解码图的终止节点为节点2,唤醒词解码图的终止节点为节点3)。当该当前语音帧为该待解码语音信号的首个语音帧时,将该起始节点设置为活跃节点。
[0086] S1025、获取该出边的输入标签表示的声学单元对应的后验概率,将后验概率表示为出边的分数;
[0087] 输入标签是指WTST解码图中出边的源节点和到达节点之间进行状态转移时该出边的输入。
[0088] S1026、将该出边的分数和该出边对应的源节点上的分数进行累计,得到累计分数,将该累计分数作为该出边的到达节点的分数;
[0089] 源节点是指出边的发起节点。在图3中,例如,在节点4和节点5之间的边中,节点4为源节点。其中,在本申请实施例中,出边是针对源节点来定义的,即源节点发出的边,称为出边。
[0090] 到达节点是指出边的目的节点。在图3中,例如,在节点4和节点5之间的边中,节点5为到达节点。
[0091] 可理解的,到达节点与源节点之间是相对的,即一条边的到达节点可以做为另一条边的源节点,一条边的源节点可以为另一条边的到达节点。在图3中,例如,在节点4和节点5之间的边中,节点5为到达节点,而在节点5和节点6之间的边中,节点5为源节点。
[0092] 在本申请其中一个实施例中,将该累计分数作为该出边的到达节点的分数时,若该到达节点上存在已有分数,则比较该累计分数与该已有分数的大小,将数值大的分数作为该出边的到达节点的分数。例如,若累计分数为0.6,到达节点上的已有分数为0.8,累计分数0.6小于已有分数0.8,则此时不是将累计分数0.6作为该到达节点的分数,而是将已有分数0.8作为该到达节点的分数。若累计分数为0.8,到达节点上的已有分数为0.6,累计分数0.8大于已有分数0.6,则还是将累计分数0.8作为该到达节点的分数。
[0093] S1027、判断该待解码的语音信号是否已到达最后语音帧;
[0094] 若否,则执行步骤S1028、将该待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和该当前的活跃节点的出边的到达节点作为该当前语音帧的活跃节点,然后返回执行步骤S1021、提取该当前语音帧的声学特征;
[0095] 在图3中,示例性的,当前的活跃节点为节点4、节点10、节点16,则当前的活跃节点的出边的到达节点为节点5、节点11、节点17,因此,下一帧的活跃节点为节点4、节点10、节点16,以及,节点5、节点11、节点17。
[0096] 若是,则执行步骤S1029、将该唤醒词解码图的终止节点上的累计分数作为该第一得分,以及,将该基本解码图的终止节点上的累计分数作为该第二得分。
[0097] 请参阅图4,图4是本申请一实施例提供的语音识别装置的结构示意图,该装置可内置于电子设备中,该装置主要包括:构建模块201、解码模块202、判断模块203。
[0098] 构建模块201,用于构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图;
[0099] 解码模块202,用于当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对该待解码的语音信号进行解码,得到该待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分;
[0100] 判断模块203,用于利用该第一得分与该第二得分,判断是否进入唤醒状态。
[0101] 在本申请实施例中,构建WFST解码图,该WFST解码图包括唤醒词解码图和基本解码图,当接收到待解码的语音信号后,分别利用该唤醒词解码图和该基本解码图对该待解码的语音信号进行解码,得到该待解码的语音信号分别基于该唤醒词解码图的第一得分和基于该基本解码图的第二得分,利用该第一得分与该第二得分,判断是否进入唤醒状态,可提高语音唤醒识别效果,有效避免仅使用基本解码图进行语音识别导致的唤醒准确率低的技术问题,同时采用唤醒词解码图,支持多个唤醒词唤醒。
[0102] 在本申请其中一个实施例中,解码模块202包括:第一获取子模块、提取子模块、输入子模块、遍历子模块、第二获取子模块、累计子模块、判断子模块、第一执行子模块和第二执行子模块。
[0103] 第一获取子模块,用于从该待解码的语音信号中获取当前语音帧;提取子模块,用于提取该当前语音帧的声学特征;输入子模块,用于将该声学特征输入至预先构建的声学模型,得到该当前语音帧内各声学单元的后验概率;遍历子模块,用于遍历该唤醒词解码图和该基本解码图中所有活跃节点的出边;第二获取子模块,用于获取该出边的输入标签对应的声学单元对应的后验概率;累计子模块,用于将该出边的分数和该出边对应的源节点上的分数进行累计,得到累计分数,将该累计分数作为该出边的到达节点的分数;判断子模块,用于判断该待解码的语音信号是否已到达最后语音帧;第一执行子模块,用于若否,则将该待解码的语音信号的下一帧作为当前语音帧,将当前的活跃节点和该当前的活跃节点的出边的到达节点作为该当前语音帧的活跃节点,执行该提取该当前语音帧的声学特征的步骤;第二执行子模块,用于若是,则将该唤醒词解码图的终止节点上的累计分数作为该第一得分,以及,将该基本解码图的终止节点上的累计分数作为该第二得分。
[0104] 在本申请其中一个实施例中,该将该累计分数作为该出边的到达节点的分数时,若该到达节点上存在已有分数,则比较该累计分数与该已有分数的大小,将数值大的分数作为该出边的到达节点的分数。
[0105] 在本申请其中一个实施例中,该唤醒词解码图和该基本解码图具有同一起始节点;
[0106] 当该当前语音帧为该待解码语音信号的首个语音帧时,将该起始节点设置为活跃节点。
[0107] 在本申请其中一个实施例中,判断模块203包括:计算子模块、判断子模块和唤醒子模块。
[0108] 计算子模块,用于计算该第一得分和该第二得分之间的差值;判断子模块,用于判断该差值是否小于预设阈值;唤醒子模块,用于若该差值小于该预设阈值,则进入唤醒状态。
[0109] 在本申请其中一个实施例中,构建模块201包括:获取子模块、设置子模块。
[0110] 获取子模块,用于获取用户上传的唤醒词;设置子模块,用于在该唤醒词解码图中设置该唤醒词的解码路径。
[0111] 上述语音唤醒装置中的各个模块可以全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0112] 在本申请其中一个实施例中,提供一种电子装置,该电子装置包括:存储器、处理器及存储在所存储器上并可在该处理器上运行的计算机程序,该处理器执行该计算机程序时,实现如前述图1至图3所示实施例中描述的语音唤醒方法。
[0113] 在本申请其中一个实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是设置于上述各实施例中的电子装置中,该计算机可读存储介质可以是上述各实施例中设置在主控芯片和数据采集芯片中的存储单元。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1至图3所示实施例中描述的语音唤醒方法。
[0114] 示例性的,电子装置可以为移动或便携式并执行无线通信的各种类型的计算机系统设备中的任何一种。具体的,电子装置可以为移动电话或智能电话(例如,基于iPhone TM,基于Android TM的电话),便携式游戏设备(例如Nintendo DS TM,PlayStation Portable TM,Gameboy Advance TM,iPhone TM)、膝上型电脑、PDA、便携式互联网设备、音乐播放器以及数据存储设备,其他手持设备以及诸如手表、耳机、吊坠、耳机等,电子装置还可以为其他的可穿戴设备(例如,诸如电子眼镜、电子衣服、电子手镯、电子项链、电子纹身、电子设备或智能手表的头戴式设备(HMD))。
[0115] 电子装置还可以是多个电子设备中的任何一个,多个电子设备包括但不限于蜂窝电话、智能电话、其他无线通信设备、个人数字助理、音频播放器、其他媒体播放器、音乐记录器、录像机、照相机、其他媒体记录器、收音机、医疗设备、车辆运输仪器、计算器、可编程遥控器、寻呼机、膝上型计算机、台式计算机、打印机、上网本电脑、个人数字助理(PDA)、便携式多媒体播放器(PMP)、运动图像专家组(MPEG-1或MPEG-2)音频层3(MP3)播放器,便携式医疗设备以及数码相机及其组合。
[0116] 在一些情况下,电子装置可以执行多种功能(例如,播放音乐,显示视频,存储图片以及接收和发送电话呼叫)。如果需要,电子装置可以是诸如蜂窝电话、媒体播放器、其他手持设备、腕表设备、吊坠设备、听筒设备或其他紧凑型便携式设备的便携式设备。
[0117] 如图5所示,电子设备10可以包括控制电路,该控制电路可以包括存储和处理电路30。该存储和处理电路30可以包括存储器,例如硬盘驱动存储器,非易失性存储器(例如闪存或用于形成固态驱动器的其它电子可编程限制删除的存储器等),易失性存储器(例如静态或动态随机存取存储器等)等,本申请实施例不作限制。存储和处理电路30中的处理电路可以用于控制电子设备10的运转。该处理电路可以基于一个或多个微处理器,微控制器,数字信号处理器,基带处理器,功率管理单元,音频编解码器芯片,专用集成电路,显示驱动器集成电路等来实现。
[0118] 存储和处理电路30可用于运行电子设备10中的软件,例如互联网浏览应用程序,互联网协议语音(Voice over Internet Protocol,VOIP)电话呼叫应用程序,电子邮件应用程序,媒体播放应用程序,操作系统功能等。这些软件可以用于执行一些控制操作,例如,基于照相机的图像采集,基于环境光传感器的环境光测量,基于接近传感器的接近传感器测量,基于诸如发光二极管的状态指示灯等状态指示器实现的信息显示功能,基于触摸传感器的触摸事件检测,与在多个(例如分层的)显示器上显示信息相关联的功能,与执行无线通信功能相关联的操作,与收集和产生音频信号相关联的操作,与收集和处理按钮按压事件数据相关联的控制操作,以及电子设备10中的其它功能等,本申请实施例不作限制。
[0119] 电子设备10还可以包括输入-输出电路42。输入-输出电路42可用于使电子设备10实现数据的输入和输出,即允许电子设备10从外部设备接收数据和也允许电子设备10将数据从电子设备10输出至外部设备。输入-输出电路42可以进一步包括传感器32。传感器32可以包括环境光传感器,基于光和电容的接近传感器,触摸传感器(例如,基于光触摸传感器和/或电容式触摸传感器,其中,触摸传感器可以是触控显示屏的一部分,也可以作为一个触摸传感器结构独立使用),加速度传感器,和其它传感器等。
[0120] 输入-输出电路42还可以包括一个或多个显示器,例如显示器14。显示器14可以包括液晶显示器,有机发光二极管显示器,电子墨水显示器,等离子显示器,使用其它显示技术的显示器中一种或者几种的组合。显示器14可以包括触摸传感器阵列(即,显示器14可以是触控显示屏)。触摸传感器可以是由透明的触摸传感器电极(例如氧化铟锡(ITO)电极)阵列形成的电容式触摸传感器,或者可以是使用其它触摸技术形成的触摸传感器,例如音波触控,压敏触摸,电阻触摸,光学触摸等,本申请实施例不作限制。
[0121] 电子设备10还可以包括音频组件36。音频组件36可以用于为电子设备10提供音频输入和输出功能。电子设备10中的音频组件36可以包括扬声器,麦克风,蜂鸣器,音调发生器以及其它用于产生和检测声音的组件。
[0122] 通信电路38可以用于为电子设备10提供与外部设备通信的能力。通信电路38可以包括模拟和数字输入-输出接口电路,和基于射频信号和/或光信号的无线通信电路。通信电路38中的无线通信电路可以包括射频收发器电路、功率放大器电路、低噪声放大器、开关、滤波器和天线。举例来说,通信电路38中的无线通信电路可以包括用于通过发射和接收近场耦合电磁信号来支持近场通信(Near Field Communication,NFC)的电路。例如,通信电路38可以包括近场通信天线和近场通信收发器。通信电路38还可以包括蜂窝电话收发器和天线,无线局域网收发器电路和天线等。
[0123] 电子设备10还可以进一步包括电池,电力管理电路和其它输入-输出单元40。输入-输出单元40可以包括按钮,操纵杆,点击轮,滚动轮,触摸板,小键盘,键盘,照相机,发光二极管和其它状态指示器等。
[0124] 用户可以通过输入-输出电路42输入命令来控制电子设备10的操作,并且可以使用输入-输出电路42的输出数据以实现接收来自电子设备10的状态信息和其它输出。
[0125] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0126] 以上为对本申请所提供的语音唤醒方法、装置、电子设备及存储介质的描述,对于本领域的技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。