近年来,语音识别系统广泛应用于智能设备、车载系统和互联网等领域。在安静环境下,语音识别系统的识别率可高达95%~99%,但在实际应用中,环境噪声会导致语音识别系统的识别率大大降低。文献[1]中提到了诸多用于提高语音识别系统鲁棒性的语音增强算法。其中,基于最小均方误差的短时谱估计语音增强算法具有复杂度不高、易于实时实现以及产生的音乐噪声小等特点,通常被用于语音识别系统中作为噪声抑制模块以改善语音的质量,从而提高识别系统的鲁棒性。基于文献[2]的研究,文献发展出的最优改进对数幅度谱(Optimal Modified Log Spectral Amplitude,OMLSA)估计算法被用于提高识别系统的鲁棒性[4],并取得了一定的效果。但OMLSA算法是对语音的幅度谱进行估计和处理,而并非直接对用于识别的特征进行增强,因此该方法是次优的[4]。文献[5-6]提出了一种最优的特征增强的估计算法,但其只能对梅尔倒谱系数 (Mel-Frequency Cepstral Coefficient,MFCC) 特征参数进行增强,而不适用于线性预测倒谱系数(Linear Predictive Cepstral Coefficient,LPCC) 和感知线性预测(Perceptual Linear Prediction,PLP)系数等特征。
如文献[7]所述,在一些应用中,语音功率谱估计算法有时会比语音幅度谱估计算法取得更好的效果。因此,本文改进了一种短时语音功率谱估计算法以提高语音识别系统的鲁棒性,并结合语音存在的概率进一步提高算法的性能。改进之处在于本文在推导结合了SPP的MMSE语音功率谱估计算法时,假设语音的幅度谱是服从Chi分布而非传统的瑞利分布的,该特性也在文献[8-9]中得以了验证。此外,考虑到语音识别系统应用于移动终端设备时对功耗的限制,本文提出了一个切换的短时功率谱估计算法,以降低识别系统的总功耗。切换算法根据每一帧语音的最大似然先验信噪比和语音活动性检测(Voice Activity Detection,VAD)技术以判断使用两种的语音功率谱估计算法之一。在信噪比较低的时段,识别系统采用改进的MMSE语音功率谱估算法估计纯净语音的功率谱;而在高信噪比时,识别系统使用复杂度较低的维纳语音功率谱估计器,以减小语音增强算法的运算量。因此新算法在去除噪声干扰以提高识别系统鲁棒性的同时,能节约语音识别系统的功耗。
1 模型假设和变量表示带噪语音模型为:y(n)=x(n)+d(n)。其中:y(n)是带噪语音信号,x(n)是纯净语音信号,d(n)是加性噪声信号。对信号分帧后再进行傅里叶变换后得到:Yk(i)=Xk(i)+Dk(i),其中Yk(i),Xk(i)和Dk(i)分别代表信号y(n)、x(n)和d(n)的第i帧中第k个频点,假设它们是零均值而且相互独立的随机变量。为了简化表示,可省去表示帧的变量i,例如第i帧带噪语音Yk(i)=Xk(i)+Dk(i)可表示为:Yk=Xk+Dk。 ξk=λx(k)/λd(k)是第i帧中第k个频点的先验信噪比,而γk=|Yk|2/λd(k)为对应频点的后验信噪比[2],其中|Yk|2、λx(k)和λd(k)分别为带噪语音信号、纯净语音信号和噪声信号的方差。Yk=Rkejφ和Xk=Akejθ分别是Yk和Xk的极坐标表示形式,φ和θ分别是对应的相位。
假设语音幅度谱的观测值服从Chi分布:
$p({{A}_{k}})=\frac{2{{\beta }^{a}}}{\Gamma (a)}{{A}_{k}}^{2a-1}\exp (-\beta {{A}_{k}}^{2})$ | (1) |
其中:2a 是Chi分布的自由度,β=a/λx(k)。Chi 分布在a=1时可以简化为一个瑞利分布。文献[10]中提到,在 a<1时,Chi分布可以很好地接近语音幅度谱的观察值。接下来,假设加性噪声d(n)的离散傅里叶变换 (Discrete Fourier Transform,DFT) 系数服从复高斯分布,并且每一帧的每一个频点之间都相互独立[2],于是可得到带噪语音在已知纯净语音的幅度和相位条件下的后验概率密度函数,
$\begin{align} & p({{Y}_{k}}|{{A}_{k}},\theta )=\frac{1}{\pi {{\lambda }_{d}}}\exp (-{{\frac{\left| {{Y}_{k}}-{{A}_{k}}\exp (j\theta ) \right|}{{{\lambda }_{d}}}}^{2}}) \\ & \text{ }=\frac{1}{\pi {{\lambda }_{d}}}\exp (-\frac{\left| {{R}_{k}}^{2}+{{A}_{k}}^{2}-2{{A}_{k}}\operatorname{Re}\{\exp (-j\theta ){{Y}_{k}}\} \right|}{{{\lambda }_{d}}}). \\ \end{align}$ | (2) |
其中,Re{·}是取实部操作。
2 改进的MMSE语音功率谱估计算法改进的MMSE语音功率谱估计算法假设了语音的幅度谱服从Chi分布,并结合了语音存在的概率。本章将分别介绍在语音幅度谱服从Chi分布假设下,MMSE语音功率谱估计算法和结合了语音存在概率的MMSE语音功率谱估计算法的推导过程。
2.1 MMSE语音功率谱估计定义ek = Ak2为每一帧语音的功率谱。接下来对Chi分布下的语音的功率谱进行估计进行推导。首先,通过用贝叶斯定理计算语音幅度谱的后验概率密度函数p(Ak|Yk):
$p({{A}_{k}}|{{Y}_{k}})=\frac{p({{Y}_{k}}|{{A}_{k}})p({{A}_{k}})}{\int_{0}^{\infty }{p({{Y}_{k}}|{{A}_{k}})p({{A}_{k}})\text{d}{{A}_{k}}}}$ | (3) |
其中,p(Yk|Ak)由式(4)计算得到:
$p({{Y}_{k}}|{{A}_{k}})=\int_{0}^{2\pi }{p({{Y}_{k}}|{{A}_{k}},\theta )}p(\theta )\mathrm{d}\theta $ | (4) |
其中θ是X(k)的相位,是在[0,2π]内服从均匀分布的随机变量。将把式(2)代入(4)可得:
$p({{Y}_{k}}|{{A}_{k}})=\frac{1}{\pi {{\lambda }_{d}}}{{\operatorname{e}}^{-\frac{{{R}_{k}}^{2}+{{A}_{k}}^{2}}{{{\lambda }_{d}}}}}\int_{-\pi }^{\pi }{\exp (\frac{2{{A}_{k}}\operatorname{Re}({{e}^{-j\theta }}{{Y}_{k}})}{{{\lambda }_{d}}})}\mathrm{d}\theta $ | (5) |
式(5)中的积分通过文献求解得到:
$p({{Y}_{k}}|{{A}_{k}})=\frac{1}{\pi {{\lambda }_{d}}}\exp (-\frac{{{R}_{k}}^{2}+{{A}_{k}}^{2}}{{{\lambda }_{d}}}){{\mathrm{I}}_{0}}(2{{A}_{k}}\sqrt{\frac{{{\nu }_{k}}}{{{\lambda }_{k}}}})$ | (6) |
其中:${{\nu }_{k}}=\frac{{{\xi }_{k}}}{{{\xi }_{k}}+1}{{\gamma }_{k}},{{\lambda }_{k}}=\frac{{{\lambda }_{x}}}{{{\xi }_{k}}+1}$,I0(·)是修正的第一类零阶贝塞尔函数。将式(6)和(1)代入到式(3)中,可得在已知带噪语音条件下的语音幅度谱的后验概率密度函数p(Ak|Yk):
$p({{A}_{k}}|{{Y}_{k}})=\frac{{{A}_{k}}^{2a-1}{{e}^{-(\beta +\frac{1}{{{\lambda }_{d}}}){{A}_{k}}^{2}}}{{\mathrm{I}}_{0}}(2{{A}_{k}}\sqrt{{{\nu }_{k}}/{{\lambda }_{k}}})}{\int_{0}^{\infty }{{{A}_{k}}^{2a-1}{{e}^{-(\beta +\frac{1}{{{\lambda }_{d}}}){{A}_{k}}^{2}}}{{\mathrm{I}}_{0}}(2{{A}_{k}}\sqrt{{{\nu }_{k}}/{{\lambda }_{k}}})d{{A}_{k}}}}$ | (7) |
其中,式(7)分母中的积分可通过文献求得。代入式(7)可得到:
$p({{A}_{k}}|{{Y}_{k}})=\frac{{{A}_{k}}^{2a-1}{{e}^{-(\beta +\frac{1}{{{\lambda }_{d}}}){{A}_{k}}^{2}}}{{\mathrm{I}}_{0}}(2A\sqrt{{{\nu }_{k}}/{{\lambda }_{k}}})}{\mathrm{ }\!\!\Gamma\!\!\text{ }(a)\mathrm{ }\!\!\Phi\!\!\text{ }\left( a,1;\frac{{{\nu }_{k}}}{{{\lambda }_{k}}(\beta +1/{{\lambda }_{d}})} \right)/2{{(\beta +\frac{1}{{{\lambda }_{d}}})}^{a}}}$ | (8) |
其中: Γ(·)表示伽马函数;Φ(·)是合流超几何函数。
根据文献[12],在已知带噪语音频谱的条件下,语音功率谱的后验概率密度函数p(ek|Yk)可表示为:
$p({{e}_{k}}|{{Y}_{k}})=p({{A}_{k}}|{{Y}_{k}})\cdot |\frac{d{{A}_{k}}}{d{{e}_{k}}}|=\frac{p({{A}_{k}}|{{Y}_{k}})}{2\sqrt{{{e}_{k}}}}$ | (9) |
将式(8)代入(9),把ek用Ak替换,得到在Chi分布下语音功率谱的后验概率密度函数p(ek|Yk) 的表达式:
$p({{e}_{k}}|{{Y}_{k}})=\frac{{{e}_{k}}^{a-1}{{e}^{-(\beta +\frac{1}{{{\lambda }_{d}}}){{e}_{k}}}}{{\mathrm{I}}_{0}}(2{{e}_{k}}\sqrt{{{e}_{k}}{{\nu }_{k}}/{{\lambda }_{k}}})}{\mathrm{ }\!\!\Gamma\!\!\text{ }(a)/{{(\beta +\frac{1}{{{\lambda }_{d}}})}^{a}}\mathrm{ }\!\!\Phi\!\!\text{ }\left( a,1;\frac{{{\nu }_{k}}}{{{\lambda }_{k}}(\beta +1/{{\lambda }_{d}})} \right)}$ | (10) |
根据MMSE准则,纯净语音的功率谱估计可以表示为:
${{\hat{e}}_{k}}=E[{{e}_{k}}|{{Y}_{k}}]=\int_{0}^{\infty }{{{e}_{k}}}p({{e}_{k}}|Y)d{{e}_{k}}$ | (11) |
最后,将(10)代入到(11),然后使用文献 计算其中的积分,最终得到在Chi分布下,纯净语音功率谱的估计的闭合表达式:
${{\hat{e}}_{k}}=\frac{z{{\lambda }_{k}}}{{{\nu }_{k}}}\exp (z)\frac{\mathrm{ }\!\!\Gamma\!\!\text{ }(a+1)\mathrm{ }\!\!\Phi\!\!\text{ }(-a,\text{1;}-z)}{\mathrm{ }\!\!\Gamma\!\!\text{ }(a)\mathrm{ }\!\!\Phi\!\!\text{ }(a,\text{1;}z)}$ | (12) |
其中,$z=\frac{{{\nu }_{k}}(a+{{\xi }_{k}})}{(1+{{\xi }_{k}})}$
2.2 MMSE语音功率谱估计结合语音存在的概率为了进一步提高在Chi分布下MMSE语音功率谱估计的性能,计算出的语音功率谱${{\hat{e}}_{k}}$与语音存在的概率结合得到改进的MMSE语音功率谱估计${{\hat{e}}^{\text{spp}}}{{_{k}}_{{}}}\ \ $:
${{\hat{e}}^{\text{spp}}}{{_{k}}_{{}}}\ \ ={{e}_{k}}{{|}_{{{\xi }_{k}}={{{{\xi }'}}_{k}}}}p(H_{1}^{k}|{{Y}_{k}})$ | (13) |
其中,H1k表示在第k个频点处存在语音,p(H1k|Yk)代表在第k个频点语音存在的后验概率,定义[12]如下所示:
$p(H_{\text{1}}^{k}|{{Y}_{k}})=\frac{{{\Lambda }_{k}}}{1+{{\Lambda }_{k}}}$ | (14) |
其中,Λk的定义如下所示:
${{\Lambda }_{k}}=\frac{1-{{q}_{k}}}{{{q}_{k}}}\frac{p({{Y}_{k}}|H_{1}^{k})}{p({{Y}_{k}}|H_{0}^{k})}$ | (15) |
其中:p(Yk|H1k)和p(Yk|H0k)分别代表在语音存在和不存在的条件下Yk的概率密度函数;qk表示在频点k处语音存在的概率,则在频点k处语音不存在的概率即1-qk。当语音不存在时,即只存在噪声,而已知噪声的DFT系数服从复高斯分布,这样可以得到p(Yk|H0k):
$p({{Y}_{k}}|H_{0}^{k})=p({{Y}_{k}}={{D}_{k}})=\frac{1}{\pi {{\lambda }_{d}}}\exp (-{{\frac{{{R}_{k}}}{{{\lambda }_{d}}}}^{2}})$ | (16) |
而当语音存在时,噪声也存在,所以p(Yk|H1k)表示为:
$p(H_{1}^{k}|{{Y}_{k}})=p({{Y}_{k}}={{X}_{k}}+{{D}_{k}})=p({{Y}_{k}}={{X}_{k}})*p({{Y}_{k}}={{D}_{k}})$ | (17) |
式中:*表示卷积操作,将式(11)代入(17),然后根据文献[13],可以得到语音信号离散傅里叶变换系数分布的概率密度函数为:
$p({{Y}_{k}}={{X}_{k}})=\frac{1}{2\pi }\frac{2{{\beta }^{a}}}{\Gamma (a)}{{R}_{k}}^{2a-2}\exp (-\beta {{R}_{k}}^{2})$ | (18) |
接下来将β=a/λx、式(16)和(18)一起代入(17)中。 用极坐标的表示形式,然后再做一次变量替换可以解出其中的复数卷积,结果如下:
${{\Lambda }_{k}}=\frac{1-q}{q}(\frac{1}{1+{{{{\xi }'}}_{k}}/a})\Phi (a,1,\frac{{{\gamma }_{k}}}{1+a/{{{{\xi }'}}_{k}}})$ | (19) |
当a=1,语音幅度谱便服从瑞利分布,式(19) 将被简化为文献[2]中的形式:${{\Lambda }_{k}}=\frac{1-q}{q}\frac{\exp ({{\nu }_{k}})}{1+{{{{\xi }'}}_{k}}}$。
最后,将式(12)、(14)代入(13),得到在Chi分布下,结合了语音存在概率的语音功率谱估计的改进的闭合表达形式:
${{\hat{e}}^{\text{spp}}}{{_{k}}_{{}}}\ \ =\frac{z{{\lambda }_{k}}}{{{\nu }_{k}}}\exp (z)\frac{\mathrm{ }\!\!\Gamma\!\!\text{ }(a+1)\mathrm{ }\!\!\Phi\!\!\text{ }(-a,\text{1;}-z)}{\mathrm{ }\!\!\Gamma\!\!\text{ }(a)\mathrm{ }\!\!\Phi\!\!\text{ }(a,\text{1;}z)}\frac{{{\Lambda }_{k}}}{1+{{\Lambda }_{k}}}$ | (20) |
其中:${{\Lambda }_{k}}=\frac{1-q}{q}(\frac{1}{1+{{{{\xi }'}}_{k}}/a})\mathrm{ }\!\!\Phi\!\!\text{ }(a,1,\frac{{{\gamma }_{k}}}{1+a/{{{{\xi }'}}_{k}}}),{{{\xi }'}_{k}}=\frac{{{\xi }_{k}}}{1-q},z=\frac{{{\nu }_{k}}(a+{{{{\xi }'}}_{k}})}{(1+{{{{\xi }'}}_{k}})}$。
3 切换的语音功率谱估计算法语音识别系统常常应用于如像手机、平板等移动终端设备中,所以降低谱估计语音增强算法的复杂度从而节约功耗就很有必要。因此,将改进的MMSE功率谱估计算法与传统的维纳语音功率谱估计器结合,设计一种切换的语音功率谱估计算法。在低信噪比阶段用改进的MMSE功率谱估计算法尽可能抑制噪声;而在高信噪比噪声环境中,采用计算量较小的维纳滤波算法,在去噪的同时节省系统的计算量。切换算法的流程介绍如下。
1) 计算每一帧的最大似然先验信噪比:
$\xi _{\text{frame}}^{\text{ml}}(i)={\sum\nolimits_{k=1}^{len}{{{\lambda }_{x}}(k)}}/{\sum\nolimits_{k=1}^{len}{{{\lambda }_{d}}(k)}}\;$ | (21) |
其中,len是每一帧语音的帧长。
2) 作VAD判决,得到每一帧的VAD判决结果 :
$\left\{ \begin{align} & \text{VAD}(i)=1,\quad \,\xi _{\text{frame}}^{\text{ml}}(i)\ge {{\Lambda }_{\text{thr}}}, \\ & \text{VAD}(i)=0,\quad 其他\text{,} \\ \end{align} \right.$ | (22) |
其中,Λthr是用来作VAD判决的阈值。
3) 切换相应的算法。首先,令VAD(i)=1 且VAD(i-N,i-(N-1),…,i-1)=0,保证切换发生在语音的暂停的时刻,这里N是静音段持续的帧数。然后将每一帧的最大似然先验信噪比与阈值Tswitch作比较:如果每一帧的最大似然先验信噪比大于阈值Tswitch,就说明噪声干扰较小,使用传统的维纳功率谱估计算法,反之则使用本文改进的MMSE功率谱估计算法。
4 算法性能的仿真 4.1 MMSE语音功率谱估计分别对传统的瑞利分布下结合了语音存在概率的MMSE(MMSE-Raleigh Speech Presence Uncertainty,MMSERaleigh-SPU)谱幅度估计算法、 结合了倒谱平滑的最优的对数谱幅度(Optimal Modified Log Spectral Amplitude-Temporal Cepstrum Smoothing,OMLSA-TCS)估计算法、改进的功率谱幅度估计算法以及本文提出的切换的功率谱估计算法从频域分段信噪比[14]、ITU-TP.862的语音质量感知评估(Perceptual Evaluation of Speech Qquality,PESQ)得分[15]以及CMU的Pocketsphinx语音识别系统[16]的识别率三个方面进行仿真对比。其中频域加权分段信噪比的公式如下所示:
${{f}_{\text{SNR}}}\text{=}\frac{10}{M}\sum\limits_{m=0}^{M-1}{\frac{\sum\limits_{j=1}^{K}{{{B}_{j}}}\lg \left[ \frac{{{F}^{2}}\left( m,j \right)}{F\left( m,j \right)-\hat{F}{{\left. \left( m,j \right) \right)}^{2}}} \right]}{\sum\limits_{j=1}^{K}{{{B}_{j}}}}}$ | (23) |
其中:Bj是第j个频带的权重;K是频带的个数;M是总帧数;F(m,j)是第m帧纯净信号的第j个频带的滤波带幅度;F^(m,j)是增强后的信号的滤波带幅度。采用频带的分段信噪比优于时域的分段信噪比,这是因为增加了对数谱上下不同频带加不同的权重。此外,可以基于感知去对频带进行划分,这样更符合人耳的听觉特性,因此更合理并具有灵活性。
语音识别系统的识别率用PA[1]表示,计算公式如下:
$\text{PA=}N-D-S-I/N$ | (24) |
其中:N是输入语音对应的文本个数,用来作参考;D、S和 I 分别代表识别结果不完整、词被替换和插入了其他词的情况的识别结果数量。只有识别出的结果跟参考的文本完全一致的时候才认为是识别正确的情况。
为了测试功率谱估计算法对语音识别系统抗噪声性能的提升效果,我们录制了400句纯净的语音,采样率为16 kHz。分别从NOISE92噪声库[17]中选取具有代表性的白噪声、粉红噪声、工厂噪声和babble噪声并且按照不同的信噪比0 dB、5 dB、10 dB和15 dB得到带噪语音。对400句语音预处理时,帧长取512个点,帧间叠加为50%,使用512个点的汉宁窗。本实验将改进的MMSE语音功率谱估计算法闭合表达式中的自由度设置为:a=0.1。这是由于文献[10]中提到在a∈[0.05,0.2]时,Chi分布能够更好地逼近语音幅度谱的真实分布。而且,本文通过实验已证明当a=0.1时,本文改进的算法有更高的识别率提升。此处不再作进一步的实验讨论。
本文改进的功率谱幅度算法将同以下三种算法对比:传统的MMSE功率谱估计算法MMSERaleigh,也结合了语音存在的概率,但对语音幅度谱分布的假设是传统的瑞利分布;经典的结合倒谱平滑的最优的对数谱幅度估计算法(OMLSA-TCS),它是最优的MMSE对数幅度谱估计算法,并结合了基于倒谱平滑(Temporal Cepstrum Smoothing,TCS)的先验信噪比估计算法[18];此外本文提出的改进的功率谱估计算法还将与切换的改进功率谱估计算法进行对比。TCS先验信噪比算法将用于计算先验信噪比 ,分别用文献[3]和文献[19]中方法计算语音存在概率和噪声的功率谱。
通过OMLSA-TCS算法、传统的MMSERaleigh-SPU功率谱估计算法、本文改进的MMSE功率谱算法以及切换的改进功率谱估计算法增强后语音的频域加权分段信噪比如图 1所示。从图 1中清楚地看出:本文改进的算法比其他三种算法有更高的频域加权分段信噪比。相比于传统的MMSERaleigh-SPU功率谱估计算法,本文改进的MMSE功率谱估计算法有比较明显的信噪比提升。在不同类型和不同信噪比的带噪语音下,平均提升了约2.15 dB。与OMLSA-TCS算法相比,本文改进的算法除了在babble噪声下略高0.4 dB之外,其他三种噪声下,本文的算法均取得了约1.22 dB的信噪比优势。
图 2为上述四种算法对400句带噪语音增强后的PESQ得分比较图。总体上,本文改进的算法取得了较高的PESQ得分,其中,本文改进的MMSE功率谱估计算法取得了比传统的MMSERaleigh-SPU功率谱估计算法更高的PESQ得分,平均提高了0.58。在白噪声、粉红噪声和工厂噪声下,本文改进的方法的PESQ得分比OMLSA-TCS算法平均提高0.2;在babble噪声下,两种算法有相近的PESQ得分,其中,本文改进的算法略高0.07。
图 3是四种算法增强后语音的识别率对比图。从图中可以看出,通过四种算法增强后语音的识别率都取得了比原始带噪语音更高值,从而说明这四种语音增强算法都可以提高语音识别系统的抗噪声性能。与两种传统的算法相比,本文改进的算法在获得较高频域分段信噪比和PESQ得分的同时也获得了较高的识别率。与OMLSA-TCS算法相比,本文改进的算法除了在babble 噪声下,平均略高1.19个百分点之外,在其他噪声下,均有比较明显的提升,分别比传统的MMSERaleigh-SPU功率谱估计算法和OMLSA-TCS算法高13个百分点和18个百分点。此外,取得最低频域分段信噪比和PESQ得分的MMSERaleigh功率谱估计算法,在低信噪比下的识别率超过了语音幅度谱算法OMLSA-TCS,大约高了5.3个百分点,这也验证了文献[7]中提到的功率谱的估计算法有时比幅度谱的估计算法有更好的效果。
由图 1~3可以发现,虽然切换的改进功率谱估计算法,相比改进的MMSE功率谱幅度算法性能有一定的下降,但是,从频域分段信噪比、PESQ和识别率的对比图来看。仍然优于传统的MMSE功率谱幅度估计算法和OMLSA-TCS算法。图 4是用于语音识别系统中的切换算法的仿真图。其中,图 4(a)是根据每一帧语音的最大似然先验信噪比的VAD算法的判决结果。仿真的语音信号由两段带噪语音组成,前半句和后半句语音信号分别叠加了0 dB和15 dB的babble噪声。从图 4(a)中可以明显地看出,无论是在信噪比较低的前半句语音还是信噪比较高的后半句语音中,VAD算法基本可以准确地判决出语音段和静音段。图 4(b)中画出了切换算法的切换点“*”,其大致在语音信号的2.7 s的位置。切换算法根据“*”切换不同的算法。在切换点之前的0~2.7 s的语音信噪比较低,采用改进的MMSE功率谱估计算法对其进行噪声抑制;而对于信噪比较高的后半句语音信号,切换算法在切换点“*”处自动切换使用传统的维纳滤波增强算法对其进行噪声消除。
图 5是切换的谱估计算法和OMLSA-TCS算法增强后语音的波形对比图。其中,图 5 (a)为前半段和后半段分别叠加了0 dB和15 dB babble噪声的原始带噪语音波形图,图 5 (b)和图 5 (c)分别为此带噪语音通过切换的谱估计算法和改进的MMSE功率谱估计算法增强后语音的波形图。从图 5中可以很清楚地看出:通过上述两种算法处理后语音的波形很接近。而且从图 1~3中可以看出采用切换的功率谱幅度估计算法相对于整段语音全用改进的功率谱的估计方法的性能无明显的下降,而由于切换算法在高信噪比的后半段语音使用了传统的维纳滤波增强算法,其计算量比改进的MMSE功率谱估计算法小很多。从而表明:切换谱估计算法在保证了噪声抑制效果的同时减小了算法的计算量,降低了识别系统的功耗。
本文提出了一种用于提高识别系统抗噪声鲁棒性的切换语音功率谱估计算法。切换算法根据每一帧语音的平均ML先验信噪比和VAD判决结果,在改进的MMSE语音功率谱估计算法和传统的维纳语音功率谱估计算法之间切换。改进的MMSE语音功率谱估计算法根据语音Chi分布的先验假设,并结合语音存在的概率,然后由MMSE准则推导而得到。仿真实验表明切换算法能准确地切换功率谱估计算法,同时改进的切换算法也表现出了比传统的MMSE功率谱估计和幅度谱估计算法OMLSA-TCS算法更高的识别系统的识别率,并且维纳语音功率谱估计算法在高信噪比条件下,表现出了跟仅采用改进的MMSE功率谱估计算法相近的性能。所以本文提出的切换语音功率谱估计算法比在尽可能提高识别系统鲁棒性的同时,降低了识别系统的功耗。
[1] | VIRTANEN T, SINGH R, RAJ B. Techniques for Noise Robustness in Automatic Speech Recognition[M]. New York: Wiley & Sons, 2012 : 228 -231. |
[2] | EPHRAIM Y, MALAH D. Speech enhancement using a minimum mean-square error log-spectral amplitude estimator[J]. IEEE Transactions on Acoustics Speech and Signal Processing, 1985, 33 (2) : 443-445. doi: 10.1109/TASSP.1985.1164550 |
[3] | COHEN I. Optimal speech enhancement under signal presence uncertainty using log-spectral amplitude estimator[J]. IEEE Signal Processing Letters, 2002, 9 (4) : 113-116. doi: 10.1109/97.1001645 |
[4] | ASTUDILLO R F, ORGLMEISTER R. Computing MMSE estimates and residual uncertainty directly in the feature domain of ASR using STFT domain speech distortion models[J]. IEEE Transactions on Acoustics Speech and Signal Processing, 2013, 21 (5) : 1023-1034. |
[5] | JENSEN J, TAN Z H. Minimum mean-square error estimation of Mel-frequency cepstral features theoretically consistent approach[J]. IEEE/ACM Transactions on Audio, Speech and Language Processing, 2015, 23 (1) : 186-197. doi: 10.1109/TASLP.2014.2377591 |
[6] | INDREBO K M, POVINELLI R J, JOHNSON M T. Minimum mean-squared error estimation of Mel-frequency cepstral coefficients using a novel distortion model[J]. IEEE/ACM Transactions on Audio, Speech and Language Processing, 2008, 16 (8) : 1654-1661. doi: 10.1109/TASL.2008.2002083 |
[7] | LOIZOU P C. Speech Enhancement:Theory and Practice[M]. Boca Raton, FL: CRC Press, 2007 : 119 -122. |
[8] | DAT T H, TAKEDA K, ITAKURA F. Generalized Gamma modeling of speech and its online estimation for speech enhancement[C]//Proceedings of the 2005 IEEE International Conference on Acoustics Speech and Signal Processing. Piscataway, NJ:IEEE, 2005, 4:181-184. |
[9] | LOTTER T, VARY P. Noise reduction by joint maximum a posteriori spectral amplitude and phase estimation with super-Gaussian speech modelling[C]//Proceedings of the 2004 European Conference on Signal Processing. Piscataway, NJ:IEEE, 2004:1457-1460. |
[10] | ERKELENS J S, HENDRIKS R C, HEUSDENS R, et al. Minimum mean-square error estimation of discrete Fourier coefficients with generalized Gamma priors[J]. IEEE Transactions on Audio, Speech and Language Processing, 2007, 15 (6) : 1741-1752. doi: 10.1109/TASL.2007.899233 |
[11] | GRADSHTEYN I S, RYZHIK I M. Table of Integrals, Series, and Products[M]. 7th ed. Cambridge, Massachusetts: Academic Press, 2007 : 699 -711. |
[12] | STARK A, PALIWAL K. MMSE estimation of log-filterbank energies for robust speech recognition[J]. Speech Communication, 2011, 53 (3) : 403-416. doi: 10.1016/j.specom.2010.11.004 |
[13] | FODOR B, FINGSCHEIDT T. MMSE speech enhancement under speech presence uncertainty assuming (generalized) Gamma speech priors throughout[C]//Proceedings of the 2012 IEEE International Conference on Acoustics Speech and Signal Processing. Piscataway, NJ:IEEE, 2012:4033-4036. |
[14] | TRIBOLET J M, NOLL P, MCDERMOTT B, et al. A study of complexity and quality of speech waveform coders[C]//Proceedings of the 1978 IEEE International Conference on Acoustics, Speech, and Signal Processing. Piscataway, NJ:IEEE, 1978, 3:586-590. |
[15] | RIX A W, BEERENDS J G, HOLLIER M P, et al. Perceptual evaluation of speech quality (PESQ)-a new method for speech quality assessment of telephone networks and codecs[C]//Proceedings of the 2001 IEEE International Conference on Acoustics Speech and Signal Processing. Washing, DC:IEEE Computer Society, 2001, 2:749-752. |
[16] | Carnegie Mellon University. Carnegie Mellon University sphinx[EB/OL].[2016-04-14]. http://cmusphinx.sourceforge.net/. |
[17] | VARGA A, STEENEKEN H J M. Assessment for automatic speech recognition:Ⅱ. NOISEX-92:a database and an experiment to study the effect of additive noise on speech recognition systems[J]. Speech Communication, 1993, 12 (93) : 247-251. |
[18] | BREITHAUPT C, GERKMANN T, MARTIN R. A novel a priori SNR estimation approach based on selective cepstro-temporal smoothing[C]//Proceedings of the 2008 IEEE International Conference on Acoustics Speech and Signal Processing. Piscataway, NJ:IEEE, 2008:4897-4900. |
[19] | HENDRIKS R C, HEUSDENS R, JENSEN J. MMSE based noise PSD tracking with low complexity[C]//Proceedings of the 2010 IEEE International Conference on Acoustics Speech and Signal Processing. Piscataway, NJ:IEEE, 2010:4266-4269. |