第一范文网 - 专业文章范例文档资料分享平台

吹管音乐滤波去噪使用TUKEYWIN设计的FIR滤波器

来源:用户分享 时间:2025/8/23 8:22:21 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

《吹管音乐滤波去噪——使用TUKEYWIN设计的FIR滤波器》 第5页 共17页

w =tukeywin(M)在数组w中产生M点的Tukeywin窗函数。

由上面查表可知:Tukeywin窗的滤波器的过渡带宽为2.4π/M,最小阻带衰减22db。 利用wvtool可绘制出Tukeywin窗函数波形如下: N=128; t=tukeywin(N); wvtool(t);

图2-2 Tukeywin窗函数波形

3 设计步骤

3.1 设计流程图

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

《吹管音乐滤波去噪——使用TUKEYWIN设计的FIR滤波器》 第6页 共17页 开始 下载一段吹管音乐信号,命名为“meilideshenhua.wav,绘 ”制出其时域波形和频谱图。 加入噪声干扰,绘制干扰 后的时域波形和频谱图。 利用Tukeywin窗设计合理 的FIR滤波器。 将干扰后的音乐信号通过自己设计的滤波器,进行滤波去噪。 比较滤波前后的时域波形和频谱 图,并回放音乐信号,验证是否 达到去噪效果。 NO 是否达到去噪 效果?

YES 结束 图3-1 音乐信号滤波去噪流程图

3.2 录制语音信号

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

具体调用如下:

《吹管音乐滤波去噪——使用TUKEYWIN设计的FIR滤波器》 第7页 共17页

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

sound(x,fs,bits); % 按指定的采样率和每样本编码位数回放 N=length(x); % 计算信号x的长度

fn=2100; % 单频噪声频率,此参数可改 t=0:1/fs:(N-1)/fs; % 计算时间范围,样本数除以采样频率 x=x(:,1)'; y=x+0.1*sin(fn*2*pi*t);

sound(y,fs,bits); % 应该可以明显听出有尖锐的单频啸叫声

X=abs(fft(x));Y=abs(fft(y)); % 对原始信号和加噪信号进行fft变换,取幅度谱 X=X(1:N/2); Y=Y(1:N/2);% 截取前半部分 deltaf=fs/N; % 计算频谱的谱线间隔 f=0:deltaf:fs/2-deltaf; % 计算频谱频率范围 得到的波形图如图3.2所示:

图3-2 原始音乐信号与加噪后的音乐信号时域、频域波形图

《吹管音乐滤波去噪——使用TUKEYWIN设计的FIR滤波器》 第8页 共17页

3.3 滤波器设计

在此用窗函数法设计一个带阻的FIR滤波器。 此处给出各滤波器的性能指标:

fp1?2000Hzfs2?2150Hzfs1?2050Hzfp2?2200Hz,As=20dB,Ap=1 dB,其截止频率在单频噪声干扰

附近。再进行加窗设计,利用Matlab中的函数freqz画出各滤波器的频率响应。

具体调用如下:

fpd=2000;fsd=2050;fsu=2150;fpu=2200;Rp=1;As=20; % 带阻滤波器设计指标 fcd=(fpd+fsd)/2;fcu=(fpu+fsu)/2;df=min((fsd-fpd),(fpu-fsu)); % 计算上下边带中心频率,和频率间隔

wcd=fcd/fs*2*pi;wcu=fcu/fs*2*pi;dw=df/fs*2*pi; % 将Hz为单位的模拟频率换算为rad为单位的数字频率 wsd=fsd/fs*2*pi;wsu=fsu/fs*2*pi;

M=ceil(2.4*pi/dw)+1; % 计算TUKEYWIN窗设计该滤波器时需要的阶数 n=0:M-1; % 定义时间范围

w_tuk=tukeywin(M); % 产生M阶的TUKEYWIN窗

hd_bs=ideal_lp(wcd,M)+ideal_lp(pi,M)-ideal_lp(wcu,M); % 调用自编函数计算理想带阻滤波器的脉冲响应

h_bs=w_tuk'.*hd_bs; % 用窗口法计算实际滤波器脉冲响应

[db,mag,pha,grd,w]=freqz_m(h_bs,1); % 调用自编函数计算滤波器的频率特性 得到的波形图如图3.3所示:

吹管音乐滤波去噪使用TUKEYWIN设计的FIR滤波器.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c6k3qb1pm466d7jn4l229_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top