激活短语的低功率检测的制作方法

文档序号:10571091阅读:195来源:国知局
激活短语的低功率检测的制作方法
【专利摘要】本发明涉及激活短语的低功率检测。描述了激活短语的低功率检测的方法。麦克风系统包括用于检测在经由麦克风接收的音频流中的预定义的激活短语的专用硬件逻辑。如果预定义的激活短语被检测到,则硬件逻辑发送触发信号以激活在麦克风系统外部并可能在低功率待机状态中的例如主语音检测模块的模块。
【专利说明】激活短语的低功率检测
[0001 ] 背景
[0002]很多消费类设备(包括智能电话、电视机、导航系统和游戏控制台)除了例如触摸、按钮或单独的控制器设备的更标准的输入机制以外现在还可由语音来控制。在一些设备中,语音控制通过按下特定的控制装置(例如在电视机的遥控器上的语音控制按钮或在智能电话的屏幕上的软控制装置)而被启动,且在一些设备中,语音控制(除了通过按下控制装置之外或代替通过按下控制装置)可通过激活短语(例如“Hey Siri?”、“OK Google?”、“Hey Cortana?”或“computer” )的使用而被触发。在一些例子中,语音控制可用于控制在设备上运行的一个或多个应用(例如搜索应用),且在其它例子中,语音控制可被更一般地使用来控制设备的操作。
[0003]下面所述的实施方式不限于解决可被语音控制的已知设备的缺点中的任何或所有缺点的实现。
[0004]概述
[0005]本概述被提供来以简化形式介绍下面在详细描述中被进一步描述的一系列概念。该概述并不旨在确定所要求保护的主题的关键特征或本质特征,也不旨在用作在确定所要求保护的主题的范围时的帮助。
[0006]描述了激活短语的低功率检测的方法。麦克风系统包括用于检测在经由麦克风接收的音频流中的预定义的激活短语的专用硬件逻辑。如果预定义的激活短语被检测到,则硬件逻辑发送触发信号以激活在麦克风系统外部并可在低功率待机状态中的模块(例如主语首检测t吴块)。
[0007]第一方面提供麦克风系统,其包括麦克风和硬件逻辑,硬件逻辑被配置成检测在经由麦克风接收的音频流中的预定义的短语并响应于检测到预定义的短语而发送触发信号以激活在麦克风系统外部的模块。
[0008]第二方面提供包括如本文所述的麦克风系统的电池供电的计算设备。
[0009]第三方面提供操作麦克风系统的方法,其包括:使用麦克风系统中的麦克风检测音频流;使用麦克风系统中的专用硬件分析音频流以检测预定义的短语,专用硬件被配置成检测在输入音频流中的预定义的短语;以及响应于检测到预定义的短语,发送触发信号以激活在麦克风系统外部的模块。
[0010]分析音频流以检测预定义的短语可包括:将检测到的音频的一部分分成一个或多个组成部分;以及将组成部分与预定义的短语的一个或多个所存储的组成部分进行比较。
[0011]该方法还可包括:在预定义的短语之后缓存经由麦克风接收的音频流。
[0012]该方法还可包括:响应于检测到预定义的短语,向麦克风系统中的放大器发送信号以增加在分析音频流之前由放大器在放大检测到的音频流时使用的增益参数的值。
[0013]该方法还可包括:响应于在麦克风系统外部的模块进入低功率模式,向麦克风系统中的放大器发送信号以减小在分析音频流之前由放大器在放大检测到的音频流时使用的增益参数的值。
[0014]该方法还可包括:响应于检测到预定义的短语,发送信号以增加在分析音频流之前由麦克风系统使用来对检测到的音频流进行采样的采样速率和/或采样分辨率。
[0015]该方法还可包括:响应于在麦克风系统外部的模块进入低功率模式,发送信号以减小在分析音频流之前由麦克风系统使用来对检测到的音频流进行采样的采样速率和/或米样分辨率。
[0016]该方法还可包括:响应于检测到预定义的短语,使用检测到的预定义的短语更新所存储的预定义的短语。
[0017]该方法还可包括:响应于部分地检测到预定义的短语,将包括部分地检测到的预定义的短语的音频流的一部分发送到在麦克风系统外部的模块。
[0018]该方法还可包括:响应于部分地检测到在音频流的第一部分中的预定义的短语:确定包括部分地检测到的预定义的短语的音频流的前一部分是否被存储;响应于确定包括部分地检测到的预定义的短语的音频流的前一部分未被存储,存储音频流的第一部分;响应于确定包括部分地检测到的预定义的短语的音频流的前一部分被存储,将音频流的第一部分与音频流的所存储的前一部分进行比较;以及响应于检测到在音频流的第一部分和音频流的所存储的前一部分之间的匹配,发送触发信号以激活在麦克风系统外部的模块。
[0019]预定义的短语可以是环境声音的样本。
[0020]预定义的短语可包括一个或多个口语词。
[0021]预定义的短语可以是用于语音控制计算设备的激活短语。
[0022]在麦克风系统外部的模块可以是主语音检测模块。
[0023]主语音检测模块可由在语音控制计算设备中的处理器实现。
[0024]使用在麦克风系统中的专用硬件分析音频流以检测预定义的短语可包括使用在麦克风系统中的专用硬件连续分析音频流以检测预定义的短语。
[0025]本文所述的方法可由被配置有软件的计算机执行,软件是以存储在有形存储介质上的机器可读形式,例如当程序在计算机上运行时和计算机程序可被体现在计算机可读存储介质上的情况下,以包括用于配置计算机来执行所述方法的组成部分的计算机可读程序代码的计算机程序的形式或以包括适于执行本文所述的任何方法的所有步骤的计算机程序代码工具的计算机程序的形式。有形(或非暂时性)存储介质的例子包括磁盘、拇指驱动器、存储卡等,且并不包括传播信号。软件可适合于在并行处理器或串行处理器上执行,使得方法步骤可被以任何适当的顺序或同时执行。
[0026]本文描述的硬件部件可由非暂时性计算机可读存储介质产生,非暂时性计算机可读存储介质在其上编码有计算机可读程序代码。
[0027]这承认固件和软件可被单独地使用且是有价值的。旨在包括在“非智能(dumb)”或标准硬件上运行或控制“非智能”或标准硬件的软件以实现期望功能。还旨在包括“描述”或定义硬件的配置的软件以实现期望功能,所述软件例如,如用于设计硅芯片或用于配置通用可编程芯片的HDL(硬件描述语言)软件。
[0028]如对技术人员将是明显的,优选特征可视情况被组合,并且可以被与本发明的各方面中的任何方面进行组合。
[0029]附图简述
[0030]将参考下面的附图通过示例的方式来描述本发明的实施方式,在附图中:
[0031]图1是示出示例计算设备的示意图;
[0032]图2是麦克风系统的操作的示例方法的流程图;
[0033]图3是更详细示出示例麦克风系统的示意图;以及
[0034]图4是示出所存储的预定义的短语可以如何被更新的示意图。
[0035]在全部附图中使用共同的参考数字来指示相似的特征。
[0036]详细描述
[0037]下面仅仅通过示例的方式描述了本发明的实施方式。这些示例代表
【申请人】当前已知的实施本发明的最佳方式,但是它们不是以其可以实现本发明的仅有的方式。该描述阐述示例的功能和用于构造和操作示例的步骤的顺序。然而,可通过不同的示例来实现相同或等效的功能和顺序。
[0038]如上所述,可通过激活短语(例如“HeySiri?”、“OK Google?”、“Hey Cortana?”或“Computer”)的使用来在一些电子设备上触发语音控制。这意味着设备必须连续收听激活短语。甚至在设备具有低功率待机状态(例如其显示屏关闭)的情况下,设备也必须继续收听以便设备能够对激活短语做出响应。通常这意味着设备必须保持麦克风系统是在工作中的(以便捕获用户的语音),且处理器也必须是在工作中的以便能够分析来自麦克风系统的语音样本以检测激活短语。这个分析是复杂的且如果在设备上实现则消耗大量功率,这对于电池供电的设备导致减小的电池寿命。由于分析的复杂性(其由于背景噪声、用户离麦克风的距离等而增加),一些设备将分析卸载到远程计算机;然而,这需要所捕获的语音样本通过数据连接(例如W1-Fi?或蜂窝链路)传输,且这也消耗大量功率。
[0039]在本文描述了包含被配置成仅检测预定义的激活短语的专用硬件逻辑的麦克风系统。在一些例子中,硬件逻辑仅仅能够检测预定义的激活短语且不能执行其它功能;然而,在其它例子中,硬件逻辑也可以能够执行其它功能(例如通过音频样本的包化来帮助检测其它短语)。
[0040]通过使用在麦克风系统中的专用硬件逻辑来执行激活短语检测,在语音控制设备内的处理器(例如应用CPU)可被关掉或置于低功率状态中,因为其不需要执行激活短语的检测。此外,不必使用数据连接以便检测激活短语,因为这都在麦克风系统内本地完成。因此,电池供电的语音控制设备(例如电池供电的计算设备,例如智能电话、平板计算机、可穿戴设备或手持游戏控制台)的电池寿命可被延长。此外,因为激活短语检测被在本地(即在设备内)和在硬件中执行,检测过程的时延(例如从用户说激活短语到设备检测到激活短语已经被说出的时间)可被减小。
[0041]通过使用在麦克风系统中的专用硬件逻辑来执行激活短语检测,短语检测硬件可被制造得较小,从而允许它被合并为麦克风模块的部分。这允许整体电子设备被制造得较小。
[0042]通过使用专用硬件逻辑来执行激活短语检测,设备的功率消耗减小,使得在各种例子中,硬件逻辑可继续收听(即分析由麦克风接收的音频流)。这实现真正免提设备,因为用户不需要在说激活短语之前按下按钮。
[0043]因为专用硬件逻辑只能够检测预定义的激活短语而不能够检测其它短语,这可增加语音控制系统的安全性(例如因为附近的人更难以通过说正确的激活短语来激活设备),特别是在激活短语由用户设置或被调节为对应于用户对激活短语的特定发音的情况下。
[0044]尽管本文所述的麦克风系统被描述为被用在电池供电的语音控制设备中,但将理解的是,麦克风系统还可被用在不依赖于内部电源(例如电池或超级电容器)而是具有外部电源(例如经由电缆和插头到干线电力供应的连接)的语音控制设备中。
[0045]术语“语音控制设备”在本文用于指的是其中功能中的至少一些功能(例如单个应用的控制、所有功能的控制等)可通过语音提示的使用来控制的设备。该设备可以例如是消费类设备和/或电池控制的设备。在很多例子中,这个设备是计算设备(即具有处理能力使得它可执行指令的设备),且在很多例子中,设备是便携式计算设备。语音控制设备的例子可包括智能电话、平板计算机、便携式游戏控制台、电视机、家用电器(例如煮咖啡机、闹钟)、可穿戴设备(例如智能手表、智能衣服等)和车载式系统。
[0046]术语“激活短语”在本文用于指的是发起设备的语音控制的触发短语。通常,激活短语不是所使用的单独语音命令,而是通常跟随有“控制”或“动作”短语。例如,用户可以说“电话(phone)、导航到家(navigate home)”,其中“电话(phone)”是激活短语而“导航到家(navigate home)”是触发导航应用的打开和到目的地“家”的设置的动作短语。在其它例子中,例如在设备具有由语音命令触发的单个功能的情况下,激活短语还可充当动作短语。
[0047]术语“电池供电的”在本文用于指的是这样的设备:其具有内部电源(例如电池或超电容器),使得在它的操作时间的至少一部分内,它可从内部电源而不从外部电源(例如干线电力供应)被供电。
[0048]图1是示出可以例如是电池供电的计算设备的示例计算设备100的示意图。设备100包括被配置成执行激活短语检测的麦克风系统102和主语音检测模块104,主语音检测模块104是更通用的语音检测元件并可检测以及识别多个短语。主语音检测模块104可被在处理器(例如CPU)上实现,且在一些例子中它可连同远程短语检测和识别系统106来操作,其中主语音检测模块104使用通信接口 108将语音样本传输到远程系统106。
[0049]麦克风系统102包括麦克风110、激活短语检测硬件112(其包括用于检测单个预定义的激活短语的专用硬件)且还可包括音频缓冲器114。可参考图2来描述这个系统的操作。
[0050]如图2中所示,麦克风系统102使用麦克风110检测音频(块202)。检测到的音频流由激活短语检测硬件112分析以检测预定义的短语一一如果存在的话(块204)。在激活短语检测硬件112识别出在音频流中的预定义的短语的情况下(在块205中的“是”),麦克风系统102(且特别是激活短语检测硬件112)将触发信号发送到主语音检测模块104(块206)。这触发主语音检测模块104(其不是麦克风系统102的一部分)的操作,否则主语音检测模块104可能处于低功率或非操作状态中。除了发送触发信号(在块206中)之外,麦克风系统102在检测到的预定义的短语之后缓存音频流(通过将其存储在音频缓冲器114中)(块208),使得当主语音检测模块处于操作状态中(例如当主语音检测模块104从低功率状态醒来)时,它可被发送到主语音检测模块104。
[0051]如图2中所示,可使用模式匹配来执行对在检测到的音频流内的预定义的短语的检测(在块204中)。例如,激活短语检测硬件112可将任何检测到的音频(其可包括语音,但可此外或替代地包括背景噪声/音乐等)分成一个或多个组成部分(块210),例如检测到的语音可被分成音素。(在块210中产生的)这些组成部分然后与预定义的短语的所存储的组成部分进行比较(块212)。如果在组成部分之间存在匹配(即以相同顺序的相同部分),则发送触发信号(在块206中);然而,如果没有匹配(在块205中的“否”),则不发送触发信号且激活短语检测硬件112继续分析检测到的音频流的后续部分。
[0052]然而在一些例子中,激活短语检测硬件112可在检测到的音频和预定义的短语之间部分匹配的情况下执行附加的分析。可以用很多不同的方式和在各种例子中定义部分匹配,如当只有预定义的短语的所存储的组成部分的真子集匹配(例如第一组成部分匹配且第二组成部分不匹配)时或当通过模式匹配得到的结果超过第一较低阈值但不超过指示完全匹配(因此指示预定义的短语已经被检测到)的第二较高阈值时它可以被定义。
[0053]在第一例子中,如果部分匹配被检测到(在块220中的“是”),则检测到的音频(其导致部分匹配)被发送到主语音检测模块104用于处理(块222),且其充当触发信号以从低功率状态激活主语音检测模块。连同检测到的音频一起,激活短语检测硬件112也可发送部分匹配的细节以帮助主语音检测模块104(例如哪些组成部分匹配预定义的短语以及哪些组成部分不匹配预定义的短语的指示)。
[0054]在第二例子中,如果部分匹配被检测到(在块220中的“是”),则激活短语检测硬件112检查前一检测到的短语是否已经被存储(块224,例如在块226的前一迭代中)。如果前一检测到的短语(即就在当前短语被分析之前被检测到的短语)未被存储(在块2 2 4中的“否”),则当前短语被存储(块226)且激活短语检测硬件112继续分析检测到的音频流(其如上所述可以或可以不包括语音)的后续部分。然而如果前一短语被存储(在块224中的“是”),则当前短语与这个所存储的前一短语进行比较,以及如果存在匹配(在块中的“是”),则激活短语检测硬件112继续进行,好像预定义的短语被检测到一样(例如,如由从块228到来自块205的“是”路径的虚线箭头指示的)并发送触发信号(块206)等等。如果在当前短语和所存储的前一短语之间没有匹配,则所存储的前一短语可被删除,且激活短语检测硬件112继续分析检测到的音频流的后续部分。
[0055]在上面的第二例子的描述中(且如在图2中所示的),可从两个部分匹配推断出完全匹配(例如,其中第二部分匹配由于用户重复激活短语而产生,用户重复激活短语是因为设备未能对激活短语的第一发出做出响应)。然而在其它例子中,在完全匹配被推断出之前可能需要多于两个部分匹配。
[0056]图3是更详细示出示例麦克风系统102的示意图。如图3中所示,麦克风系统102包括放大检测到的(由麦克风110产生的)音频流的放大器302(其也可被称为前置放大器)。由麦克风110产生(并由放大器302放大)的音频流通常是模拟信号,其可接着使用模数(A到D)转换器(ADC)304被转换成数字信号。ADC 304以参考采样时钟306定义的采样速率和以定义的采样分辨率(其可按照每个样本中的位数来定义)对模拟信号进行采样。激活短语检测硬件112接收由ADC 304输出的音频样本,并接着如上所述的分析它们以确定它们是否包含预定义的短语。预定义的短语的细节可在麦克风系统102内存储在激活短语存储器308中,且这可例如存储预定义的短语的组成部分用于在模式匹配时使用(在块212中)。
[0057]激活短语检测硬件112可例如使用数字信号处理器(DSP)来实现,数字信号处理器(DSP)针对语音识别被优化(例如通过从DSP指令集移除任何未使用的指令和/或用执行相同功能的一个或少量专用指令代替在预定义的短语的检测中使用的一个或多个通用指令),且在DSP被使用时,这可包含图3中所示的ADC 304。通过减小DSP的指令集,节省了功率并减小DSP的尺寸。在其它例子中,可使用一个或多个固定功能硬件块来代替DSP,且这可提供更高效的实现。
[0058]当预定义的短语已经被检测到(在块204中)且主语音检测模块104的操作已经被(在块206中由触发信号)触发,在主语音检测模块104返回到低功率/非操作状态(例如当图2的方法重新开始时)之前,激活短语检测硬件112可以在语音检测中不起另外的作用。然而在其它例子中,甚至当主语音检测模块104是运行的时,激活短语检测硬件112可继续帮助语音检测。在一些例子中,这个帮助可以只涉及将缓存的(即时间延迟的)音频发送到主语音检测模块104。然而在其它例子中,激活短语检测硬件112可继续对所接收的音频进行包化(例如通过将检测到的音频分成组成部分)并将包化的音频样本(其可以或可以不包括语音)提供到主语音检测模块104或通信接口 108用于传输到远程短语检测和识别系统106。这避免在语音检测系统内的重复(即在激活短语检测硬件112和主语音检测模块104之间的功能的重复)且因此在功率和/或空间方面更高效。
[0059]在各种例子中,麦克风系统102(例如图3中所示的麦克风系统)可以以两种模式操作。在第一模式中,麦克风系统102执行预定义的短语的检测(如上所述和在图2中的块202-204中所示的)并以(放大器302的)减小的增益和/或减小的采样速率和/或分辨率(在ADC304中)操作,这减小了当以第一模式操作时麦克风系统102的功耗。当检测到预定义的短语(在块204中)时,麦克风系统102将触发信号发送到主语音检测模块104(块206),开始缓存音频流(块208)并通过增加放大器302的增益(块216)和/或由ADC使用的采样分辨率和/或由ADC 304使用的采样速率(块214)来切换到第二操作模式。在各种例子中,可通过增加采样时钟306的速度来增加采样速率(在块214中),且在其它例子中,时钟速度可保持相同,但采样时钟信号用于驱动ADC 304的方式可改变。在这个第二模式中,激活短语检测硬件112可被绕过(例如使得音频流传递到主语音检测模块104用于分析),或如上所述,激活短语检测硬件112可对所接收的音频进行包化并向主语音检测模块104或向通信接口 108提供音频样本用于传输到远程短语检测和识别系统106。麦克风系统102可保持在第二操作模式中,直到主语音检测模块104进入低功率状态为止,此时麦克风系统102返回到第一操作模式。
[0060]在各种例子中,麦克风系统可通过调节所使用的增益、采样速率和/或采样分辨率来适应它在第一操作模式中的操作。这可例如基于被检测到的部分匹配的数量来实现(例如在块220中)。在一些例子中,如果部分匹配的数量或频率达到第一阈值,则所使用的增益、采样速率和/或采样分辨率可被增加。在一些例子中,在部分匹配的数量或频率达到第二阈值或所使用的增益、采样速率和/或采样分辨率可适于将部分匹配的数量或频率保持在目标范围内之前,所使用的增益、采样速率和/或采样分辨率可被减小。此外或替代地,麦克风系统可通过基于检测到的背景噪声的水平调节所使用的增益、采样速率和/或采样分辨率来适应它在第一操作模式中的操作。
[0061 ]通过使用如上所述的两种模式,麦克风系统的功耗减小,因为当在第一操作模式中操作时,系统将消耗更少的功率。减小的增益和/或采样速率和/或采样分辨率的使用由下面的事实实现:系统只试图检测单个预定义的短语,因此所使用的音频样本的质量不需要高到用于很多不同短语的检测(例如,如由主语音检测模块104所需的)。
[0062]如上所述,由激活短语检测硬件112检测的短语被预定义。在一些例子中,它可以是预定义的和固定的(例如它可以是工厂设定的或由用户在设置语音激活的设备时设定并被保存到激活短语存储器308内),而在其它例子中,虽然它是预定义的,但是它可随着时间的推移而改变。
[0063]在各种例子中,激活短语存储器308可存储多个不同的激活短语,其中只有一个是在任何时间“有效的”且因此在与检测到的音频比较时被使用(例如在块204中)。在各种例子中,用户可以能够在所存储的激活短语之间切换,而在其它例子中,麦克风可基于上下文信息在所存储的激活短语之间自动切换。
[0064]如图2中所示,在各种例子中,当预定义的短语被检测到(在块204中)时,除了发送触发信号(在块206中)并缓存音频(在块208中)以外,所存储的激活短语或其组成部分可使用检测到的激活短语来进行更新(块218)。这在图4中被图形化地示出。如上面参考图2所描述的,检测到的音频402的一部分被分成其组成部分404-407(在块210中),例如其被分成可以是相同的长度或不同的长度的多个组成部分。这些检测到的音频组成部分404-407接着与预定义的激活短语的所存储的组成部分408-410进行比较(在块212中)。在图4中所示的例子中,检测到的音频402的第二部分、第三部分和第四部分405-407匹配预定义的短语的三个组成部分408-410,因此触发信号被发送(在块206中)。然后通过以某种方式组合所存储的组成部分和其相应的检测到的组成部分(例如使用加权平均)可以更新所存储的组成部分408-410(在块218中)。这个组合操作产生更新的组成部分408’-410’,其然后被存储并在随后的比较操作中被使用(例如在块212的下一个迭代中)。
[0065]虽然图4示出预定义的激活短语的组成部分的更新,但是将认识到,在其它例子中,整个所存储的激活短语可被作为一个元素来更新。在其它例子中,可以用其它方式(例如使用机器学习算法)来更新所存储的短语。
[0066]通过如上所述更新所存储的激活短语,麦克风系统可学习并适应用户说特定短语(例如他们的本国语言、发音、口音等)的方式。这增加了激活短语检测硬件112可成功地检测预定义的激活短语的概率。
[0067]在各种例子中,所存储的激活短语的任何适应也可被其它因素(例如部分匹配的数量或背景噪声的水平)影响。例如,如果部分匹配的数量降到定义的阈值或预定义的目标值范围以下,则所存储的激活短语可被更新。
[0068]图4和上面的描述示出预定义的激活短语可以如何随着时间的推移而进行适应。将认识到,此外或替代地,预定义的激活短语可由更新的或新的激活短语来取代。这可例如被从外部源上传到激活短语存储器308,或当设备100在特定模式中时(例如在设置时和/或在改变所使用的语言时)可由麦克风系统102来记录。这使用户能够个性化激活短语(这可增加设备的安全性,如上所述)。
[0069]如上所述,麦克风系统102包括音频缓冲器114,音频缓冲器114用于在预定义的短语的检测(在块204中)之后存储检测到的音频(在块208中)以便适应在主语音检测模块104的唤醒中的时延(例如使得紧接着在激活短语之后的任何控制或动作短语可由主语音检测模块104来分析和识别)。然而,在其中激活短语检测硬件112实时(或接近实时)操作的一些例子中,可以不提供音频缓冲器114。然而,在一些例子中,音频缓冲器114可(此外或替代地)用于在至少短时间段内存储任何检测到的音频的组成部分,使得这可用于不同于执行与所存储的预定义的短语的比较(在块212中)的目的。
[0070]在其中预定义的短语未在检测到的音频的第一部分中被检测到的例子中,在至少检测到的音频的第二部分(例如检测到的音频的下一部分)已经被激活短语检测硬件112分析之前,检测到的音频的第一部分可被保留在音频缓冲器114中。在检测到的音频的第二部分和预定义的短语之间没有匹配的情况下,检测到的音频的第二部分可与检测到的音频的所存储的第一部分进行比较(例如以与块212类似的方式使用模式匹配,但是与检测到的音频的所存储的第一部分而不是预定义的短语的所存储的组成部分进行比较)。在第一部分和第二部分之间存在匹配的情况下,触发信号可被发送以唤醒主语音检测模块104,且检测到的音频的第一部分和第二部分中的至少一个被发送到主语音检测模块104(当在操作状态中时)用于分析。
[0071]在其中预定义的短语未在检测到的音频的第一部分中被检测的另一个例子中,在至少检测到的音频的第二部分(例如检测到的音频的下一部分)已经被激活短语检测硬件112分析之前,检测到的音频的第一部分可被保留在音频缓冲器114中。在检测到的音频的第二部分和预定义的短语之间没有匹配的情况下,使用来自第二部分的检查的知识来重新检查检测到的音频的所存储的第一部分。例如,如果在执行检测时检测到的音频的部分与预定义的短语的第一组成部分和第二组成部分进行比较且第二部分匹配这些组成部分之一,则当重新检查第一部分时,检查可集中于来自第二部分的另一(不匹配的)组成部分,且如果所有组成部分可在检测到的音频的第一部分和第二部分中的至少一个中被匹配,则匹配可被认为被检测到。在存在这样的匹配的情况下,可发送触发信号以唤醒主语音检测模块 104。
[0072 ]在图2中所示的方法中的这些变化应对其中麦克风系统1 2最初未能检测到激活短语(例如由于背景噪声、不同的用户等)故用户重复激活短语的情况。
[0073]虽然触发信号(其在块206中被发送)在上面被描述为用于唤醒处理器(例如CPU),但是它可附加地被使用(或附加的触发信号可被发送)来唤醒包括麦克风系统的设备的其它部分。例如,触发信号可被发送到通信接口 108以从低功率状态唤醒它和/或发送到显示接口以开启显示屏。在另一例子中,触发信号可使设备产生声音(例如发出嘟嘟声)以指示设备准备好进一步的语音输入。
[0074]如上所述,语音检测机构被分成两个部分。在麦克风系统内在硬件中实现的第一部分只检测激活短语(而不检测其它短语)且第二部分检测多个短语并可在通用处理器上(例如在CPU上)在软件中实现。通过以这种方式实现设备的语音控制,可能出现设备进入低功率状态且只有麦克风系统操作和仍然能够对说出激活短语的用户快速做出响应,即:设备内的CPU系统不需要是在工作中的,同时设备处于低功率状态中。这减少了设备的功耗并因此在设备是电池供电的情况下增加了电池寿命。
[0075]因为激活短语检测硬件112位于麦克风系统102内,所以它接近麦克风接口。这允许设备被制造得较小并此外能够使短语检测被并入没有高性能CPU(其充当主语音检测模块)或甚至根本没有CHJ系统的更简单的设备内。例如,麦克风系统102可被实现到电灯泡或灯开关(例如使用“light”或“lightswitch”的预定义的短语)内。在这样的例子中,触发信号(在块206中被发送)不用于唤醒主语音检测模块,但反而用于控制设备的一部分(例如以触发电灯泡接通/关断)。
[0076]提供了上面涉及包括一个或多个口语词的激活短语(例如一般短语,例如“computer” 或 “sat nav” 或特定于平台的短语例如 “Hey Siri?”、“OK Google?” 和 “HeyCortana?”)的使用的描述和各种例子。在另外的例子中,激活短语可包括任何预定义的声音(例如环境声音),且可以不包括口语词。例如,上面所述的方法可与婴儿监控应用一起使用,且预定义的激活短语可以是婴儿哭泣的音频样本。在这样的例子中,预定义的激活短语(例如以如婴儿哭泣的环境声音的形式)可像上面的电灯泡例子一样用于触发在麦克风系统外部的设备(但其不是主语音检测模块)的另一部分的操作。可用作预定义的激活短语的环境声音的另外的例子包括交通/道路噪声(例如对于本文所述的方法的基于交通工具的应用)。
[0077]术语“处理器”和“计算设备”(或“计算机”)在本文用于指具有处理能力使得其可执行指令的任何设备或其部分。术语“处理器”可例如包括中央处理单元(CPU)、图形处理单元(GPU或VPU)、物理处理单元(PPU)、无线电处理单元(RPU)、数字信号处理器(DSP)、通用处理器(例如通用GPU)、微处理器、被设计成加速在CPU外部的任务的任何处理单元等。本领域中的技术人员将认识到,这样的处理能力被并入很多不同的设备内,且因此术语“计算设备”包括机顶盒、媒体播放器、数字收音机、数字电视机、PC、服务器、移动电话、个人数字助理和很多其它设备。
[0078]本领域中的技术人员将认识到,用于存储程序指令的存储设备可分布在整个网络中。例如,远程计算机可存储被描述为软件的过程的实例。本地或终端计算机可访问远程计算机并下载软件的一部分或全部以运行程序。可选地,本地计算机可按需要下载软件的片段或执行在本地终端处的一些软件指令和在远程计算机(或计算机网络)处的一些软件指令。本领域中的技术人员也将认识到,通过利用本领域中的技术人员已知的常规技术,软件指令的全部或一部分可由例如DSP、可编程逻辑阵列等的专用电路来实现。
[0079]存储用于在实现所公开的方面时使用的机器可执行数据的存储器可以是非暂时性介质。非暂时性介质可以是易失性的或非易失性的。易失性非暂时性介质的例子包括基于半导体的存储器,例如SRAM或DRAM。可用于实现非易失性存储器的技术的例子包括光学和磁存储器技术、闪存、相变存储器、电阻式RAM。
[0080]对“逻辑”的特定提及指的是执行一种功能或多种功能的结构。逻辑的例子包括被布置成执行那些功能的电路。例如,这样的电路可包括晶体管和/或在制造过程中可用的其它硬件元件。例如,这样的晶体管和/或其它元件可用于形成实现和/或包含存储器(例如寄存器、触发器或锁存器)、逻辑运算器例如布尔运算、数学运算器(例如加法器、乘法器或移位器)和互连的电路或结构。这样的元件可被作为定制电路或标准单元库、宏或在其它抽象层提供。这样的元件可以在特定的布置中被互连。逻辑可包括具有固定功能的电路,且电路可被编程以执行一种功能或多种功能;这样的编程可被从固件或软件更新或控制机制来提供。被识别为执行一种功能的逻辑也可包括实现组成性功能或子过程的逻辑。在例子中,硬件逻辑具有实现固定功能操作或多个操作、状态机或过程的电路。
[0081]如对技术人员将明显的是,本文给出的任何范围或设备值可被扩展或改变而不失去所寻求的效果。
[0082]将理解的是,上面描述的益处和优点可涉及一个实施方式或可涉及几个实施方式。实施方式不限于解决任何或所有所陈述的问题的那些实施方式或具有任何或全部所陈述的益处和优点的那些实施方式。
[0083]对“一个(an)”项的任何提及指的是那些项中的一个或多个。术语“包括(comprising)”在本文用于表示包括所识别的方法块或元素,但这样的块或元素并不包括排他性列表,且装置可包含附加的块或元素,以及方法可包含附加的操作或元素。此外,块、元素和操作本身并不隐含地是封闭的。
[0084]本文描述的方法的步骤可在适当情况下被以任何适当的顺序或同时执行。在附图中的框之间的箭头示出方法步骤的一个示例顺序,但并不旨在排除其它顺序或并行的多个步骤的执行。此外,单独的块可被从方法中的任意一个删除而不偏离本文描述的主题的精神和范围。上面描述的例子中的任何例子的方面可与所描述的其它例子中的任一个的方面进行组合以形成另外的例子,而不失去所寻求的效果。在附图的元素箭被示出为由箭头连接的情况下,将理解的是,这些箭头仅仅示出在元素之间的通信(包括数据和控制消息)的一个示例流动。在元素之间的流动可以在任一方向上或在两个方向上。
[0085]将理解的是,仅仅通过示例的方式给出了优选实施方式的以上描述,以及可由本领域的技术人员做出各种修改。尽管以上已经以某种程度的特殊性或参考一个或多个单独的实施方式描述了各种实施方式,但是本领域技术人员可以对所公开的实施方式做出很多变更而不偏离本发明的精神或范围。
【主权项】
1.一种麦克风系统(102),其包括麦克风(I 10)和硬件逻辑(I 12),所述硬件逻辑(I 12)被配置成检测在经由所述麦克风接收的音频流中的预定义的短语,并响应于检测到所述预定义的短语而发送触发信号以激活在所述麦克风系统外部的模块。2.根据权利要求1所述的麦克风系统,还包括音频缓冲器(114),所述音频缓冲器(114)被布置成:在经由所述麦克风接收的所述音频流的包括所述预定义的短语的第一部分之后存储所述音频流的第二部分。3.根据前述权利要求中的任一项所述的麦克风系统,其中所述硬件逻辑被配置成:将检测到的音频的一部分分成一个或多个组成部分并将所述组成部分与所述预定义的短语的一个或多个所存储的组成部分进行比较。4.根据权利要求1所述的麦克风系统,还包括放大器(302),所述放大器(302)被配置成:根据增益参数放大经由所述麦克风接收的所述音频流并将所放大的音频流输出到被配置成检测所述预定义的短语的所述硬件逻辑,并且其中所述硬件逻辑还被配置成:响应于检测到所述预定义的短语而向所述放大器发送信号以增加所述增益参数的值。5.根据权利要求4所述的麦克风系统,其中所述硬件逻辑还被配置成:响应于在所述麦克风系统外部的所述模块进入低功率模式而向所述放大器发送信号以减小所述增益参数的值。6.根据权利要求1所述的麦克风系统,还包括模数转换器(304),所述模数转换器(304)被配置成:通过以一采样速率和一采样分辨率对经由所述麦克风接收的所述音频流进行采样来将所接收的音频流转换成数字音频流,并且将所述数字音频流输出到被配置成检测所述预定义的短语的所述硬件逻辑,并且其中所述硬件逻辑还被配置成:响应于检测到所述预定义的短语而发送信号以增加所述采样速率和/或采样分辨率。7.根据权利要求6所述的麦克风系统,其中所述硬件逻辑还被配置成:响应于在所述麦克风系统外部的所述模块进入低功率模式而发送信号以减小所述采样速率和/或采样分辨率。8.根据权利要求1、2和4-7中的任一项所述的麦克风系统,还包括被布置成存储所述预定义的短语的激活短语存储器(308);其中可选地,所述硬件逻辑还被配置成:响应于检测到所述预定义的短语而使用所检测到的预定义的短语来更新所存储的预定义的短语。9.根据权利要求1、2和4-7中的任一项所述的麦克风系统,其中所述硬件逻辑还被配置成:响应于部分地检测到所述预定义的短语而将所述音频流的包括所部分地检测到的预定义的短语的一部分发送到在所述麦克风系统外部的所述模块。10.根据权利要求1、2和4-7中的任一项所述的麦克风系统,其中所述硬件逻辑还被配置成:响应于部分地检测到在所述音频流的第一部分中的所述预定义的短语来: 确定所述音频流的包括部分地检测到的预定义的短语的前一部分是否被存储; 响应于确定所述音频流的包括部分地检测到的预定义的短语的所述前一部分未被存储,存储所述音频流的所述第一部分; 响应于确定所述音频流的包括部分地检测到的预定义的短语的所述前一部分被存储,将所述音频流的所述第一部分与所述音频流的所存储的前一部分进行比较;以及 响应于检测到在所述音频流的所述第一部分和所述音频流的所存储的前一部分之间的匹配,发送触发信号以激活在所述麦克风系统外部的所述模块。11.根据权利要求1、2和4-7中的任一项所述的麦克风系统,其中所述预定义的短语是环境声音的样本,或其中所述预定义的短语包括一个或多个口语词和/或其中所述预定义的短语是用于语音控制计算设备的激活短语。12.根据权利要求11所述的麦克风系统,其中在所述麦克风系统外部的所述模块是主语音检测模块(104),并且所述主语音检测模块由在所述语音控制计算设备中的处理器实现。13.根据权利要求11所述的麦克风系统,其中所述麦克风系统包括两种操作模式,以及其中 在第一操作模式中,所述硬件逻辑被配置成:通过将检测到的音频的一部分分成一个或多个组成部分并将所述组成部分与所述预定义的短语的一个或多个所存储的组成部分进行比较来检测经由所述麦克风接收的音频流中的预定义的短语,以及响应于检测到所述预定义的短语而发送触发信号以激活在所述麦克风系统外部的第一模块;以及 在第二操作模式中,所述硬件逻辑被配置成:将检测到的音频的一部分分成一个或多个组成部分并将所述组成部分提供到在所述麦克风系统外部的第二模块; 其中可选地,在所述麦克风系统外部的所述第一模块和在所述麦克风系统外部的所述第二模块是相同的,以及所述模块是主语音检测模块(104);或 在所述麦克风系统外部的所述第一模块是主语音检测模块(104),而在所述麦克风系统外部的所述第二模块是被布置成将所述组成部分传输到远程短语检测和识别系统(106)的通信接口(108)。14.根据权利要求1所述的麦克风系统,其中所述硬件逻辑被配置成连续分析经由所述麦克风接收的所述音频流以检测所述预定义的短语。15.—种操作麦克风系统的方法,包括: 使用在所述麦克风系统中的麦克风检测音频流(202); 使用在所述麦克风系统中的专用硬件分析所述音频流以检测预定义的短语,所述专用硬件被配置成检测在输入音频流中的所述预定义的短语(204);以及 响应于检测到所述预定义的短语(205),发送触发信号以激活在所述麦克风系统外部的模块(206)。
【文档编号】G10L15/26GK105931640SQ201610099793
【公开日】2016年9月7日
【申请日】2016年2月23日
【发明人】本杰明·詹姆斯·克尔
【申请人】想象技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1