当前位置:文档之家› 音乐信号滤波去噪 ——使用CHEB窗设计的线性相位型的FIR滤波器

音乐信号滤波去噪 ——使用CHEB窗设计的线性相位型的FIR滤波器

音乐信号滤波去噪  ——使用CHEB窗设计的线性相位型的FIR滤波器
音乐信号滤波去噪  ——使用CHEB窗设计的线性相位型的FIR滤波器

音乐信号滤波去噪

——使用CHEB窗设计的线性相位型的FIR

滤波器

学生姓名:胡国庆指导老师:高明

摘要本课程设计主要使用CHEB窗设计的FIR滤波器对音乐信号进行滤波去噪。课程设计的的平台为MATLAB。采集一段音乐信号,绘制波形并观察其频谱,给定相应技术指标,用窗函数法设计一个满足指标的FIR滤波器,对该音乐信号进行滤波去噪处理。根据滤波后的时域图和原始音乐信号时域图的比较,以及滤波后信号的频谱图和原始音乐信号频谱图的比较,最后回放滤波后音乐信号,滤波后的音乐信号与原始音乐信号一样清晰,成功地实现了滤波,达到了设计的要求。

关键词FIR滤波器;音乐信号;滤波去噪;CHEB窗设计;MATLAB

1 引言

本课程设计是采用CHEB窗设计的FIR滤波器对语音信号进行滤波去噪。通过课程设计了解FIR滤波器设计的原理和步骤,掌握用Matlab语言设计滤波器的方法,。通过观察音乐信号滤波前后的时域波形的比较,加深对滤波器作用的理解。通过对比滤波前后波形图的比较和放滤波前后音乐信号的对比,可以看出滤波器对有用信号无失真放大具有重大意义。

1.1 课程设计目的

熟悉Matlab语言环境,掌握Matlab语言的编程规则,利用CHEB窗函数设计法来设计符合要求的FIR滤波器来实现音乐信号的滤波去噪。并绘制滤波前后的时域波形和频谱图。根据图形分析判断滤波器设计的正确性。通过本次课程设计熟悉利用CHEB窗函数法设计FIR滤波器的过程。增强自己独立解决问题的能力,提高自己的动手能力。加深对理论知识联系实际问题的理解。为以后的工作奠定坚实的基础。

1.2 课程设计要求

下载一段音乐信号,绘制观察波形及频谱图。根据CHEB的性能指标合理设计FIR滤波器,对音乐信号加入干扰,再用滤波器对干扰音乐信号进行滤波去噪,比较滤波前后的频谱图并进行分析。再回放音乐信号对比原音乐信号。看滤波器是否对音乐信号进行了滤波去噪。

1.3课程设计平台

MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学工具箱提供的符号运算功能能基本满足信号与系统课程的需求。例如,解微分方程、傅里叶正反变换、拉普拉斯正反变换、z正反变换等。MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲激响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析、零极点图绘制等内容。数值计算仿真分析可以帮助学生更深入理解信号与系统的理论知识,并为将来使用MATLAB进行信号处理领域的各种分析和实际应用打下基础。

2 设计原理

2.1 FIR滤波器

FIR滤波器:有限长单位冲激响应滤波器,是数字信号系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

FIR数字滤波器设计的基本步骤如下:

(1)确定指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以两种方式给出。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。第二种指标是相对指标。它以分贝值的形式给出要求。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型。通常用理想的数字滤波

标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。

FIR滤波器的设计问题实际上是确定能满足所要求的转移序列或脉冲响应的常数的问题,设计方法主要有窗函数、频率响应法和等波纹最佳逼近法等。

2.2 窗口设计法

窗口设计法是一种通过截断和计权的方法使无限长非因果序列成为有限长脉冲响应序列的设计方法。通常在设计滤波器之前,应该先根据具体的工程应用确定滤波器的技术指标。在大多数实际应用中,数字滤波器常常被用来实现选频操作,所以指标的形式一般为在频域中以分贝值给出的相对幅度响应和相位响应。

窗口设计法步骤如下:

(1)根据过渡带宽及阻带衰减要求,选择窗函数的类型并估计窗口长度N。窗函数的类型可根据最小阻带衰减AS独立选择。

(2)根据待求滤波器的理想频率响应求出理想单位脉冲响应hd(n)。

(3)由性能指标确定窗函数W(n)和长度N。

(4)求得实际滤波器的单位脉冲响应h(n),h(n)即为所设计FIR滤波器系数向量b(n)。其性能如表2-1所示:

表2-1 常见窗函数性能表

2.3 切比雪夫窗

切比雪夫又称Dolph-Chebyshev窗,它是由一个切比雪夫多项式在单位圆上作N点等间隔抽样,然后再作DFT反变化得到的。当给定窗的长度N,最大旁瓣衰减r(对于给定的旁瓣幅度.06 hev低于主瓣的rdB分贝数。则其3dB带宽B的表达式为:

(2.1)CHEB窗函数的时域幅度与频域幅度特性曲线的MATLAB实现的曲线图如图2-1所示。

图2-1 CHEB窗函数的时域幅度与频域幅度特性曲线

3 设计步骤

3.1 设计流程图

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

图3-1 设计流程图

3.2 录制音乐信号

从网上下载一段音乐信号,并命名为“yinyue.wav”。其采样率fs为8000HZ,在Matlab 平台下调用wavread函数可采集到下载的音乐信号。具体调用如下:

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

>> sound(x,fs,bits); %播放音乐信号

>> N=length(x);%计算音乐信号的长度

>> t=0:1/fs:(N-1)/fs; % 计算时间范围,样本数除以采样频率

>> x=x'; y=x+0. 1*sin(fn*2*pi*t);

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

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

运行程序后得到的波形图如图3-2所示:

图3-2 原始音乐信号的时域波形图

画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性,并将原始音乐信号的波形图与加干扰后的波形图进行比较,实现程序如下: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; % 计算频谱频率范围

subplot(2,2,1);plot(t,x);xlabel('时间(t)');ylabel('幅度'); title('原始音乐信号'); axis([0,15,-2,2])

subplot(2,2,2);plot(f,X);xlabel('频率(f)');ylabel('幅度谱');title('原始音乐信号幅度谱');axis([0,5000,0,1000]);

subplot(2,2,4);plot(f,Y);xlabel('频率(f)');ylabel('幅度谱');title('加干扰后的音乐信号幅度谱');axis([0,5000,0,1000]);

运行程序后我们所得的波形图如图3-3所示:

图3-3 音乐信号加入单频噪声前后的时域和频域波形图

>> wavwrite(y,fs,bits,'e:\zaoyin.wav'); %运行写出噪音文件。

由上图3-3我们可以看到语音信号加入单频噪声后的时域波形比未加之前在幅度范围内有了明显的增加,在频谱方面我们可以看到除了在加了噪声后的频谱图上的3100hz有个明显的冲激外,其余地方与未加时的频谱一模一样,这现象表现在语音播放时我们可以听到一声尖锐的噪声。

3.3 滤波器设计

滤波器的设计就是要找到一组能满足特定滤波要求的系数向量a和b,其中b为系统函数的分子系数,a为系统函数分母系数。在本次的课程设计中我所采用的就是利用CHED 窗函数来设计FIR滤波器。设计的程序如下:

fpd=2000;fsd=3000;fsu=3200;fpu=4200;Rp=1;As=100; % 带阻滤波器设计指标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为单位的数字频率

ws1=fsd/fs*2*pi;ws2=fsu/fs*2*pi;

M=ceil(15.2*pi/dw)+1; % 计算CHEB窗设计该滤波器时需要的阶数

n=0:M-1; % 定义时间范围

w_cheb=(CHEBWIN(M)); % 产生M阶的CHEB窗

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

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

[db,mag,pha,grd,w]=freqz_m(h_bs,1); % 调用自编函数计算滤波器的频率特性

subplot(2,2,1);plot(w/pi,db);title('滤波器幅度响应图');xlabel('w/pi');ylabel('db');grid on;axis([0,1,-150,20]);

line([0,1.5],[-Rp,-Rp],'color','r','linestyle','--','LineWidth',2);

line([0,1.5],[-As,-As],'color','r','linestyle','--','LineWidth',2);

line([ws1/pi,ws1/pi],[-140,20],'color','r','linestyle','--','LineWidth',2);

line([ws2/pi,ws2/pi],[-140,20],'color','r','linestyle','--','LineWidth',2);

xlabel('w/pi');ylabel('db');title('以db为单位的滤波器幅度响应图');

subplot(2,2,2);plot(w,mag);title('滤波器幅度响应图');xlabel('w/pi');ylabel('幅度mag');

grid on;

subplot(2,2,3);plot(w,pha);title('滤波器相位响应图');xlabel('w/pi');ylabel('相位pha');

grid on;

subplot(2,2,4);stem(n,h_bs);title('滤波器脉冲响图');xlabel('n');ylabel('h(n)');

axis([0,150,0,1]);

wp1=fpd/fs*2*pi;wp2=fpu/fs*2*pi;dww=2*pi/1000;

RP=-min(db([1:1:ceil(wp1/dww)+1,ceil(wp2/dww)+1:1:end]))

AS=-max(db(ws1/dww+1:ws2/dww+1))

图3-4 FIR滤波器的频率响应

上图3-4为用CHEB窗函数法设计出的FIR滤波器图,我们可以看出,阻带最大衰减为-120dB,FIR滤波器的主瓣宽度很小,这样可以使过渡带很陡,旁瓣相对于主瓣也比较小。

3.4 信号滤波处理

滤波器设计完成后,在MATLAB平台上用函数filter实现滤波,滤波程序如下:

y_fil=filter(h_bs,1,y);% 用设计好的滤波器对y进行滤波

Y_fil=fft(y_fil);Y_fil=Y_fil(1:N/2); % 计算频谱取前一半

subplot(3,2,1);plot(t,x);xlabel('时间(t)');ylabel('幅度'); title('原始音乐信号');axis([0,15,-2,2])

subplot(3,2,2);plot(f,X);xlabel('频率(f)');ylabel('幅度谱');title('原始音乐信号幅度谱');axis([0,5000,0,1000]);

subplot(3,2,3);plot(t,y);xlabel('时间(t)');ylabel('幅度');title('加干扰后的音乐信号');

subplot(3,2,4);plot(f,Y);xlabel('频率(f)');ylabel('幅度谱');title('加干扰后的音乐信号幅度

谱');axis([0,5000,0,1000]);

subplot(3,2,5);plot(t,y);xlabel('时间(t)');ylabel('幅度'); title('滤波后音乐信号');

subplot(3,2,6);plot(f,Y_fil);xlabel('频率(f)');ylabel('幅度谱');title('滤波后音乐信号幅度谱');axis([0,5000,0,1000]);

wavwrite(y_fil,fs,bits,'e:\quzao.wav');

得到的滤波前后音乐信号的时域波形图和频谱图对比图如图3-5所示:

图3-5 滤波前后的波形对比

由上图3-5我们可以看出,加噪声的后的语音信号经过FIR滤波器的滤噪处理,时域和频域图都几乎完全一样,这说明噪声被完全滤掉,同时也说明FIR滤波器设计很理想,能满足所需要求。

3.5 结果分析

在MATLAB中,经过sound(x,fs,bits)函数,对经过CHEB窗设计的FIR滤波器之后的音乐信号进行回放,可以听出滤波之后的信号跟原始信号一样清晰,完全滤除掉了噪声

>> sound (y_fil,fs,bits); %播放滤波后的音乐信号

>> sound(x,fs,bits); %所得结果证明了用CHEB窗设计的FIR滤波器和音乐信号去噪设计是成功的。

3.6滤波器结构设计

本课程设计的滤波器类型为线性相位型FIR滤波器,在MATLAB中输入滤波器参数h_bs 得到了相关系数以后,将滤波器结构用visio画好,填上系数。

图3-6 相关系数

图3-7 滤波器结构

4出现的问题及解决方法

在本次课程设计中我遇到的问题如下:

1、不知道如何下载符合要求长度和格式的音乐信号。

2、对利用CHEB窗函数设计FIR滤波器的设计步骤很生疏。

3、在采用CHEB窗函数设计的FIR滤波器时得不到理想的滤波器。

4、绘制滤波器结构时不知道As和Rp是否达标。

5、绘制滤波器时因阶数较大导致工作量较大。

针对以上问题,相应的解决方案如下:

1、通过百度学习,然后借助酷狗音乐的铃声制作和格式,最后利用windows自带的录音软件转化其采样率fs为8000HZ的单频音乐信号。

2、自己上网查阅资料,向同学请教,同时参考胡老师整理的模板,慢慢掌握利用CHEB

窗函数设计FIR滤波器的方法和步骤。

3、请教老师,老师帮我检查了之前的程序代码,没有发现错误后调整fpd、fpu等参数,通过不断设置参数的值,最终达到最理想的值。

4、向同学寻求帮助,并参考胡老师整理的常见窗函数性能表,确定了As和Rp的理想值,从而顺利完成滤波器结构的绘制。

5、通过调整fpd和fpu的值,减少了阶数,从而减少了工作量。

5 结束语

通过本次课程设计,总体上我对所学的数字信号处理有了更深的了解,对MATLAB 的使用也更为熟练,同时提升我的自学能力。

在课程设计之前,我们虽然学过数字信号处理,但我对大部分内容理解不够,对其运用更不了解,但通过本次课程设计,我对所学的课本知识有了更深的认识和理解,并且学会了运用。

在做课设的过程中,胡老师总结的模板和程序对我而言有很大的帮助,减少了我的工作量,提升了效率,在此衷心感谢胡老师为我们认真总结的模板。在课设过程中我遇到的问题比较多,也比较杂,主要是通过百度和问同学的方式解决。

最后,在团结合作能力方面,虽然每个人有每个人的题目,但是我们还是充分发挥了我们的团结合作能力,找到资料的同学帮没找到的同学找,有什么错误的大家一起讨论,一起找资料解决,特别是题目相似的同学,大家有资料都一起研究,而且还有我们的指导老师胡老师的精心指导,所以我们合作得很愉快。

在这次设计过程中,既体现出了自己单独设计的能力以及综合运用知识的能力,又体会了学以致用、突出自己劳动成果的喜悦心情,从中也能发现自己平时学习的不足和薄弱环节,从而加以弥补。同时,也再次体会到了团结合作的快乐。

在此我衷心感谢各位老师及同学给我的帮助,这是我能完成课程设计的主要支柱。通过此次课程设计我学到了更多的东西,学会了知识的实际运用,提升了自学的能力。

参考文献

[1] 张圣勤. MATLAB7.0实用教程[M]. 北京:机械工程出版社,2006

[2] 程佩青.数字信号处理.第四版.北京:清华大学出版社,2013年

[3] 陈后金.数字信号处理.第三版.北京:高等教育业出版社,2004年

[4] 刘敏,魏玲.MATLAB通信仿真与应用.第二版. 北京:国防工业出版社,2001年

[5] 百科ROBOT,zivenwong.窗函数.百度百科,

https://www.doczj.com/doc/3f11470629.html,/view/2327611.htm?fr=ala0_1 :2017-02-27

附录1:用CHEB窗设计FIR滤波器程序清单

%程序名称:FIR.M

%程序功能:采用CHEB窗设计FIR滤波器的方法,给语音出去噪声。

%程序作者:胡国庆

%最后修改日期:2017-2-27

[x,fs,bits]=wavread('e:\yinyue.wav');

% 输入参数为文件的全路径和文件名,输出的第一个参数是每个样本的值,fs是生成该波形文件时的采样率,bits是波形文件每样本的编码位数

sound(x,fs,bits);

%播放音乐信号

N=length(x);

%计算音乐信号的长度

fn=3100;

% 单频噪声频率

t=0:1/fs:(N-1)/fs;

% 计算时间范围,样本数除以采样频率

x=x'; y=x+0.1*sin(fn*2*pi*t);

plot(t,x); xlabel('t ins');ylabel('x');

% 画原始音乐信号的时域波形图

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; % 计算频谱频率范围

subplot(2,2,1);plot(t,x);xlabel('时间(t)');ylabel('幅度'); title('原始音乐信号'); axis([0,15,-2,2]) subplot(2,2,2);plot(f,X);xlabel('频率(f)');ylabel('幅度谱');title('原始音乐信号幅度谱');axis([0,5000,0,1000]);

subplot(2,2,3);plot(t,y);xlabel('时间(t)');ylabel('幅度');title('加干扰后的音乐信号');

subplot(2,2,4);plot(f,Y);xlabel('频率(f)');ylabel('幅度谱');title('加干扰后的音乐信号幅度谱

fpd=2000;fsd=3000;fsu=3200;fpu=4200;Rp=1;As=100;

% 带阻滤波器设计指标

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为单位的数字频率

ws1=fsd/fs*2*pi;ws2=fsu/fs*2*pi;

M=ceil(15.2*pi/dw)+1;

% 计算CHEB窗设计该滤波器时需要的阶数

n=0:M-1; % 定义时间范围

w_cheb=(CHEBWIN(M)); % 产生M阶的CHEB窗

hd_bs=IDEAL_LP(wcd,M)+ IDEAL_LP (pi,M)- IDEAL_LP (wcu,M);

% 调用自编函数计算理想带阻滤波器的脉冲响应

h_bs=w_cheb'.*hd_bs;

% 用窗口法计算实际滤波器脉冲响应

[db,mag,pha,grd,w]=freqz_m(h_bs,1);

% 调用自编函数计算滤波器的频率特性

subplot(2,2,1);plot(w/pi,db);title('滤波器幅度响应图');xlabel('w/pi');ylabel('db');grid on;axis([0,1,-150,20]);

line([0,1.5],[-Rp,-Rp],'color','r','linestyle','--','LineWidth',2);

line([0,1.5],[-As,-As],'color','r','linestyle','--','LineWidth',2);

line([ws1/pi,ws1/pi],[-140,20],'color','r','linestyle','--','LineWidth',2);

line([ws2/pi,ws2/pi],[-140,20],'color','r','linestyle','--','LineWidth',2);

xlabel('w/pi');ylabel('db');title('以db为单位的滤波器幅度响应图');

subplot(2,2,2);plot(w,mag);title('滤波器幅度响应图');xlabel('w/pi');ylabel('幅度mag');

grid on;

subplot(2,2,3);plot(w,pha);title('滤波器相位响应图');xlabel('w/pi');ylabel('相位pha');

grid on;

subplot(2,2,4);stem(n,h_bs);title('滤波器脉冲响图');xlabel('n');ylabel('h(n)');

axis([0,150,0,1]);

function hd = ideal_lp(wc,M);

% 理想低通滤波器计算

% --------------------------------

% [hd] = ideal_lp(wc,M)

% hd = 0 to M-1之间的理想脉冲响应% wc = 截止频率(弧度)

% M = 理想滤波器的长度

alpha = (M-1)/2;

n = [0:1:(M-1)];

m = n - alpha + eps;

hd = sin(wc*m) ./ (pi*m);

function [db,mag,pha,grd,w] = freqz_m(b,a);

% freqz 子程序的改进版本

% ------------------------------------

% [db,mag,pha,grd,w] = freqz_m(b,a);

% db = [0 到pi弧度]区间内的相对振幅(db)

% mag = [0 到pi弧度]区间内的绝对振幅

% pha = [0 到pi弧度]区间内的相位响应

% grd = [0 到pi弧度]区间内的群迟延

% w = [0 到pi弧度]区间内的501个频率样本向量% b = Ha(z)的分子多项式系数(对FIR b=h)

% a = Ha(z)的分母多项式系数(对FIR: a=[1])

%[H,w] = freqz(b,a,1000,'whole');

H = (H(1:1:501))'; w = (w(1:1:501))';

mag = abs(H);

db = 20*log10((mag+eps)/max(mag));

pha = angle(H);

% pha = unwrap(angle(H));

grd = grpdelay(b,a,w);

% grd = diff(pha);

% grd = [grd(1) grd];

% grd = [0 grd(1:1:500); grd; grd(2:1:501) 0];

% grd = median(grd)*500/pi;

fir低通滤波器设计(完整版)

电子科技大学信息与软件工程学院学院标准实验报告 (实验)课程名称数字信号处理 电子科技大学教务处制表

电 子 科 技 大 学 实 验 报 告 学生姓名: 学 号: 指导教师: 实验地点: 实验时间:14-18 一、实验室名称:计算机学院机房 二、实验项目名称:fir 低通滤波器的设计 三、实验学时: 四、实验原理: 1. FIR 滤波器 FIR 滤波器是指在有限范围内系统的单位脉冲响应h[k]仅有非零值的滤波器。M 阶FIR 滤波器的系统函数H(z)为 ()[]M k k H z h k z -==∑ 其中H(z)是k z -的M 阶多项式,在有限的z 平面内H(z)有M 个零点,在z 平面原点z=0有M 个极点. FIR 滤波器的频率响应 ()j H e Ω 为 0 ()[]M j jk k H e h k e Ω -Ω ==∑ 它的另外一种表示方法为 () ()()j j j H e H e e φΩΩΩ=

其中 () j H e Ω和()φΩ分别为系统的幅度响应和相位响应。 若系统的相位响应()φΩ满足下面的条件 ()φαΩ=-Ω 即系统的群延迟是一个与Ω没有关系的常数α,称为系统H(z)具有严格线性相位。由于严格线性相位条件在数学层面上处理起来较为困难,因此在FIR 滤波器设计中一般使用广义线性相位。 如果一个离散系统的频率响应 ()j H e Ω 可以表示为 ()()()j j H e A e αβΩ-Ω+=Ω 其中α和β是与Ω无关联的常数,()A Ω是可正可负的实函数,则称系统是广义线性相位的。 如果M 阶FIR 滤波器的单位脉冲响应h[k]是实数,则可以证明系统是线性相位的充要条件为 [][]h k h M k =±- 当h[k]满足h[k]=h[M-k],称h[k]偶对称。当h[k]满足h[k]=-h[M-k],称h[k]奇对称。按阶数h[k]又可分为M 奇数和M 偶数,所以线性相位的FIR 滤波器可以有四种类型。 2. 窗函数法设计FIR 滤波器 窗函数设计法又称为傅里叶级数法。这种方法首先给出()j d H e Ω, ()j d H e Ω 表示要逼近的理想滤波器的频率响应,则由IDTFT 可得出滤波器的单位脉冲响应为 1 []()2j jk d d h k H e e d π π π ΩΩ-= Ω ? 由于是理想滤波器,故 []d h k 是无限长序列。但是我们所要设计的FIR 滤波 器,其h[k]是有限长的。为了能用FIR 滤波器近似理想滤波器,需将理想滤波器的无线长单位脉冲响应 []d h k 分别从左右进行截断。 当截断后的单位脉冲响应 []d h k 不是因果系统的时候,可将其右移从而获得因果的FIR 滤波器。

fir低通滤波器设计报告

滤波器设计原理 本文将介绍数字滤波器的设计基础及用窗函数法设计FIR 滤波器的方法,运用MATLAB 语言实现了低通滤波器的设计以及用CCS软件进行滤波效果的观察。读取语音文件,并加入一定的随机噪声,最后使用窗函数滤波法进行语音滤波,将加噪后的语音文件转换为.dat文件使其能和ccs软件链接,输出个阶段的时域和频域波形。 根据数字滤波器冲激响应函数的时域特性。可将数字滤波器分为两种,即无限长冲激响应( IIR) 滤波器和有限长冲激响应(FIR) 滤波器。IIR 滤波器的特征是具有无限持续时间的冲激响应;FIR 滤波器冲激响应只能延续一定时间。其中FIR 滤波器很容易实现严格的线性相位,使信号经过处理后不产生相位失真,舍入误差小,稳定等优点。能够设计具有优良特性的多带通滤波器、微分器和希尔伯特变换器,所以在数字系统、多媒体系统中获得极其广泛的应用。FIR数字滤波器的设计方法有多种,如窗函数设计法、最优化设计和频率取样法等等。而随着MATLAB软件尤其是MATLAB 的信号处理工具箱和Simulink 仿真工具的不断完善,不仅数字滤波器的计算机辅助设计有了可能而且还可以使设计达到最优化。 FIR滤波器的窗函数法的设计 采用汉明窗设计低通FIR滤波器 使用b=fir1(n,Wn)可得到低通滤波器。其中,0Wn1,Wn=1相当于0.5。其语法格式为 b=fir1(n,Wn); 采用:b=fir1(25, 0.25); 得到归一化系数:

或者在命令行输入fdatool进入滤波器的图形设置界面,如下图所示 得到系数(并没有归一化) const int BL = 26; const int16_T B[26] = { -26, 33, 126, 207, 138, -212, -757, -1096, -652, 950, 3513, 6212, 7948, 7948, 6212, 3513, 950, -652, -1096, -757, -212, 138, 207, 126, 33, -26 }; FIR滤波器的设计(Matlab) 技术指标为:采用25阶低通滤波器,汉明窗(Hamming Window)函数,截止频率为1000Hz,采样频率为8000Hz,增益40db。 下面的程序功能是:读取语音文件,并加入一定的随机噪声,最后使用窗函数滤波法进行语音滤波,将加噪后的语音文件转换为.dat文件使其能和ccs软件链接,输出个阶段的时域和频域波形。

FIR数字滤波器设计与使用

实验报告 课程名称:数字信号处理指导老师:刘英成绩:_________________实验名称: FIR数字滤波器设计与使用同组学生姓名:__________ 一、实验目的和要求 设计和应用FIR低通滤波器。掌握FIR数字滤波器的窗函数设计法,了解设计参数(窗型、窗长)的影响。 二、实验内容和步骤 编写MATLAB程序,完成以下工作。 2-1 设计两个FIR低通滤波器,截止频率 C =0.5。 (1)用矩形窗,窗长N=41。得出第一个滤波器的单位抽样响应序列h 1(n)。记下h 1 (n) 的各个抽样值,显示h 1 (n)的图形(用stem(.))。求出该滤波器的频率响应(的N 个抽样)H 1(k),显示|H 1 (k)|的图形(用plot(.))。 (2)用汉明窗,窗长N=41。得出第二个滤波器的单位抽样响应序列h 2(n)。记下h 2 (n) 的各个抽样值,显示h 2(n)的图形。求出滤波器的频率响应H 2 (k),显示|H 2 (k)|的 图形。 (3)由图形,比较h 1(n)与h 2 (n)的差异,|H 1 (k)|与|H 2 (k)|的差异。 2-2 产生长度为200点、均值为零的随机信号序列x(n)(用rand(1,200)0.5)。显示x(n)。 求出并显示其幅度谱|X(k)|,观察特征。 2-3 滤波 (1)将x(n)作为输入,经过第一个滤波器后的输出序列记为y 1(n),其幅度谱记为|Y 1 (k)|。 显示|X(k)|与|Y 1 (k)|,讨论滤波前后信号的频谱特征。 (2)将x(n)作为输入,经过第二个滤波器后的输出序列记为y 2(n),其幅度谱记为|Y 2 (k)|。 比较|Y 1(k)|与|Y 2 (k)|的图形,讨论不同的窗函数设计出的滤波器的滤波效果。 2-4 设计第三个FIR低通滤波器,截止频率 C =0.5。用矩形窗,窗长N=127。用它对x(n)进行滤波。显示输出信号y

数字信号处理实验 matlab版 线性相位FIR数字滤波器

实验23 线性相位FIR数字滤波器 (完美格式版,本人自己完成,所有语句正确,不排除极个别错误,特别适用于山大,勿用冰点等工具下载,否则下载之后的word格式会让很多部分格式错误,谢谢) XXXX学号姓名处XXXX 一、实验目的 1 加深对线性相位FIR数字滤波器特性的理解。 2 掌握线性相位滤波器符幅特性和零极点分布的研究方法。 3 了解用MATLAB研究线性相位滤波器特性时程序编写的思路和方法。 二、实验内容 1 线性相位FIR滤波器的特性 2 第一类线性相位滤波器(类型Ⅰ) 3 第二类线性相位滤波器(类型Ⅱ) 4 第三类线性相位滤波器(类型Ⅲ) 5 第四类线性相位滤波器(类型Ⅳ) 6 线性相位FIR数字滤波器零点分布特点 三、实验环境 MATLAB7.0 四、实验原理 1.线性相位FIR滤波器的特性 与IIR滤波器相比,FIR滤波器在保证幅度特性满足技术要求的同时,很容易做到有严格的线性相位特性。设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数为 ∑-=- = 1 N n n z h(n) H(z) 当滤波器的系数N满足一定的对称条件时,就可以获得线性相位。线性相位FIR滤波器共分为四种类型,分别为: (1)类型Ⅰ,系数对称,即h(n)=h(N-1-n),N为奇数。 (2)类型Ⅱ,系数对称,即h(n)=h(N-1-n),N为偶数。 (3)类型Ⅲ,系数反对称,即h(n)=-h(N-1-n),N为奇数。 (4)类型Ⅳ,系数反对称,即h(n)=-h(N-1-n),N为偶数。 对于上述四类线性相位FIR滤波器,参考文献[1]中提供了一段通用程序,对考虑正负号的幅度频率特性(简称符幅特性)进行求解,程序名为amplres.m,程序如下:function[A,w,type,tao]=amplres(h) N=length(h);tao=(N-1)/2; L=floor((N-1)/2); n=1:L+1; w=[0:500]*2*pi/500; if all(abs(h(n)-h(N-n+1))<1e-10)

基于matlab的FIR低通高通带通带阻滤波器设计

基于matlab的FIR低通-高通-带通-带阻滤波器设计

————————————————————————————————作者:————————————————————————————————日期:

北京师范大学 课程设计报告 课程名称: DSP 设计名称:FIR 低通、高通带通和带阻数字滤波器的设计姓名: 学号: 班级: 指导教师: 起止日期: 课程设计任务书

学生班级: 学生姓名: 学号: 设计名称: FIR 低通、高通带通和带阻数字滤波器的设计 起止日期: 指导教师: 设计目标: 1、采用Kaiser 窗设计一个低通FIR 滤波器 要求: 采样频率为8kHz ; 通带:0Hz~1kHz ,带内波动小于5%; 阻带:1.5kHz ,带内最小衰减:Rs=40dB 。 2、采用hamming 窗设计一个高通FIR 滤波器 要求: 通带截至频率wp=rad π6.0, 阻带截止频率ws=rad π4.0, 通带最大衰减dB p 25.0=α,阻带最小衰减dB s 50=α 3、采用hamming 设计一个带通滤波器 低端阻带截止频率 wls = 0.2*pi ; 低端通带截止频率 wlp = 0.35*pi ; 高端通带截止频率 whp = 0.65*pi ; 高端阻带截止频率 whs = 0.8*pi ; 4、采用Hamming 窗设计一个带阻FIR 滤波器 要求: 通带:0.35pi~0.65pi ,带内最小衰减Rs=50dB ; 阻带:0~0.2pi 和0.8pi~pi ,带内最大衰减:Rp=1dB 。

FIR 低通、高通带通和带阻数字滤波器的设计 一、 设计目的和意义 1、熟练掌握使用窗函数的设计滤波器的方法,学会设计低通、带通、带阻滤波器。 2、通过对滤波器的设计,了解几种窗函数的性能,学会针对不同的指标选择不同的窗函数。 二、 设计原理 一般,设计线性相位FIR 数字滤波器采用窗函数法或频率抽样法,本设计采用窗函数法,分别采用海明窗和凯泽窗设计带通、带阻和低通。 如果所希望的滤波器的理想频率响应函数为)(jw d e H ,如理想的低通,由信号系统的知识知道,在时域系统的冲击响应h d (n)将是无限长的,如图2、图3所示。 H d (w) -w c w c 图2 图3 若时域响应是无限长的,则不可能实现,因此需要对其截断,即设计一个FIR 滤波器频率响应∑-=-=1 0)()(N n jwn jw e n h e H 来逼近)(jw d e H ,即用一个窗函数w(n)来 截断h d (n),如式3所示: )()()(n w n h n h d = (式1)。 最简单的截断方法是矩形窗,实际操作中,直接取h d (n)的主要数据即可。 )(n h 作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数为: ∑-=-=1 0)()(N n jwn jw e n h e H (式2) 令jw e z =,则 ∑-=-=1 0)()(N n n z n h z H (式3), 式中,N 为所选窗函数)(n w 的长度。

理解线性相位与模拟滤波器选择

数字滤波器线性相位: 任何一个信号都可以按照傅里叶级数分解成无数个单一正弦信号的叠加,设 X1(t)=sin(ω1*t); X2(t)=sin(ω2*t); X3(t)=sin(ω3*t); X(t)=X1(t)+ X2(t) +X3(t); 让X(t)通过一个线性延时系统,延时Δt,则通过该系统后,X(t)变为 X(t-Δt)= sin(ω1*t-ω1*Δt)+ sin(ω2*t-ω2*Δt)+ sin(ω3*t-ω3*Δt); φ(f1)=-ω1*Δt=-2πΔt *f1; φ(f2)=-ω2*Δt=-2πΔt *f2; φ(f3)=-ω3*Δt=-2πΔt *f3; 通常地 φ(f)=-ω3*Δt=-2πΔt *f;———————— (1) 由式(1)可看出,相位延时是关于频率的线性函数,同时斜率(-2πΔt)即为系统延时,该值为常数表明为线性相位。 群延时: 1定义: 描述相位变化随着频率变化的快慢程度的量称为群延迟。线性相位表示相位随着频率的变化快慢程度是一样的。 是相频特性的负导数τ(ω)=-dφ(ω)/dω。 2特性: 群延迟直观上就是信号波形包络的时延,单个频率是不存在群延时的; 从公式来看是相频特性曲线的斜率,反映的是一个器件对带内每个频点信号相位的影响,群延迟恒定时传输波形失真最小。 相位延迟: 相位与频率的比叫相位延迟。用来描述信号中,对于每一个频率分量,对应的相位特征。也就是τ(ω)=-φ(ω)/ω。 注意:相位延迟不同于群延迟。相位延迟侧重于每一个频率分量,群延迟则是描述相位的变化率。

三种常用模拟滤波器的特点: 1 巴特沃斯滤波器:优点:通带幅度最大平坦缺点:过渡带太长; 2 切比雪夫滤波器:优点:过渡带小缺点:通带有纹波; 3 贝塞尔滤波器:优点:通带的线性相位和优异的瞬态性能缺点:幅度分辨率较低。 图1模拟滤波器的幅频度相位波特图 图2模拟滤波器的群延时 群延时就是相频特性曲线的导数。

FIR低通数字滤波器的设计要点

《DSP技术与应用》课程设计报告 课题名称:基于DSP Builder的FIR数字滤波器的设计与实现 学院:电子信息工程学院 班级:11级电信本01班 学号: 姓名:

题目基于DSP Builder的FIR数字滤波器的设计与实现 摘要 FIR数字滤波器是数字信号处理的一个重要组成部分,由于FIR数字滤波器具有严格的线性相位,因此在信息的采集和处理过程中得到了广泛的应用。本文介绍了FIR数字滤波器的概念和线性相位的条件,分析了窗函数法、频率采样法和等波纹逼近法设计FIR滤波器的思路和流程。在分析三种设计方法原理的基础上,借助Matlab仿真软件工具箱中的fir1、fir2和remez子函数分别实现窗函数法、频率采样法和等波纹逼近法设计FIR滤波器。然后检验滤波器的滤波效果,采用一段音频进行加噪声然后用滤波器滤,对比三段音频效果进而对滤波器的滤波效果进行检验。仿真结果表明,在相频特性上,三种方法设计的FIR滤波器在通带内都具有线性相位;在幅频特性上,相比窗函数法和频率采样法,等波纹逼近法设计FIR滤波器的边界频率精确,通带和阻带衰减控制。

Abstract FIR digital filter is an important part of digital signal processing, the FIR digital filter with linear phase, so it has been widely applied in the collection and processing of information in the course of. This paper introduces the concept of FIR digital filter with linear phase conditions, analysis of the window function method and frequency sampling method and the ripple approximation method of FIR filter design ideas and processes. Based on analyzing the principle of three kinds of design methods, by means of fir1, fir2 and Remez function of Matlab simulation software in the Toolbox window function method and frequency sampling method and respectively realize equiripple approximation method to design FIR filter. Then test the filtering effect of the filter, using an audio add noise and then filter, test three audio effects and comparison of filter filtering effect. Simulation results show that the phase frequency characteristic, three design methods of FIR filter with linear phase are in the pass band; the amplitude frequency characteristics, compared with the window function method and frequency sampling method, equiripple approximation method Design of FIR filter with accurate boundary frequency, the passband and stopband attenuation control.

线性相位FIR数字滤波器设计

一、设计目的 1. 掌握窗函数法设计FIR 滤波器的原理和方法,观察用几种常用窗函数设计的 FIR 数字滤波器技术指标; 2. 掌握FIR 滤波器的线性相位特性; 3. 了解各种窗函数对滤波特性的影响。 二、设计原理 如果所希望的滤波器的理想频率响应函数为H d (e jω),则其对应的单位脉冲响应为ωπωππωd e e H n h n j j d ?-=)(21)(,用窗函数w N (n)将h d (n)截断,并进行加权处理,得到实际滤波器的单位脉冲响应h (n )=h d (n )w N (n ),其频率响应函数为n j N n j e n h e H ωω --=∑=1 0)()(。如果要求线性相位特性,则h (n )还必须满足)1()(n N h n h --±=。可根据具体情况选择h(n)的长度及对称性。 可以调用MATLAB 工具箱函数fir1实现本实验所要求的线性相位FIR-DF 的设计,调用一维快速傅立叶变换函数fft 来计算滤波器的频率响应函数。 fir1是用窗函数法设计线性相位FIRDF 的工具箱函数,调用格式如下: hn=fir1(N, wc, ‘ftype’, window) fir1实现线性相位FIR 滤波器的标准窗函数法设计。 hn=fir1(N,wc)可得到6 dB 截止频率为wc 的N 阶(单位脉冲响应h(n)长度为N+1)FIR 低通滤波器,默认(缺省参数windows)选用hammiing 窗。其单位脉冲响应h(n)满足线性相位条件:h(n)=h(N-1-n) 其中wc 为对π归一化的数字频率,0≤wc ≤1。 当wc=[wc1, wc2]时,得到的是带通滤波器。 hn=fir1(N,wc,’ftype’)可设计高通和带阻滤波器。 当ftype=high 时,设计高通FIR 滤波器; 当ftype=stop 时,设计带阻FIR 滤波器。 应当注意,在设计高通和带阻滤波器时,阶数N 只能取偶数(h(n)长度N+1为奇数)。不过,当用户将N 设置为奇数时,fir1会自动对N 加1。 hn=fir1(N,wc,window)可以指定窗函数向量window 。如果缺省window 参数,则fir1默认为hamming 窗。可用的其他窗函数有Boxcar, Hanning, Bartlett,

用窗函数法设计FIR数字低通滤波器要点

河北科技大学课程设计报告 学生姓名:学号: 专业班级: 课程名称: 学年学期 指导教师: 20 年月

课程设计成绩评定表 学生姓名学号成绩 专业班级起止时间 设计题目 指 导 教 师 评 指导教师: 语 年月日

目录 1. 窗函数设计低通滤波器 1.1设计目的 (1) 1.2设计原理推导与计算 (1) 1.3设计内容与要求 (2) 1.4设计源程序与运行结果 (3) 1.5思考题 (10) 1.6心得体会 (14) 参考文献 (15)

1.窗函数设计低通滤波器 1.1设计目的 1. 熟悉设计线性相位数字滤波器的一般步骤。 2. 掌握用窗函数法设计FIR 数字滤波器的原理和方法。 3. 熟悉各种窗函数的作用以及各种窗函数对滤波器特性的影响。 4. 学会根据指标要求选择合适的窗函数。 1.2设计原理推导与计算 如果所希望的滤波器的理想的频率响应函数为() ωj d e H ,则其对应的单位脉冲响应为 ()() ωπ ωωπ π d e e H n h j j d d ?- = 21 (4.1) 窗函数设计法的基本原理是设计设计低通FIR 数字滤波器时,一般以理想低通滤波特性为逼近函数() ωj e H ,即 () ?????≤<≤=-π ωωωωωαω c c j j d ,, e e H 0,其中21-=N α ()() ()[]() a n a n d e e d e e H n h c j j j j d d c c --= = = ??- -- πωωπ ωπ ωαωω ωαω π π ω sin 21 21 用有限长单位脉冲响应序列()n h 逼近()n h d 。由于()n h d 往往是无限长序列,而且是非因果的,所以用窗函数()n ω将()n h d 截断,并进行加权处理,得到: ()()()n n h n h d ω= (4.2) ()n h 就作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函 数() ωj e H 为 ()()n j N n j e n h e H ωω ∑-==1 (4.3) 式中,N 为所选窗函数()n ω的长度。 用窗函数法设计的滤波器性能取决于窗函数()n ω的类型及窗口长度N 的取

FIR数字滤波器设计及软件实现

实验五:FIR数字滤波器设计及软件实现 一、实验目的: (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。 (3)掌握FIR滤波器的快速卷积实现原理。 (4)学会调用MATLAB函数设计与实现FIR滤波器。 二、实验内容及步骤: (1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理; (2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图1所示; 图1 具有加性噪声的信号x(t)及其频谱如图 (3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。先观察xt的频谱,确定滤波器指标参数。 (4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB 函数fir1设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (4)重复(3),滤波器指标不变,但改用等波纹最佳逼近法,调用MATLAB 函数remezord和remez设计FIR数字滤波器。并比较两种设计方法设计的滤波器阶数。 友情提示: ○1MATLAB函数fir1和fftfilt的功能及其调用格式请查阅本课本;

○ 2采样频率Fs=1000Hz ,采样周期T=1/Fs ; ○ 3根据图10.6.1(b)和实验要求,可选择滤波器指标参数:通带截止频率fp=120Hz ,阻带截至频率fs=150Hz ,换算成数字频率,通带截止频率p 20.24p f ωπ=T =π,通带最大衰为0.1dB ,阻带截至频率s 20.3s f ωπ=T =π,阻带最小衰为60dB 。] ○ 4实验程序框图如图2所示。 图2 实验程序框图 三、实验程序: 1、信号产生函数xtg 程序清单: %xt=xtg(N) 产生一个长度为N,有加性高频噪声的单频调幅信号xt,采样频率Fs=1000Hz %载波频率fc=Fs/10=100Hz,调制正弦波频率f0=fc/10=10Hz. function xt=xtg N=1000;Fs=1000;T=1/Fs;Tp=N*T; t=0:T:(N-1)*T; fc=Fs/10;f0=fc/10; %载波频率fc=Fs/10,单频调制信号频率为f0=Fc/10;

窗函数设计FIR低通滤波器汇总

西南科技大学 课程设计报告 课程名称:数字信号处理与通信原理课程设计 设计名称: FIR数字滤波器分析与应用 姓名: 学号: 班级: 指导教师: 起止日期: 6.26 – 7.6

课程设计任务书 学生班级:通信学生姓名:学号: 设计名称:窗函数设计FIR低通滤波器 起止日期: 6.26~7.6 指导教师: 课程设计学生日志

课程设计考勤表 课程设计评语表

窗函数设计FIR 低通滤波器 一、设计目的和意义: 1、目的 (1) 掌握用窗函数法设计FIR 数字滤波器的原理和方法。 (2) 熟悉线性相位FIR 数字滤波器特性。 (3) 了解各个窗函数对滤波器特性的影响。 2、意义:有限长单位冲激响应数字滤波器可以做成具有严格的线性相位,同时又可以具 有任意的幅度特性。滤波器的性能只由窗函数的形状决定。 二、设计原理: 假如题目所要求设计的滤波器的频率响应为H d (e ωj ),则要设计一个FIR 滤波器频应为 H(e ω j )= ∑=-1 -N 0 n j )(n e n h ω ()1 来逼近。但是设计却是在时域进行的,所以用傅氏反变换导出h d (n): h d (n) = ωπ π π ωωd e e H n j j d ? -)(21 ()2 但是要求设计的FIR 滤波器,它的h(n)是有限长的,但是h d (n)却是无限长的,所以要用一个有限长度的窗函数)(n ω来截取h d (n),即 h(n)= )(n ωh d (n) ()3 h(n)就是实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数即为()1式,其中N 就是所选择的窗函数)(n ω的长度。 本课程设计的要求是利用矩形窗,海宁窗,汉明窗各设计一个FIR 低通滤波器。因此 首先对这三个窗函数进行简要说明。 1.矩形窗:

FIR低通数字滤波器的设计要点

FIR低通数字滤波器的设计要点 《DSP技术与应用》 课程设计报告 课题名称:基于DSP Builder的FIR数字滤波器的设计与实现 学院:电子信息工程学院 班级: 11级电信本01班 学号: 姓名: 题目基于DSP Builder的FIR数字滤波器的设计与实现 摘要 FIR数字滤波器是数字信号处理的一个重要组成部分,于FIR数字滤波器具有严格的线性相位,因此在信息的采集和处理过程中得到了广泛的应用。介绍了FIR数字滤波器的概念和线性相位的条件,分析了窗函数法、频率采样法和等波纹逼近法设计FIR滤波器的思路和流程。在分析三种设计方法原理的基础上,借助Matlab仿真软件工具箱中的fir1、fir2和remez子函数分别实现窗函数法、频率采样法和等波纹逼近法设计FIR滤波器。然后检验滤波器的滤波效果,采用一段音频进行加噪声然后用滤波器滤,对比三段音频效果

进而对滤波器的滤波效果进行检验。仿真结果表明,在相频特性上,三种方法设计的FIR滤波器在通带内都具有线性相位;在幅频特性上,相比窗函数法和频率采样法,等波纹逼近法设计FIR滤波器的边界频率精确,通带和阻带衰减控制。 Abstract FIR digital filter is an important part of digital signal processing, the FIR digital filter with linear phase, so it has been widely applied in the collection and processing of information in the course of. This paper introduces the concept of FIR digital filter with linear phase conditions, analysis of the window function method and frequency sampling method and the ripple approximation method of FIR filter design ideas and processes. Based on analyzing the principle of three kinds of design methods, by means of fir1, fir2 and Remez function of Matlab simulation software in the Toolbox window function method and frequency sampling method and respectively realize equiripple approximation method to design FIR filter. Then test the filtering effect of the filter, using an audio add noise and then filter, test three audio effects and

线性相位FIR数字滤波器设计

一、设计目的 1.掌握窗函数法设计 FIR 滤波器的原理和方法,观察用几种常用窗函数设计的 FIR 数字滤波器技术指标; 2.掌握 FIR 滤波器的线性相位特性; 3.了解各种窗函数对滤波特性的影响。 二、设计原理 如果所希望的滤波器的理想频率响应函数为 H d(e j ω),则其对应的单位脉冲 1 响应为h d (n) 1 H(e j )e j n d ,用窗函数 w N(n)将 h d(n)截断,并进行加权处 2 理,得到实际滤波器的单位脉冲响应h(n)=h d(n)w N(n) ,其频率 响应函数为 N1 H(e j ) h(n)e j n。如果要求线性相位特性,则 h(n)还必须满足n0 h(n) h(N 1 n) 。可根据具体情况选择 h(n)的长度及对称性。 可以调用 MATLAB 工具箱函数 fir1 实现本实验所要求的线性相位 FIR-DF 的设 计,调用一维快速傅立叶变换函数 fft 来计算滤波器的频率响应函数。 fir1 是用窗函数法设计线性相位 FIRDF 的工具箱函数,调用格式如下: hn=fir1(N, wc, ‘ ftype ' , window) fir1 实现线性相位 FIR 滤波器的标准窗函数法设计。 hn=fir1(N,wc) 可得到 6 dB 截止频率为 wc 的 N 阶(单位脉冲响应 h(n)长度为 N+1)FIR 低通滤波器,默认(缺省参数 windows)选用 hammiing 窗。其单位脉冲响 应 h(n) 满足线性相位条件: h(n)=h(N-1-n) 其中 wc 为对π归一化的数字频率, 0≤wc≤1。 当 wc=[ wc1, wc2]时,得到的是带通滤波器。 hn=fir1(N,wc, ' fty可pe设'计)高通和带阻滤波器。 当 ftype=high 时,设计高通 FIR 滤波器; 当 ftype=stop 时,设计带阻 FIR 滤波器。 应当注意,在设计高通和带阻滤波器时,阶数 N 只能取偶数 (h(n) 长度 N+1 为奇数)。不过,当用户将 N设置为奇数时, fir1会自动对 N加1。 hn=fir1(N,wc,window) 可以指定窗函数向量 window 。如果缺省 window 参 数,则 fir1 默认为 hamming 窗。可用的其他窗函数有 Boxcar, Hanning, Bartlett,

线性相位FIR带通滤波器设计

课程设计报告 课程名称:专业综合课程设计 学生姓名:段博文 学号:201116020227 专业班级:通信工程11102班 指导教师:朱明旱 完成时间: 2014年6月15日 报告成绩:

线性相位FIR带通滤波器的设计 1.课程设计目的 1.能够运用本课程中学到的知识,设计基于窗口函数法的FIR数字滤波器。要求掌握数字信号处理的基本方法; 2. FIR滤波器的设计步骤和方法; 3.能够熟练MATLAB进行计算机辅助设计和方针验证设计内容的合理性。2.课题要求 1.了解数字滤波器的性能要求 2.了解窗函数设计滤波器的基本理论 3.设计原理 3.1 FIR滤波器 数字滤波器(digital filter)是由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。数字滤波器根据其单位冲激响应函数的时域特性分为两种:无限长冲激响应(IIR) 滤波器和有限长冲激响应(FIR)滤波器。 FIR数字滤波器又称有限长单位冲激响应滤波器,它的优点是可以做成具有严格的线性相位,同时又可以具有任意的幅度特性。此外,FIR滤波器的单位抽样响应是有限长的,因而滤波器一定是稳定的。再有,FIR滤波器由于单位冲激响应是有限长的,所以可以用快速傅里叶变换(FFT)算法来实现过滤信号,从而可大大提高运算效率。在滤波器设计中要对理想滤波器抽样响应进行截断. 截

断后不可避免的产生了频谱泄漏, 为了尽量减小频谱泄漏, 在设计滤波器时要采用不同的窗函数来满足不同用途的要求.各种窗函数的幅频响应都存在明显的主瓣和旁瓣. 主瓣宽度和旁瓣的幅值衰减特性决定了窗函数的应用. 用于滤波器的窗函数,一般要求窗函数主瓣宽度窄,以获得较好过渡带:旁瓣相对值尽可能小, 以增加通带段的平稳度和增大阻带的衰减.窗函数应满足在0

(完整版)基于DSP的FIR数字低通滤波器设计

电气控制技术应用设计 题目基于DSP的FIR数 字低通滤波器设计 二级学院电子信息与自动化学院 专业电气工程及其自动化 班级 113070404 学生姓名黄鸿资学号 11307991032 学生姓名姜天宇学号 11307991015 指导教师蒋东荣 时间:2016年8月29日至2016年9月9日 考核项目平时成绩20分设计35分报告15分答辩30分得分 总分考核等级教师签名

一绪论 (3) (一)课题设计的目的 (3) (二)课题内容 (3) (三)设计方法 (3) (四)课程设计的意义 (4) 二FIR滤波器基本理论 (4) (一)FIR滤波器的特点 (4) (二)FIR滤波器的基本结构 (4) (三)Chebyshev逼近法 (5) 三用MATLAB辅助DSP设计FIR滤波器 (5) (一)利用fir函数设计FIR滤波器并在在MATLAB环境仿真 (6) (二) Matlab中自带工具箱FDATool快速的实现滤波器的设计 (10) 1.确定一个低通滤波器指标 (10) 2.打开MATLAB的FDATool (10) 3.选择Design Filter (11) 4.滤波器分析 (11) 5.导出滤波器系数 (13) (三)滤波器设计总结 (13) (四)DSP所需文件配置 (14) 四基于DSP的FIR滤波器实现 (14) (一)DSP中滤波器的算法实现 (15) 1.线性缓冲区法 (15) 2.循环缓冲区法 (15) (二)C语言实现FIR (15) (三)CSS仿真调试 (17) (四)滤波器的仿真测试 (18) 五 DSP数字滤波器与硬件低通滤波器对比 (21) (一)二阶有源低通滤波电路的构建 (21) (二)二阶低通滤波器参数计算 (22) (三)在protues环境下的仿真测试 (22) (四)实物硬件连接以及测试结果 (22) (五)利用FilterPro的低通滤波器设计 (23) 1 选择filter类型 (24) 2 滤波器参数设定 (24) 3 滤波器的算法选择 (25) 4 滤波器的拓扑结构选择 (25) (六) DSP数字滤波器与硬件电路滤波器对比总结 (26) 六课程设计总结 (26) 参考文献 (28)

FIR低通滤波器设计

信息处理课程设计 姓名 班级 学院 学号

目录 一、前言 二、FIR滤波器简介 三、FIR低通滤波器的设计 四、FIR数字滤波器程序设计与仿真 五、小结 六、参考文献

一、前言 数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置)。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换。 数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,且以折叠频率即1/2抽样频率点呈镜像对称。为得到模拟信号,数字滤波器处理的输出数字信号须经数模转换、平滑。 数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。 数字滤波器有低通、高通、带通、带阻和全通等类型。它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器,以及FIR滤波器。 二、FIR滤波器简介 FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。 有限长单位冲激响应(FIR)滤波器有以下特点: (1) 系统的单位冲激响应h (n)在有限个n值处不为零; (2) 系统函数H(z)在|z|>0处收敛,极点全部在z = 0处(因果系统); (3) 结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。

基于matlab的FIR低通,高通,带通,带阻滤波器设计

北京师范大学 课程设计报告 课程名称:DSP 设计名称: FIR 低通、高通带通和带阻数字滤波器的设计姓名: 学号: 班级: 指导教师: 起止日期: 课程设计任务书

学生班级:设计名称:起止日期:学生姓名:学号: FIR 低通、高通带通和带阻数字滤波器的设计指导教师: 设计目标: 1、采用 Kaiser 窗设计一个低通 FIR 滤波器 要求: 采样频率为 8kHz ; 通带: 0Hz~1kHz,带内波动小于5%; 阻带: 1.5kHz,带内最小衰减: Rs=40dB。 2、采用 hamming 窗设计一个高通FIR 滤波器 要求: 通带截至频率wp= 0.6 rad , 阻带截止频率ws= 0.4 rad, 通带最大衰减p0.25dB ,阻带最小衰减s50dB 3、采用 hamming设计一个带通滤波器 低端阻带截止频率wls = 0.2*pi; 低端通带截止频率wlp = 0.35*pi; 高端通带截止频率whp = 0.65*pi; 高端阻带截止频率whs = 0.8*pi; 4、采用 Hamming 窗设计一个带阻 FIR 滤波器 要求: 通带: 0.35pi~0.65pi,带内最小衰减Rs=50dB; 阻带: 0~0.2pi 和 0.8pi~pi,带内最大衰减: Rp=1dB。

FIR 低通、高通带通和带阻数字滤波器的设计 一、设计目的和意义 1、熟练掌握使用窗函数的设计滤波器的方法,学会设计低通、带通、带阻滤 波器。 2、通过对滤波器的设计,了解几种窗函数的性能,学会针对不同的指标选择 不同的窗函数。 二、设计原理 一般,设计线性相位 FIR 数字滤波器采用窗函数法或频率抽样法,本设计采用窗 函数法,分别采用海明窗和凯泽窗设计带通、带阻和低通。 如果所希望的滤波器的理想频率响应函数为H d (e jw ) ,如理想的低通,由信号系统的知识知道,在时域系统的冲击响应h d(n) 将是无限长的,如图2、图 3 所示。 H d(w) -w c w c 图 2图 3 若时域响应是无限长的,则不可能实现,因此需要对其截断,即设计一个FIR 滤波 N 1 器频率响应 H (e jw )h(n)e jwn来逼近H d(e jw),即用一个窗函数w(n)来截断 n 0 h d(n) ,如式 3 所示: h(n) h d (n) w(n)(式1)。 最简单的截断方法是矩形窗,实际操作中,直接取h d(n) 的主要数据即可。 h( n) 作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数为: N 1 H (e jw )h(n)e jwn(式 2) n 0 令 z e jw,则 N 1 H ( z)h(n)z n(式 3), n 0 式中, N 为所选窗函数w(n)的长度。

相关主题
文本预览
相关文档 最新文档