基于Matlab的谱减法语音增强的研究
【摘要】在实际应用中,待分析的语音信号一般是被噪声污染的语音,很大程度上影响了语音处理系统的性能。为此,需要我们对带噪语音进行语音增强处理,抑制噪声,恢复纯净语音。本文就谱减法对带噪语音进行处理,并利用matlab 行仿真,验证了谱减法的语音增强的效果。
【关键词】Matlab;语音增强;谱减法
1.引言
研究语音增强技术在实际中有重要价值。目前,语音增强己在很多方面得到广泛的应用,例如语音处理系统、通信、多媒体技术、数字化家电等领域。语音增强的一个主要目标,就是从带噪语音信号中提取尽可能纯净的原始语音。根据与输入语音信号的关系,噪声可分为加性噪声和非加性噪声两类。对某些非加性噪声而言,可以通过一定的变换转换成加性噪声。非加性噪声主要是残响和传送网络的电路噪声等。加性噪声通常分为宽带噪声、冲激噪声、语音干扰噪声、周期噪声等[1]。
2.谱减法基本原理
谱减法的基本思想是在假定加性噪声与短时平稳的语言信号相互独立的情况下,从带噪语音的功率谱中减去噪声功率谱,从而得到较为纯净的语音频谱[2]。如果设s(t)为纯净语音,n(t)为噪声信号,y(t)为带噪语音信号[3],则有:
y(t)=s(t)+n(t)(2-1)
用Y()、S()、N()分别表示y(t)、s(t)、n(t)的傅里叶变换,则可得
Y()=S()+N()(2-2)
由于假定语音信号与加性噪声是相互独立的,则可以得到:
(2-3)
如果用、、分别表示y(t)、s(t)和n(t)的功率谱,则有:
=+ (2-4)
而由于平稳噪声的功率谱在发声前和发声期间可以认为基本没有变化,这样可以通过发声前的所谓“寂静段”来估计噪声的功率谱,从而有: