音频设备滤波器修改的制作方法

文档序号:18744994发布日期:2019-09-21 02:13阅读:285来源:国知局
音频设备滤波器修改的制作方法

本公开涉及一种具有麦克风阵列的音频设备。



背景技术:

波束成形器用于音频设备以在存在噪声的情况下改善对所需声音(诸如针对设备的话音命令)的检测。波束成形器通常基于在精心控制的环境中收集的音频数据,其中数据可以被标记为期望的或不期望的。然而,当音频设备用于现实世界情形时,基于理想化数据的波束成形器只是个近似,因此可能不会达到其应有的效果。



技术实现要素:

下文所提及的所有示例和特征可以以任何技术上可能的方式进行组合。

在一个方面中,一种音频设备包括多个空间分离的麦克风,其被配置成麦克风阵列,其中麦克风适于接收声音。存在一种处理系统,其与麦克风阵列通信,并且被配置为从多个麦克风中导出多个音频信号,使用先前的音频数据来操作处理音频信号的滤波器拓扑结构以使得阵列对期望声音比对不期望声音更敏感,将所接收的声音分类为期望声音或不期望声音之一,并且使用经分类的所接收的声音和所接收的声音的类别来修改滤波器拓扑结构。在一个非限制性示例中,期望声音和不期望声音对滤波器拓扑结构进行不同地修改。

实施例可以包括以下特征之一或其任何组合。音频设备还可以包括检测系统,其被配置为检测从其导出音频信号的声源类型。可以从一定类型的声源导出的音频信号不用于修改滤波器拓扑结构。该一定类型的声源可以包括基于话音的声源。检测系统可以包括话音活动检测器,其被配置为用于检测基于话音的声源。例如,音频信号可以包括多通道音频记录或交叉功率谱密度矩阵。

实施例可以包括以下特征之一或其任何组合。音频信号处理系统还可以被配置为计算所接收的声音的置信分数,其中置信分数用于对滤波器拓扑结构的修改。置信分数可以用于将所接收的声音的贡献加权到对滤波器拓扑结构的修改。计算置信分数可以基于所接收的声音包括唤醒词的置信度。

实施例可以包括以下特征之一或其任何组合。可以随时间而收集所接收的声音,并且在特定时间段内收集的经分类的所接收的声音可以用于修改滤波器拓扑结构。所接收的声音收集时间段可以固定也可以不固定。与较新收集的所接收的声音相比,较旧的所接收的声音对滤波器拓扑结构修改的影响可以更小。在一个示例中,收集的所接收的声音对滤波器拓扑修改的影响可以以恒定速率衰减。音频还可以包括检测系统,其被配置为检测音频设备的环境的改变。用于修改滤波器拓扑结构的这些特定收集的所接收的声音可以基于检测到的环境改变。在一个示例中,当检测到音频设备的环境改变时,在检测到音频设备的环境改变之前收集的所接收的声音不再被用于修改滤波器拓扑结构。

实施例可以包括以下特征之一或其任何组合。音频信号可以包括由麦克风阵列检测到的声场的多通道表示,其中每个麦克风具有至少一个通道。音频信号还可以包括元数据。音频设备可以包括通信系统,其被配置为将音频信号传输到服务器。通信系统还可以被配置为从服务器接收经修改的滤波器拓扑结构参数。经修改的滤波器拓扑结构可以基于从服务器接收的经修改的滤波器拓扑结构参数与经分类的所接收的声音的组合。

在另一方面中,一种音频设备包括多个空间分离的麦克风,其被配置成麦克风阵列,其中麦克风适于接收声音;以及处理系统,其与麦克风阵列通信并且被配置为从多个麦克风导出多个音频信号,使用先前的音频数据来操作处理音频信号的滤波器拓扑结构以使得阵列对期望声音比对不期望声音更敏感,将所接收的声音分类为期望声音或不期望声音之一,确定所接收的声音的置信分数,并且使用经分类的所接收的声音、所接收的声音的类别以及置信分数来修改滤波器拓扑结构,其中所接收的声音随时间而收集,并且在特定时间段内收集的经分类的所接收的声音被用于修改滤波器拓扑结构。

在另一方面中,一种音频设备包括多个空间分离的麦克风,其被配置成麦克风阵列,其中麦克风适于接收声音;声源检测系统,其被配置为检测从中导出音频信号的声源类型;环境改变检测系统,其被配置为检测音频设备的环境改变;以及处理系统,其与麦克风阵列、声源检测系统和环境改变检测系统通信,并且被配置为从多个麦克风导出多个音频信号,使用先前的音频数据来操作处理音频信号的滤波器拓扑结构以使得阵列对期望声音比对不期望声音更敏感,将所接收的声音分类为期望声音或不期望声音之一,确定所接收的声音的置信分数,并且使用经分类的所接收的声音、所接收的声音的类别以及置信分数来修改滤波器拓扑结构,其中所接收的声音随时间而收集,并且在特定时间段内收集的经分类的所接收的声音用于修改滤波器拓扑结构。在一个非限制性示例中,音频设备还包括通信系统,其被配置为将音频信号传输到服务器,并且音频信号包括由麦克风阵列检测到的声场的多通道表示,该多通道表示包括用于每个麦克风的至少一个通道。

附图说明

图1是音频设备和音频设备滤波器修改系统的示意性框图。

图2图示了在房间内使用的诸如图1中所描绘的音频设备。

具体实施方式

在具有被配置成麦克风阵列的两个或更多个麦克风的音频设备中,音频信号处理算法或拓扑结构(诸如波束形成算法)被用于帮助区分期望声音(诸如人声)和不期望声音(诸如噪声)。音频信号处理算法可以基于由期望声音和不期望声音产生的理想化声场的受控记录。这些记录优选地但不必需在消声环境中获取。音频信号处理算法被设计为相对于期望声源产生对不期望声源的最佳抑制。然而,在现实世界中由期望声源和不期望声源产生的声场并不与在算法设计中使用的理想化声场相对应。

通过本滤波器修改,与消声环境相比较,可以使音频信号处理算法更准确地用于现实世界中。这通过设备在现实世界中被使用的同时利用音频设备获得的现实世界音频数据修改算法设计来实现。被确定为期望声音的声音可以用于修改波束成形器所使用的期望声音的集合。被确定为不期望声音的声音可以被用于修改波束成形器所使用的不期望声音的集合。因此,期望声音和不期望声音对波束成形器进行不同修改。对信号处理算法的修改以自主且被动的方式进行,无需人或任何附加设备的任何干预。结果是在任何特定时间使用的音频信号处理算法可以基于预测量的声场数据和现场声场数据的组合。因此,音频设备能够在存在噪声和其他不期望声音的情况下更好地检测到期望声音。

图1中描绘了示例性音频设备10。设备10具有麦克风阵列16,其包括处于不同物理位置的两个或更多个麦克风。麦克风阵列可以是线性的或不是线性的,并且可以包括两个麦克风或多于两个麦克风。麦克风阵列可以是独立的麦克风阵列,或者它可以是例如音频设备(诸如扬声器或耳机)的一部分。麦克风阵列在本领域中是众所周知的,因此本文中将不再进一步描述。麦克风和阵列不限于任何特定的麦克风技术、拓扑结构或信号处理。任何对换能器或耳机或其他类型音频设备的引用都应当理解为包括任何音频设备,诸如家庭影院系统、可穿戴式扬声器等。

音频设备10的一个使用示例是作为免提支持话音的扬声器或“智能扬声器”,其示例包括Amazon EchoTM和Google HomeTM。智能扬声器是一种智能个人助理,其包括一个或多个麦克风和一个或多个扬声器,并且具有处理和通信功能。可替代地,设备10可以是无法作为智能扬声器工作但仍具有麦克风阵列以及处理和通信能力的设备。这种备选设备的示例可以包括便携式无线扬声器,诸如Bose无线扬声器。在一些示例中,两个或更多个设备的组合(诸如Amazon Echo Dot和Bose扬声器)提供智能扬声器。音频设备的又一示例是对讲电话。此外,可以在单个设备中启用智能扬声器功能和对讲电话功能。

音频设备10通常用于其中可能存在不同类型和水平的噪声的家庭或办公室环境中。在这样的环境中,存在与成功检测话音(例如,话音命令)相关联的挑战。这些挑战包括期望声音和不期望声音的源的相对位置、不期望声音(诸如噪声)的类型和响度、以及在麦克风阵列捕获之前改变声场的物品(诸如可以例如包括墙壁和家具在内的声音反射和吸收表面)的存在。

如本文中所描述的,音频设备10能够完成所需处理以便使用和修改音频处理算法(例如,波束成形器)。这种处理由标记为“数字信号处理器”(DSP)20的系统完成。注意,DSP 20实际上可以包括音频设备10的多个硬件和固件方面。然而,由于音频设备中的音频信号处理在本领域中是众所周知的,所以DSP 20的这些特定方面不需要在本文中进一步说明或描述。来自麦克风阵列16的麦克风的信号被提供给DSP 20。信号也被提供给话音活动检测器(VAD)30。音频设备10可以(或可以不)包括电声换能器28,使得它可以播放声音。

麦克风阵列16从期望声源12和不期望声源14中的一个或两个所接收的声音。如本文中所使用的,“声音”、“噪声”和类似词语是指可听声能。在任何给定时间,期望声源和不期望声源中的两者、任一个或者没有一个会产生由麦克风阵列16接收的声音。并且,可能存在一个或多于一个的期望声源和/或不期望声源。在一个非限制性示例中,音频设备10适于将人类话音检测为“期望”声源,其中其他所有声音都是“不期望”声源。在智能扬声器的示例中,设备10可以持续工作以感测“唤醒词”。唤醒词可以是在旨在用于智能扬声器的命令的开始所说出的词或短语,诸如“okay Google”,其可以用作Google HomeTM智能扬声器产品的唤醒词。设备10还可以适于感测(并且在某些情况下,解析)唤醒词后的话语(即,来自用户的语音),这种话语通常被解释为旨在由智能扬声器或与该智能扬声器通信的另一设备或系统执行的命令,诸如在云中完成的处理。在所有类型的音频设备中,包括但不限于智能扬声器或被配置为感测唤醒词的其他设备,主题滤波器修改有助于改善具有噪声的环境中的话音识别(并且因此改善唤醒词识别)。

在音频系统的活跃使用或现场使用期间,用于帮助将期望声音与不期望声音区分开的麦克风阵列音频信号处理算法没有对是期望声音还是不期望声音的任何明确标识。然而,音频信号处理算法依赖于该信息。因而,本音频设备滤波器修改方法包括一种或多种方法,以解决输入声音未被标识为期望或不期望的事实。期望声音通常是人类语音,但不必限于人类语音,而是可以包括诸如非语音的人类声音之类的声音(例如,如果智能扬声器包括婴儿监视器应用程序,则包括哭闹的婴儿,或者如果智能扬声器包括家庭安全应用程序,则包括门打开或玻璃破碎的声音)。不期望声音是除了期望声音之外的所有声音。在智能扬声器或适于感测唤醒词或寻址到设备的其他语音的其他设备的情况下,期望的声音是寻址到设备的语音,并且所有其他声音都是不期望的。

解决区分现场的期望声音和非期望声音的第一方法涉及将麦克风阵列现场接收的所有音频数据或至少大部分音频数据视为非期望声音。这通常是在家庭(如客厅或厨房)中使用智能扬声器设备的情况。在许多情况下,存在几乎连续的噪声和其他不期望声音(即,除了针对智能扬声器的语音之外的声音),诸如电器、电视、其他音频源、以及人们在正常生活过程中说话的声音。在这种情况下,音频信号处理算法(例如,波束成形器)仅使用预先记录的期望声音数据作为其“期望”声音数据的源,但是利用现场记录的声音更新其不期望声音数据。因此,就对音频信号处理的不期望数据贡献而言,可以在使用时对算法进行调整。

解决区分现场的期望声音和非期望声音的另一方法涉及检测声源的类型并且基于该检测决定是否使用该数据来修改音频处理算法。例如,音频设备要旨在收集的类型的音频数据可以是一种类别的数据。对于旨在收集针对该设备的人类话音数据的智能扬声器或对讲电话或其他音频设备,音频设备可以包括检测人类话音音频数据的能力。这可以通过话音活动检测器(VAD)30来实现,这是能够区分声音是否是话语的音频设备的一方面。VAD在本领域中是众所周知的,因此不需要进一步描述。VAD 30连接到声源检测系统32,该声源检测系统32向DSP 20提供声源标识信息。例如,经由VAD 30收集的数据可以由系统32标记为期望数据。不会触发VAD 30的音频信号可以被认为是不期望声音。然后,音频处理算法更新过程可以在期望数据集合中包括这种数据,或者从不期望数据集合中排除这种数据。在后一种情况下,未经由VAD收集的所有音频输入被认为是不期望数据,并且可以被用于修改不期望数据集合,如上文所描述的。

解决区分现场的期望声音和非期望声音的另一方法涉及使得判定基于音频设备的另一动作。例如,在对讲电话中,在活跃电话呼叫(active phone call)正在进行的同时收集的所有数据可以被标记为期望声音,而所有其他数据都是不期望的。VAD可以与该方法结合使用,从而有可能在不是话音的活跃呼叫期间排除数据。另一示例涉及“一直监听”设备,其响应于关键词而唤醒;在关键词(以下话语)之后收集的关键词数据和数据可以被标记为期望数据,并且所有其他数据可以被标记为不期望的。诸如关键词检出(keyword spotting)和终点检测之类的已知技术可以被用于检测关键词和话语。

解决区分现场的期望声音和非期望声音的又一方法涉及使得音频信号处理系统(例如,经由DSP 20)能够计算所接收的声音的置信分数,其中置信分数与声音或声音片段属于期望声音集合或不期望声音集合的置信有关。置信分数可以用于音频信号处理算法的修改。例如,置信分数可以用于将所接收的声音的贡献加权到音频信号处理算法的修改。当期望声音的置信高时(例如,当检测到唤醒词和话语时),置信分数可以设置为100%,这意味着声音被用于修改在音频信号处理算法中使用的期望声音集合。如果期望声音或不期望声音的置信小于100%,则可以指派小于100%的置信加权,使得声音样本对总体结果的贡献被加权。该加权的另一优点是可以重新分析先前记录的音频数据,并且基于新信息确认或改变其标签(期望/不期望)。例如,当还使用关键词检出算法时,一旦检测到关键词,则接下来的话语是期望的能够具有高置信。

用于解决区分现场的期望声音和非期望声音的上述方法可以独自使用或者以任何期望组合使用,其目的是修改由音频处理算法所使用的期望声音数据集和非期望声音数据集中的一个或两个,以帮助当使用设备时,现场区分期望声音和不期望声音。

音频设备10包括记录不同类型的音频数据的能力。记录的数据可以包括声场的多通道表示。声场的这种多通道表示通常包括阵列的每个麦克风的至少一个通道。源自不同物理位置的多个信号有助于声源的定位。此外,还可以记录元数据(诸如每次记录的日期和时间)。例如,元数据可以用于针对一天中的不同时间和不同季节设计不同的波束成形器,以说明这些场景之间的声学差异。直接多通道记录易于收集,需要处理最少,并且捕获所有音频信息—不会丢弃可能用于音频信号处理算法设计或修改方法的音频信息。可替代地,所记录的音频数据可以包括交叉功率谱矩阵,其是基于每个频率的数据相关性的度量。可以在相对较短的时间段内计算这些数据,并且如果较长期的估计是需要的或有用的,则可以对这些数据进行平均或合并。与多通道数据记录相比,该方法可以使用更少的处理和存储器。

使用音频设备在现场(即,在现实世界处于使用中)时所获得的音频数据修改音频处理算法(例如,波束成形器)设计可以被配置为考虑在使用设备时发生的改变。由于在任何特定时间处于使用中的音频信号处理算法通常基于预测量的声场数据和现场采集的声场数据的组合,如果音频设备被移动或其周围环境改变(例如,它被移动到在房间或房屋内的不同位置,或它相对于声音反射或吸收表面(诸如墙壁和家具)被移动,或家具在房间内移动),则先前收集的现场数据可能不适用于当前算法设计。如果当前算法设计恰当地反映当前特定环境条件,则它会是最准确的。因而,音频设备可以包括删除或替换旧数据的能力,该旧数据可以包括在现在废弃的条件下收集的数据。

设想了旨在帮助确保算法设计基于最相关的数据的几种特定方式。一种方式是仅包含自过去一固定时间量以来收集的数据。只要算法具有足够的数据来满足特定算法设计的需要,就可以删除旧数据。这可以被认为是移动时间窗口,在该移动时间窗口内,算法使用所收集的数据。这有助于确保正在使用与音频设备的最新条件最相关的数据。另一种方式是使声场度量随时间常数衰减。时间常数可以是预先确定的,或者可以基于诸如已经收集的音频数据的类型和数量之类的度量而变化。例如,如果设计过程基于交叉功率谱密度(PSD)矩阵的计算,则可以保持包含具有时间常数的新数据的运行估计,诸如:

其中Ct(f)是交叉-PSD的当前运行估计,Ct-1(f)是最后一个步骤的运行估计,是仅根据在最后一个步骤内收集的数据估计的交叉-PSD,并且α是更新参数。通过这个方案(或类似的方案),随着时间的推移,旧数据变得不再重要。

如上文所描述的,对设备检测到的声场具有影响的音频设备周围的环境的改变或音频设备的移动可以以利用对音频处理算法的准确性有疑问的预移动音频数据的方式来改变声场。例如,图2描绘了用于音频设备10a的本地环境70。从讲话者80接收的声音经由许多路径行进到设备10a,其中示出了两个路径:直接路径81和间接路径82,在该间接路径82中,声音从墙壁74反射。同样,来自噪声源84(例如,电视或冰箱)的声音经由许多路径行进到设备10a,其中示出了两个路径:直接路径85和间接路径86,在该间接路径86中,声音从墙壁72反射。家具76也可以例如通过吸收或反射声音对声音传输产生影响。

由于音频设备周围的声场可能改变,因此最好在可能的范围内丢弃在移动设备或移动声场中的物品之前所收集的数据。为此,音频设备应当具有一些方式来确定它何时被移动或者环境是否已经改变。这在图1中大体上由环境改变检测系统34表示。完成系统34的一种方式可以是允许用户经由用户界面(诸如设备上或远程控制设备上的按钮或用于与设备接口连接的智能手机应用程序)重置算法。另一种方式是在音频设备中包含主动的基于非音频的运动检测机构。例如,加速度计可以用于检测运动,然后DSP可以丢弃在运动之前收集的数据。可替代地,如果音频设备包括回声消除器,则已知当音频设备被移动时其抽头(taps)将改变。因此,DSP可以使用回声消除器的抽头的改变作为移动的指示器。当丢弃所有过去的数据时,算法的状态可以保持在其当前状态,直到收集到足够的新数据为止。在数据删除的情况下,更好的解决方案可以是恢复到默认算法设计,并且基于新收集的音频数据来重新开始修改。

当相同的用户或不同的用户使用多个单独的音频设备时,算法设计改变可以基于由多于一个音频设备收集的音频数据。例如,如果来自许多设备的数据有助于当前算法设计,则与其基于精心控制的测量的初始设计相比较,该算法对于设备的平均现实世界使用可能更准确。为了适应这一点,音频设备10可以包括在两个方向上与外部世界通信的装置。例如,通信系统22可以用于(无线地或通过线路)与一个或多个其他音频设备通信。在图1所示的示例中,通信系统22被配置为通过互联网40与远程服务器50通信。如果多个单独的音频设备与服务器50通信,则服务器50可以合并数据并且使用它来修改波束成形器,并且例如经由云40和通信系统22将经修改的波束成形器参数推送到音频设备。这种方法的结果是,如果用户选择退出该数据收集方案,则用户仍然可以从对一般用户群做出的更新受益。由服务器50表示的处理可以由单个计算机(其可以是DSP 20或服务器50)或与设备10或服务器50共同扩展或分开的分布式系统提供。处理可以完全在一个或多个音频设备本地完成,完全在云端完成,或在两者之间分开。如上文所描述的完成的各种任务可以组合在一起或分解为更多子任务。每个任务和子任务可以在本地或在基于云的或其他远程系统中由不同设备或设备的组合来执行。

如对于本领域技术人员显而易见的是,主题的音频设备滤波器修改可以与除了波束成形器之外的处理算法一起使用。几个非限制性示例包括多通道维纳滤波器(MWF),其与波束成形器非常相似;所收集的期望信号数据和不期望信号数据可以以与波束成形器几乎相同的方式使用。此外,可以使用基于阵列的时频掩蔽算法(array-based time frequency masking algorithms)。这些算法涉及将输入信号分解为时频仓,然后将每个仓乘以掩码,该掩码是该仓中的期望信号与不期望信号的数量的估计。存在多种掩码估计技术,其中大多数可以从期望数据和不期望数据的现实世界示例中受益。进一步地,可以使用机器学习语音增强,其使用神经网络或类似构造。这关键取决于具有期望信号和不期望信号的记录;这可以使用在实验室中生成的东西进行初始化,但是可以通过现实世界样本大大改善。

附图的元件在框图中示出并描述为离散元件。这些可以被实现为模拟电路或数字电路中的一个或多个。可替代地或附加地,它们可以使用执行软件指令的一个或多个微处理器来实现。软件指令可以包括数字信号处理指令。操作可以由模拟电路或执行软件的微处理器执行,该软件执行模拟操作的等同物。信号线可以实现为离散的模拟或数字信号线、具有能够处理单独信号的适当信号处理的离散数字信号线、和/或无线通信系统的元件。

当在框图中表示或暗示过程时,这些步骤可以由一个元件或多个元件执行。这些步骤可以一起执行或在不同时间执行。执行活动的元件可以在物理上彼此相同或彼此接近,或者可以在物理上分离。一个元件可以执行多于一个框的动作。可以对音频信号进行编码或不对其进行编码,并且可以采用数字或模拟形式传输。在某些情况下,附图中省略了传统的音频信号处理设备和操作。

上文所描述的系统和方法的实施例包括对于本领域技术人员而言显而易见的计算机部件和计算机实现的步骤。例如,本领域技术人员应当理解,计算机实现的步骤可以作为计算机可执行指令存储在计算机可读介质上,诸如例如,软盘、硬盘、光盘、闪存ROMS、非易失性ROM、以及RAM。更进一步地,本领域技术人员应当理解,计算机可执行指令可以在多种处理器上执行,诸如例如,微处理器、数字信号处理器、门阵列等。为了便于说明,并非上文所描述的系统和方法的每个步骤或元件在本文中都被描述为计算机系统的一部分,但是本领域技术人员应当认识到每个步骤或元件可以具有对应的计算机系统或软件部件。因此,这种计算机系统和/或软件部件通过描述它们的对应步骤或元件(也就是说,它们的功能)来实现,并且落入本公开的范围之内。

已经对若干种实现方式进行了描述。然而,应当理解,在不背离本文中所描述的发明构思的范围的情况下,可以做出附加修改,因而,其他实施例也在所附权利要求的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1