基于时频掩蔽和深度神经网络的声源方向估计方法
技术领域
本公开涉及计算机应用技术领域,特别涉及一种基于时频掩蔽和深度神经网络的声源方向估计方法、装置及电子设备、存储介质。
背景技术
噪音环境下的声源定位在现实生活中有很多应用,例如人机交互、机器人和波束形成。传统上,GCC-PHAT(Generalized Cross Correlation Phase Transform,广义互相关-相位变换方法)、SRP-PHAT(Steered Response Power Phase Transform,相位变换加权的可控响应功率法)或MUSIC(Multiple Signal Classification,多信号分类)等声源定位算法最为常见。然而,这些算法只能定位环境中声量最大的信号源,而声量最大的信号源可能根本不是目标说话人。例如,在强混响、有向噪声或漫反射噪声的环境中,GCC-PHAT系数的总和会出现来自干扰源的峰值,而根据MUSIC算法中带噪音协方差矩阵的最小特征向量值而构成得的噪声子空间可能不属于真正的噪声。
为提高鲁棒性,早期的研究采用SNR(Signal-to-noise ratio,信噪比)加权的方式加强目标声音频率,得到更高的SNR,之后再运行GCC-PHAT算法。例如使用基于语音活动检测的算法或基于最小均方误差的方法等SNR估计法。然而,这些算法通常假设噪声是静态的,而现实环境中的噪声通常是动态的,从而导致现实环境中进行声源定位时,方向估计的鲁棒性较差。
发明内容
为了解决方位估计的鲁棒性较差的技术问题,本公开提供了一种基于时频掩蔽和深度神经网络的声源方向估计方法、装置及电子设备、存储介质。
第一方面,提供了一种基于时频掩蔽和深度神经网络的声源方向估计方法,包括:
获取多通道声音信号;
对所述多通道声音信号中的每一通道声音信号进行分帧、加窗和傅里叶变换,形成所述多通道声音信号的短时傅里叶频谱;
通过预先训练的神经网络模型对所述短时傅里叶谱进行迭代运算,计算所述多通道声音信号中目标信号对应的比值膜;
将多个比值膜融合形成单一比值膜;
通过所述单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位。
可选的,所述通过预先训练的神经网络模型对所述短时傅里叶谱进行迭代运算,计算所述多通道声音信号中目标信号对应的比值膜的步骤包括:
通过预先训练的神经网络模型对各通道声音信号的短时傅里叶谱进行迭代运算,分别计算所述多通道声音信号中各通道声音信号对应的比值膜。
可选的,所述通过预先训练的神经网络模型对各通道声音信号的短时傅里叶谱进行迭代运算,分别计算所述多通道声音信号中各通道声音信号对应的比值膜的步骤包括:
以直达声或混响语音信号为目标,采用具有长短期记忆的深度递归神经网络模型分别计算所述多通道声音信号中各单通道目标信号对应的比值膜。
可选的,所述将多个比值膜融合形成单一比值膜的步骤包括:
将多通道声音信号中目标信号所产生的比值膜,在相应时频单元上进行累乘。
可选的,通过所述单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位的步骤,方案一包括:
使用多通道输入信号的短时傅里叶谱计算广义互相关函数;
采用所述单一比值膜对所述广义互相关函数进行掩蔽;
将掩蔽后的广义互相关函数沿频率和时间进行加和,选取加和互相关函数最大峰值位对应的方向作为目标声源的方位。
可选的,通过所述单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位的步骤,方案二包括:
在每个时频单元中,计算所述多通道声音信号短时傅里叶谱的协方差矩阵;
采用所述单一比值膜对所述协方差矩阵进行掩蔽,在每个单独的频率上,对掩蔽的协方差矩阵沿时间维度加和,分别得到目标语音和噪声在不同频率上的协方差矩阵;
依据麦克风阵列的拓扑结构,计算候选方向在不同频率上的导向矢量;
根据所述噪声协方差矩阵和候选导向矢量,计算不同频率上MVDR波束成形的滤波器系数;
采用所述波束成形的滤波器系数和目标语音协方差矩阵计算不同频率上目标语音的能量,采用所述波束成形的滤波器系数和噪声协方差矩阵计算不同频率上噪声的能量;
在不同频率上,计算目标语音和噪声的能量比,并沿频率维度加和,形成在某一候选方向上的总体信噪比;
选择对应总体信噪比最大的候选方向作为目标声源的方位。
可选的,所述通过所述单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位的步骤,方案三包括:
在不同频率上,对所述目标语音协方差矩阵采用特征分解,选取特征值最大的对应特征向量作为目标语音的导向矢量;
采用所述目标语音的导向矢量计算麦克风信号之间的到达时间差;
根据麦克风阵列拓扑结构计算候选方向在麦克风之间的到达时间差;
计算所述麦克风信号之间到达时间差和所述候选方向在麦克风之间到达时间差之间的余弦距离;
选择对应最大余弦距离的候选方向作为目标声源的方位。
第二方面,提供了一种基于时频掩蔽和深度神经网络的声源方向估计装置,包括:
声音信号获取模块,用于获取多通道声音信号;
短时傅里叶频谱提取模块,用于对所述多通道声音信号中的每一通道声音信号进行分帧、加窗和傅里叶变换,形成所述多通道声音信号的短时傅里叶频谱;
比值膜计算模块,用于通过预先训练的神经网络模型对所述短时傅里叶谱进行迭代运算,计算所述多通道声音信号中目标信号对应的比值膜;
比值膜融合模块,用于将多个比值膜融合,形成单一比值膜;
掩蔽加权模块,用于通过所述单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位。
第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的方法。
第四方面,提供了一种计算机可读存储介质,用于存储程序,所述程序在被执行时使得电子设备执行如第一方面所述的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
在通过估计目标声源到达时间差以进行定位时,在获取多通道声音信号后,通过预先训练的神经网络模型计算多通道声音信号中目标信号对应的比值膜,将多个比值膜融合形成单一比值膜后,通过用单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位,从而能够在低信噪比、强混响的环境中都具有强大鲁棒性,提高目标声源方向估计的准确性和稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅为示例性,并不能限制本公开范围。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种基于时频掩蔽和深度神经网络的声源方向估计方法的流程图。
图2是图1对应实施例的基于时频掩蔽和深度神经网络的声源方位估计方法中步骤S150的第一种具体实现流程图。
图3是图1对应实施例的基于时频掩蔽和深度神经网络的声源方位估计方法中步骤S150的第二种具体实现流程图。
图4是图1对应实施例的基于时频掩蔽和深度神经网络的声源方位估计方法中步骤S150的第三种具体实现流程图。
图5是根据一示例性实施例示出的双耳设置示意图(a)和双麦克风设置的示意图(b)。
图6是根据一示例性实施例示出的一种基于时频掩蔽和深度神经网络的声源方位估计装置的框图。
图7是图6对应实施例示出的基于时频掩蔽和深度神经网络的声源方位估计装置中掩蔽加权模块150的第一种框图。
图8是图6对应实施例示出的基于时频掩蔽和深度神经网络的声源方位估计装置中掩蔽加权模块150的第二种框图。
图9是图6对应实施例示出的基于时频掩蔽和深度神经网络的声源方位估计装置中掩蔽加权模块150的第三种框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、与本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种基于时频掩蔽和深度神经网络的声源方位估计方法的流程图。该基于时频掩蔽和深度神经网络的声源方位估计方法可用于智能手机、智能家居、电脑等电子设备中。如图1所示,该基于时频掩蔽和深度神经网络的声源方位估计方法可以包括步骤S110、步骤S120、步骤S130、步骤S140和步骤S150。
步骤S110,获取多通道声音信号。
TDOA(Time Difference of Arrival,到达时间差)定位是一种利用到达时间差进行定位的方法。通过测量信号到达监测点的时间,可以确定目标声源的距离。利用目标声源到各个麦克风的距离,就能确定目标声源的位置。但是声源在空间转播时间比较难测量。通过比较声音信号到达各麦克风的到达时间差,能较好确定声源的位置。
不同于计算转播时间,TDOA是通过检测信号到达两个或多个麦克风的时间差来确定目标声源的位置。这一方法被广泛采用。因此,TDOA计算的准确性和鲁棒性在目标声源的定位中就显得尤为重要。多通道声音信号是包含2个或2个以上麦克风通道混合的声音信号。
通常地,多个麦克风装设于噪音环境中的不同位置,通过麦克风接收不同位置的声音信号。但在现实环境中,除了目标声源所发出的声音信号外,还有其他噪声声源发出的声音信号。因此,需根据接收的多通道声音信号,在所处环境中进行目标声源的定位。
步骤S120,对多通道声音信号中的每一通道声音信号进行分帧、加窗和傅里叶变换,形成多通道声音信号的短时傅里叶频谱。
分帧是按照预设时间周期,将单通道声音信号分为多个时间帧。
在一具体示例性实施例中,将多通道声音信号中的每一通道声音信号按照每帧20毫秒分为多个时间帧,且每两个相邻的时间帧之间具有10毫秒的重叠。
在一示例性实施例中,将STFT(short-time Fourier transform,短时傅里叶变换)应用于每个时间帧以提取短时傅里叶频谱。
步骤S130,通过预先训练的神经网络模型对短时傅里叶频谱进行迭代运算,计算多通道声音信号中目标信号对应的比值膜。
比值膜是表征带噪语音信号与纯净语音信号之间的关系,其指示了抑制噪声与保留语音的适当权衡。
理想情况下,通过比值膜对带噪语音信号进行掩蔽处理后,可以从带噪语音中还原出语音频谱信号。
神经网络模型是预先训练而成的。通过提取多通道声音信号的短时傅里叶频谱,在该神经网络模型中进行迭代运算,计算该多通道声音信号的比值膜。
可选的,在计算该多通道声音信号的比值膜时,通过预先训练的神经网络模型分别计算多通道声音信号中各单通道声音信号对应的比值膜,进而通过各单通道声音信号对应的比值膜单独进行单通道声音信号的掩蔽,对不同时频(T-F)单元施加不同权重,从而锐化多通道声音信号中目标语音相对应的峰值,并抑制与噪声源相对应的峰值。
在计算各单通道声音信号对应的比值膜时,采用具有长短期记忆的深度递归神经网络模型分别计算多通道声音信号中各通道声音信号对应的比值膜,使计算出的比值膜更加接近理想比值膜。
公式(1)示出了以混响语音信号为目标,计算多通道声音信号中各通道声音信号对应的理想比值膜。公式(2)示出了以直达声为目标,计算多通道声音信号中各通道声音信号对应的理想比值膜。
混响语音是从声源发出的声波在各方向来回反射而传播到麦克风的声音。混响语音的声波能量在传播过程中由于不断被壁面吸收而逐渐衰减。
直达声是指从声源不经过任何的反射而以直线的形式直接传播到麦克风的声音。直达声决定着声音的清晰度。
其中i指示麦克风通道,c(f)s(t,f),h(t,f),和n(t,f)分别是直达声、混响、和反射噪声的短时傅里叶变换(STFT)向量。
由于TDOA信息主要包含在直达声中,因此通过以直达声信号为目标,使比值膜的计算模型可能更加接近真实环境。
可选的,还可以采用其它方式计算各单通道声音信号对应的比值膜,在此不进行一一描述。
步骤S140,将多个比值膜融合形成单一比值膜。
如前所述的,各单通道声音信号存在其对应的比值膜,对包含多个单通道声音信号的多通道声音信号而言,存在着多个对应的比值膜。
本发明将多个比值膜融合形成单一比值膜。
具体的,可以对多通道声音信号所产生的比值膜在相应时频单元上进行累乘,形成单一比值膜。
步骤S150,通过单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位。
需要说明的是,即使对于严重受干扰的语音信号,仍有许多T-F单元由目标语音主导。这些具有较清晰相位的T-F单元往往足以实现鲁棒的目标声源的定位。通过掩蔽加权,提高那些语音主导单元对定位的贡献,从而提高计算的TDOA的鲁棒性,提高目标声源定位的准确性。
可选的,在一示例性实施例中,如图2所示,步骤S150可以包括步骤S151、步骤S152、步骤S153。
步骤S151,使用多通道输入信号的短时傅里叶谱计算广义互相关函数(Generalized Cross-Correlation Phase Transform,GCC-PHAT)。
步骤S152,采用单一比值膜对广义互相关函数进行掩蔽。
步骤S153,将掩蔽后的广义互相关函数沿频率和时间进行加和,选取加和互相关函数最大峰值位对应的方向作为目标声源的方位。
如前所述的,将采用具有长短期记忆的深度递归神经网络模型分别计算多通道声音信号中各通道声音信号对应的比值膜。本发明可直接应用于各种几何形状的麦克风阵列。
假设只有一个目标声源和一对麦克风。在有混响和噪音环境下,这对麦克风信号可以用模型表述如下:
y(t,f)=c(f)s(t,f)+h(t,f)+n(t,f), (3)
其中s(t,f)表示目标声源在时间t和频率f时候的短时傅里叶变换(STFT)值,c(f)表示相对传递函数,y(t,f)分别是接收到的混合声音的短时傅里叶变换(STFT)向量。通过选取第一个麦克风作为参考麦克风,相对传递函数c(f)可以表述如下:
其中τ*是以秒为单位的基础时间延迟,j为虚值单元,A(f)是一个实值增益,fs是以Hz为单位的采样率,N是DFT频率的数量,[·]T代表矩阵转置。f的范围从0到N/2。
通过基于相位变换的加权机制计算广义互相关函数来估计时间延迟:
其中(.)H代表共轭转置,Real{·}提取实部,|·|计算幅度。下标1和2表示麦克风通道。直观地,该算法首先使用候选时延来对齐两个麦克风信号,然后计算它们的相位差和余弦距离。如果余弦距离接近1,则意味着候选时延接近真实时延(相位差)。因此,每个GCC系数在-1和1之间。假设每个话语中声源是固定的,则对GCC系数汇集求和,取最大值作为时间延迟的估计值。PHAT权重在这里是必不可少的。如果不进行归一化,则具有较高能量的频率将具有较大的GCC系数并且主导求和。
本发明通过对多通道声音信号进行掩蔽加权后再计算GCC-PHAT函数:
GCCPHAT-MASK(t,f,τ)=η(t,f)GCCPHAT(t,f,τ), (6)
其中η(τ,f)表示TDOA估计中T-F单元的掩蔽加权项。它可以定义为:
其中D(在本例中=2)是麦克风通道的数量。是对应于通道i的比值膜,表示在该通道中每个T-F单元处目标语音能量的比重。
通过对多通道声音信号进行掩蔽加权,并将掩蔽后的广义互相关函数沿频率和时间进行加和,选取加和互相关函数最大峰值位对应的方向作为目标声源的方位,大大提高了确定目标声源方位时的准确性。
可选的,在一示例性实施例中,如图3所示,步骤S150另一种方案可以包括步骤S154、步骤S155、步骤S156、步骤S157、步骤S158、步骤S159、步骤S160。
步骤S154,在每个时频单元中,计算多通道声音信号短时傅里叶谱的协方差矩阵。
步骤S155,采用单一比值膜对协方差矩阵进行掩蔽,在每个单独的频率上,对掩蔽的协方差矩阵沿时间维度加和,分别得到目标语音和背景噪声在不同频率上的协方差矩阵。
步骤S156,依据麦克风阵列的拓扑结构,计算候选方向在不同频率上的导向矢量(Steering vector)。
步骤S157,根据噪声协方差矩阵和候选导向矢量,计算不同频率上MVDR(MinimumVariance Distortionless Response)波束成形的滤波器系数。
步骤S158,采用波束成形的滤波器系数和目标语音协方差矩阵来计算不同频率上目标语音的能量,并采用波束成形的滤波器系数和噪声协方差矩阵来计算不同频率上背景噪声的能量。
步骤S159,在不同频率上,计算目标语音和噪声的能量比,并沿频率维度加和,形成在某一候选方向上总体信噪比。
步骤S160,选择对应总体信噪比最大的候选方向作为目标声源的方位。
通过公式(8)和公式(9)分别计算每个时频单元目标语音的协方差矩阵和噪声的协方差矩阵
η(t,f)使用公式(7)进行计算,即单一比值膜。
ξ(t,f)使用下式进行计算:
基本上,公式(7)意味着仅利用语音主导的时频单元来计算目标语音协方差矩阵,并且时频单元的目标语音占优势越多,放置的权重越大。公式(8)用类似方法来计算干扰信号协方差矩阵。
接着,遵循自由场和平面波假设,将潜在的目标声源位置k的单位长度导向矢量建模为:
dki是指声源位置k与麦克风i之间的距离,Cs指声音的传播速度。于是,一个最小方差无失真响应(MVDR)波束形成可以构造如下:
之后,波束形成信号的SNR可以通过计算波束形成的目标语音和噪声的能量而得出:
最终,声源方位可以预测为:
在公式(13)中,我们将SNR限制在0和1之间。它基本上类似于GCC-PHAT算法中的PHAT加权,其中每个T-F单元的GCC系数归一化为-1到1。我们还可以将更多权重放在更高的SNR频率上:
γ(f)可以定义为:
γ(f)=∑tη(t,f) (16)
每个频率内的组合语音掩蔽的总和用于指示每个频率的重要性。在实验中发现使用公式(15)比公式(13)得到的结果要更好。
可选的,在一示例性实施例中,如图4所示,步骤S150第三种方案可以包括步骤S161、步骤S162、步骤S163、步骤S164、步骤S165。
步骤S161,在不同频率上,对目标语音协方差矩阵采用特征分解(Eigendecomposition),选取特征值最大的对应特征向量作为目标语音的导向矢量。
步骤S162,采用目标语音的导向矢量计算麦克风信号之间的到达时间差。
步骤S163,根据麦克风阵列拓扑结构计算每一候选方向在麦克风之间的到达时间差。
步骤S164,计算麦克风信号之间到达时间差和候选方向在麦克风之间到达时间差之间的余弦距离。
步骤S165,选择对应最大余弦距离的候选方向作为目标声源的方位。
导向矢量可以使用如下公式进行计算:
其中P{·}提取在公式(8)中计算的估计语音协方差矩阵的主特征向量。如果计算得当,它将接近于秩1矩阵,因此它的主要特征向量是导向向量的合理估计。
为了估算时间延迟我们列举了所有潜在的时间延迟,并找到以下目标最大化的延迟:
基本原理是在每个频率上独立地计算导向矢量因此,没有严格遵循线性相位假设。本发明列举了所有潜在的时间延迟,搜索带有相位延迟的时间延迟τ,与每个频率的(导向向量方向)最为匹配,于是将其作为最终预测结果。类似于公式(15),我们使用γ(f)加权以强调更高的SNR。
利用如上所述的方法,在通过估计TDOA以进行目标声源的定位时,在获取多通道声音信号后,通过预先训练的神经网络模型计算多通道声音信号对应的比值膜,然后将多个比值膜融合成单一比值膜,进而通过单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位。本发明在低信噪比、强混响的环境中均具有强大的鲁棒性,提高了目标声源方向估计的准确性和稳定性。
下面将使用双耳实验装置和双麦克风实验装置在具有强混响和混杂人声的环境中对上述示例性实施例进行TDOA的鲁棒性测试。图5为根据一示例性实施例示出的双耳设置和双麦克风设置的示意图。
混合语音的平均持续时间为2.4秒。两个数据集的对混响语音和混响噪声计算得出的输入SNR是-6dB。如果我们将直达声信号视为目标语音而将其余信号视为噪声,则SNR会更低。我们使用训练数据中的所有单通道信号(总共10000*2)训练LSTM(long short-term memory,具有长短期记忆的递归神经网络)。在麦克风阵列设置中,对数功率谱图用作输入特征;在双耳设置中,还使用了耳间能量差。在全局均值-方差归一化之前,对输入特征进行了句子层面上的均值归一化。LSTM包含两个隐层,每个隐层有500个神经元。Adam算法用于最小化比值膜估计的均方误差。窗长为32毫秒,窗移大小为8毫秒。采样率为16kHz。
我们根据总准确度来衡量效果,如果预测方向在真实目标方向的5°及以内,则认为预测是正确的。
在双麦克风设置中,基于图像方法的RIR(room impulse response,房间脉冲响应)发生器用于生成RIR以模拟混响。对于训练和验证数据,我们在36个方向中的每个方向上放置一个干扰说话人,从–87.5°到87.5°,步长为5°,并且目标说话人在36个方向中的一个方向上。对于测试数据,我们在37个方向中的每一个方向上放置一个干扰说话人,范围从-90°到90°,步长为5°,并且目标说话人在37个方向中的任一个方向上。这样,测试RIR在训练期间是看不见的。目标说话人和阵列中心之间的距离为1米。房间大小固定在8x8x3m,两只麦克风放在房间的中心。
表1.比较双麦克风设置中不同方法的TDOA估计效果(%总正确度)
两个麦克风之间的距离为0.2米,高度均设为1.5米。每种混合语音片段的T60以0.1s的步长从0.0s至1.0s随机挑选。IEEE和TIMIT语句用于生成训练、验证和测试语音。
在双耳实验装置中,使用软件仿真双耳房间脉冲响应(BRIR),其中T60(混响时间)范围从0.0s到1.0s,步长为0.1s。仿真房间大小固定为6x4x3m。BRIR的测量方法是将双耳放置在房间中心周围,高度为2米,声源位于37个方向中的一个(从-90°到90°,步长为5°),与阵列的高度相同,距离阵列中心1.5米。使用HATS仿真头在四个不同尺寸和T60的真实房间中采集的真实BRIRs用于测试。仿真头放置在2.8米的高度,声源到阵列的距离是1.5米。真正的BRIR也使用相同的37个方向进行测量。我们在37个方向中的每一个上放置了37个不同的干扰人声,并且在某一个方向上放置了目标人声。在我们的实验中,720名女性IEEE的语句被用作目标语音。我们将它们随机分成500、100和120个话语,以用于训练、验证和测试数据。为了生成散漫的多人说话噪声,我们TIMIT数据集里630个说话人的语句连接在一起,并将随机选择的37个说话人及其语音段放置在37个方向中的每个方向上。对于嘈杂噪声中的每个说话人,我们使用连接的话语的前半部分来生成训练和验证噪声,而后半部分用于产生测试噪声。训练、验证和测试数据集中总共有10000,800和3000种双耳混合语音。
表2.双耳设置中不同方法的TDOA估计效果比较(%总正确度)
表1和表2中展示了总的定位准确度结果。其中灰色标记理想比值膜的性能。表中还显示对每个T60水平的直达混响能量比(direct-to-reverberant energy ratio,DRR)。使用来自LSTM估计比值膜进行掩蔽,所提出的掩蔽加权GCC-PHAT算法显著改进了传统的GCC-PHAT算法(如表1中从25.8%提升到78.5%、88.2%,表2中从29.4%提升到91.3%、90.8%)。基于导向矢量的TDOA估计算法在所有算法中表现出最强的鲁棒性,尤其是当T60较高时。使用直达声作为目标语音的理想比值膜可以使所有提出的算法的准确率几乎达到100%(表1中为100.0%、99.9%和99.8%,表2中为99.4%,99.4%和99.4%)。这表明基于T-F单元进行掩蔽的方法十分适用于强鲁棒性的TDOA估计。
因为时间延迟信息主要包含在直达声中,在双麦克风设置中,使用直达声作为目标语音定义IRM始终比使用混响声作为目标语音的结果要好(88.2%vs.78.5%,90.5%vs.86.7%和91.0%vs.86.4%)。
然而,由于头部阴影效应以及双耳设置中训练和测试BRIR之间的不匹配,掩蔽加权的导向响应SNR算法在双耳设置中的表现相对不如双麦克风设置中好。考虑到头部阴影效应,双耳情况下的增益不能简单地相等于不同声道的增益,因此,使用混响声作为目标语音来估计IRM在双耳设置中要比使用直达声作为目标语音获得稍好的性能(91.3%v.s.90.8%,86.4%v.s.70.0%和92.0%v.s.91.1%)。
下述为本公开装置实施例,可以用于执行本上述基于时频掩蔽和深度神经网络的声源方位估计方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开基于时频掩蔽和深度神经网络的声源方位估计方法实施例。
图6是根据一示例性实施例示出的一种基于时频掩蔽和深度神经网络的声源方位估计装置的框图,该装置包括但不限于:声音信号获取模块110、短时傅里叶频谱提取模块120、比值膜计算模块130、比值膜融合模块140及掩蔽加权模块150。
声音信号获取模块110,用于获取多通道声音信号;
短时傅里叶频谱提取模块120,用于对多通道声音信号中的每一通道声音信号进行分帧、加窗和傅里叶变换,形成多通道声音信号的短时傅里叶频谱;
比值膜计算模块130,用于通过预先训练的神经网络模型对短时傅里叶谱进行迭代运算,计算多通道声音信号中目标信号对应的比值膜;
比值膜融合模块140,用于将多个比值膜融合形成单一比值膜;
掩蔽加权模块150,用于通过单一比值膜对多通道声音信号进行掩蔽加权,确定目标声源的方位。
上述装置中各个模块的功能和作用的实现过程,具体见上述基于时频掩蔽和深度神经网络的声源方位估计方法中对应步骤的实现过程,在此不再赘述。
可选的,图6中的比值膜计算模块130包括但不限于:比值膜分别计算单元。
比值膜分别计算单元,用于通过预先训练的神经网络模型对各通道声音信号的短时傅里叶谱进行迭代运算,分别计算多通道声音信号中各通道声音信号对应的比值膜。
可选的,比值膜分别计算单元可具体应用于以直达声或混响语音信号为目标,采用具有长短期记忆的深度递归神经网络模型分别计算多通道声音信号中各单通道目标信号对应的比值膜。
可选的,图6中的比值膜融合模块140具体应用于将多通道声音信号中目标所产生的比值膜,在相应时频单元上进行累乘。
可选的,如图7所示,图6中的掩蔽加权模块150包括但不限于:广义互相关函数计算子模块151、掩蔽子模块152和方位确定子模块153。
广义互相关函数计算子模块151,用于使用多通道输入信号的短时傅里叶谱计算广义互相关函数;
掩蔽子模块152,用于采用单一比值膜对广义互相关函数进行掩蔽;
第一方位确定子模块153,用于将掩蔽后的广义互相关函数沿频率和时间进行加和,选取加和互相关函数最大峰值位对应的方向作为目标声源的方位。
可选的,如图8所示,图6中的掩蔽加权模块150第二方案包括但不限于协方差矩阵计算子模块154、协方差矩阵掩蔽子模块155、候选方向导向矢量计算子模块156、波束成形滤波器系数计算子模块157、能量计算子模块158、总体信噪比计算子模块159和第二方位确定子模块160。
协方差矩阵计算子模块154,用于在每个时频单元中,计算多通道声音信号短时傅里叶谱的协方差矩阵;
协方差矩阵掩蔽子模块155,用于采用单一比值膜对协方差矩阵进行掩蔽,在每个单独的频率上,对掩蔽的协方差矩阵沿时间维度加和,分别得到目标语音和噪声在不同频率上的协方差矩阵;
候选方向导向矢量计算子模块156,用于依据麦克风阵列的拓扑结构,计算候选方向在不同频率上的导向矢量;
波束成形滤波器系数计算子模块157,用于根据噪声协方差矩阵和候选导向矢量,计算不同频率上MVDR波束成形的滤波器系数;
能量计算子模块158,用于采用波束成形的滤波器系数和目标语音协方差矩阵计算不同频率上目标语音的能量,采用波束成形的滤波器系数和噪声协方差矩阵计算不同频率上噪声的能量;
总体信噪比形成子模块159,用于在不同频率上,计算目标语音和噪声的能量比,并沿频率维度加和,形成在某一候选方向上总体信噪比;
第二方位确定子模块160,用于选择对应总体信噪比最大的候选方向作为目标声源的方位。
可选的,如图9所示,图6中的掩蔽加权模块150第三方案包括但不限于:语音导向矢量计算子模块161、到达时间差计算子模块162、候选方向到达时间差子模块163、余弦距离计算子模块164和第三方位确定子模块子模块165。
语音导向矢量计算子模块161,用于在不同频率上,对目标语音协方差矩阵采用特征分解,选取特征值最大的对应特征向量作为目标语音的导向矢量;
到达时间差计算子模块162,用于采用目标语音的导向矢量计算麦克风信号之间的到达时间差;
候选方向到达时间差子模块163,用于根据麦克风阵列拓扑结构计算候选方向在麦克风之间的到达时间差;
余弦距离计算子模块164,用于计算麦克风信号之间的到达时间差和候选方向在麦克风之间的到达时间差之间的余弦距离;
第三方位确定子模块165,用于选择对应最大余弦距离的候选方向作为目标声源的方位。
可选的,本发明还提供一种电子设备,执行如上述示例性实施例任一所示的基于时频掩蔽和深度神经网络的声源方位估计方法的全部或者部分步骤。电子设备包括:
处理器;以及
与所述处理器通信连接的存储器;其中,
所述存储器存储有可读性指令,所述可读性指令被所述处理器执行时实现如上述任一示例性实施例所述的方法。
该实施例中的终端中处理器执行操作的具体方式已经在有关该基于时频掩蔽和深度神经网络的声源方位估计方法的实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读性存储介质,例如可以为包括指令的临时性和非临时性计算机可读性存储介质。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围时进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。