语音信号滤波去噪 - 使用flattopwin窗设计的FIR滤波器要点 联系客服

发布时间 : 星期一 文章语音信号滤波去噪 - 使用flattopwin窗设计的FIR滤波器要点更新完毕开始阅读d5a3805c78563c1ec5da50e2524de518964bd33f

黄珺 《吹管滤波去噪—使用FLATTOPWIN窗设计的FIR滤波器》 第5页,共21页

滤波器 最小阻带过渡带宽 1.8π/M 6.1π/M 6.2π/M 6.6π/M 11π/M 5.8π/M 15.4π/M 衰减 21dB 25dB 44dB 51dB 74dB 51.5dB 108dB 滤波器 最小阻带衰过渡带宽 6.6π/M 19.6π/M 5.8π/M 3.6π/M 16.1π/M 15.2π/M 2.4π/M 减 56dB 108dB 60dB 40dB 109dB 113dB 22dB 名称 名称 矩形 巴特利特 汉宁 汉明 布莱克曼 BOHMANWIN NUTTALLWIN PARZENWIN FLATTOPWIN GAUSSWIN BARTHANNWIN BLACKMANHARRIS CHEBWIN TUKEYWIN 图2.1 常见窗函数性能表

2.3 FLATTOPWIN窗

w=Flattopwin (L) 返回L-点Flattopwin窗口中列向量。Flattopwin窗的滤波器的过渡带宽为19.6π/M,最小阻带衰减108db。

定义式:?(n)?a0?a1cos(时间波形和幅度谱:

2?n4?n6?n8?n)?a2cos()?a3cos()?a4cos() NNNN

黄珺 《吹管滤波去噪—使用FLATTOPWIN窗设计的FIR滤波器》 第6页,共21页

图2.2时间波形

图2.3幅度谱

黄珺 《吹管滤波去噪—使用FLATTOPWIN窗设计的FIR滤波器》 第7页,共21页

3 设计步骤

3.1 设计流程图

根据设计的要求,首先从网上下载一段音乐信号,对音乐信号加入噪声干扰,再利用Flattopwin窗设计合理的FIR滤波器。最后用滤波器对干扰后的语音信号进行滤波去噪。具体设计流程图如下图3.1所示:

开始 下载一段吹管音乐信号,命名为“yinyue.wav”,绘 制出其时域波形和频谱

加入噪声干扰,绘制干扰 后的时域波形和频谱图。

利用Flattopwin窗设计合 理的FIR滤波器。

比较滤波前后的时域波形和频谱将干扰后的吹管音乐信号通过自己设计的滤波器,进音乐信号,验证是 图,并回放 否达到去噪效果。 NO 是否达到去噪 效果?

YES 结束

图3.1设计流程图

3.2 录制音乐信号

在网上下载一段mp3音乐,再利用视频转换器将其转换成**.wav格式,且为单声道,

黄珺 《吹管滤波去噪—使用FLATTOPWIN窗设计的FIR滤波器》 第8页,共21页

再将此.wav格式音乐控制在5秒内,以减少设计中的误差。然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数,采集完成后在信号中加入一个单频噪声,绘制原音乐信号和加噪后的音乐信号的时域和频域的波形图。

具体调用如下:

[x,fs,bits]=wavread('g:\\yinyue.wav'); % 输入参数为文件的全路径和文件名,输出的第一个参数是每个样本的值,fs是生成该波形文件时的采样率,bits是波形文件每样本的编码位数。

>> sound(x,fs,bits);%播放音乐信号 >> N=length(x);%计算音乐信号的长度 >> fn=2200; % 单频噪声频率

>> t=0:1/fs:(N-1)/fs; % 计算时间范围,样本数除以采样频率 >> x=x(:,1)'; y=x+sin(fn*2*pi*t);

>> plot(t,x); xlabel('t ins');ylabel('x');%画原始音乐信号的时域波形图

sound(y,fs,bits);%播放干扰后的音乐信号,应该可以明显听出有尖锐的单频啸叫声 运行程序后得到的波形图如图3.2所示:

图3.2 原始音乐信号时域波形图