基于不同窗函数的语音信号处理

更新时间:2023-10-03 13:31:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于不同窗函数的语音信号处理

摘要:矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过

了矩形窗。海明窗也是余弦窗的一种,又称改进的升余弦窗。海明窗与汉宁窗都是余弦窗,只是加权系数不同。海明窗加权的系数能使旁瓣达到更小。汉宁(Hanning)窗又称升余弦窗,汉宁窗可以看作是3个矩形时间窗的频谱之和,它可以使用旁瓣互相抵消,消去高频干扰和漏能。

关键字:矩形窗、汉明窗、汉宁窗、MATLAB

引言: 为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截断,截断函数称为窗

函数,简称为窗。泄漏与窗函数频谱的两侧旁瓣有关,如果两侧p旁瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截断信号。

对于窗函数的选择,应考虑被分析信号的性质与处理要求。如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用主瓣宽度比较窄而便于分辨的矩形窗,例如测量物体的自振频率等;如果分析窄带信号,且有较强的干扰噪声,则应选用旁瓣幅度小的窗函数,如汉宁窗、三角窗等;对于随时间按指数衰减的函数,可采用指数窗来提高信噪比。

不同的窗函数对信号频谱的影响是不一样的,这主要是因为不同的窗函数,产生泄漏的大小不一样,频率分辨能力也不一样。信号的截断产生了能量泄漏,而用FFT算法计算频谱又产生了栅栏效应,从原理上讲这两种误差都是不能消除的,但是我们可以通过选择不同的窗函数对它们的影响进行抑制。(矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低;布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值识别精度最高)。

原始信号提取(如下图):

矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。

海明窗也是余弦窗的一种,又称改进的升余弦窗。海明窗与汉宁窗都是余弦窗,只是加权系数不同。海明窗加权的系数能使旁瓣达到更小。分析表明,海明窗的第一旁瓣衰减为一42dB.海明窗的频谱也是由3个矩形时窗的频谱合成,但其旁瓣衰减速度为20dB/(10oct),这比汉宁窗衰减速度慢。海明窗与汉宁窗都是很有用的窗函数。

汉宁(Hanning)窗又称升余弦窗,汉宁窗可以看作是3个矩形时间窗的频谱之和,它可以使用旁瓣互相抵消,消去高频干扰和漏能。 汉宁窗与矩形窗的谱图对比,可以看出,汉宁窗主瓣加宽(第一个零点在2π/T处)并降低,旁瓣则显著减小。第一个旁瓣衰减一32dB,而矩形窗第一个旁瓣衰减-13dB。此外,汉宁窗的旁瓣衰减速度也较快,约为60dB/(10oct),而矩形窗为20dB/(10oct)。由以上比较可知,从减小泄漏观点出发,汉宁窗优于矩形窗。但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。

为了使能够与具有相同的性质,则要求是一个冲激函数。窗长N越长,的主瓣越狭窄尖锐,则越逼近。但窗长N太大,窗选信号不满足语音的短时平稳特性,不能正确反映短时语音的频谱了。为此,必须要合理选择窗长N。

自相关函数是描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度.设原函数是f(t),则自相关函数定义为R(u)=f(t)*f(-t),其中*表示卷积.

Xn(ejw短时傅立叶变换(语音的短时谱):

)?m?0?xN?1n(m)e?jwm ,

Xn(k)?m?0?xN?1nmk(m)WN(N=2L,不足补零);

短时谱的卷积形式:

xn(m)?w(m)x(n?m)0?m?N?1?10?m?N?1w(m)??n?0,1T,2T,....,others?0Xn(ejw)?X(ejw)?W(ejw)

jwjw*jwjw2S(e)?X(e)?X(e)?|X(e)| nnn短时功率谱和短时谱的关系: n短时功率谱和短时自相关函数的关系:

Sn(e)?jwk??(N?1)?R(k)enN?1?jwk

图1、一帧矩形窗函数图形 图2、自相关矩形窗函数图形

图3、一帧汉明窗函数图形 图4、自相关汉明窗函数图形

图5、一帧汉宁窗函数图形 图6、自相关汉宁窗函数图形

汉明窗的主瓣宽度比矩形窗大一倍,同时带外衰耗也比矩形大一倍。矩形窗的谱平滑性能较好,但损失了高频成分,使波形细节丢失;而汉明窗则相反,从这反方面来看,汉明窗更为合适;汉宁窗优于矩形窗.但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降;汉明窗与汉宁窗都是余弦窗,只是加权系数不同。海明窗加权的系数能使旁瓣达到更小。分析表明,海明窗的第一旁瓣衰减为一42dB.海明窗的频谱也是由3个矩形时窗的频谱合成,但其旁瓣衰减速度为20dB/(10oct),这比汉宁窗衰减速度慢;快速变化,由激励信号引起的;慢速变化,声道滤波器的共振峰特性引起的;采用汉明窗得到的短时频谱较矩形窗平滑,因而在语音分析中汉明窗用得较普遍。所以,通过对汉宁窗、汉明窗、矩形窗的一帧分析和自相关分析,矩形窗的周期及平滑程度均优于汉宁窗和汉明窗。在实际情况中要根据不同的条件选择不同的窗函数,处理不同的领域。

程序:原始图像提取:[y,fs,Nbits]=wavread('F:\\1\\xtl.wav');

plot(y)

建立随机噪声提取:N=512;

n=2*randn(1,N)-1; plot(n)

1.矩形窗:N=512;

wn=boxcar(N); plot(wn)

[y,fs,Nbits]=wavread('F:\\1\\xtl.wav'); N=512;

x=y(9500:10011); w=boxcar(N); z=x.*w; plot(z)

rn=xcorr(z); plot(rn)

2.汉明窗:N=512;

ws=hamming(N);

plot(ws)

[y,fs,Nbits]=wavread('F:\\1\\xtl.wav'); N=512;

x=y(9500:10011); w=hamming(N); z=x.*w; plot(z)

rn=xcorr(z); plot(rn)

3.汉宁窗:N=512;

wf=hanning(N);

plot(wf)

[y,fs,Nbits]=wavread('F:\\1\\xtl.wav'); N=512;

x=y(9500:10011); w=hanning(N); z=x.*w; plot(z)

rn=xcorr(z); plot(rn)

参看文献:

【1】 【2】 【3】 【4】 【5】

赵力,语音信号处理 周本虎,瞿勇等 ,MATLAB

陈用彬,数字信号处理及语音信号处理 陈尚勤,近代语音识别

马大酋,语音信息和语音通信

本文来源:https://www.bwwdw.com/article/elwd.html

Top