语音信号加窗分帧及matlab实现

加窗分帧:时域加窗,点乘;频域卷积,减少泄露

解释:语音信号是时变信号,浊音的基音周期、清浊音信号幅度和声道参数均随时间变化,发声器官的惯性运动,可以认为具有短时平稳性。帧长10~30ms,交叠分段方式,为了帧之间平滑过渡,保持连续性,帧移/帧长范围在0-1/2之间。

1. 矩形窗:主瓣宽度小,较高频谱分辨率,但是旁瓣峰值较大,频谱泄露严重

matlab程序:


%时域波形

w=rectwin(61)%矩形窗函数

figure(1)%图1

subplot(121)%图1中共包括1行2列的图形,此为1行1列的图形

plot(w,'k')%'k'表示黑色

xlabel('样本数')

ylabel('幅度')

%频域波形

w1=fft(w,1024)%对窗函数做1024点的fft

w2=w1/(max(w1))%幅度归一化

w3=20*log10(abs(w2))%出来的是双边频谱(数学谱)

w=2*[0:1023]/1024%频率归一化,双边频谱的范围[0,2]

subplot(122)%图1中1行2列的图形

plot(w,w3,'k')

axis([0,1,-100,0])%单边频谱(物理谱),横坐标范围[0,1]

xlabel('归一化频率f/fs')

ylabel('幅度/dB')

2. 汉明窗:主瓣宽度较宽,大于矩形窗的一倍,但是旁瓣衰减大,频谱泄露优于矩形窗,更平滑的低通特性,更好反映短时信号的频谱特性

matlab程序:


%时域波形

w=hamming(61)%汉明窗函数

figure(1)%图1

subplot(121)%图1中共包括1行2列的图形,此为1行1列的图形

plot(w,'k')%'k'表示黑色

xlabel('样本数')

ylabel('幅度')

%频域波形

w1=fft(w,1024)%对窗函数做1024点的fft

w2=w1/(max(w1))%幅度归一化

w3=20*log10(abs(w2))%出来的是双边频谱(数学谱)

w=2*[0:1023]/1024%频率归一化,双边频谱的范围[0,2]

subplot(122)%图1中1行2列的图形

plot(w,w3,'k')

axis([0,1,-100,0])%单边频谱(物理谱),横坐标范围[0,1]

xlabel('归一化频率f/fs')

ylabel('幅度/dB')

发布了5 篇原创文章 · 获赞 0 · 访问量 209

猜你喜欢

转载自blog.csdn.net/weixin_42846157/article/details/104483462