有向性关键字验证方法以及使用该方法的电子装置转让专利

申请号 : CN201710117256.4

文献号 : CN107221325B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 布梅克·D·潘迪亚蔡幸育王闵鸿许正忠

申请人 : 华硕电脑股份有限公司

摘要 :

本发明提供一种有向性关键字验证方法以及使用该方法的电子装置。该有向性关键字验证方法包括:接收预定义的角度范围内的第一音频流并且消除不在所述预定义的角度范围内的任何方向上的噪声;分析所述第一音频流以获得第一字;确定所述第一字是否匹配关键字数据库中的第一关键字;如果不匹配,将所述第一字分配为属于第一类别;如果匹配,则确定所述第一字的元音模式是否与所述第一关键字的元音模式相匹配;如果元音模式相匹配,将所述第一字分配为属于第二类别;以及如果所述元音模式不匹配,将所述第一字分配为属于第一类别。

权利要求 :

1.一种应用于电子装置的有向性关键字验证方法,其特征在于,所述方法包括:接收预定义的角度范围内的第一音频流并且消除不在所述预定义的角度范围内的任何方向上的噪声;

分析所述第一音频流以获得第一字;

确定所述第一字是否匹配关键字数据库中的第一关键字,包括:将所述第一音频流划分成音位,执行所述音位的共振峰分析以检测共振峰以及元音的时间戳,以及基于所述共振峰以及所述元音的时间戳验证所述第一字;

响应于所述第一字被确定为不匹配所述关键字数据库的所述第一关键字,将所述第一字分配为属于第一类别;

响应于确定所述第一字与所述关键字数据库的所述第一关键字相匹配,确定所述第一字的元音模式是否与所述第一关键字的元音模式相匹配;

响应于所述第一字的所述元音模式被确定为与所述第一关键字的所述元音模式相匹配,将所述第一字分配为属于第二类别;以及响应于所述第一字的所述元音模式被确定为不匹配所述第一关键字的所述元音模式,将所述第一字分配为属于第一类别。

2.根据权利要求1所述的方法,其特征在于,确定所述第一字的所述元音模式是否与所述第一关键字的所述元音模式相匹配包括:响应于以下操作,确定所述第一字的所述元音模式与所述第一关键字的所述元音模式相匹配:所述第一字的所述元音序列与所述第一关键字的所述元音序列完全匹配;以及所述第一字的元音序列的元音的时间戳落在基于所述第一关键字的所述元音序列的相应元音所确定的预期范围内。

3.根据权利要求1所述的方法,其特征在于,所述第一类别是填充字,而所述第二类别是触发字或命令字。

4.根据权利要求1所述的方法,其特征在于,将所述第一字分配为属于所述第一类别还包括:确定所述第一字是否为触发字;以及

只有当所述第一字被确定为所述触发字时,确定第二字是否与所述关键字数据库中作为命令字的第二关键字相匹配。

5.根据权利要求1所述的方法,其特征在于,还包括:接收第二音频流;

执行语音活动检测程序以确定所述第二音频流是否为人类语音;以及如果所述第二音频流不是人类语音,则丢弃所述第二音频流。

6.根据权利要求1所述的方法,其特征在于,接收所述第一音频流包括:使用至少两个麦克风来捕获第一音频流;

对所述第一音频流应用回音消除程序;以及对所述第一音频流应用自动增益控制以产生在一预定功率位准范围内的增益调整的第一音频流。

7.根据权利要求6所述的方法,其特征在于,还包括:计算所述增益调整的第一音频流的线性预测编码残余;

基于到达时差,从所述线性预测编码残余确定所述第一音频流相对于至少两个麦克风的方向;以及掩蔽所述预定义的角度之外的任何方向上的任何声音。

8.根据权利要求7所述的方法,其特征在于,掩蔽所述预定义的角度之外的任何方向上的任何声音包括:滤除所述预定义的角度之外的任何方向上的任何声音;以及滤除超出最大距离的任何声音。

9.根据权利要求1所述的方法,其特征在于,分析所述第一音频流以获得所述第一字包括:分析所述第一音频以从第一角度检测所述第一字;以及分析所述第一音频以从第二角度检测不同的字。

10.一种电子装置,其特征在于,包括:至少两个麦克风;以及

处理器,与所述至少两个麦克风直接耦接并且至少被配置为:接收预定义的角度范围内的第一音频流并且消除不在所述预定义的角度范围内的任何方向上的噪声;

分析所述第一音频流以获得第一字;

确定所述第一字是否匹配关键字数据库中的第一关键字;

响应于所述第一字被确定为不匹配所述关键字数据库的所述第一关键字,将所述第一字分配为属于第一类别;

响应于确定所述第一字与所述关键字数据库的所述第一关键字相匹配,确定所述第一字的元音模式是否与所述第一关键字的元音模式相匹配;

响应于所述第一字的所述元音模式被确定为与所述第一关键字的所述元音模式相匹配,将所述第一字分配为属于第二类别;以及响应于所述第一字的所述元音模式被确定为不匹配所述第一关键字的所述元音模式,将所述第一字分配为属于第一类别。

11.根据权利要求10所述的电子装置,其特征在于,所述处理器至少被配置为确定所述第一字的所述元音模式是否与所述第一关键字的所述元音模式相匹配,包括:响应于以下操作,确定所述第一字的所述元音模式与所述第一关键字的所述元音模式相匹配:所述第一字的所述元音序列与所述第一关键字的所述元音序列完全匹配;以及所述第一字的元音序列的元音的时间戳落在基于所述第一关键字的所述元音序列的相应元音所确定的预期范围内。

12.根据权利要求10所述的电子装置,其特征在于,所述第一类别是填充字,而所述第二类别是触发字或命令字。

13.根据权利要求10所述的电子装置,其特征在于,所述处理器至少还被配置为将所述第一字分配为属于所述第一类别,包括:确定所述第一字是否为触发字;以及

只有当所述第一字被确定为所述触发字时,确定第二字是否与所述关键字数据库中作为命令字的第二关键字相匹配。

14.根据权利要求10所述的电子装置,其特征在于,所述处理器至少还被配置为,包括:接收第二音频流;

执行语音活动检测程序以确定所述第二音频流是否为人类语音;以及如果所述第二音频流不是人类语音,则丢弃所述第二音频流。

15.根据权利要求10所述的电子装置,其特征在于,所述处理器至少还被配置为接收所述第一音频流,包括:使用至少两个麦克风来捕获第一音频流;

对所述第一音频流应用回音消除程序;以及对所述第一音频流应用自动增益控制以产生在一预定功率位准范围内的增益调整的第一音频流。

16.根据权利要求15所述的电子装置,其特征在于,所述处理器至少还被配置为:计算所述增益调整的第一音频流的线性预测编码残余;

基于到达时差,从所述线性预测编码残余确定所述第一音频流相对于至少两个麦克风的方向;以及掩蔽所述预定义的角度之外的任何方向上的任何声音。

17.根据权利要求16所述的电子装置,其特征在于,所述处理器至少被配置为掩蔽所述预定义的角度之外的任何方向上的任何声音,包括:滤除所述预定义的角度之外的任何方向上的任何声音;以及滤除超出最大距离的任何声音。

18.根据权利要求11所述的电子装置,其特征在于,所述处理器至少被配置为确定所述第一字是否匹配所述关键字数据库中的所述第一关键字,包括:将所述第一音频流划分成音位;

执行所述音位的共振峰分析以检测共振峰和所述元音的所述时间戳;以及基于所述共振峰和所述元音的时间戳验证所述第一字。

19.根据权利要求10所述的电子装置,其特征在于,所述处理器至少被配置为分析所述第一音频流以获得所述第一字,包括:分析所述第一音频以从第一角度检测所述第一字;以及分析所述第一音频以从第二角度检测不同的字。

说明书 :

有向性关键字验证方法以及使用该方法的电子装置

[0001] 相关申请的交叉引用
[0002] 本申请要求2016年3月22日提交的专利申请号为15/076,682的美国专利的优先权,其公开的所有内容通过引用结合到本申请。

技术领域

[0003] 本发明涉及一种应用于电子装置的有向性关键字验证方法以及使用该方法的电子装置。

背景技术

[0004] 目前,关键字准确检测技术仍有很大的改进空间。从音频信号中一个或一系列关键字的检测可用于各种目的,包括存储、传输、语音识别,语者识别等。例如,关键字检测机制在由人声远程控制的电子装置的应用中是很有用的。在获得音频信号后,不仅需要信号处理算法来识别正在说的准确的字而且还需辨别语法或句子结构。目前,仍然需要更好的算法来提高信号质量,以提高关键字检测的质量和准确性。提高信号质量的更好的算法的实现任需要加强关键字检测的质量和准确性。当前,可以通过自动语音识别(ASR)引擎来执行准确的字的辨别。
[0005] 当前的关键字检测方法有很多待解决的难题。例如,现有的ASR引擎的结果仍然不是很准确,因此需要后续的识别算法。此外,从麦克风判断期望的方向上使用者的存在并且除去不期望的方向上的其他干扰也是非常重要的。这也意味着,记录装置连续不断地侦听期望的方向并且不被其他方向上的噪声触发进入工作。在实时应用中,减少计算时间是非常重要的,对于恒定的计算时间,需要良好的缓冲策略。
[0006] 此外,需要消除例如背景音乐的非人类语音的存在。在捕获人类语音后,电子装置所安装的扬声器的回放声音效果可能会将不期望的回音引入关键字验证系统。因此,也需要消除这些不期望的回音。另外,需要验证程序来辨别使用者是否在与另一个使用者进行对话或者使用者实际上是在发出语音命令。
[0007] 由于上述问题有待解决,可能需要一种新的关键字验证方法和关键字验证系统。

发明内容

[0008] 因此,本发明提供一种应用于电子装置的有向性关键字验证方法以及使用该方法的电子装置。
[0009] 根据本发明的一个方面,本发明提供一种应用于电子装置的有向性关键字验证方法,包括:接收预定义的角度范围内的第一音频流并且消除不在所述预定义的角度范围内的任何方向上的噪声;分析所述第一音频流以获得第一字;确定所述第一字是否匹配关键字数据库中的第一关键字;响应于所述第一字被确定为不匹配所述关键字数据库的所述第一关键字,将所述第一字分配为属于第一类别;响应于确定所述第一字与所述关键字数据库的所述第一关键字相匹配,确定所述第一字的元音模式是否与所述第一关键字的元音模式相匹配;响应于所述第一字的所述元音模式被确定为与所述第一关键字的所述元音模式相匹配,将所述第一字分配为属于第二类别;以及响应于所述第一字的所述元音模式被确定为不匹配所述第一关键字的所述元音模式,将所述第一字分配为属于第一类别。
[0010] 根据本发明的另一个方面,本发明提供一种电子装置,包括:至少两个麦克风;以及处理器,与所述至少两个麦克风直接耦接并且至少被配置为:接收预定义的角度范围内的第一音频流并且消除不在所述预定义的角度范围内的任何方向上的噪声;分析所述第一音频流以获得第一字;确定所述第一字是否匹配关键字数据库中的第一关键字;响应于所述第一字被确定为不匹配所述关键字数据库的所述第一关键字,将所述第一字分配为属于第一类别;响应于确定所述第一字与所述关键字数据库的所述第一关键字相匹配,确定所述第一字的元音模式是否与所述第一关键字的元音模式相匹配;响应于所述第一字的所述元音模式被确定为与所述第一关键字的所述元音模式相匹配,将所述第一字分配为属于第二类别;以及响应于所述第一字的所述元音模式被确定为不匹配所述第一关键字的所述元音模式,将所述第一字分配为属于第一类别。
[0011] 为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图在下文中作出详细说明,应当理解的是上述一般描述和以下详细的描述仅为示例,旨在对所要求保护的本发明提供进一步的解释。
[0012] 应当理解的是,发明内容中可能不包含本发明的所有方面和实施例,因此并不意味着以任何方式进行限制或限制。本发明的公开包括对本领域技术人员显而易见的各种改进和修改。

附图说明

[0013] 为了更好地理解本发明,说明书包括附图并且附图构成说明书的一部分。附图例举说明了本发明的实施例,结合说明书的描述用来解释本发明的原理。
[0014] 图1是根据本发明一实施例的有向性关键字验证方法的流程图;
[0015] 图2是示出根据本发明一实施例的关键字验证系统的功能框图;
[0016] 图3示出根据本发明一实施例的回音消除技术的示意图;
[0017] 图4是示出使用自动增益控制(AGC)以提高音频的空间到达方向上的阈值准确性的示意图;
[0018] 图5是示出根据本发明一实施例的限定一具有接受角和捕获距离的圆锥体的概念图;
[0019] 图6是示出根据本发明一实施例的基于期望的或不期望的源的滤波的概念图;
[0020] 图7示出使用波束成形滤除不期望的使用者方向的结果的示意图;
[0021] 图8是示出根据本发明一实施例的关键字验证程序的示意图;
[0022] 图9示出根据本发明一实施例的使用谱峰能量进行VOP检测的算法的示意图;
[0023] 图10是示出使用话语的谱峰能量进行VOP检测的各种结果的示意图;
[0024] 图11示出根据本发明一实施例的关键字检测方法的示意图。

具体实施方式

[0025] 将详细参考本发明例举的实施例,该些例举的实施例在附图中示出。附图和说明书中尽可能使用相同的标号来指代相同/相似的部分或部件。
[0026] 音频信号中的关键字检测广为人知地应用于使用音频命令的控制程序。大多数应用使用语音识别并设计基于特定有限字词的搜索域。本发明是关于由两个或更多个麦克风捕获的音频信号中的关键字检测。本发明所提出的方法是有方向选择性的。捕获的音频信号可用在语音识别、语者识别、语音激活控制等领域。使用自动语音识别(ASR)引擎来识别由多个麦克风捕获的音频信号。然而,ASR引擎的识别结果可能不完全准确,因此提出了基于元音类型和元音时间戳的后续验证。此外,必须具有一个机制,其能够区分对机器发出的语音命令和人与人之间普通对话。因此,ASR引擎所识别的字还需要后续通过辨别特定的语言模式(例如特定句法或人工语法)进行额外的验证。
[0027] 由多个麦克风捕获的音频信号将通过算法进行数字化处理以提高信号质量,因为需要该算法来提高关键字检测的质量和准确性。并且,从麦克风判断期望的方向上使用者的存在以便除去不期望的方向上的其他干扰也可能是非常重要的。这意味着记录装置会连续不断地记录期望的方向上的音频信号而不会由指定方向之外的(其他方向上的)音频信号触发任何活动。此外,在实时应用中,减少计算时间是也可能非常重要,并且对于恒定的计算时间而言,需要好的缓冲策略。考虑到这些重要的条件,本发明提出一种基于在指定方向上检测到的关键字或短语来检测期望的方向上一个或多个使用者的存在的方法和装置。本发明提出的方法和装置会先检测这些关键字并且随后通过使用语音中的元音发生位置来进行验证。
[0028] 此外,本发明旨在使用波束成形来解决消除背景噪声相关的问题,并且还使用了语音活动检测(VAD)技术。还可以使用一般的自动语音识别(ASR)引擎来连续地搜索具有预定义的语法的音频模式。该语法可以是自定义的以提高未录入词库的字的拒绝率。ASR引擎获得的字的共振峰分析可包括基于共振峰的元音发生点检测和元音识别。
[0029] 可通过使用回音消除机制来除去装置上扬声器的回放声音效果。然后,经处理的信号被传送到自动增益控制(AGC)模块以使增益固定在预定义的水平。AGC的使用将通过稳定增益来改善其余技术块中的决策阈值。通过使用多个麦克风,波束成形可用于掩蔽(mask)不期望的有向性噪声,从而形成单信道音频流,该单信道音频流选择性地经过背景噪声消除模块。可通过软件动态调整波束成形的期望的方向和不期望的方向。通过这种方式,可以为每个话语定义新的期望的方向或者不期望的方向。
[0030] 在上述信号处理之后,可以检测所记录的音频中人声的存在(话音活动检测-VAD)。利用这种机制,随机噪声可以与人声区分开。然后,检测到的人声经过语音识别模块,该语音识别模块优化为检测音频中的有限/特定语法模式。检测到的模式可包括需要认出给定发音的关键字与其他类似短语。自定义的语法还可以帮助关键字验证系统定位话语中的关键字/短语的大致时间戳位置以及其语音结束。
[0031] 基于特定音位的位置进一步验证所认出的关键字。共振峰分析被用于定位元音发生点以及元音的共振峰频率。然后,根据ASR引擎的结果来验证共振峰分析的结果。基于元音部分的位置和检测,关键字可被正确地验证。
[0032] 本发明的目的包括检测言语中的关键字并且通过音频增强、定向音频的选择以及话语验证(utterance verification)来增强关键字检测。因此,在本发明中,当多个麦克风被用于捕获声音时,可为音频信号指定接受的角度。这与使用单个麦克风来捕获声音(其中捕获区域是全向性的)是相反的。因此,如图5所示,可以指定与麦克风的距离(捕获距离)以形成捕获圆锥体,从而声音的捕获方向和距离被指定。如果音频源在这个圆锥体之外,则可以忽略该音频。因此,预期的使用者需要在用于接受而使其声音被捕获的这个圆锥体内。可通过找到声音达到的方向来确认接受的角度。可根据信号强度和角度测量模块中的置信度来测量捕获距离。可通过使用背景噪声消除技术进一步选择性地增强所捕获的音频。然后,该音频经过语音活动检测(VAD)和语音识别模块。一旦使用共振峰分析和来自语音识别引擎的音位时间戳信息对关键字或短语进行了验证,则该关键字或短语被视为已经检测到。
[0033] 图1是示出根据本发明一实施例的有向性关键字验证方法的流程图。在步骤S101中,电子装置接收音频流,音频流由两个或多个麦克风或者从其他外部源从期望的空间方向接收。在步骤S102中,电子装置将音频流输入至ASR引擎以识别一个或多个字。自动语音识别技术是本领域中普通技术人员目前已知的技术。在步骤S103中,电子装置确定由ASR引擎识别的至少一个字(例如,第一字)是否与关键字数据库中的关键字匹配。关键字数据库可以是,各种关键字的数据库,例如,其包括用于控制电子装置的各种关键字命令、用于触发电子装置听取命令的一个或多个触发字、例如用户标识和密码的安全信息以及其他语法或连接短语。在步骤中S104中,如果电子装置已经确定由ASR引擎检测到的第一字不是关键字数据库中的任何一个字,则第一字会被归为第一类别(例如,填充字或非触发字),该第一类别包括对关键字验证系统图像最小的这些字。在步骤S103中,如果电子装置已经确定由ASR引擎检测到的第一字实际上是关键字数据库中的关键字,则执行步骤S105。在步骤S105中,电子装置确定第一字的元音模式是否匹配关键字数据库中的关键字(例如,第一关键字)的元音模式。如果匹配,在步骤S106中,第一字则被归为第二类别,该第二类别包括包含如上文所述的各种关键字命令的字;否则,如果第一字的元音模式不匹配第一关键字的元音模式的话,第一字被归为第一类别(例如,填充字)。
[0034] 在一个例举的实施例中,步骤S103可包括:根据第一字的元音序列是否完全匹配第一关键字的元音序列来确定第一字的元音模式是否匹配第一关键字的元音模式;并且第一字的元音序列中的元音时间戳落在基于第一关键字的元音序列中相应的元音所确定的预期范围内。
[0035] 在一个例举的实施例中,第一类别是填充字;而第二类别是触发字或命令字。
[0036] 在一个例举的实施例中,步骤S106包括确定第一字是否为触发字并且只有当第一字被确定为是触发字时,接着确定第二字是否为关键字数据库中的命令字。
[0037] 在一个例举的实施例中,电子装置可接收第二音频流。在电子装置接收第二音频流后,电子装置执行语音活动检测(VAD)程序以确定第二音频流是否为人类语音。如果第二音频流不是人类语音,则忽略第二音频流。
[0038] 在一个例举的实施例中,步骤S101可包括:通过使用至少两个麦克风来捕获第一音频流;对第一音频流应用回音消除程序;并且对第一音频流应用自动增益控制(AGC)以产生在一预定功率位准范围内的增益调整的第一音频流。
[0039] 在一个例举的实施例中,步骤S101还可包括:计算增益调整的第一音频流的线性预测编码(LPC)残余;基于到达时差(TDOA)从LPC残余中确定第一音频流相对于至少两个麦克风的方向;以及时频掩蔽预定义的角度之外的其他任何方向上任何声音。
[0040] 在一个例举的实施例中,掩蔽其他任何方向上任何声源的步骤可包括:滤除预定义的角度之外的任何声音;以及滤除超过最大距离的任何声音。
[0041] 在一个例举的实施例中,在步骤S102中,即确定第一字是否匹配关键字数据库中的第一关键字可包括:将第一音频流划分成音位;执行音位的共振峰分析以检测共振峰以及元音的时间戳;以及基于共振峰以及元音的时间戳验证第一字。
[0042] 在一个例举的实施例中,在步骤S102中,即分析第一音频流以获得第一字可包括:分析第一音频以从第一角度检测第一字;以及分析第一音频以从第二角度检测不同的字,从而可以从不同的方向分析和验证不同的字。
[0043] 图2是示出根据本发明一实施例的关键字验证系统的功能框图。关键字验证系统可被用于执行图1中所描述的步骤以及所有例举的实施例。关键字验证系统可包括但不限于捕获模块201、回音消除模块202、自动增益控制(AGC)阵列模块203、背景噪声消除模块204、波束成形模块205、语音活动检测(VAD)模块206、共振峰分析模块207、ASR模块208以及关键字验证模块209。每一个模块或模块的组合可通过硬件集成电路(IC)、或通过由处理电路执行的软件/固件、或者通过硬件或软件的结合实现。处理电路可包括一个或多个中央处理单元(CPU)(例如,处理器)或其他类型的控制器和可编程设备。
[0044] 捕获模块201可包括至少两个麦克风(将声波转换成模拟电子信号的变换器)。捕获模块201还可具有将模拟电子信号转换成数字信号的模数转换器。捕获的音频信号被送入回音消除模块202。
[0045] 回音消除模块202从捕获模块201接收音频信号并执行回音消除以增强由捕获模块201捕获的信号并且除去由麦克风捕获的且随后被记录的回放音频。图3中进一步说明了回音消除模块202的实现。
[0046] AGC阵列模块203从回音消除模块202接收信号并且提高或降低从回音消除模块202所接收的信号的音频音量以符合后续模块进行其他处理所需的音频电平。换句话说,AGC阵列模块被用于稳定从回音消除模块202所接收的信号的增益。以这种方式,AGC的使用使得关键字验证系统具有良好的远场捕获的能力并且由于AGC可被配置为不增强噪声信号,AGC的使用使得关键字验证系统能够提高输入语音的信噪比。上限阈值和下限阈值可施加于捕获的音频信号,从而经AGC调整的音频信号会在特定的范围内。举例来说,当捕获的音频信号是低于下限阈值,该音频信号会被认为是背景噪声而被忽略。输入的音频信号可以经AGC调整以集中在特定电平。举例来说,经调整的音频信号可集中在AGC整个动态范围的1/4处。由于经调整的音频信号集中在AGC动态范围的较低电平处,这样可以减少转换时间。
[0047] 可选地,关键字验证系统可包括背景噪声消除模块204,其被配置为检测背景噪声并且随后除去背景噪声。举例来说,背景噪声消除模块204可检测由风扇产生的噪声的频率,然后使用数字滤波器除去这些噪声。背景噪声消除模块204还被配置为可除去白噪声以提高音频信号的信噪比。
[0048] 波束成形模块205可从背景噪声消除模块204的输出接收经处理的音频信号并执行波束成形操作。波束成形是指线性麦克风-阵列处理,其中由麦克风的空间差异导致的信号之间的时差可被用于处理、增强或过滤音频信号。波束成形主要假设传感器之间的几何结构以及传感器的定向是已知的以定位声源。这些技术是用于空间过滤以跟踪朝向声源的波束而忽略(null out)其他方向的方法。当使用多个麦克风时,波束成形模块205将被使用,基于时频掩蔽不期望的方向上的声源。根据达到麦克风的声波之间的时延来测量期望的方向和不期望的方向。期望的捕获声音的方向通常垂直于麦克风的平面。进一步的细节请参考图5和图6。
[0049] VAD模块206从波束成形模块205接收经处理的音频信号。如果该音频信号低于一特定阈值,则VAD模块206将忽略该音频信号。此外,VAD模块206只接受是人类语音的音频信号。只有当相关的音频信号是用于诸如语音识别、语音识别等应用的人类语音时,才使用VAD模块。本领域技术人员知晓VAD模块的具体实现。
[0050] 响应于由VAD模块206进行的处理,经处理的音频信号通过使用预先设计的语法经过ASR(自动语音识别)引擎208以提高关键字检测的准确性。语音命令系统的语法预期能够实现触发命令识别的高度准确性、所设计的命令的高识别率、以及非命令语音的高拒绝率。共振峰分析模块207接收VAD模块206的输出并对经处理的音频信号执行共振峰分析。关键字验证模块209接收元音模式以及每一个音位的元音的时间戳信息,随后验证由ASR引擎
208识别的字是否为关键字数据库中的关键字中的一个。
[0051] 图3~图10以及相应的文字描述将进一步详细地说明本发明。图3示出回音消除模块202执行的处理的示意图。由于双重会话(dual talk)的检测和消除涉及从机器声音(回放声音)和使用者语音的混合音中形成快速准确的使用者语音的近似,这种回音消除模块的使用有助于(例如在机器人系统中)使用经清除的使用者语音进行识别和识别的各种应用。经清除的语音可包括:使用者命令、使用者识别或命令识别等等。这种想法是将时域上基于信号SNR的双重会话检测与频域回音消除器所获得的低失真下时域上鲁棒的消除相结合。首先,估计回放声音和记录的信号之间的延迟。然后,该延迟信息被送入时域和频域回音消除器。时域双重会话检测器检测双重会话(回放声音和麦克风信号的存在)并且提供参考点以触发滤波适应(filter adaptation)。
[0052] 请参考图3,假定麦克风301和扬声器302位于可产生回音的空间围成的同一系统中。由麦克风接收的音频信号可由y(m)=x(m)+yf(m)表示,其中y(m)是由麦克风接收的音频信号,x(m)是使用者声音,而yf(m)是扬声器的声音。yf(m)是待除去的声音。y(m)减去声反馈合成器305(从自适应算法304接收参数)所产生的 (m)。减法的结果获得x(m)的近似,然后将x(m)的近似送入自适应算法304以及声反馈合成器305以产生 (m)。x(m)的近似由扬声器播放给使用者听到。
[0053] 图4是示出使用自动增益控制(AGC)以提高音频的空间到达方向上的阈值准确性的示意图。第一示图401是由捕获模块201捕获并由回音消除模块202处理的经处理的音频信号的示例。AGC阵列模块采用由增益增量曲线402表征的增益以在特定功率范围内修改经处理的音频信号。AGC(自动增益控制)被用于稳定输出音频的增益并使系统具有更好的远场捕获能力。第二示图403示出在已经应用增益之后的结果。从图4中可见,可稳定地提升或降低增益以获得目标增益(音量)水平。可以看到,经处理的音频具有由关键字验证系统预定义的稳定的增益水平。通过应用AGC,当使用者进一步远离麦克风时,音量可以被提高到预定义的水平。另外,AGC具有内置的噪声消除功能以供选择性使用。
[0054] 图5是示出根据本发明一实施例的限定一具有接受角和捕获距离的圆锥体的概念图。捕获圆锥体可以是捕获特定空间内的音频信号的三维圆锥体。然而,为了方便说明,假定捕获圆锥体是两维的。图5例举的捕获圆锥体具有最大距离(标示为x=L)处的接受角Φd1以及距离x=0处的接受角Φd2。距离L是最大距离,超过最大距离的音频信号将被音频捕获系统忽略。最大距离可以是,举例来说,1米。距离x=0可以被定义为正好在两个麦克风处或者在被移位一定距离的位置处。接受角的角度Φd1和Φd2可以是,举例来说,大约为30度。角度Φd1=0或Φd2=0可以被定义为与两个扬声器501a、501b完全对准。在接受角Φd1和Φd2的范围内的音频信号被认为是有效的输入音频信号,并且接受角Φd1和Φd2之外的音频信号将被掩蔽或滤除。
[0055] 捕获距离x可以基于信号强度和角度测量的置信度来测量。当源进一步更加远离麦克风501a和501b移动时,信号强度和角度测量置信度将降低。当捕获距离x超过L时,可以丢弃音频源。可以基于TDOA原理测量源的角度。例如,如果源位于与麦克风501a和501b两者相等距离的位置处,则由麦克风501a和501b两者几乎没有延迟地接收该源。如果源朝向麦克风中的一个(例如501a或501b)移位但是远离另一个麦克风,麦克风501a或501b中的一个将比另一个更快地接收音频信号。基于音频信号的延迟差异,可以计算源的方向,使得波束成形模块205可以知道源是否在接受角Φd1和Φd2的范围内。
[0056] 图6是示出根据本发明例举实施例的基于期望或不期望的源的滤波的概念图。对于图6的示例性场景,假定包括至少三个源,即第一源601、第二源602和第三源603。然而,对于本领域技术人员来说,显然,可以使用两个以上的麦克风来捕获语音信号。第一源601和第三源603均可包括人声和非人声源,诸如混合人类语音的扬声器播放音乐,而第二源602被假定为期望的人类语音。自然地,麦克风604a、604b将捕获所有三个源 然而,这可能并非预先期望的,因为音频捕获系统的使用者可能仅对与麦克风对准或最接近麦克风的主要源感兴趣。通过消除落在预定义的捕获角度之外的非期望的源601、603,波束成形模块205将通过减少捕获的噪声来显著地改善音频信号。
[0057] 图7示出了使用波束成形以滤处不期望的使用者方向的结果的示意图。图7的前两个示图701是呈现于时域中随时间变化的音频信号,并且示出在不使用波束成形的情况下,经处理的音频信号的左声道和右声道。图7的第三示图702示出了使用波束成形来消除在接受角之外的音频噪声。
[0058] 图8是示出根据本发明例举实施例的关键字验证程序的示意图。图8示出了机器语法结构的示例。人工机器语法包括不同的命令、开始接受命令的触发字、填充和循环返回。触发字和命令可以包含在关键字库中。每个命令和填充可以被赋予对于每个命令和填充而言不同的权重,并且是可调节的。基于经验调整这些权重可以获得更好的执行。触发字可以是任何预定义的字,以用作电子设备开始接受命令所需的特殊命令。以这种方式,电子设备将不接受任何命令,直到已检测到触发字,使得电子设备避免受到不用来控制电子设备的普通人类对话的影响。
[0059] 关键字库可以进一步包括具有(分配给每个填充字的)特定权重的填充字集合,以便增强关键字验证模块209的识别准确性。为了处理未录入词库的语音,除命令之外,可以将填充字集合集成到语法中以接受命令语句之外的语音。填充可被认为是表示用于组成词组或句子的字的音位组合。此外,为了检测未录入词库的整个语音,可将循环(loops)添加到语法,使得填充可以被动态地组合以形成所识别的文本。
[0060] 当接收到音频信号时,一系列所识别的字将被语法中的语言接受。如图8所示,在ASR引擎识别出字之后,关键字验证模块209将该字归为第一类别804或第二类别805。第一类别804至少包含作为填充的字,第二类别805至少包含作为触发字和命令的字。因此,例如,如图8所示,关键字验证模块209执行步骤S801或者步骤S802以将所识别的字归类为第一类别803或第二类别804。在步骤S803中,可以使用循环以提供生成与语法不同的序列的能力。最后,产生填充和命令的组合以形成识别的文本(可随后被用于检测关键字/短语)。
[0061] 图9示出了根据本发明例举实施例的通过使用谱峰能量以检测元音发生位置的元音发生点(VOP)检测的算法的示意图。由共振峰分析模块207使用图9的算法。图10示出使用话语的谱峰能量进行VOP检测的结果的各种示意图。通常,共振峰分析包括共振峰和元音发生点的检测。通过使用元音发生点确切的时间位置,可以形成类似的群组。参考图9和图10。在步骤S901中,共振峰分析模块207可以接收经处理和数字化的输入语音信号,并且在步骤S902中,首先使用傅里叶变换(例如离散傅里叶变换)来变换输入语音信号。图10的第一示图1001中示出这种变换的示例。
[0062] 在步骤S903中,在定位谱峰(例如,10个最大峰)之后,将谱峰总合。图10的第二示图1002示出第一示图1001的N个最大峰的总合。在步骤S904中,然后,通过使用归一化,将每个峰值缩放到特定幅度,来增强谱峰总合的结果。图10的第三示图1003示出了增强的N个最大峰的总合。在步骤S905中,将步骤S904的输出与一阶高斯微分器(FOGD)卷积,以生成步骤S906的VOP示图。图10的第四示图1004示出了步骤S906的VOP示图的结果。从图10中可以看出,处理步骤从谱峰开始,进行峰值增强以及执行FOGD后形成最终的VOP示图。从VOP示图中,可以定位元音发生位置。通过进一步使用共振峰信息,通过将具有相似共振峰频率的元音归在同一类,可以将元音归在类似的群组。
[0063] 图11示出了根据本发明例举实施例的关键字检测方法的的示意图。通过使用共振峰分析模块207执行的共振峰分析所获得的信息和来自语音识别引擎208的音位时间戳信息,可以验证关键字是否已被ASR引擎正确地认出。关键字验证模块209旨在减少关键字验证系统对关键字或短语误检测的次数。关键字验证模块209的操作原理可以通过以下示例进一步阐述。
[0064] 从共振峰分析模块207执行的共振峰分析中可以定位元音发生位置(即,时间戳)和元音类别。元音类别是基于按国际音标表的元音集设置的。但是为了便于说明,元音类别可以是例如“a”、“e”、“i”、“o”和“u”。通过获得的元音发生位置和元音类别,关键字验证模块209可以验证由ASR引擎208检测到的字是否匹配关键字数据库中的关键字。基于一个条件或两个条件或两者的结合确定验证。第一个条件是字的元音序列是否匹配与关键字数据库的关键字的元音序列。第二个条件是每个元音的时间戳是否出现在预期的时间范围内。
[0065] 假设(使用者)说了字“Davinci”并且由ASR引擎208检测到,而“Davinci”是关键字数据库中的关键字,第一个条件用来确定由共振峰分析模块207检测到的“Davinci”的元音序列是否与关键字数据库中的字“Davinci”的元音序列匹配。对于字“Davinci”,正确的元音序列需是“a”、“i”和“i”,因此,如果由共振峰分析模块207检测到了除所需的元音序列之外的任何其它元音序列,则由ASR引擎检测到的字将不会被认为是“Davinci”。因此由ASR引擎检测到的字将被关键字验证模块归类为“填充”字,即使这样的结论与ASR引擎的结果相矛盾。
[0066] 应用第二个条件,如果共振峰分析模块207的时间戳信息显示元音“a”、“i”和“i”中的任何一个被分隔超过特定阈值的时间,则由ASR引擎检测到的字将不会被认为是“Davinci”。因此,由ASR引擎检测到的字将被关键字验证模块归类为“填充”字,即使这样的结论与ASR引擎的结果相矛盾。只有满足了第一个条件和第二个条件,由ASR引擎检测为“Davinci”的字则确实是作为关键字数据库中的关键字之一的“Davinci”。
[0067] 在另一个例子中,假设使用者的话语是“where is hello davinci in this utterance”。进一步假设包含在关键字数据库中的关键短语是“hello davinci”。在这个示例中,识别的文本是“填充填充hello davinci hello davinci填充”。在这个示例中,假设当检测到未包含在关键字数据库中的字时,“填充”是默认输出的。因此,可以看到,由ASR引擎208识别的输出,其部分是不正确的。在这个示例中,清楚的是,第二短语“hello davinci”的位置是不正确的,并且“hello davinci”的第二次出现可能是由于回声。然而,“hello davinci”的第二次出现可通过识别元音发生位置的不匹配而被检测为不正确。换句话说,在这个示例中,由共振峰分析模块207检测到的元音的时间戳与由ASR引擎208检测到的元音的时间戳不符合。因此,基于上述示例可以看出,关键字验证模块209将显著地降低误检测的概率。
[0068] 鉴于以上描述,本发明适合在电子设备中使用,并且能够对ASR引擎识别的字验证关键字以用于关键字的存储、传输、语音识别或语者识别。
[0069] 在本申请所公开的实施例的详细描述中所使用的元件、动作或指示不应理解为对本申请的公开是绝对关键或必要的,除非明确描述。此外,本文所使用的不定冠词“一”可以包括多于一个的项目。如果只想要一个项目,则使用术语“单个”或类似的语言。此外,如本文所使用的术语“任何”之后是多个项目和/或多个项目类别的列表旨在包括“任何”、“任何组合”、“任何倍数的”和/或“项目倍数和/或项目类别的任何组合”,单独地或与其他项目和/或其他类别的项目相结合。此外,如本文所使用的术语“组”旨在包括任何数量的项目,包括零。此外,如本文所使用的术语“数量”旨在包括任何数量,包括零。
[0070] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。