用于噪声抑制话音检测的线性滤波

文档序号:914643 发布日期:2021-02-26 浏览:3次 >En<

阅读说明:本技术 用于噪声抑制话音检测的线性滤波 (Linear filtering for noise-suppressed voice detection ) 是由 塞义德·巴盖里·塞雷斯基 丹妮亚·贾科贝洛 于 2019-05-17 设计创作,主要内容包括:用于抑制噪声并检测由多个麦克风捕获的多通道音频信号中的语音输入的系统和方法包括:(i)经由第一麦克风捕获第一音频信号以及经由第二麦克风捕获第二音频信号,其中,第一音频信号和第二音频信号分别包括来自噪声源的第一噪声内容和第二噪声内容;(ii)识别第一音频信号中的第一噪声内容;(iii)使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容;(iv)使用估计噪声内容来抑制第一音频信号和第二音频信号中的第一噪声内容和第二噪声内容;(v)将被抑制的第一音频信号和第二音频信号组合为第三音频信号;以及(vi)确定第三音频信号包括包含唤醒词的语音输入。(Systems and methods for suppressing noise and detecting speech input in a multi-channel audio signal captured by multiple microphones include: (i) capturing a first audio signal via a first microphone and a second audio signal via a second microphone, wherein the first and second audio signals comprise first and second noise content, respectively, from a noise source; (ii) identifying a first noise content in a first audio signal; (iii) determining an estimated noise content captured by a plurality of microphones using the identified first noise content; (iv) suppressing the first and second noise content in the first and second audio signals using the estimated noise content; (v) combining the suppressed first and second audio signals into a third audio signal; and (vi) determining that the third audio signal includes a speech input that includes a wake-up word.)

用于噪声抑制话音检测的线性滤波

相关申请的交叉引用

本申请要求2018年5月18日提交的美国专利申请No.15/984,073的优先权,其全部内容通过引用并入本文。

技术领域

本公开涉及消费者产品,更具体地,涉及针对媒体回放及其方面的方法、系统、产品、特征、服务和其他元素。

背景技术

访问和收听外放设置的数字音频的选项是有限的,直到2003年SONOS公司申请了其首批专利申请中的一件题为“Method for Synchronizing Audio Playback betweenMultiple Networked Devices”的专利申请,并在2005年开始出售媒体回放系统为止。Sonos无线高保真(HiFi)系统使人们可以通过一个或多个联网回放设备体验来自许多源的音乐。通过安装在智能电话、平板计算机或计算机上的软件控制应用,人们能够在具有联网回放设备的任何房间中播放他或她想要的内容。另外,使用控制器,例如,能够将不同的歌曲流传输到具有回放设备的每个房间,能够将房间组合在一起进行同步回放,或者可以在所有房间中同步收听相同的歌曲。

鉴于对数字媒体的兴趣日益增长,仍然需要开发一种消费者易于使用的技术以进一步增强收听体验。

发明内容

本公开内容描述了尤其用于处理由多个联网的麦克风捕获的音频内容的系统和方法,以抑制来自所捕获的音频的噪声内容并检测所捕获的音频中的语音输入。

一些示例实施例涉及经由网络设备的多个麦克风来捕获(i)经由多个麦克风中的第一麦克风的第一音频信号,以及(ii)经由多个麦克风中的第二麦克风的第二音频信号。第一音频信号包括来自噪声源的第一噪声内容,并且第二音频信号包括来自同一噪声源的第二噪声内容。网络设备识别第一音频信号中的第一噪声内容,并使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容。然后,网络设备使用估计噪声内容来抑制第一音频信号中的第一噪声内容和第二音频信号中的第二噪声内容。网络设备将抑制的第一音频信号和抑制的第二音频信号组合为第三音频信号。最终,网络设备确定第三音频信号包括包含唤醒词的语音输入,并且响应于该确定,向远程计算设备发送语音输入的至少一部分以用于语音处理,以识别与唤醒词不同的语音发声。

一些实施例包括一种制品,该制品包括存储程序指令的有形的非暂时性的计算机可读介质,该程序指令在由网络设备的一个或多个处理器执行后,使网络设备执行根据本文公开的示例实施例的操作。

一些实施例包括一种网络设备,该网络没备包括一个或多个处理器,以及存储程序指令的有形的非暂时性的计算机可读介质,该程序指令在由一个或多个处理器执行后,使网络设备执行根据本文公开的示例实施例的操作。

该概述仅是说明性的,并不旨在进行限制。除了上述说明性方面、实施例和特征之外,通过参考附图和以下详细描述,其他方面、实施例和特征将变得显而易见。

附图说明

参考以下说明书、所附权利要求和附图,可以更好地理解所公开的技术的特征、方面和优点,在附图中:

图1示出了可以实践特定实施例的示例媒体回放系统配置;

图2示出了示例回放设备的功能框图;

图3示出了示例控制设备的功能框图;

图4示出了示例控制器接口;

图5示出了示例多个网络设备;

图6示出了示例网络麦克风设备的功能框图;

图7A示出了根据一些实施例的具有以波束形成阵列布置的麦克风的示例网络设备。

图7B示出了根据一些实施例的具有以无序方式布置的麦克风的示例网络设备。

图7C示出了根据一些实施例的具有在两个设备之间布置的麦克风的两个示例网络设备。

图8示出了可以实践特定实施例的示例媒体网络配置。

图9示出了根据一些实施例的示例方法。

图10示出了根据一些实施例的示例语音输入。

图11示出了通过静态波束成形技术的唤醒词检测改进的实验结果。

附图用于示出示例实施例的目的,但可以理解,本发明不限于附图所示的布置和手段。

具体实施方式

I.概述

本公开描述了尤其用于使用网络麦克风来执行噪声抑制的系统和方法。在一些实施例中,麦克风网络的一个或多个麦克风是网络设备(例如,语音使能设备(“VED”))的组件。在操作中,配备了麦克风的VED(或其他网络设备)收听提示VED捕获话音以用于语音命令处理的“唤醒词”或唤醒短语。在一些实施例中,唤醒短语包括唤醒词,反之亦然。

“唤醒词”(或唤醒短语)的一些示例可以包括:Sonos VED的“嘿,Sonos”、亚马逊VED的“Alexa”、或苹果VED的“Siri”。来自其他制造商的其他VED可以使用不同的唤醒词和/或唤醒短语。在操作中,配备麦克风的VED收听其唤醒词。并且响应于检测其唤醒词,VED(单独地或与一个或多个其他计算设备组合)在唤醒词之后记录话音,分析所记录的话音以确定语音命令,然后实现语音命令。典型的语音命令示例包括:“播放我的甲壳虫乐队的播放列表”、“打开我的客厅灯”、“将我的恒温器设置为75度”、“将牛奶和香蕉添加到我的购物清单中”等等。

图10示出了可以向VED提供的语音输入1090的示例。语音输入1090可以包括唤醒词1092、语音发声1094或两者。语音发声部分1094可以包括:例如,一个或多个口头命令1096(分别被识别为第一命令1096a和第二命令1096b)和一个或多个口头关键字1098(分别被识别为第一关键字1098a和第二关键字1098b)。在一个示例中,第一命令1096a可以是播放音乐的命令,例如,特定的歌曲、专辑、播放列表等。在该示例中,关键字1098可以是识别要在其中播放音乐的一个或多个地区(例如,图1所示的客厅和餐厅)的一个或多个单词。在一些示例中,语音发声部分1094可以包括其他信息,例如,所检测到的在用户说出的单词之间的停顿(例如,非话音的时段),如图10所示。停顿可以在语音发声部分1094内区分由用户说出的单独命令、关键字或其他信息的位置。

如图10进一步所示,VED可以指示回放设备在捕获包括命令的唤醒词和/或语音发声1096期间暂时减小音频内容回放(或“避音”)的幅度。避音可以减少音频干扰并改善语音处理精度。唤醒词、语音命令和相关语音输入捕获技术、处理、设备和系统的各种示例可以在例如2017年9月27日提交的题为“Media Playback System with Voice Assistance”的美国专利申请No.15/721,141中找到,其全部内容通过引用合并于此。

确定语音命令的一个挑战是获得话音的包括语音命令的高质量录音以用于分析。与话音的包括语音命令的较低质量录音相比,话音的包括语音命令的较高质量录音使语音算法更易于分析。在可能有多个人讲话、家用电器(例如,电视、立体声音响、空调、洗碗机等)发出噪声以及存在其他无关声音的环境中,获得话音的包括语音命令的高质量录音可能具有挑战性。

一种提高包括语音命令的声音录音质量的方法是采用麦克风阵列并使用波束成形以(i)放大来自包含语音命令的话音相对于麦克风阵列取向的方向的声音,以及(ii)衰减来自相对于麦克风阵列的其他方向的声音。在波束成形系统中,以结构化阵列布置的多个麦克风可以相对于麦克风阵列执行声音的空间定位(即,确定声音起源方向)。然而,虽然有效地抑制了来自声音录音的不必要的噪声,但是波束成形具有局限性。例如,由于波束成形需要将麦克风布置在特定的阵列配置中,因此波束成形仅在可能实现这种麦克风阵列的场景中才可行。由于硬件或其他设计约束,一些网络设备可能无法支持这种麦克风阵列。如下面更详细描述的,根据该技术的各种实施例配置的网络设备以及相关联的系统和方法可以解决与常规技术(例如,传统波束形成)相关联的这些和其他挑战,以抑制来自所捕获的音频的噪声内容。

本公开描述了使用多麦克风噪声抑制技术,该技术不必依赖于麦克风的几何布置。而是,根据各种实施例的用于抑制噪声的技术包括:假设已知固定信号和噪声频谱,对所观察到的噪声过程以及附加噪声进行线性时不变滤波。在一些实施例中,本技术使用由麦克风网络内的一个或多个相应的麦克风捕获的第一音频内容来估计由麦克风网络的一个或多个其他相应的麦克风同时捕获的第二音频内容中的噪声。然后,来自第一音频内容的估计噪声可以用于滤除噪声并保留第二音频内容中的话音。

在各种实施例中,本技术可以涉及维纳(Wiener)滤波的各方面。传统的维纳滤波技术已用于图像滤波和噪声消除,但通常包括所得滤波信号的保真度。然而,发明人已经认识到,与使用传统波束形成技术的语音输入检测相比,基于维纳滤波的相关技术可以以增强语音检测精度的方式应用于语音输入检测(例如,唤醒词检测)。

在一些实施例中,实现各种实施例的多麦克风噪声抑制技术的麦克风网络是网络设备的组件。网络设备是任何计算设备,包括(i)一个或多个处理器,(ii)一个或多个网络接口和/或一个或多个其他类型的通信接口,以及(iii)有形非暂时性计算机可读介质,包括在其中编码的指令,其中,指令当至少部分地由一个或多个处理器执行时,使网络设备执行本文公开和描述的功能。网络设备是设备的通用类,包括但不限于语音使能设备(VED)、联网的麦克风设备(NMD)、音频回放设备(PBD)和视频回放设备(VPD)。VED是一类设备,包括但不限于NMD、PBD和VPD。例如,一种VED是NMD,其是包括一个或多个处理器、网络接口以及一个或多个麦克风的网络设备。一些NMD可以附加地包括一个或多个扬声器,并执行媒体回放功能。另一种类型的VED是PBD,其是包括一个或多个处理器、网络接口以及一个或多个扬声器的网络设备。一些PBD可以可选地包括一个或多个麦克风,并执行NMD的功能。另一种类型的VED是VPD,其是包括一个或多个处理器、网络接口、一个或多个扬声器以及至少一个视频显示器的网络设备。一些VPD可以可选地包括一个或多个麦克风,并执行NMD的功能。PBD和VPD通常可以被称为媒体回放设备。

每个上述VED都可以实现至少一些语音控制功能,该功能允许VED(单独或可能与一个或多个其他计算设备组合)对经由其麦克风接收到的语音命令采取行动,从而允许用户控制VED以及(可能)其他设备。

其他实施例包括其上存储有程序指令的有形非暂时性计算机可读介质,该程序指令在由计算没备执行时使计算没备执行本文公开和描述的特征和功能。

一些实施例包括计算设备,该计算设备包括至少一个处理器以及数据存储设备和程序指令。在操作中,程序指令被存储在数据存储设备中,并且在由至少一个处理器执行时,使计算设备(单独或与其他组件或系统组合)执行本文公开和描述的特征和功能。

虽然本文描述的一些示例可以涉及由给定行动者(例如,“用户”和/或其他实体)执行的功能,但是应当理解,这仅仅出于解释的目的。除非权利要求本身的语言明确要求,否则不应将权利要求解释为要求任何此类示例行动者进行动作。本领域普通技术人员将理解,本公开包括许多其他实施例。

II.示例操作环境

图1示出媒体回放系统100的示例配置,在媒体回放系统100中可以实践或实施本文公开的一个或多个实施例。如图所示的媒体回放系统100与具有若干房间和空间(例如,主卧室、书房、餐厅和客厅)的示例家居环境相关联。如图1的示例所示,媒体回放系统100包括回放设备102-124、控制设备126和128、以及有线或无线网络路由器130。在操作中,回放设备(PBD)102-124中的任何一个可以是如先前所述的语音使能设备(VED)。

可以在以下部分中找到关于示例媒体回放系统100的不同组件以及不同组件可以如何交互以向用户提供媒体体验的进一步讨论。虽然本文的讨论可能总体上涉及示例媒体回放系统100,但是本文描述的技术不限于尤其如图1所示的家居环境内的应用。例如,本文描述的技术在可能期望多地区音频的环境中可以是有用的,例如,诸如餐馆、购物中心或机场之类的商业环境、诸如运动型多用途车(SUV)、公共汽车或小汽车、轮船或船只、飞机之类的运载工具等。

a.示例回放设备

图2示出示例回放设备200的功能框图,示例回放设备200可以被配置为图1的媒体回放系统100的回放设备102-124中的一个或多个。如上所述,回放设备(PBD)200是一种类型的语音使能设备(VED)。

回放设备200包括一个或多个处理器202、软件组件204、存储器206、音频处理组件208、音频放大器210、扬声器212、包括无线接口216和有线接口218的网络接口214、以及麦克风220。在一种情况下,回放设备200可以不包括扬声器212,而是包括用于将回放设备200连接到外部扬声器的扬声器接口。在另一种情况下,回放设备200可以既不包括扬声器212也不包括音频放大器210,而是包括用于将回放设备200连接到外部音频放大器或视听接收器的音频接口。

在一些示例中,一个或多个处理器202包括一个或多个时钟驱动计算组件,其被配置为根据存储器206中存储的指令处理输入数据。存储器206可以是有形的非暂时性计算机可读介质,其被配置为存储可由一个或多个处理器202执行的指令。例如,存储器206可以是数据储存设备,其可以加载有一个或多个处理器202可执行以实现特定功能的一个或多个软件组件204。在一个示例中,这些功能可以涉及回放设备200从音频源或另一回放设备取回音频数据。在另一示例中,这些功能可以涉及回放设备200向网络上的另一设备或回放设备发送音频数据。在又一示例中,这些功能可以涉及将回放设备200与一个或多个回放设备配对以创建多通道音频环境。

特定功能可以涉及回放设备200与一个或多个其他回放设备同步回放音频内容。在同步回放期间,收听者将优选地不能够感知到回放设备200和一个或多个其他回放设备对音频内容的回放之间的时间延迟差异。通过引用合并于此的题为“System and methodfor synchronizing operations among a plurality of independently clockeddigital data processing devices”的美国专利No.8,234,395,更详细地提供了回放设备之间的音频回放同步的一些示例。

存储器206还可以被配置为存储与回放设备200相关联的数据,例如,回放设备200是其一部分的一个或多个地区和/或地区组、回放设备200可访问的音频源、或回放设备200(或某个其他回放设备)可以与之相关联的回放队列。数据可以被存储为一个或多个状态变量,该状态变量被周期性地更新并用于描述回放没备200的状态。存储器206还可以包括与媒体系统的其他设备的状态相关联的数据,并且间或地在设备之间共享,使得设备中的一个或多个具有与系统相关联的最新数据。其他实施例也是可能的。

音频处理组件208可以包括一个或多个数模转换器(DAC)、音频预处理组件、音频增强组件或数字信号处理器(DSP)等。在一个实施例中,音频处理组件208中的一个或多个可以是一个或多个处理器202的子组件。在一个示例中,音频处理组件208可以处理和/或有意地改变音频内容以产生音频信号。然后,所产生的音频信号可被提供至音频放大器210进行放大,并通过扬声器212回放。具体地,音频放大器210可以包括被配置为将音频信号放大到用于驱动扬声器212中的一个或多个的电平的设备。扬声器212可以包括单独的换能器(例如,“驱动器”)或具有一个或多个驱动器的包括外壳的完整扬声器系统。例如,扬声器212的特定驱动器可以包括例如低音喇叭(例如,针对低频)、中频段驱动器(例如,针对中频)和/或高频扬声器(例如,针对高频)。在一些情况下,一个或多个扬声器212中的每个换能器可以由音频放大器210中的各个对应的音频放大器来驱动。除了产生用于由回放设备200回放的模拟信号之外,音频处理组件208还可以被配置为处理要向一个或多个其他回放设备发送以用于回放的音频内容。

可以例如通过音频线路输入的输入连接(例如,自动检测3.5mm音频线路输入连接)或网络接口214从外部源接收要由回放设备200处理和/或回放的音频内容。

网络接口214可以被配置为促进回放设备200与数据网络上的一个或多个其他设备之间的数据流,包括但不限于去往/来自其他VED的数据(例如,执行SPL测量的命令、SPL测量数据、设置系统响应量的命令、以及促进执行本文公开和描述的特征和功能的其他数据和/或命令)。这样,回放设备200可以被配置为通过数据网络从与回放设备200通信的一个或多个其他回放设备、局域网内的网络设备、或广域网(例如,互联网)上的音频内容源接收音频内容。回放设备200可以向网络上的其他设备发送元数据和/或从网络上的其他设备接收元数据,包括但不限于本文公开和描述的联网麦克风系统的组件。在一个示例中,回放设备200发送和接收的音频内容和其他信号(例如,元数据和其他信号)可以以数字分组数据的形式来发送,该数字分组数据包含基于互联网协议(IP)的源地址和基于IP的目的地地址。在这种情况下,网络接口214可以被配置为解析数字分组数据,使得去往回放设备200的数据被回放设备200正确地接收和处理。

如图所示,网络接口214可以包括无线接口216和有线接口218。无线接口216可以为回放设备200提供网络接口功能,以根据通信协议(例如,任何无线标准,包括IEEE802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、4G移动通信标准等)与其他设备(例如,与回放设备200相关联的数据网络内的其他回放设备、扬声器、接收器、网络设备、控制设备)无线通信。有线接口218可以为回放设备200提供网络接口功能,以根据通信协议(例如,IEEE 802.3)通过有线连接与其他设备通信。虽然图2中所示的网络接口214包括无线接口216和有线接口218两者,但是在一些实施例中,网络接口214可以仅包括无线接口或仅包括有线接口。

麦克风220可以被布置为检测回放设备200的环境中的声音。例如,麦克风可以安装在回放设备的外壳的外壁上。麦克风可以是现在已知或以后开发的任何类型的麦克风,例如,电容式麦克风、驻极体电容式麦克风或动态麦克风。麦克风可以对扬声器220的频段的一部分敏感。扬声器220中的一个或多个可以与麦克风220相反地操作。在一些方面中,回放设备200可能不具有麦克风220。

在一个示例中,回放设备200和另一回放设备可以配对,以播放音频内容的两个单独的音频分量。例如,回放设备200可以被配置为播放左通道音频分量,而另一回放设备可以被配置为播放右通道音频分量,从而产生或增强音频内容的立体声效果。配对的回放设备(也称为“绑定的回放设备”)还可以与其他回放设备同步播放音频内容。

在另一示例中,回放设备200可以与一个或多个其他回放设备声音合并以形成单个合并的回放设备。合并的回放设备可以被配置为与非合并的回放设备或配对的回放设备不同地处理和再现声音,这是因为合并的回放设备可以具有可以通过其呈现音频内容的附加的扬声器驱动器。例如,如果回放设备200是被设计为呈现低频段音频内容的回放设备(即,低音炮),则回放设备200可以与被设计为呈现全频段音频内容的回放设备合并。在这种情况下,当与低频回放设备200合并时,全频段回放设备可以被配置为仅呈现音频内容的中高频分量,而低频段回放设备200则呈现音频内容的低频分量。合并的回放设备还可以与单个回放设备或另一合并的回放设备配对。

举例来说,SONOS公司目前提供(或已经提供)销售包括“PLAY:1”、“PLAY:3”、“PLAY:5”、“PLAYBAR”、“CONNECT:AMP”、“CONNECT”、和“SUB”的某些回放设备。

任何其他过去、现在和/或将来的回放设备可以附加地或备选地用于实现本文公开的示例实施例的回放设备。此外,应当理解,回放设备不限于图2示出的示例或Sonos的产品供应。例如,回放设备可以包括有线或无线耳机。在另一示例中,回放设备可以包括个人移动媒体回放设备的扩展基座,或与其交互。在又一示例中,回放设备可以集成到另一设备或组件,例如,电视、照明器材或在室内或室外使用的一些其他设备。

b.示例回放地区配置

返回参考图1的媒体回放系统100,环境可以具有一个或多个回放地区,每个回放地区具有一个或多个回放设备和/或其他VED。媒体回放系统100可以建立有一个或多个回放地区,之后可以添加或移除一个或多个地区,以达到图1所示的示例配置。每个地区可以根据不同的房间或空间(例如,书房、洗手间、主卧室、卧室、厨房、餐厅、客厅和/或阳台)被赋予名称。在一种情况下,单个回放地区可以包括多个房间或空间。在另一种情况下,单个房间或空间可以包括多个回放地区。

如图1所示,阳台、餐厅、厨房、洗手间、书房和卧室地区均具有一个回放设备,而客厅和主卧室地区均具有多个回放设备。在客厅地区中,回放设备104、106、108和110可以被配置为作为单独的回放设备、作为一个或多个绑定的回放设备、作为一个或多个合并的回放设备或其任何组合来同步播放音频内容。类似地,在主卧室的情况下,回放设备122和124可以被配置为作为单独的回放设备、作为绑定的回放设备、或作为合并的回放设备来同步播放音频内容。

在一个示例中,图1的环境中的一个或多个回放地区均可以播放不同的音频内容。例如,用户可以在阳台地区中烧烤并收听正由回放设备102播放的嘻哈音乐,而另一用户可以正在厨房地区中准备食物并收听正由回放设备114播放的古典音乐。在另一示例中,回放地区可以与另一个回放地区同步地播放相同的音频内容。例如,用户可以在书房地区中,其中,回放设备118正在播放与阳台地区中的回放设备102正在播放的摇滚音乐相同的摇滚音乐。在这种情况下,回放设备102和118可以同步播放摇滚音乐,使得用户可以在不同回放地区之间移动时无缝地(或至少基本上无缝地)欣赏被外放的音频内容。可以以类似于如先前引用的美国专利No.8,234,395中所述的回放设备之间的同步的方式来实现回放地区之间的同步。

如上文所建议的,可以动态地修改媒体回放系统100的地区配置,并且在一些实施例中,媒体回放系统100支持多种配置。例如,如果用户将一个或多个回放设备物理地移动到地区中或从地区中移出,则可以重新配置媒体回放系统100以适应改变。例如,如果用户将回放设备102从阳台地区物理地移动到书房地区,则书房地区现在可以包括回放设备118和回放设备102两者。可以经由控制设备(例如,控制设备126和128),将回放设备102与书房地区配对或分组,和/或重新命名(如果需要)。另一方面,如果一个或多个回放设备被移动到家居环境中还不是回放地区的特定区域,则可以针对该特定区域创建新的回放地区。

此外,媒体回放系统100的不同回放地区可以被动态组合为地区组或分成单独的回放地区。例如,餐厅地区和厨房地区可以组合为用于宴会的地区组,使得回放设备112和114可以同步呈现(例如,回放)音频内容。另一方面,如果用户期望在客厅空间中收听音乐,而另一用户期望看电视,则客厅地区可以被分成包括回放设备104的电视地区和包括回放设备106、108和110的收听地区。

c.示例控制设备

图3示出了示例控制设备300的功能框图,示例控制设备300可以被配置为媒体回放系统100的控制设备126和128中的一个或两者。如图所示,控制设备300可以包括一个或多个处理器302、存储器304、网络接口306、用户界面308、麦克风310和软件组件312。在一个示例中,控制设备300可以是用于媒体回放系统100的专用控制器。在另一示例中,控制设备300可以是可以在其上安装媒体回放系统控制器应用软件的网络设备,例如,iPhoneTM、iPadTM或任何其他智能电话、平板计算机或网络设备(例如,联网计算机,如PC或MacTM)。

一个或多个处理器302可以被配置为执行与有助于用户对媒体回放系统100进行访问、控制和配置相关的功能。存储器304可以是数据储存器,其可以加载有一个或多个处理器302可执行的用于执行这些功能的软件组件中的一个或多个。存储器304还可以被配置为存储媒体回放系统控制器应用软件和与媒体回放系统100和用户相关联的其他数据。在一个示例中,网络接口306可以基于行业标准(例如,红外;无线电;包括IEEE 802.3的有线标准;包括IEEE 802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、3G、4G或5G移动通信标准的无线标准等)。网络接口306可以提供用于控制设备300与媒体回放系统100中的其他设备通信的手段。在一个示例中,可以通过网络接口306在控制设备300和其他设备之间传送数据和信息(例如,状态变量)。例如,媒体回放系统100中的回放地区和地区组配置可以由控制设备300通过网络接口306从回放设备或另一网络设备接收,或者由控制设备300通过网络接口306向另一回放设备或网络设备发送。在一些情况下,该另一网络设备可以是另一控制设备。

回放设备控制命令(例如,音量控制和音频回放控制)也可以通过网络接口306从控制设备300向回放设备传送。如上文所建议的,还可以由用户使用控制设备300来执行对媒体回放系统100的配置的更改。配置更改可以包括:将一个或多个回放设备添加到地区/从地区中删除;将一个或多个地区添加到地区组/从地区组中删除;形成绑定或合并的播放器;将一个或多个回放设备与绑定或合并的播放器分离等。因此,控制设备300有时可以被称为控制器,无论控制设备300是专用控制器还是在其上安装有媒体回放系统控制器应用软件的网络设备。

控制设备300可以包括麦克风310。麦克风310可以被布置为检测控制设备300的环境中的声音。麦克风310可以是现在已知或以后开发的任何类型的麦克风,例如,电容式麦克风、驻极体电容式麦克风或动态麦克风。麦克风可以对频段的一部分敏感。两个或更多个麦克风310可以被布置为捕获音频源(例如,语音、可听声音)的位置信息和/或帮助对背景噪声进行滤波。

控制设备300的用户界面308可以被配置为通过提供控制器界面(例如,图4中所示的示例控制器界面400)来促进用户访问和控制媒体回放系统100。控制器界面400包括回放控制区域410、回放地区区域420、回放状态区域430、回放队列区域440和音频内容源区域450。所示的用户界面400仅是可以在网络设备(例如,图3的控制设备300(和/或图1的控制设备126和128))上提供、并由用户访问以控制媒体回放系统(例如,媒体回放系统100)的用户界面的一个示例。备选地,可以在一个或多个网络设备上实现变化的格式、样式和交互序列的其他用户界面,以提供对媒体回放系统的类似的控制访问。

回放控制区域410可以包括可选择(例如,通过触摸或通过使用光标)图标,以使所选择的回放地区或地区组中的回放设备播放或暂停、快进、快退、跳到下一个、跳到前一个、进入/退出随机播放模式、进入/退出重复模式、进入/退出交叉淡入淡出模式。回放控制区域410还可以包括用于修改均衡设置、回放音量等的可选择图标。

回放地区区域420可以包括媒体回放系统100内的回放地区的表示。在一些实施例中,回放地区的图形表示可以是可选择的,以调出附加的可选择图标来管理或配置媒体回放系统中的回放地区,例如,创建绑定的地区、创建地区组、分离地区组、重命名地区组等。

例如,如图所示,可以在回放地区的每个图形表示内提供“分组”图标。在特定地区的图形表示内提供的“分组”图标可以是可选择的,以便调出用于选择媒体回放系统中的、将与特定地区分组的一个或多个其他地区的选项。一旦被分组,已经与特定地区分在一组的地区中的回放设备将被配置为与特定地区中的回放设备同步地播放音频内容。类似地,可以在地区组的图形表示内提供“分组”图标。在这种情况下,“分组”图标可以是可选择的,以调出用于取消选择地区组中的要从该地区组中移除的一个或多个地区的选项。经由用户界面(例如,用户界面400)对地区进行分组和取消分组的其他交互和实现也是可能的。当回放地区或地区组配置被修改时,可以动态地更新回放地区区域420中的回放地区的表示。

回放状态区域430可以包括在所选择的回放地区或地区组中当前正在播放、先前播放或被安排为接下来播放的音频内容的图形表示。可以在用户界面上可视地区分所选择的回放地区或地区组,例如,在回放地区区域420和/或回放状态区域430内。图形表示可以包括曲目名称、艺术家姓名、专辑名称、专辑年份、曲目长度以及当经由用户界面400控制媒体回放系统时用户知道了会有用的其他相关信息。

回放队列区域440可以包括与所选择的回放地区或地区组相关联的回放队列中的音频内容的图形表示。在一些实施例中,每个回放地区或地区组可以与回放队列相关联,该回放队列包含与由该回放地区或地区组回放的零个或多个音频项相对应的信息。例如,回放队列中的每个音频项可以包括统一资源标识符(URI)、统一资源定位符(URL)或一些其他标识符,其可以由回放地区或地区组中的回放设备用于从本地音频内容源或联网音频内容源查找和/或取回音频项,可能供回放设备回放。

在一个示例中,可以将播放列表添加到回放队列,在这种情况下,可以将与播放列表中的每个音频项对应的信息添加到回放队列。在另一示例中,回放队列中的音频项可以被保存为播放列表。在另一示例中,当回放地区或地区组正在持续播放流媒体音频内容(例如,互联网收音机,其可以持续播放直到被停止),而不是具有回放持续时间的分立音频项时,回放队列可以是空的或被填充但是“未使用”。在备选实施例中,回放队列可以包括互联网收音机和/或其他流媒体音频内容项,并且当回放地区或地区组正在播放这些项时处于“使用中”。其他示例也是可能的。

当回放地区或地区组被“分组”或“取消分组”时,可以清除与受影响的回放地区或地区组相关联的回放队列,或者重新关联。例如,如果包括第一回放队列的第一回放地区与包括第二回放队列的第二回放地区分组,则所建立的地区组可以具有相关联的回放队列,其最初是空的,包含来自第一回放队列的音频项(例如,如果第二回放地区被添加到第一回放地区),或包含来自第二回放队列的音频项(例如,如果第一回放地区被添加到第二回放地区),或包含来自第一回放队列和第二回放队列二者的音频项的组合。随后,如果所建立的地区组被取消分组,则所得到的第一回放地区可以与先前的第一回放队列重新关联,或者与新的回放队列相关联,该新的回放队列是空的,或者包含与来自在所建立的地区组被取消分组之前所建立的地区组相关联的回放队列的音频项。类似地,所得到的第二回放地区可以与先前的第二回放队列重新关联,或者与新的回放队列相关联,该新的回放队列是空的,或者包含来自在与所建立的地区组被取消分组之前所建立的地区组相关联的回放队列的音频项。其他示例也是可能的。

返回参考图4的用户界面400,音频内容在回放队列区440中的图形表示可以包括曲目标题、艺术家姓名、曲目长度以及与回放队列中的音频内容相关联的其他相关信息。在一个示例中,音频内容的图形表示可以是可选择的,以调出附加的可选择图标来管理和/或操纵回放队列和/或回放队列中表示的音频内容。例如,可以将所表示的音频内容从回放队列中移除,将所表示的音频内容移动到回放队列内的不同位置,或者选择所表示的音频内容以立即播放,或者在任何当前播放的音频内容之后进行播放等。与回放地区或地区组相关联的回放队列可以存储于存储器中,所述存储器在该回放地区或地区组中的一个或多个回放设备上、在不在该回放地区或地区组中的回放设备上和/或在一些其他指定设备上。

音频内容源区域450可以包括可选择的音频内容源的图形表示,可以从音频内容源中获取音频内容,并由所选择的回放地区或地区组来播放。有关音频内容源的讨论可参见以下部分。

d.示例音频内容源

如前所述,地区或地区组中的一个或多个回放设备可以被配置为从各种可用音频内容源中取回回放音频内容(例如,根据音频内容的对应URI或URL)。在一个示例中,回放设备可以直接从对应的音频内容源(例如,线路输入连接)中取回音频内容。在另一示例中,可以在网络上、经由一个或多个其他回放设备或网络设备向回放设备提供音频内容。

示例音频内容源可以包括:媒体回放系统(例如,图1的媒体回放系统100)中的一个或多个回放设备的存储器、一个或多个网络设备(例如,控制器设备、支持网络的个人计算机、或者网络附接存储装置(NAS)等)上的本地音乐库、通过互联网(例如,云)提供音频内容的流媒体音频服务、或者通过回放设备或网络设备上的线路输入连接与媒体回放系统连接的音频源等。

在一些实施例中,可以从媒体回放系统(例如,图1的媒体回放系统100)中定期添加音频内容源,或从中移除音频内容源。在一个示例中,每当添加、移除或更新一个或多个音频内容源时,可以执行对音频项编索引。对音频项编索引可以包括:扫描由媒体回放系统中的回放设备可访问的网络上共享的所有文件夹/目录中的可识别音频项,并且生成或更新包含元数据(例如,标题、艺术家、专辑、曲目长度等)及其他关联信息(例如,URL或用于找到的每个可识别音频项的URI)的音频内容数据库。用于管理和维护音频内容源的其他示例也是可能的。

以上关于回放设备、控制器设备、回放地区配置和媒体内容源的讨论仅提供了操作环境的一些示例,在该操作环境中可以实现下面描述的功能和方法。本文未明确描述的媒体回放系统、回放设备和网络设备的配置和其他操作环境也可以适用且适于功能和方法的实现。

e.示例多个网络设备

图5示出了示例多个网络设备500,其可以被配置为用语音控制提供音频回放体验。本领域普通技术人员将了解,图5中所示的设备仅用于说明目的,并且包括不同和/或附加的(或更少的)设备的变化是可能的。如图所示,多个网络设备500包括计算设备504、506和508;网络麦克风设备(NMD)512、514、516和518;回放设备(PBD)532、534、536和538;以及控制器设备522。如前所述,NMD 512-16、PBD 532-38和/或控制器设备522中的任何一个或多个(或全部)可以是VED。例如,在一些实施例中,PBD 532和536可以是VED,而PBD 534和538可以不是VED。

多个网络设备500中的每个设备是具有网络功能的设备,其可以根据一个或多个网络协议(例如,NFC、蓝牙TM、以太网和IEEE 802.11等),在一种或多种类型的网络(例如,广域网(WAN)、局域网(LAN)和个域网(PAN)等)上与多个设备中的一个或多个其他设备建立通信。

如图所示,计算设备504、506和508是云网络502的一部分。云网络502可以包括附加的计算设备(未示出)。在一个示例中,计算设备504、506和508可以是不同的服务器。在另一示例中,计算设备504、506和508中的两个或更多个可以是单个服务器的模块。类似地,计算设备504、506和508中的每一个可以包括一个或多个模块或服务器。本文中为了便于说明,计算设备504、506和508中的每一个可以被配置为在云网络502内执行特定功能。例如,计算设备508可以是用于流音乐服务的音频内容的源,而计算设备506可以与用于处理在检测到唤醒词之后已捕获的语音输入的语音助手服务(例如,Google 或其他语音服务)相关联。作为示例,VED可以通过数据网络向计算设备506发送所捕获的语音输入(例如,语音发声和唤醒词)或其一部分(例如,紧接在唤醒词之后的语音发声)以用于话音处理。计算设备506可以采用文本到话音引擎来将语音输入转换为文本,可以对该文本进行处理以确定语音发声的基本意图。计算设备506或另一计算设备可以向VED发送对语音输入的对应响应,例如,包括作为其有效载荷的一个或多个可听输出的响应(例如,对查询和/或确认的语音响应)和/或旨在用于本地系统的一个或多个网络设备的指令。该指令可以包括例如用于在一个或多个网络设备上发起、暂停、恢复或停止音频内容的回放,增大/减小回放音量,经由特定URI或URL等取回与音频队列相对应的曲目或播放列表的命令。例如,在先前参考的美国专利申请No.15/721,141中可以找到确定意图并响应语音输入的语音处理的附加示例。

如图所示,计算设备504可以被配置为经由通信路径542与NMD 512、514和516接口连接。NMD 512、514和516可以是一个或多个“智能家居”系统的组件。在一种情况下,NMD512、514和516可以物理地分布在整个家中,类似于图1所示的设备分布。在另一种情况下,NMD 512、514和516中的两个或更多个可以物理地位置彼此相对靠近。通信路径542可以包括一种或多种类型的网络,例如,包括互联网的WAN、LAN和/或PAN等。

在一个示例中,NMD 512、514和516中的一个或多个是被配置为主要用于音频检测的设备。在另一示例中,NMD 512、514和516中的一个或多个可以是具有各种主要实用程序的设备的组件。例如,如上面结合图2和图3所讨论的,NMD 512、514和516中的一个或多个可以是(或至少可以包括)回放设备200的麦克风220或网络设备300的麦克风310(或至少可以是其组件)。此外,在一些情况下,NMD 512、514和516中的一个或多个可以是(或至少可以包括)回放设备200或网络设备300(或至少可以是其组件)。在示例中,NMD 512、514和/或516中的一个或多个可以包括布置在麦克风阵列中的多个麦克风。在一些实施例中,NMD 512、514和/或516中的一个或多个可以是移动计算设备(例如,智能电话、平板计算机、或其他计算设备)上的麦克风。

如图所示,计算设备506被配置为经由通信路径544与控制器设备522和PBD 532、534、536和538接口连接。在一个示例中,控制器设备522可以是网络设备,例如,图2的网络设备200。因此,控制器设备522可以被配置为提供图4的控制器界面400。类似地,PBD 532、534、536和538可以是回放设备,例如图3的回放设备300。这样,PBD 532、534、536和538可以物理地分布在整个家中,如图1所示。为了说明目的,PBD 536和538被示出为绑定地区530的成员,而PBD 532和534是它们各自地区的成员。如上所述,PBD 532、534、536和538可以被动态地绑定、分组、解除绑定和取消分组。通信路径544可以包括一种或多种类型的网络,例如,包括互联网的WAN、LAN和/或PAN等。

在一个示例中,与NMD 512、514和516一样,控制器设备522和PBD 532、534、536和538也可以是一个或多个“智能家居”系统的组件。在一种情况下,PBD 532、534、536和538与NMD 512、514和516分布在相同的家中。此外,如上文建议的,PBD 532、534、536和538中的一个或多个可以是NMD 512、514和516中的一个或多个。例如,NMD 512-16、PBD 532-38和/或控制器设备522中的任何一个或多个(或可能全部)可以是语音使能设备(VED)。

NMD 512、514和516可以是局域网的一部分,并且通信路径542可以包括通过WAN(通信路径,未示出)将NMD 512、514和516的局域网链接到计算设备504的接入点。同样地,NMD 512、514和516中的每一个可以经由该接入点彼此通信。

类似地,控制器设备522和PBD 532、534、536和538可以是局域网和/或本地回放网络的一部分(如前面部分中讨论的),并且通信路径544可以包括通过WAN将控制器设备522和PBD 532、534、536和538的局域网和/或本地回放网络链接到计算设备506的接入点。这样,控制器设备522和PBD 532、534、536和538中的每一个也可以通过该接入点彼此通信。

在一个示例中,通信路径542和544可以包括相同的接入点。在示例中,NMD 512、514和516、控制器设备522和PBD 532、534、536和538中的每一个可以经由家庭的相同接入点来访问云网络502。

如图5所示,NMD 512、514和516、控制器设备522和PBD 532、534、536和538中的每一个还可以经由通信方式546与一个或多个其他没备直接通信。如本文所述的通信方式546可以涉及和/或包括根据一个或多个网络协议通过一种或多种类型的网络在设备之间的一种或多种通信形式,和/或可以涉及经由一个或多个其他网络设备的通信。例如,通信方式546可以包括蓝牙TM(IEEE 802.15)、NFC、无线直连和/或专有无线等中的一个或多个。

在一个示例中,控制器设备522可以通过蓝牙TM与NMD 512通信,并且可以通过另一局域网与PBD 534通信。在另一示例中,NMD 514可以通过另一局域网与控制器设备522通信,并且可以通过蓝牙TM与PBD 536通信。在又一示例中,PBD 532、534、536和538中的每一个可以根据生成树协议通过本地回放网络彼此通信,同时分别通过不同于本地回放网络的局域网与控制器设备522通信。其他示例也是可能的。

在一些情况下,NMD 512、514和516、控制器设备522和PBD 532、534、536和538之间的通信方式可以根据设备之间的通信要求类型、网络状况和/或时延要求而不同(或可能改变)。例如,当NMD 516首次被引入具有PBD 532、534、536和538的家中时,可以使用通信方式546。在一种情况下,NMD 516可以通过NFC向PBD 538发送与NMD 516相对应的标识信息,并且作为响应,PBD 538可以通过NFC(或某种其他形式的通信)向NMD 516发送局域网信息。然而,一旦在家中配置了NMD 516,NMD 516和PBD 538之间的通信方式可能改变。例如,NMD516可以随后通过通信路径542、云网络502和通信路径544与PBD 538通信。在另一示例中,NMD和PBD可能从不通过本地通信方式546通信。在另一示例中,NMD和PBD可以主要通过本地通信方式546通信。其他示例也是可能的。

在说明性示例中,NMD 512、514和516可以被配置为接收用于控制PBD 532、534、536和538的语音输入。可用的控制命令可以包括先前讨论的任何媒体回放系统控制,例如回放音量控制、回放传输控制、音乐源选择和分组等。在一个实例中,NMD 512可以接收用于控制PBD 532、534、536和538中的一个或多个的语音输入。响应于接收到语音输入,NMD 512可以通过通信路径542向计算设备504发送语音输入以进行处理。在一个示例中,计算设备504可以将语音输入转换为等效的文本命令,并解析该文本命令以识别命令。计算设备504则可以随后向计算设备506发送文本命令,并且计算设备506则可以接着控制PBD 532-538中的一个或多个来执行该命令。在另一示例中,计算设备504可以将语音输入转换为等效的文本命令,然后向计算设备506发送文本命令。计算设备506随后可以解析文本命令以识别一个或多个回放命令,并且随后计算设备506可以另外控制PBD 532-538中的一个或多个来执行该命令。

例如,如果文本命令是“在地区1中播放来自流媒体服务1的艺术家1的曲目1”,则计算设备506可以标识(i)从流媒体服务1可获得的艺术家1的曲目1的URL,以及(ii)地区1中的至少一个回放设备。在该示例中,来自流媒体服务1的艺术家1的曲目1的URL可以是指向计算设备508的URL,并且地区1可以是绑定地区530。这样,当识别出URL以及PBD 536和538之一或两者时,计算设备506可以经由通信路径544向PBD 536和538之一或两者发送所识别的URL,用于回放。作为响应,PBD 536和538之一或两者可以根据接收到的URL从计算设备508中获取音频内容,并且开始播放来自流媒体服务1的艺术家1的曲目1。

本领域普通技术人员将了解,以上仅是一些说明性示例,并且其他实现也是可能的。在一种情况下,如上所述,多个网络设备500中的一个或多个执行的操作可以由多个网络设备500中的一个或多个其他设备来执行。例如,从语音输入到文本命令的转换可以替代地、部分地或完全由另一个或多个设备来执行,例如,控制器设备522、NMD 512、计算设备506、PBD 536和/或PBD 538。类似地,URL的标识可以替代地、部分地或完全由另一个或多个设备执行,例如,NMD 512、计算设备504、PBD 536和/或PBD 538。

f.示例网络麦克风设备

图6示出示例网络麦克风设备600的功能框图,示例网络麦克风设备600可以被配置为图5的NMD 512、514和516中的一个或多个和/或本文公开和描述的VED中的任何一个。如图所示,网络麦克风设备600包括一个或多个处理器602、有形的非暂时性计算机可读存储器604、麦克风阵列606(例如,一个或多个麦克风)、网络接口608、用户界面610、软件组件612和扬声器614。本领域普通技术人员将了解,其他网络麦克风设备配置和布置也是可能的。例如,备选地,网络麦克风设备可以不包括扬声器614,或者具有单个麦克风而不是麦克风阵列606。

一个或多个处理器602可以包括一个或多个处理器和/或控制器,其可以采用通用或专用处理器或控制器的形式。例如,一个或多个处理单元602可以包括微处理器、微控制器、专用集成电路、数字信号处理器等。有形的非暂时性计算机可读存储器604可以是数据存储装置,其可以加载有一个或多个处理器602可执行的用于执行这些功能的软件组件中的一个或多个。因此,存储器604可以包括一个或多个非暂时性计算机可读存储介质,其示例可以包括:易失性存储介质(例如,随机存取存储器、寄存器、高速缓存等)、以及非易失性存储介质(例如,只读存储器、硬盘驱动器、固态驱动器、闪存和/或光储存设备等)。

麦克风阵列606可以是多个麦克风,其被布置为检测网络麦克风设备600的环境中的声音。麦克风阵列606可以包括现在已知或以后开发的任何类型的麦克风,例如,电容式麦克风、驻极体电容式麦克风或动态麦克风等。在一个示例中,麦克风阵列可以被布置为检测来自相对于网络麦克风设备的一个或多个方向的音频。麦克风阵列606可以对频段的一部分敏感。在一个示例中,麦克风阵列606的第一子集可以对第一频段敏感,而麦克风阵列的第二子集可以对第二频段敏感。麦克风阵列606还可以被布置为捕获音频源(例如,语音、可听声音)的位置信息和/或帮助过滤背景噪声。值得注意的是,在一些实施例中,麦克风阵列可以仅由单个麦克风组成,而不是由多个麦克风组成。

网络接口608可以被配置为促进各种网络设备(例如,参考图5,控制器设备522、PBD 532-538、云网络502中的计算设备504-508,以及其他网络麦克风没备等)之间的无线和/或有线通信。这样,网络接口608可以采用任何合适的形式来执行这些功能,其示例可以包括:以太网接口、串行总线接口(例如,FireWire、USB 2.0等)、适于促进无线通信的芯片组和天线、和/或提供有线和/或无线通信的任何其他接口。在一个示例中,网络接口608可以基于行业标准(例如,红外;无线电;包括IEEE 802.3的有线标准;包括IEEE 802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、4G移动通信标准的无线标准等)。

网络麦克风设备600的用户界面610可以被配置为促进与网络麦克风设备的用户交互。在一个示例中,用户界面610可以包括物理按钮、设置在触敏屏幕和/或表面上的图形界面等中的一个或多个,以供用户直接向网络麦克风设备600提供输入。用户界面610还可以包括灯和扬声器614中的一个或多个,以向用户提供视觉和/或音频反馈。在一个示例中,网络麦克风设备600还可以被配置为通过扬声器614回放音频内容。

III.示例噪声抑制系统和方法

图7A-图7C描绘了网络设备700(被分别识别为网络设备700a-700d)。每个网络设备700包括壳体704,壳体704至少部分地将网络设备的某些组件(未示出)封闭在外壳内,例如,放大器、换能器、处理器和天线。网络设备700还包括布置在壳体704的各个位置处的麦克风702(分别识别为麦克风702a-g)。例如,网络设备700a包括麦克风702的结构化阵列。在一些实施例中,麦克风702可以位于壳体704中的孔内和/或通过壳体704中的孔暴露。网络设备700a可以被配置为图5的NMD 512、514和516中的一个或多个和/或本文公开和描述的VED中的任何一个。

如上所述,本文所述的实施例有助于抑制来自由多个麦克风捕获的音频内容的噪声,以帮助检测所捕获的音频内容中唤醒词的存在。一些噪声抑制过程涉及用于抑制某些频率的单麦克风技术,在这些频率处,噪声比话音内容占主导地位。然而,这些技术可能导致话音内容严重失真。其他噪声抑制过程涉及波束成形技术,其中,麦克风的结构化阵列用于从话音比噪声内容占主导地位的特定方向捕获音频内容,而不是从噪声比话音内容占主导地位的方向捕获音频内容。

虽然在捕获音频内容时可以有效抑制不必要的噪声,但是波束成形具有局限性。例如,与下面描述的增强抑制技术相比,传统的波束成形在检测语音输入时通常可能不是最佳的。例如,图11示出了在相同条件下相对于传统静态波束成形,使用以下所述的多通道维纳滤波器(MCWF)算法显著改善了唤醒词检测,其涉及(1)从SNR为-15dB的嘈杂声音样本中检测唤醒词(2)回放相同的样本曲目(法兰基到好莱坞(Frankie Goes to Hollywood)的“Relax”),以及(3)针对每个测试使用相同的NMD(用于测试的NMD具有六个麦克风的阵列,它们在用于传统波束成形的适当距离内彼此隔开)。图11描绘了在测试条件下三个不同测试用例的结果:(1)曲线图1110描绘了在不使用波束成形或MCWF算法的情况下所检测到的声音样本,(2)曲线图1120描绘了在使用波束成形的情况下所检测到的声音样本,以及(3)曲线图1130描绘了在使用基于MCWF的算法的情况下所检测到的声音样本。在曲线图1110、1120和1130中的每个曲线图中,x轴表示时间,y轴对应于频率,并且曲线图的暗度表示以dB为单位的所检测到的声音样本的强度(其中强度随暗度的增加而增加)。此外,在曲线图1110、1120和1130中的每个曲线图中,唤醒词(在图11中由箭头标识)大约在x轴的一半处开始,并且在x轴的四分之三处结束。将曲线图1120与曲线图1110进行比较,可以看出,波束成形去除了一些噪声,但是仍然保留了大量的噪声。然而,将曲线图1130与曲线图1120进行比较,可以看出,MCWF算法滤除的噪声比波束成形要多得多,因此与波束成形滤波的声音样本相比,从MCWF滤波的声音样本中可以更容易地识别出唤醒词。

另外,波束成形通常需要已知的阵列配置,并且网络设备700选择性地从相对于阵列的特定方向捕获音频。波束成形可能仅在可以实现这种麦克风阵列702的情况下才可行。例如,如果将图7A的麦克风702和网络设备700a的处理组件配置用于传统波束成形,则在高达4kHz的频率下,使用传统无混叠波束成形,相邻麦克风702之间的间距或距离d1将被限制在约4.25cm的理论最大值。然而,由于硬件或其他设计约束,一些网络设备可能无法支持如此紧密间隔开的麦克风702阵列。因此,当使用本文所述的增强噪声抑制技术时,在各个实施例中的麦克风702之间的距离d1可以不被重构为这样的理论最大值。

例如,图7B描绘了网络设备700b,其中麦克风702以无序的方式布置。如本文所使用的,术语“无序的方式”是指未被用作波束形成阵列的麦克风的任何布置。这样,以无序的方式布置的麦克风可以相对于彼此以任意顺序布置;沿壳体更方便地定位,例如在扬声器、电子设备、按钮和/或其他组件之间;和/或以某种顺序布置,但是以不支持(或至少可以不支持)波束成形的顺序布置。例如,如图7B所示,麦克风702看起来是根据特定的几何配置来布置的,其中,麦克风702a、702b、702f和702g被布置在第一水平面中,并且麦克风702c、702d和702e被布置在第二水平面中。然而,即使图7B中的麦克风702布置包括顺序的某个方面,该布置也被称为“无序”,因为麦克风702彼此过于分散以致不能执行波束成形,或者至少彼此过于分散以致不能针对本文公开和描述的语音应用的类型有效地执行波束成形。在一些实施例中,两个给定麦克风之间的最小距离大于5cm。例如,麦克风702c和702d或者两个或更多个麦克风的任何其他集合之间的间隔或距离d2可以在5cm和60cm之间。

图7C描绘了根据示例实施例的跨多个网络设备分布的麦克风702。特别地,麦克风702c、702d和702e被布置在网络设备700c的壳体704中,并且麦克风702a、702b、702f和702g被布置在网络设备700d的壳体704中。在一些实施例中,网络设备700c和700d位于同一房间中(例如,作为家庭影院配置中的单独设备),但是位于该房间的不同区域中。在这样的实施例中,网络设备700c和700d上的麦克风702之间的间隔或距离(例如,麦克风702d和702f之间的距离d3)可以超过60cm。例如,麦克风702d和702f或者分别布置在单独网络设备上的两个或更多个麦克风的任何其他集合之间的距离d3可以在1米和5米之间。

在图7A-图7C中描绘的每个布置中,网络设备700采用多麦克风噪声抑制技术,该技术不必依赖于麦克风702的几何布置。作为替代,根据各种实施例的抑制噪声的技术包括:假设已知固定信号和噪声频谱,对所观察到的噪声过程以及附加噪声进行线性时不变滤波。网络设备700使用由一个或多个麦克风702捕获的第一音频内容来估计由麦克风702中的一个或多个其他麦克风同时捕获的第二音频内容中的噪声。例如,麦克风702a捕获第一音频内容,而麦克风702g同时捕获第二音频内容。如果靠近网络设备700的用户说出语音命令,则由麦克风702a捕获的第一音频内容和由麦克风702g捕获的第二音频内容两者中的话音内容包括相同的语音命令。此外,如果噪声源靠近网络设备700,则由麦克风702a捕获的第一音频内容和由麦克风702g捕获的第二音频内容两者包括来自该噪声源的噪声内容。

然而,由于麦克风702a和702g彼此间隔开,话音内容和噪声内容的强度可以在第一音频内容和第二音频内容之间变化。例如,如果麦克风702a更靠近噪声源,而麦克风702g更靠近说话的用户,则噪声内容可以主导由麦克风702a捕获的第一音频内容,而话音内容可以主导由麦克风702g捕获的第二音频内容。并且,如果噪声内容主导第一音频内容,则网络设备700可以使用第一音频内容来生成对第二音频内容中存在的噪声内容的估计。然后,来自第一音频内容的估计噪声可以用于滤除噪声并保留第二音频内容中的话音。

在一些实施例中,网络设备700针对所有麦克风702同时执行该过程,使得由每个麦克风捕获的噪声内容用于估计由每个其它麦克风捕获的噪声内容。网络设备700使用估计噪声内容来对由每个麦克风702捕获的各个音频信号进行滤波,以抑制每个音频信号中的各个噪声内容,然后将滤波后的音频信号进行组合。在抑制每个音频信号的噪声内容的情况下,每个音频信号的主要内容是话音内容,因此组合的音频信号也是语音主导的。

下面结合图8进一步详细描述用于执行这些过程的示例MCWF算法。

图8描绘了在其中执行这种噪声抑制过程的示例环境800。环境800包括用于捕获音频内容的多个麦克风802(分别识别为麦克风802a-g)。麦克风802可以被配置为图7A-图7C中的一个或多个麦克风702。如图所示,环境800包括七个麦克风802,但是在其他实施例中,环境800包括附加或更少的麦克风。在一些实施例中,麦克风802被布置在诸如网络设备700之类的单个网络设备之上或之内。在其他实施例中,一个或多个麦克风802被布置在一个网络设备之上或之内,而其余的麦克风被布置在一个或多个其他网络设备之上或之内。

在实践中,麦克风802捕获到达麦克风802的音频内容。如图所示,当人804在麦克风802附近说话时,人804产生话音信号s(t)。随着话音信号s(t)在整个环境800中传播,话音信号s(t)中的至少一些从环境800中的墙壁或其他附近物体反射。这些反射可以使话音信号s(t)失真,使得由麦克风802捕获的话音信号版本是与原始话音信号s(t)不同的回响话音信号x(t)。

此外,环境800包括一个或多个噪声源806,例如,来自附近交通或建筑的噪声、来自整个环境中移动的人的噪声、来自环境800中的一个或多个回放设备的噪声、或任何其他环境噪声。在一些实施例中,噪声源806包括来自与人804不同的人的话音内容。在任何情况下,噪声源806都产生由麦克风802中的一些或全部捕获的噪声信号v(t)。在这点上,由麦克风802捕获的音频信号被表示为y(t),其是回响话音信号x(t)和噪声信号v(t)的和。并且对于麦克风802中的每个单独的麦克风,所捕获的音频信号因此可以表征为:

yn(t)=xn(t)+vn(t),n=1,2,...,N (等式1)

其中,n是参考麦克风的索引,并且N是麦克风的总数。从时域转换到频域,以上等式可表示为:

Yn(f)=Xn(f)+Vn(f),n=1,2,...,N (等式2)

或者,以向量形式表示为:

Y(f)=X(f)+V(f). (等式3)

此外,定义了功率谱密度(PSD)矩阵Pyy(f)、Pxx(f)和Pvv(f),其中,Pyy(f)是总捕获音频内容的PSD矩阵,Pxx(f)是总捕获音频内容的话音部分的PSD矩阵,并且Pvv(f)是总捕获音频内容的噪声部分的PSD矩阵。这些PSD矩阵使用以下等式确定:

Pyy(f)=E{y(f)yH(f)}, (等式4)

Pxx(f)=E{x(f)xH(f)}, (等式5)

Pvv(f)=E{v(f)vH(f)} (等式6)

其中,E{}表示期望值运算符,并且H表示埃尔米特(Hermitian)转置运算符。假设总捕获音频内容的话音部分和噪声部分之间缺乏相关性(通常是这种情况),则总捕获音频内容的话音部分的PSD矩阵可以写成:

Pxx(f)=Pyy(f)Pvv(f). (等式7)

为了减少噪声内容V(f)并恢复所捕获的多通道音频内容Y(f)的话音内容X(f),使所捕获的多通道音频内容Y(f)通过滤波器808。在一些实施例中,滤波器808包括有形非暂时性计算机可读介质,当其由网络设备的一个或多个处理器执行时,使网络设备执行本文公开和描述的多通道滤波功能。

滤波器808可以以各种方式对所捕获的多通道音频内容Y(f)进行滤波。在一些实施例中,滤波器808将线性滤波器hi(f)(其中,i=1、2,...,N是参考麦克风的索引)应用于所捕获的多通道音频内容的向量Y(f)。以这种方式,将N个线性滤波器hi(f)(每个麦克风802一个)应用于音频内容向量Y(f)。应用这些滤波器将产生以下给出的滤波后的输出Zi(f):

该滤波后的输出Zi(f)包括滤波后的话音分量Di(f)和残余噪声分量vi(f),其中

并且

为了确定线性滤波器hi(f),定义了优化约束集合。在一些实施例中,例如,通过将信号失真的程度限制为小于或等于阈值程度,定义优化约束以便将降噪的程度最大化,同时限制信号失真的程度。降噪系数ξnr(hi(f))被定义为:

并且信号失真指数vSd(hi(f))被定义为:

其中,ui是第i个标准基向量,并且被定义为:

因此,为了将降噪最大化,同时限制信号失真,一些实现中的优化问题是在满足vsd(hi(f))≤σ2(f)的情况下最大化ξnr(hi(f))。为了找到与该优化问题相关联的解决方案,将相关联的拉格朗日函数相对于hi(f)的导数设置为零,并且得出的封闭式解决方案为:

hi(f)=[Pxx(f)+βPvv(f)]-1Pxx(f)ui (等式14)

其中,β(其为正值,并且是拉格朗日乘数的倒数)是允许调谐hi(f)输出处的信号失真和降噪的因子。

这种线性滤波器hi(f)的实现可能在计算上要求很高。为了降低滤波器hi(f)的计算复杂度,在一些实施例中,通过利用矩阵Pxx(f)是秩为1的矩阵的事实,获得了更简化的形式。并且,由于Pxx(f)是秩为1的矩阵,所以P-1 vv(f)Pxx(f)的秩也为1。另外,可以使用伍德伯里(Woodbury)矩阵恒等式进一步简化矩阵求逆。应用所有这些概念,线性滤波器hi(f)可以被表示为:

其中

是P-1 vv(f)Pxx(f)的唯一正特征值,并用作归一化因子。

该线性滤波器hi(f)的一个优点是,它仅依赖于总捕获音频的PSD矩阵和总捕获音频的噪声部分的PSD矩阵,因此不依赖于总捕获音频中的话音部分。另一个优点是参数β允许自定义降噪和信号失真的程度。例如,增加β以增加信号失真为代价增加降噪,而减小β以增加噪声为代价减小信号失真。

由于线性滤波器hi(f)依赖于总捕获音频的PSD矩阵Pyy(f)和总捕获音频的噪声部分的PSD矩阵Pvv(f),因此估计这些PSD矩阵以应用滤波器。在一些实施例中,一阶指数平滑用于将Pyy估计为:

Pyy(n)=αyPyy(n-1)+(1-αy)yyH (等式17)

其中,αy是平滑系数,并且其中,n表示时间帧索引。另外,为了简化符号,已经从该等式和下面的等式中删除了频率索引(f),但是应当理解的是,本文公开的过程是针对每个频率区段进行的。平滑系数的取值范围是0到1,并且可以进行调整以调谐对Pyy的估算。通过降低连续时间帧索引之间的Pyy的变化程度,增加αy可以提高Pyy估计的平滑度,同时通过提高连续时间帧索引之间的Pyy的变化程度,减小αy可以降低Pyy估计的平滑度。

为了估计Pvv,在一些实施例中,滤波器808确定是否在每个频率区段中存在话音内容。如果滤波器808确定在特定频率区段中存在话音内容或可能存在话音内容,则滤波器808确定该频率区段不代表噪声内容,并且滤波器808不使用该频率区段来估计Pvv。另一方面,如果滤波器808确定在特定频率区段中不存在话音内容或不可能存在话音内容,则滤波器808确定该频率区段主要或全部由噪声内容组成,然后滤波器808使用该噪声内容来估计Pvv

滤波器808可以以各种方式确定是否在频率区段中存在话音内容。在一些实施例中,滤波器808使用硬语音活动检测(VAD)算法进行这种确定。在其他实施例中,滤波器808使用软话音存在概率算法进行这种确定。例如,假设存在高斯分布,则如下计算话音存在概率:

其中,n是时间帧索引,其中

并且其中

是话音缺失的α先验概率。在Souden等人的“Gaussian Model-BasedMultichannel Speech Presence Probability”,《IEEE音频、话音和语言处理事务(2010)》中描述了这种话音存在概率的推导,通过引用将其全部内容合并于此。

值得注意的是,话音存在概率计算依赖于话音内容的PSD矩阵Pxx。然而,由于Pxx(f)=Pyy(f)-Pvv(f),因此可以通过将γ重写如下来消除该依赖性:

此外,变量ξ可以被写为:

其中

其中

并且其中

通过定义向量,可以进一步降低话音存在概率计算的计算复杂度:

使得ψ可以被写为:

并且γ可以被写为:

因此,通过在尝试计算ψ或γ之前计算ytemp,在滤波器808确定话音存在概率时,可以避免重复计算。

一旦为给定的时间帧确定了话音存在概率,滤波器808通过采用期望运算符根据以下等式来更新对噪声协方差矩阵的估计:

其中

是有效的频率相关平滑系数。

为了获取更新后的P-1 vv(n)以便在hi(f)中使用,谢尔曼-莫里森(Sherman-Morrison)公式的用法如下:

其中

一旦确定了更新后的P-1 vv(n),针对所有f值和所有i值,滤波器808可以确定线性滤波器hi(n)并将其应用于所捕获的音频内容。然后,将滤波器808的输出表示为y0,i(n)=hH i(n)y(n)。在一些实施例中,滤波器808使用矩阵H(n)针对所有i来并行计算输出,其中,列为hi(n),使得

并且yout=HHy, (等式36)

其中

并且ξ=λ(n)-N.。 (等式38)

在一些实施例中,滤波器808不直接计算H,这需要矩阵相乘。作为替代,通过滤波器808按如下方式计算输出,显著降低了计算复杂度:

并且

采用以上概念,滤波器808抑制噪声并且将话音内容保留在由麦克风802捕获的多通道音频信号中。以简化的方式,这可以包括

A.针对所有f更新Pyy(n)

B.针对所有f计算话音存在概率P(H1|y(n))

C.使用话音存在概率针对所有f更新P-1 vv(n)

D.针对所有f和所有i计算线性滤波器hi(n),并如下计算输出

yo,i(n)=hH i(n)y(n)

更详细的示例可以包括执行以下步骤。

步骤1:在时间帧0处初始化参数和状态变量。在一些实施例中,通过在特定时间段内(例如,500ms)估计Pyy来初始化Pyy和p-1 vv,然后使用估计的Pyy将P-1 vv初始化为其倒数。

步骤2:在每个时间帧n处,执行以下步骤3-13。

步骤3:针对每个频率索引f={1,...,K},根据等式17更新对Pyy(n)的估计,根据等式27计算ytemp,并且根据等式28计算ψ。

步骤4:针对每个频率索引f={1,...,K},根据等式24使用向量运算来计算ψ。

步骤5:针对每个频率索引f={1,...,K},根据等式23使用向量运算来计算ξ。

步骤6:针对每个频率索引f={1,...,K},根据等式29计算γ。

步骤7:根据等式18使用向量运算来计算所有频率区段上的话音存在概率。

步骤8:根据等式30和31计算用于更新Pvv(n)的有效平滑系数。

步骤9:根据等式34计算w。

步骤10:针对每个频率索引f={1,...,K},根据等式32更新k(n),并且根据等式33更新P-1 vv(n)。

步骤11:针对每个频率索引f={1,...,K},根据等式37更新λ(n)。

步骤12:根据等式38计算ξ。

步骤13:针对每个频率索引f={1,...,K},通过根据等式39计算并根据等式40计算输出yout,计算大小为N x 1的输出向量。

除了已经描述的其他优点之外,上述基于MCWF的处理还提供了其他优点。例如,以分布式方式对所捕获的音频信号进行滤波,使得音频信号不需要在中央节点处聚合以用于处理。此外,可以在存在麦克风的单独节点处执行MCWF算法,然后该节点可以与联网系统中的一些或所有其他节点共享来自MCWF算法的输出。例如,图7C中的麦克风702中的每个麦克风是能够执行MCWF算法的相应节点的一部分。这样,包括麦克风702a的节点根据MCWF算法处理由麦克风702a捕获的音频,然后向与麦克风702b-g相关联的节点提供MCWF输出。类似地,包括麦克风702a的节点从与麦克风702b-g相关联的每个节点接收MCWF输出。因此,当根据MCWF算法估计和滤除噪声内容时,每个节点都可以使用来自其他节点的MCWF输出。

再次参考图8,一旦滤波器808例如使用上述的MCWF算法抑制了噪声内容并保留了由麦克风802捕获的各个音频信号中的话音内容,滤波器808将滤波后的音频信号组合为单个信号。在抑制每个音频信号的噪声内容并保留话音内容的情况下,该组合信号类似地具有抑制的噪声内容和保留的话音内容。

滤波器808向话音处理块810提供组合的信号以用于进一步处理。话音处理块810对滤波器808的输出运行唤醒词检测过程,以确定滤波器输出的话音内容是否包括唤醒词。在一些实施例中,话音处理块810被实现为由网络设备700的一个或多个处理器执行的软件。在其他实施例中,话音处理块810是单独的计算系统,例如,参考图5示出和描述的计算设备504、506和/或508中的一个或多个。

响应于确定滤波器808的输出包括唤醒词,话音处理块810对滤波器808的输出执行进一步话音处理,以识别唤醒词之后的语音命令。并且响应于话音处理块810识别唤醒词之后的语音命令,网络没备700执行与所识别的语音命令相对应的任务。例如,如上所述,在特定实施例中,网络设备700可以向与例如语音助手服务相关联的远程计算设备发送语音输入或其一部分。

在一些实施例中,可以基于对前述算法的以下调整中的一项或多项来增强MCWF的鲁棒性和性能。

1)参数β可以是时频相关的。有多种方法可以根据话音存在概率、信号扩散比(SDR)等来设计时频相关的β。该构思是在SDR较高且存在话音时使用较小的值以减少话音失真,并在SDR较低或不存在话音时使用较大的值以增加降噪。该值基于条件话音存在概率在降噪和话音失真之间进行权衡。一种简单有效的方法是将β定义为:

β(y)=β0/(αβ+(1-αβ0 P(H1|y))

其中,结合条件话音存在概率以基于输入向量y来调整参数β。参数αβ在固定的调整参数和一个完全依赖于话音存在概率的参数之间提供了折衷方案。在一种实现中,αβ=0.5。

2)期望话音信号的MMSE估计可以根据以下等式来获取

yout=P(H1|y)HH(n)y(n)+(1-P(H1|y))Gminy

其中,增益因子Gmin确定当话音存在概率指示不存在话音时的最大降噪量。该模型的重要性在于,在对话音存在概率做出错误决策的情况下,它可以减轻话音失真。这种方法提高了鲁棒性。该实现可以在算法的步骤13之后完成,可以如下修改yout

yout=P(H1|y)yout+(1-P(H1|y))Gmin y

其中,利用话音存在概率来生成输出,并控制如何应用Gmin

3)调整该算法并以两种支持的模式实现。A)噪声抑制(NS);B)残留回声抑制(RES)。如果扬声器正在播放内容,则该算法可以在RES模式下运行。否则,该算法将在NS模式下运行。可以使用有关音频回放存在的内部状态来确定模式。

4)在算法的步骤1中初始化协方差矩阵。该算法包含初始化周期,其中,麦克风阵列的输入信号用于估计初始输入和噪声协方差矩阵。可以假设在该初始化期间不存在话音。用对角矩阵初始化这些协方差矩阵,以简化实现。可以在算法中将初始化时间调整为例如0.5秒。该方法提供了一种更鲁棒的解决方案,该解决方案对输入电平和噪声类型不敏感。因此,可以在所有SNR级别和响度级别上实现相对非常相似的收敛速度。

5)考虑到话音信号的统计特性,为了提高多通道话音存在概率,可以使用如下的递归平滑的多通道话音存在概率

其中,平滑系数αP的值在0到1之间,并且可以调整该平滑系数以在参数调整阶段调整对话音存在概率的估计。

V.示例噪声抑制方法

图9示出了可以由网络设备实现的方法900的示例实施例,网络设备例如是网络设备700或本文公开和/或描述的PBD、NMD、控制器设备或其他VED中的任何一个,或现在已知或以后开发的任何其他语音使能设备。

方法900的各种实施例包括框902至914所示的一个或多个操作、功能和动作。尽管顺序地示出了这些框,但是这些框也可以并行执行和/或以与本文公开和描述的顺序不同的顺序执行。而且,各个框可以基于期望的实现方式被组合成更少的方框、被划分成附加框和/或被移除。

另外,针对本文公开的方法900和其他过程和方法,流程图示出了一些实施例的一种可能实现的功能和操作。在这方面,每个框可以表示程序代码的模块、段或部分,程序代码包括由一个或多个处理器可执行的用于实现过程中的特定逻辑功能或步骤的一个或多个指令。程序代码可以存储在任何类型的计算机可读介质上,例如,包括磁盘或硬盘驱动器的储存设备。计算机可读介质可以包括非暂时性计算机可读介质,例如,用于短时间存储数据的有形非暂时性计算机可读介质,如寄存器存储器、处理器高速缓存和随机存取存储器(RAM)。计算机可读介质还可以包括非暂时性介质,例如,辅存或持久性长期存储设备,如只读存储器(ROM)、光盘或磁盘、紧凑盘只读存储器(CD-ROM)等。计算机可读介质还可以是任何其他易失性或非易失性存储系统。计算机可读介质可以被认为是计算机可读存储介质,例如有形的存储设备。另外,针对本文公开的方法800以及其他过程和方法,图9中的每个框可以表示被连接以执行过程中的特定逻辑功能的电路。

方法900在框902处开始,其包括网络设备捕获(i)经由多个麦克风中的第一麦克风的第一音频信号,以及(ii)经由多个麦克风中的第二麦克风的第二音频信号,其中,第一音频信号包括来自噪声源的第一噪声内容,并且第二音频信号包括来自同一噪声源的第二噪声内容。在一些实施例中,包括第一麦克风和第二麦克风的多个麦克风是同一网络设备(例如,图7A-图7B中描绘的网络设备700a或700b)的组件。在其他实施例中,例如,如图7C所示,多个麦克风中的至少一些麦克风是不同网络设备的组件。在示例实现中,第一麦克风是第一网络设备(例如,网络设备700c)的组件,并且第二麦克风是第二网络设备(例如,网络设备700d)的组件。

接下来,方法900前进到框904,其包括识别第一音频信号中的第一噪声内容。在一些实施例中,识别第一音频信号中的第一噪声内容的步骤涉及以下一项或多项:(i)网络设备使用VAD算法以检测第一音频信号中不存在话音,或者(ii)网络设备使用话音存在概率算法以确定第一音频信号中存在话音的概率。上面参考等式18描述了话音存在概率算法的示例。如果VAD算法检测到第一音频信号中不存在话音,或者话音存在概率算法指示第一音频信号中存在话音的概率低于阈值概率,则这可以表明第一音频信号是噪声主导的,并且包括很少或没有话音内容。

接下来,方法900前进到框906,其包括使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容。在一些实施例中,使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容的步骤涉及网络设备更新噪声内容PSD矩阵以用于上面参考等式30-34描述的MCWF算法。

在一些实施例中,基于第一音频信号中存在话音的概率低于阈值概率来执行以下步骤:在框904处识别第一音频信号中的第一噪声内容,并在框906处使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容。如上所述,指示第一音频信号中存在话音的概率低于阈值概率的话音存在概率算法表明:第一音频信号是噪声主导的,并且包括很少或没有话音内容。这种噪声主导的信号比非噪声主导的信号更有可能提供对由麦克风捕获的其他信号(例如,第二音频信号)中存在的噪声的准确估计。因此,在一些实施例中,响应于确定第一音频信号中存在话音的概率低于阈值概率而执行使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容的步骤。阈值概率可以采用各种值,并且在一些实施例中,可以调整阈值概率以调谐本文所述的噪声滤波方法。在一些实施例中,阈值概率被设置为低至1%。在其他实施例中,阈值概率被设置为较高的值,例如在1%和10%之间。

接下来,方法900前进到框908,其包括使用估计噪声内容来抑制第一音频信号中的第一噪声内容和第二音频信号中的第二噪声内容。在一些实施例中,使用估计噪声内容来抑制第一音频信号中的第一噪声内容和第二音频信号中的第二噪声内容的步骤涉及网络设备使用更新后的噪声内容PSD矩阵来将线性滤波器应用于上面参考等式35-40所描述的由多个麦克风捕获的每个音频信号。

接下来,方法900前进到框910,其包括将抑制的第一音频信号和抑制的第二音频信号组合为第三音频信号。在一些实施例中,将抑制的第一音频信号和抑制的第二音频信号组合为第三音频信号的步骤涉及网络设备将来自多个麦克风中的所有麦克风的抑制的音频信号组合为第三音频信号。

接下来,方法900前进到框912,其包括确定第三音频信号包括包含唤醒词的语音输入。在一些实施例中,确定第三音频信号包括包含唤醒词的语音输入的步骤涉及网络设备对第三音频信号执行一个或多个语音处理算法,以确定第三音频信号的任何部分是否包括唤醒词。在操作中,可以根据本文公开和描述的任何唤醒词检测方法和/或现在已知或以后开发的任何唤醒词检测方法来执行确定第三音频信号包括包含唤醒词的语音输入的步骤。

最终,方法900前进到框914,其包括:响应于确定第三音频信号包括包含唤醒词的话音内容,向远程计算设备发送语音输入的至少一部分以用于语音处理,以识别与唤醒词不同的语音发声。如上所述,语音输入可以包括唤醒词以及唤醒词之后的语音发声。语音发声可以包括口头命令以及一个或多个口头关键词。因此,在一些实施例中,向远程计算设备发送语音输入的至少一部分以用于语音处理以识别与唤醒词不同的语音发声的步骤包括向单独的计算系统发送唤醒词之后的语音输入的一部分(可以包括口头命令和/或口头关键词)以用于语音分析。

VII.结论

以上描述尤其公开了各种示例系统、方法、装置和尤其包括在硬件上执行的固件和/或软件的制品。应当理解的是,这些示例仅是示意性的,而不应当被认为是限制性的。例如,可以想到,这些固件、硬件和/或软件方面或组件中的任意一个或全部可以专门在硬件中实现、专门在软件中实现、专门在固件中实现、或在硬件、软件和/或固件的任意组合中实现。因此,所提供的示例不是实现这些系统、方法、装置和/或制品的唯一方式。

(特征1)一种网络设备,包括:(i)多个麦克风,包括第一麦克风和第二麦克风;(ii)一个或多个处理器;以及(iii)一种有形非暂时性计算机可读介质,其存储可由所述一个或多个处理器执行的指令,以使所述网络设备执行包括以下各项的操作:(a)捕获(i)经由所述第一麦克风的第一音频信号,以及(ii)经由所述第二麦克风的第二音频信号,其中,所述第一音频信号包括来自噪声源的第一噪声内容,并且所述第二音频信号包括来自所述噪声源的第二噪声内容;(b)识别所述第一音频信号中的第一噪声内容;(c)使用所识别的第一噪声内容来确定由所述多个麦克风捕获的估计噪声内容;(d)使用所述估计噪声内容来抑制所述第一音频信号中的第一噪声内容和所述第二音频信号中的第二噪声内容;(e)将所述抑制的第一音频信号和所述抑制的第二音频信号组合为第三音频信号;(f)确定所述第三音频信号包括包含唤醒词的语音输入;以及(g)响应于所述确定,向远程计算设备发送所述语音输入的至少一部分以用于语音处理,以识别与所述唤醒词不同的语音发声。

(特征2)根据特征1所述的网络设备,所述操作还包括:(i)确定所述第一音频信号包括话音内容的概率,(ii)其中,基于所确定的概率低于阈值概率来执行以下步骤:(a)识别所述第一音频信号中的第一噪声内容,以及(b)使用所识别的第一噪声内容来确定由所述多个麦克风捕获的估计噪声内容。

(特征3)根据特征1所述的网络设备,还包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,其中,所述第一麦克风和所述第二麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

(特征4)根据特征1所述的网络设备,所述操作还包括:(i)经由所述多个麦克风中的第三麦克风捕获第四音频信号,其中,所述第四音频信号包括来自所述噪声源的第三噪声内容;(ii)识别所述第四音频信号中的第三噪声内容;以及(iii)使用所识别的第三噪声内容来更新由所述多个麦克风捕获的估计噪声内容。

(特征5)根据特征4所述的网络设备,其中,所述网络设备在捕获所述第一音频信号和所述第二音频信号的同时捕获所述第四音频信号。

(特征6)根据特征4所述的网络设备,还包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,其中,所述第一麦克风、所述第二麦克风和所述第三麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

(特征7)根据特征1所述的网络设备,其中,向远程计算设备发送所述语音输入的至少一部分以用于语音处理以识别与所述唤醒词不同的语音发声包括:向单独的计算系统发送语音输入中的所述唤醒词之后的的一部分以用于语音分析。

(特征8)一种有形非暂时性计算机可读介质,其存储可由一个或多个处理器执行的指令,以使网络设备执行包括以下各项的操作:(i)经由网络设备的多个麦克风捕获(a)经由所述多个麦克风中的第一麦克风的第一音频信号,以及(b)经由所述多个麦克风中的第二麦克风的第二音频信号,其中,所述第一音频信号包括来自噪声源的第一噪声内容,并且所述第二音频信号包括来自所述噪声源的第二噪声内容;(ii)识别第一音频信号中的第一噪声内容;(iii)使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容;(iv)使用所述估计噪声内容来抑制所述第一音频信号中的第一噪声内容和所述第二音频信号中的第二噪声内容;(v)将所述抑制的第一音频信号和所述抑制的第二音频信号组合为第三音频信号;(vi)确定所述第三音频信号包括语音输入,所述语音输入包括唤醒词;以及(vii)响应于所述确定,向远程计算设备发送所述语音输入的至少一部分以用于语音处理,以识别与所述唤醒词不同的语音发声。

(特征9)根据特征8所述的有形非暂时性计算机可读介质,所述操作还包括:(i)确定所述第一音频信号包括话音内容的概率,(ii)其中,基于所确定的概率低于阈值概率来执行以下步骤:(a)识别所述第一音频信号中的第一噪声内容,以及(b)使用所识别的第一噪声内容来确定由所述多个麦克风捕获的估计噪声内容。

(特征10)根据特征8所述的有形非暂时性计算机可读介质,其中,所述网络设备包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,并且其中,所述第一麦克风和所述第二麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

(特征11)根据特征8所述的有形非暂时性计算机可读介质,所述操作还包括:(i)经由所述多个麦克风中的第三麦克风捕获第四音频信号,其中,所述第四音频信号包括来自所述噪声源的第三噪声内容;(ii)识别所述第四音频信号中的第三噪声内容;以及(iii)使用所识别的第三噪声内容来更新由所述多个麦克风捕获的估计噪声内容。

(特征12)根据特征11所述的有形非暂时性计算机可读介质,其中,所述第四音频信号与所述第一音频信号和所述第二音频信号同时被捕获。

(特征13)根据特征11所述的有形非暂时性计算机可读介质,其中,所述网络设备包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,其中,所述第一麦克风、所述第二麦克风和所述第三麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

(特征14)根据特征8所述的有形非暂时性计算机可读介质,其中,向远程计算设备发送所述语音输入的至少一部分以用于语音处理以识别与所述唤醒词不同的语音发声包括:向单独的计算系统发送语音输入中的所述唤醒词之后的的一部分以用于语音分析。

(特征15)一种方法,包括:(i)经由网络设备的多个麦克风捕获(a)经由所述多个麦克风中的第一麦克风的第一音频信号,以及(b)经由所述多个麦克风中的第二麦克风的第二音频信号,其中,所述第一音频信号包括来自噪声源的第一噪声内容,并且所述第二音频信号包括来自所述噪声源的第二噪声内容;(ii)识别第一音频信号中的第一噪声内容;(iii)使用所识别的第一噪声内容来确定由多个麦克风捕获的估计噪声内容;(iv)使用所述估计噪声内容来抑制所述第一音频信号中的第一噪声内容和所述第二音频信号中的第二噪声内容;(v)将所述抑制的第一音频信号和所述抑制的第二音频信号组合为第三音频信号;(vi)确定所述第三音频信号包括语音输入,所述语音输入包括唤醒词;以及(vii)响应于所述确定,向远程计算设备发送所述语音输入的至少一部分以用于语音处理,以识别与所述唤醒词不同的语音发声。

(特征16)根据特征15所述的方法,还包括:(i)确定所述第一音频信号包括话音内容的概率,(ii)其中,基于所确定的概率低于阈值概率来执行以下步骤:(a)识别所述第一音频信号中的第一噪声内容,以及(b)使用所识别的第一噪声内容来确定由所述多个麦克风捕获的估计噪声内容。

(特征17)根据特征15所述的方法,其中,所述网络设备包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,并且其中,所述第一麦克风和所述第二麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

(特征18)根据特征15所述的方法,还包括:(i)经由所述多个麦克风中的第三麦克风捕获第四音频信号,其中,所述第四音频信号包括来自所述噪声源的第三噪声内容;(ii)识别所述第四音频信号中的第三噪声内容;以及(iii)使用所识别的第三噪声内容来更新由所述多个麦克风捕获的估计噪声内容。

(特征19)根据特征18所述的方法,其中,所述第四音频信号与所述第一音频信号和所述第二音频信号同时被捕获。

(特征20)根据特征18所述的方法,其中,所述网络设备包括壳体,所述壳体至少部分地将所述网络设备的组件封闭在所述壳体内,其中,所述第一麦克风、所述第二麦克风和所述第三麦克风沿所述壳体布置,并且彼此分开大于约五厘米的距离。

此外,本文对“实施例”的提及意味着结合实施例描述的特定特征、结构或特性可以包括在本发明的至少一个示例性实施例中。在说明书中各处出现该短语不一定都指代相同的实施例,也不是与其他实施例互斥的分离的或备选的实施例。因此,本领域技术人员应当显式地和隐式地理解的是,本文所描述的实施例可以与其他实施例组合。

主要在说明性的环境、系统、过程、步骤、逻辑块、处理以及直接或间接地与耦接到网络的数据处理设备的操作相类似的其他象征性表示的方面上,提出本说明书。本领域技术人员通常使用这些处理描述和表示,以向本领域技术人员的其他技术人员传播他们的工作内容。阐述了各种具体细节,以提供本公开的透彻理解。然而,本领域技术人员应理解,不需要特定、具体细节就可以实施本公开。在其他实例中,没有描述熟知的方法、过程、组件和电路,以避免不必要地使实施例的方面模糊不清。例如,在一些实施例中,可以采用其他技术来确定话音缺失的概率。因此,本公开的范围由随附权利要求、而不是以上实施例的描述来界定。

当所附权利要求中的任一项权利要求被理解成涵盖纯软件和/或固件实现时,在此明确限定至少一个示例中的至少一个元素以包括存储软件和/或固件的非暂时性有形介质,如存储器、DVD、CD、蓝光等。

41页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:NAND温度感知操作

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!