语音降噪-谱减算法

本文详细解析了语音降噪中的谱减算法,包括幅度谱减法和功率谱减法,以及它们的基本原理。讨论了相位信息的处理问题和音乐噪声的影响,并分享了相关程序实现。重点介绍了算法存在的局限性,如信噪比依赖和非线性处理导致的音乐噪声效应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

假设

假设噪声和语音是加性的,噪声是平稳的(缓慢变换的),

基本原理

利用语音幅度减去估计出来的噪声幅度得到降噪后的语音幅度,相位使用带噪语音的相位。假定带噪语音 y ( n ) y(n) y(n),纯净语音 x ( n ) x(n) x(n),加性噪声 d ( n ) d(n) d(n),即:
y ( n ) = x ( n ) + d ( n ) y(n)=x(n) + d(n) y(n)=x(n)+d(n)
做傅里叶变换后:
Y ( w ) = X ( w ) + D ( w ) Y(w)=X(w) + D(w) Y(w)=X(w)+D(w)
带噪语音写成极坐标形式为:
Y ( w ) = ∣ Y ( w ) ∣ e j ϕ y ( w ) Y(w)=|Y(w)| e^{j{\phi}_{y}(w)} Y(w)=Y(w)ejϕy(w)
其中 n n n 代表采样点, w w w 代表频率, ∣ Y ( w ) ∣ |Y(w)| Y(w) 代表幅度谱, ϕ y ( w ) \phi_{y}(w) ϕy(w) 代表带噪语音的相位。

幅度谱减法

假设估计的噪声的幅度谱为 D ^ ( w ) \widehat{D}(w) D (w),则降噪后的语音信号谱可以表示为:
X ^ ( w ) = ( ∣ Y ( w ) ∣ − ∣ D ^ ( w ) ∣ ) e j ϕ y ( w ) \widehat{X}(w)=(|Y(w)| - |\widehat{D}(w)| )e^{j{\phi}_{y}(w)} X (w)=(Y(w)D (w))ejϕy(w)
信号的幅度谱总是非负的,因此要做一下保护,即
∣ X ^ ( w ) ∣ = { ∣ Y ( w ) ∣ > D ^ ( w ) ∣ , 如果 ∣ Y ( w ) ∣ > D ^ ( w ) ∣ 0 , 其它 |\widehat{X}(w)| =\begin{cases} & |Y(w)| > \widehat{D}(w)| , \text{如果} |Y(w)| > \widehat{D}(w)|\\ & 0, \text{其它} \end{cases} X (w)={Y(w)>D (w),如果Y(w)>D (w)0,其它

功率谱减法

通过假设噪声和语音不相关,语音是短时平稳(语音是非平稳的,当逐帧(10ms-30ms)处理时可以假设是短时平稳的),幅度谱减法可以扩展到功率谱领域,即:
∣ X ^ ( w ) ∣ 2 = { ∣ Y ( w ) ∣ 2 > ∣ D ^ ( w ) ∣ 2 , 如果 ∣ Y ( w ) ∣ 2 > D ^ ( w ) ∣ 2 0 , 其它 |\widehat{X}(w)|^2 =\begin{cases} & |Y(w)|^2 > |\widehat{D}(w)|^2 , \text{如果} |Y(w)|^2 > \widehat{D}(w)|^2\\ & 0, \text{其它} \end{cases} X (w)2={Y(w)2>D (w)2,如果Y(w)2>D (w)20,其它
上式也可以写成如下形式:
∣ X ^ ( w ) ∣ 2 = ∣ H ( w ) ∣ 2 ∣ Y ( w ) ∣ 2 |\widehat{X}(w)|^2=|H(w)|^2 |Y(w)|^2 X (w)2=H(w)2Y(w)2
其中,
H ( w ) = ( 1 − ∣ D ^ ( w ) ∣ 2 ∣ Y ( w ) ∣ 2 ) H(w)=(1 -\frac{|\widehat{D}(w)|^2}{|Y(w)|^2}) H(w)=(1Y(w)2D (w)2)
H ( w ) H(w) H(w)代表抑制函数, 0 ≤ H ( w ) ≤ 1 0 \leq H(w) \leq 1 0H(w)1

谱减法通用形式

通用形式可以表示为:
∣ X ^ ( w ) ∣ p = ∣ Y ( w ) ∣ p − ∣ D ^ ( w ) ∣ p |\widehat{X}(w)|^p=|Y(w)|^p - |\widehat{D}(w)|^p X (w)p=Y(w)pD (w)p
其中 p p p 是幂指数, p p p = 1时为幅度谱减法, p p p = 2时为功率谱减法。

谱减法存在的问题

1、相位信息使用的是带噪语音的相位
语音信号经过傅里叶变换后由实数域转换为复数域,降噪时只考虑了幅度值,忽略了相位信息,在不同的信噪比情况下,误差表现不一样。
在这里插入图片描述
在这里插入图片描述

上面两个图分别是高信噪比和低信噪比时的示意图,高信噪比时,误差小,低信噪比时,误差大。研究表明,当信噪比大于8dB时,相位差不会被感知到。
2、音乐噪声
由于估计的干净语音的幅度要大于等于0,存在半波整流的保护操作,这种非线性处理会导致频谱上存在独立的峰值,转换到时域后,听起来就是随机变化的多频音。

程序

参考链接:SpecSub Code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值