当前位置:文档之家› 弹拨音乐滤波去噪--使用三角窗设计FIR滤波器要点

弹拨音乐滤波去噪--使用三角窗设计FIR滤波器要点

弹拨音乐滤波去噪--使用三角窗设计FIR滤波器要点
弹拨音乐滤波去噪--使用三角窗设计FIR滤波器要点

长沙理工大学城南学院《数字信号处理》课程设计报告

任健

院系城南学院专业通信工程

班级通信1104班学号201185250426 学生姓名任健指导教师熊文杰

课程成绩完成日期

2014年7月4日

课程设计成绩评定

院系城南学院专业通信工程

班级通信1104班学号201185250426 学生姓名任健指导教师熊文杰

完成日期2014 年7月 4 日

指导教师对学生在课程设计中的评价

指导教师对课程设计的评定意见

课程设计任务书

城南学院通信工程专业

语音信号滤波去噪——使用三角窗

设计FIR滤波器

学生姓名:任健指导老师:熊文杰

摘要本课程设计主要是通过使用三角窗设计一个FIR滤波器以对语音信号进行滤波去噪处理。本设计首先用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用三角窗设计一个满足指标的FIR滤波器,对该语言信号进行滤波去早处理,比较滤波前后的波形和频谱分析,根据结果和学过的理论的出合理的结论。通过对比滤波前后的波形图,深入了解滤波器的相关技术指标和性能,掌握设计滤波器的基本方法,通过程序调试及完善,该设计基本满足设计要求。

关键词MATLAB;三角窗;FIR滤波器;滤波去噪

1 引言

数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的[1]。

数字滤波器是一种用来过滤时间离散信号的数字系统,它是通过对抽样数据进行数学处理来达到频域滤波的目的。随着现代通信的数字化,数字滤波器变得更加重要。数字滤波器的种类很多,但总的来说可以分成两大类,一类是经典滤波器,另一类可称为现代滤波器。从滤波特性方面考虑,数字滤波器可分成数字高通、数字低通、数字带通和数字带阻等滤波器。从实现方法上考虑,将滤波器分成两种,一种称为无限脉冲响应滤波器,简称IIR(Infinite Impulse Response)

滤波器,另一种称为FIR(Finite Impulse Response)滤波器[2]。设计FIR数字滤波器的方法有窗函数法、频率采样法和等波纹最佳逼近法等。

1.1 课程设计目的

用麦克风采集一段语音信号,绘制波形并观察其频谱,给定相应技术指标,用三角窗设计一个满足指标的FIR滤波器,对该语音信号进行滤波去噪处理,比较滤波前后的波形和频谱并进行分析,根据结果和学过的理论得出合理的结论。与不同信源相同滤波方法的同学比较各种信源的特点,与相同信源不同滤波方法的同学比较各种滤波方法性能的优劣。

1.2课程设计的要求

(1)滤波器指标必须符合工程设计。

(2)设计完后应检查其频率响应曲线是否满足指标。

(3)处理结果和分析结论应该一致,而且应符合理论。

(4)在老师的指导下,独立完成课程设计并按要求编写课程设计报告。

1.3设计平台

MATLAB是矩阵实验室(Ma trix Laboratory)的简称,是美国MathWorks 公司出品的商业数学软件,用于算法开发,数学可视化,数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到广泛应用。它不仅是一个在各类工程设计中便于使用的计算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。MATLAB可以在几乎所有的PC机和大型计算机上运行,适用于Windows、UNIX等各种系统平台。

2 设计原理

2.1数字信号处理

数字信号处理的算法需要利用计算机或专用处理设备如数字信号处理器(DSP)和专用集成电路(ASIC)等。数字信号处理技术及设备具有灵活、精确、抗干扰强、设备尺寸小、造价低、速度快等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。

数字信号处理的核心算法是离散傅立叶变换(DFT),是DFT使信号在数字域和频域都实现了离散化,从而可以用通用计算机处理离散信号。而使数字信号处理从理论走向实用的是快速傅立叶变换(FFT),FFT的出现大大减少了DFT的运算量,使实时的数字信号处理成为可能、极大促进了该学科的发展。

数字信号处理的特征和分类。信号(signal)是一种物理体现,或是传递信息的函数。而信息是信号的具体内容。

模拟信号(analog signal):指时间连续、幅度连续的信号。

数字信号(digital signal):时间和幅度上都是离散(量化)的信号。

数字信号可用一序列的数表示,而每个数又可表示为二制码的形式,适合计算机处理。

一维(1-D)信号:一个自变量的函数。

二维(2-D)信号:两个自变量的函数。

多维(M-D)信号:多个自变量的函数。

信号处理的内容:滤波、变换、检测、谱分析、估计、压缩、识别等一系列的加工处理。

随着信息时代、数字世界的到来,数字信号处理已成为一门极其重要的学科和技术领域。

2.2窗口设计法

窗口设计法的基本思想是用FIR逼近希望的滤波特性。设希望逼近的滤波器

的频率响应为,其单位脉冲响应用表示。为了设计简单方便,通常选择为具有片段常数特性的理想滤波器。因此是无限长非因果序列,不能直接作为FIR的单位脉冲响应。窗口设计法就是截取为有限长的一段因果序列,并用合适的窗口函数进行加权作为FIR的单位脉冲响应。

常见的窗函数,可以分为以下主要类型:

(1)幂窗--采用时间变量某种幂次的函数,如矩形、三角形、梯形或其它时间(t)的高次幂;

(2)三角函数窗--应用三角函数,即正弦或余弦函数等组合成复合函数,例如汉宁窗、海明窗等;

(3)指数窗--采用指数时间函数,例如高斯窗等。

常见窗函数性能表如图2.2所示:

图2.1常见窗函数性能表

2.3 FIR滤波器

FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线

性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

FIR滤波器的种类

目前,FIR滤波器的硬件实现有以下几种方式:

(1)数字集成电路FIR滤波器

一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。

(2)DSP芯片FIR滤波器

另一种是使用DSP芯片。DSP芯片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。

(3)可编程FIR滤波器

还有一种是使用可编程逻辑器件,FPGA/CPLD。FPGA有着规整的内部逻辑块整列和丰富的连线资源,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。FIR的特点

有限长单位冲激响应(FIR)滤波器有以下特点:

(1)系统的单位冲激响应h (n)在有限个n值处不为零;

(2)系统函数H(z)在|z|>0处收敛,极点全部在z = 0处(因果系统);

(3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。

3 设计步骤

3.1 设计流程图

本课程设计主要是对一段语音信号,加入噪声后,用某种函数法设计出的FIR滤波器对加入噪声后的语音信号进行滤波去噪处理,并且分析对比前后时域和频域波形的程序设计。

程序的设计流程图如下图3.1所示:

图3.1程序设计流程图

3.2录制语言信号

在左下角点击开始/程序/附件/娱乐/录音机,即可进入如图3.2.1所示的画面。

图 3.2 进入录音机界面

然后点击最右边的红色圆心的标志,即可进行录音。录一段2至3秒的语音,然后左键单击文件/属性,即可得到如下图3.2.2所示。

图 3.3 打开声音属性

在其中点击立即转换,即可得到如下图3.2.3所示界面,将声音格式设置为PCM,属性设置为8.000kHz,8位,单声道,7KB/秒,然后点击确定。然后再点击文件/另存为,即可将该语音文件存在MATLAB文件下的work文件夹里。

图 3.4 设置语音属性

3.3 语音信号的频谱分析

然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。采集完成后在信号中加入一个单频噪声。

程序如下:>>[x,fs,bits]= wavread('D:\renjian.wav');

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

>>fn=1700; % 单频噪声频率,此参数可自己设计

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

>> x=x'; y=x'+0.3sin(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.5 音乐信号加入噪声前后的时域频域图

3.4 设计数字滤波器和画出其频率响应

截止频率也可以任意自选,在单频噪声干扰附近即可。在这里,很重要的是通带截止db值的设置。这个值一定要根据我们使用的设计滤波器的方法来设定。因为我使用的是三角窗法,在三角窗函数中,滤波器的过渡带宽为 6.1π/M,最小阻带衰减为25db。所以,一定要将通带截止db值设置的小于25db,所以,我将其设置为15db。

程序如下:

>> fp1=fn-200;fs1=fn-50;fp2=fn+200;fs2=fn+50;

>> Rp=1;As=15; % 带阻滤波器设计指标

>> df=min((fs1-fp1),(fp2-fs2)); % 计算上下边带中心频率,和频率间隔>> dw=df/fs*2*pi;wc1=(fs1+fp1)/2;wc2=(fs2+fp2)/2; % 将Hz为单位的模拟频率换算为rad为单位的数字频率

>> ws1=fs1/fs*2*pi;ws2=fs2/fs*2*pi;wp1=fp1/fs*2*pi;wp2=fp2/fs*2*pi;

>>M=ceil(6.1*pi/dw)+1; % 计算三角窗设计该滤波器时需要的阶数>> Rp=-min(db(wp1/dw+1:wp2/dw))

Rp =

0.1784

>> As=max(-round(db(ws1/dw+1:1:501)))

As =

22

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

>> w_tri=(triang(M))'; % 产生M阶的三角窗

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

>> h=hd.*w_tri; % 用窗口法计算实际滤波器脉冲响应

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

通过该程序得到的图如下图3.4所示:

图3.6滤波器的特性波形图

3.5 用滤波器对信号进行滤波

在将滤波器设计好后,我们用自己设计的带阻滤波器对采集的语音信号进行滤波。在Matlab中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。

程序如下:

>> y_fil=filter(h,1,y); % 用设计好的滤波器对加噪信号y进行滤波

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

语音信号的时域波形和频谱图比较如下图3.5所示:

图3.7 音乐信号的时域波形和频谱图比较

3.6 结果分析

从图3.5中我们可以看出,原信号与滤波去噪信号的时域图基本相似,只有边缘部分有点差异;原信号与滤波去噪信号的频谱图波形也大致相似。通过观察可以看到,加噪信号的时域图中大部分都被加入的噪声给遮盖了,加噪信号的频谱图中,我们可以很明显地看到与原信号频谱图相比,它在2500Hz左右处有一个尖脉冲,而滤波去噪信号的频谱图中该尖脉冲已经消失,波形大致与原图相似,可见滤波去噪效果基本不错。

在将三个信号的时域波形和频谱图比较之后,我们还要通过回放去滤波去噪音乐信号,来跟原信号相比,以检验滤波器的效果。在Matlab中,函数sound 可以对声音进行回放。其调用格式为:sound (x,fs,bits)。用sound(y_fil,fs,bits)语句回放该滤波去噪信号,便可以感觉到滤波后的语音信号与原信号差不多,该设计基本符合要求。

4出现的问题及解决方法

在课程设计的两周时间里,刚开始的前一周是在机房上机,老师跟我们综述本次课程设计的具体流程,在老师的引导下我们可以请教老师不懂的问题及出现错误等等。刚开始的时候是模仿老师给的模版一步步来,在遇到不懂的地方老师能及时的指导。在整个课程设计的过程中,出现的问题在老师与同学的帮助下,和自己的努力思考,问题得到了圆满解决。

首先,我用录音机录了一段语音文件,然后在Matlab中编写相应程序,但是在编译过程中程序报错,经过摸索,我发现我的语音文件不是单声道的,所以有进行了声道的调节,最终总算解决了这个问题。

语音文件添加好之后就是对语音添加噪声,进行频谱分析了,这些基本上都是以前上Matlab课程中接触到的一些基本知识,只是很多函数是老师给的,也给我们省下了不少时间。在编程过程中遇到和很多不懂得问题,但是在老师和同学们的帮助下,问题基本上都得到了解决。

确实,在本次课程设计过程中遇到了很多的困难,但是同学们的帮助让我本次设计省了不少心,老师在大体上给我们指明方向,同学们则在我实际动手的过程中给予指点和帮助,让我受益匪浅。

5 结束语

为期两周的课程设计终于结束了,在这次课程设计的过程中我又学到了很多,数字信号处理课程设计是数字信号处理课程的重要实践性环节,是我们在校期间一次较全面的能力训练,使得我巩固加深、综合运用所学的专业理论知识,对通信工程领域各种技术的DSP实现的设计有了一定的了解。通过语音信号滤波去噪——使用三角窗设计的FIR滤波器课程设计,我对数字信号方面的知识得到了更深一步的了解。在这次课程设计中,有许多的知识都不是很懂,通过课设中查阅资料等,我拓宽了知识面,增长了见识。最终在和同学们共同进步中圆满完成课程设计任务。

本次数字信号处理课程设计让我深深体会到做事情的时候都必须用心,要有

耐心,使我通过自身的实践,对DSP的设计程序、内容和方法有更深入的掌握,提高实际运用的能力。并可综合运用这些知识解决一定的实际问题,使我在所学知识的综合运用能力上以及分析问题、解决问题能力上得到一定的提高。

参考文献

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

[2] 郑国强,彭勃. 数字信号处理:理论与实践[M]. 西安:西安电子科技大学出版社,2009

[3] 吴镇扬.数字信号处理[M].北京:高等教育出版社,2004

[4] 高西全,丁玉美,阔永红.数字信号处理——原理、实现及应用[M]. 北京:电子工业出版社,2009

[5] 程佩青. 数字信号处理教程[M]. 北京:清华大学出版社,2002

附录1:弹拨音乐滤波去噪——使用三角窗设计的FIR滤波器源程序清单

% 程序名称:语音信号滤波去噪

% 程序功能:用三角窗法设计FIR滤波器,并对加了噪声后的语音信号进行滤波去噪。

% 程序作者:任健

% 最后修改日期:2014-7-4

>> [x,fs,bits]= wavread('D:/renjian.wav');

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

>>fn=2500; % 单频噪声频率,此参数可自己设计

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

>> x=x'; y=x'+0.03*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; % 计算频谱频率范围

>> subplot(2,2,1);plot(t,x);xlabel('时间(单位:s)');ylabel('幅度');title('原始语音信号');axis([0 1.1,-300 100]);

>> subplot(2,2,2);plot(f,X);xlabel('频率(单位:Hz)');ylabel('幅度谱');title('原始语音信号幅度谱') ; axis([0 1.1,0 2]);

>> subplot(2,2,3);plot(t,y);xlabel('时间(单位:s)');ylabel('幅度');title('加入单频干扰后的语音信号'); axis([0 1.1,-4 4]);

>> subplot(2,2,4);plot(f,Y);xlabel('频率(单位:Hz)');ylabel('幅度谱');title('加入干扰后的语音信号幅度谱');axis([0 4000,0 35]);

>> fp1=fn-200;fs1=fn-50;fp2=fn+200;fs2=fn+50;

>> Rp=1;As=15; % 带阻滤波器设计指标

>> df=min((fs1-fp1),(fp2-fs2)); % 计算上下边带中心频率,和频率间隔>> dw=df/fs*2*pi;wc1=(fs1+fp1)/2;wc2=(fs2+fp2)/2; % 将Hz为单位的模拟频率换算为rad为单位的数字频率

>> ws1=fs1/fs*2*pi;ws2=fs2/fs*2*pi;wp1=fp1/fs*2*pi;wp2=fp2/fs*2*pi;

>>M=ceil(6.1*pi/dw)+1; % 计算三角窗设计该滤波器时需要的阶数>> Rp=-min(db(wp1/dw+1:wp2/dw))

Rp =

0.1784

>> As=max(-round(db(ws1/dw+1:1:501)))

As =

22

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

>> w_tri=(triang(M))'; % 产生M阶的三角窗

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

>> h=hd.*w_tri; % 用窗口法计算实际滤波器脉冲响应

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

>> subplot(2,2,1);plot(w/pi,db);xlabel('w');ylabel('db'); axis([0 1.1,-300 100]);

>> subplot(2,2,2);plot(w/pi,mag);xlabel('w');ylabel('mag'); axis([0 1.1,0 2]);

>> subplot(2,2,3);plot(w/pi,pha);xlabel('w');ylabel('pha'); axis([0 1.1,-4 4]);

>> subplot(2,2,4);stem(n,w_tri);xlabel('n');ylabel('w(n)');

>> y_fil=filter(h,1,y); % 用设计好的滤波器对加噪信号y进行滤波

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

>> subplot(3,2,1);plot(t,x);xlabel('时间(单位:s)');ylabel('幅度');title('原始语音信号')

>> subplot(3,2,2);plot(f,X);xlabel('频率(单位:Hz)');ylabel('幅度谱');title('原始语

音信号幅度谱') ;axis([0 6000,0 100])

>> subplot(3,2,3);plot(t,y);xlabel('时间(单位:s)');ylabel('幅度');title('加入单频干扰后的语音信号')

>> subplot(3,2,4);plot(f,Y);xlabel('频率(单位:Hz)');ylabel('幅度谱');title('加入干扰后的语音信号幅度谱');axis([0 6000,0 100])

>> subplot(3,2,5);plot(t,y_fil);xlabel('时间(单位:s)');ylabel('幅度');title('滤波后的语音信号')

>> subplot(3,2,6); plot(f,Y_fil);xlabel('频率(单位:Hz)');ylabel('幅度谱');title('滤波后的语音信号幅度谱');axis([0 6000,0 100])

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);

实验六、用窗函数法设计FIR滤波器

实验六 用窗函数法设计 FIR 滤波器 一、实验目的 (1) 掌握用窗函数法设计FIR 数字滤波器的原理和方法。 (2) 熟悉线性相位FIR 数字滤波器特性。 (3) 了解各种窗函数对滤波特性的影响。 二、实验原理 滤波器的理想频率响应函数为H d (e j ω ),则其对应的单位脉冲响应为: h d (n) = ?-π π ωωωπ d e e H n j j d )(21 窗函数设计法的基本原理是用有限长单位脉冲响应序列h(n)逼h d (n)。由于h d (n)往往是无 限长序列,且是非因果的,所以用窗函数。w(n)将h d (n)截断,并进行加权处理: h(n) = h d (n) w(n) h(n)就作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数H(e j ω )为: H(e j ω ) = ∑-=-1 )(N n n j e n h ω 如果要求线性相位特性,则h (n )还必须满足: )1()(n N h n h --±= 可根据具体情况选择h(n)的长度及对称性。 用窗函数法设计的滤波器性能取决于窗函数w(n)的类型及窗口长度N 的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。 三、实验步骤 1. 写出理想低通滤波器的传输函数和单位脉冲响应。 2. 写出用四种窗函数设计的滤波器的单位脉冲响应。 3. 用窗函数法设计一个线性相位FIR 低通滤波器,用理想低通滤波器作为逼近滤波器,截止频率ωc =π/4 rad ,选择窗函数的长度N =15,33两种情况。要求在两种窗口长度下,分别求出h(n),打印出相应的幅频特性和相频特性曲线,观察3dB 带宽和阻带衰减; 4 用其它窗函数(汉宁窗(升余弦窗)、哈明窗(改进的升余弦窗)、布莱克曼窗) 设计该滤波器,要求同1;比较四种窗函数对滤波器特性的影响。 四、实验用MATLAB 函数 可以调用MATLAB 工具箱函数fir1实现本实验所要求的线性相位FIR-DF 的设计,调用一维快速傅立叶变换函数fft 来计算滤波器的频率响应函数。

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滤波器

1.课题描述......................................................... (1) 2.题目及要求......................................................... (1) 3.设计原理......................................................... (1) 3.1 滤波器的分类......................................................... (1) 3.2 数字滤波器工作原理 (1) 3.3 FIR滤波器的设计指 标 (3) 3.4窗函数设计FIR滤波器的设计原 理 (5) 3.5用窗函数设计滤波器的步 骤 (10) 3.6实验所用MATLAB函数说 数 (11)

4设计容......................................................... (12) 4.1用MATLAB编程实 现 (12) 4.2结果分析......................................................... (15) 5总结......................................................... (17) 6参考文献......................................................... (17)

1.课题描述 数字滤波器是指输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。因此,数字滤波的概念和模拟滤波相同,只是信号的形成和实现滤波方法不同。正因为数字滤波通过数值运算实现滤波,所以数字滤波处理精度高、稳定、体积小、质量轻、灵活、不存在阻抗匹配问题,可以实验模拟滤波器无法实现的特殊滤波功能。本课题使用MATLAB信号处理箱和运用窗函数的FIR滤波器去除无用信号。2.题目及要求 产生包含三个正弦成分(120hz,80hz,20hz)的信号,设计基于窗函数的FIR滤波器去除120hz,20hz成分,保留80hz信号。通带允许的最大衰减为0.25dB,阻带应达到的最小衰减为20dB。滤波器的采样频率为500Hz。 3.设计原理 3.1滤波器的分类 从功能上可以分为:低通、高通、带通和带阻。 从处理信号分为:经典滤波器和现代滤波器。 从设计方法上分为:切比雪夫和巴特沃斯 从实现方法上分为:FIR和IIR 3.2数字滤波器的工作原理 数字滤波器是一个离散时间系统,输入x(n)是一个时间序列,输出y(n)也是一个时间序列。如数字滤波器的系统函数为H(Z),其脉

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滤波器窗函数设计

FlR 滤波器窗函数设计 引言: 数字滤波器(DigitalFilter )是指输入、输出都是离散时间信号,通过一定运算 关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。 在许 多数字信号处理系统中,如图像信号处理等,有限冲激响应( FIR )滤波器是最 常用的组件之一,它完成信号预调、频带选择和滤波等功能。 FIR 滤波器虽然在 截止频率的边沿陡峭性能上不及无限冲激响应 (IIR )滤波器,但是却具有严格的 线性相位特性,稳定性好,能设计成多通带(或多阻带)滤波器组,所以能够在 数字信号处理领域得到广泛的应用。 数字滤波器的分类 1) 根据系统响应函数的时间特性分为两类 1. FIR (Finite ImPUISe Response 数字滤波器网络 M y[n] b k x[n k] k0 特点:不存在反馈支路,其单位 冲激响应为有限长 2. IIR ( Infinite ImPUISe Response 数字滤波器网络 特点:存在反馈支路,即信号流图中存在环路,其单位冲激响应为无限长 (2) FIR 数字滤波器IIR 数字滤波器的区别 1. 从性能上来说,IlR 滤波器传递函数包括零点和极点两组可调因素, 对极点的 惟一限制是在单位圆内。因此可用较低的阶数获得高的选择性,所用的存储 单元 少,计算量小,效率高。但是这个高效率是以相位的非线性为代价的。 选择性越好,则相位非线性越严重。FIR 滤波器传递函数的极点固定在原点, 是不能动的,它只能靠改变零点位置来改变它的性能。所以要达到高的选择 性,必须用较高的阶数;对于同样的滤波器设计指标, FIR 滤波器所要求的 阶数可能比IIR 滤波器高5-10倍,但是FIR 滤波器可以得到严格的线性相位。 2. 从结构上看,IIR 滤波器必须采用递归结构,极点位置必须在单位圆内,否则 系统将 不稳定。相反,FIR 滤波器只要采用非递归结构,不论在理论上还是 在实际的有限精度运算中都不存在稳定性问题, 因此造成的频率特性误差也 较小。此外FIR 滤波器可以采用快速傅里叶变换算法, 在相同阶数的条件下, 运算速度可以快得多。 3. 从设计工具看,IIR 滤波器可以借助于模拟滤波器的成果,因此一般都有有效 的圭寸闭形式的设计公式可供准确计算,计算工作量比较小,对计算工具的要 求不高。 hn b n , 0 n M 0, 其他 n y[n] b k x[n k] k0 a k y[n k1 k]

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

实验四 窗函数法设计FIR数字滤波器

实验四 窗函数法设计FIR 数字滤波器 一、实验目的 1、掌握窗函数法设计FIR 数字滤波器的原理及具体方法。 2、掌握频率取样法设计FIR 数字滤波器的原理和基本方法。 3、学习利用窗函数法和频率取样法设计低通、带通、高通、带阻数字滤波器。 二、实验环境 计算机、MATLAB 软件 三、实验基础理论 窗函数设计FIR 滤波器 1.基本原理 窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器()j d H e ω ,然后 用窗函数截取它的单位脉冲响应(n)d h ,得到线性相位和因果的FIR 滤波器。这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。 2.设计步骤 (1)给定理想滤波器的频率响应()j d H e ω ,在通带上具有单位增益和线性相位, 在阻带上具有零响应。一个带宽为()c c ωωπ<的低通滤波器由下式给定: π ωωωωωωω≤<=≤=-||,0)(,||,)(c j d c ja j d e H e e H 其中α为采样延迟,其作用是为了得到一个因果系统。 (2)确定这个滤波器的单位脉冲响应 ) ()) (sin()(a n a n n h c d --= πω 为了得到一个(n)h 长度为N 的因果的线性相位FIR 滤波器,我们令 2 1 -= N a (3)用窗函数截取(n)d h 得到所设计FIR 数字滤波器:)()()(n R n h n h N d = 3.窗函数的选择 常用的窗函数有矩形(Rectangular )窗,汉宁(Hanning )窗,海明(Hamming )窗、布莱克曼(Blackman )窗、凯瑟(Kaiser )窗等 表4-1 MATLAB 中产生窗函数的命令

用窗函数法设计FIR数字滤波器

用窗函数法设计FIR 数字滤波器 一、实验目的 1.掌握用窗函数法设计FIR 数字滤波器的原理和方法。 2.熟悉线性相位FIR 数字滤波器特征。 3.了解各种窗函数对滤波特性的影响。 二、实验仪器 微型计算机 matlab 软件 三、实验原理和方法 如果所希望的滤波器的理想频率响应函数为 )(ωj d e H ,则其对应的单位脉冲响应为 )(n h d =π21 ωωωππd e e H j j d )(?- (2-1) 窗函数设计法的基本原理是用有限长单位脉冲响应序列)(n h 逼近)(n h d 。由于)(n h d 往往是无限长序列,且是非因果的,所以用窗函数)(n ω将)(n h d 截断,并进行加权处理,得到: )(n h =)(n h d )(n ω (2-2) )(n h 就作为实际设计的FIR 数字滤波器的单位脉冲响应序列, 其频率响应函数)(ωj d e H 为: )(ωj d e H =∑-=-1 0)(N n j e n h ω (2-3) 式中,N 为所选窗函数)(n ω的长度。 由第七章可知,用窗函数法设计的滤波器性能取决于窗函数)(n ω的类型及窗口长度N 的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。各种类型的窗函数可达到的阻带最小衰减和过渡带宽度见第七章。 这样选定窗函数类型和长度N 后,求出单位脉冲响应)(n h =)(n h d ·)(n ω,并按式(2-3)求出)(ωj e H 。)(ωj e H 是否满足要求,要进行验算。一般在)(n h 尾部加零使长度满足于2的整数次幂,以便用FFT 计算)(ωj e H 。如果要观察细节,补零点数增多即可。如果)(ωj e H 不满足要求,则要重新选择窗函数类型和长度N ,再次验算,直至满足要求。 如果要求线性相位特性,则)(n h 还必须满足 )1()(n N h n h --±= (2-4) 根据上式中的正负号和长度N 的奇偶性又将线性相位FIR 滤波器分成四类。要根据设计的滤波特性正确选择其中一类。例如,要设计线性低通特征,可选择)1()(n N h n h --=一类,而不能选)1()(n N h n h ---=一类。 四、实验内容

基于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 的长度。

窗函数法设计FIR数字滤波器

数字信号处理实验报告 ---实验4窗函数法设计FIR数字滤波器 一、实验目的 1.了解常用的几种窗函数,能正确选择适当的窗函数进行滤波器设计; 2.掌握窗函数法设计数字低通滤波器。 二、实验原理 1.常用的窗函数: 矩形窗函数为boxcar和rectwin,调用格式: w= boxcar(N) w= rectwin(N) 其中N是窗函数的长度,返回值w是一个N阶的向量。 三角窗函数为triang,调用格式: w= triang(N) 汉宁窗函数为hann,调用格式: w= hann(N) 海明窗函数为hamming,调用格式: w= hamming(N) 2.各个窗函数的性能比较

三、实验内容 题一:生成四种窗函数:矩形窗、三角窗、汉宁窗、海明窗,并观察其频率响应。 题二:根据下列技术指标,设计一个FIR数字低通滤波器:wp=0.2π,ws=0.4π,ap=0.25dB, as=50dB,选择一个适当的窗函数,确定单位冲激响应,绘出所设计的滤波器的幅度响应。 四、上机程序及运行结果 题一:n=30; %矩形窗及其频响 window1=rectwin(n); [h1,w1]=freqz(window1,1); subplot(4,2,1); stem(window1);title('矩形窗');subplot(4,2,2); plot(w1/pi,20*log(abs(h1))/abs(h1(1)));title('矩形窗频响'); %三角窗及其频响 window2=triang(n); [h2,w2]=freqz(window2,1); subplot(4,2,3);stem(window2);title('三角窗'); subplot(4,2,4); plot(w2/pi,20*log(abs(h2))/abs(h2(1)));title('三角窗频响'); %汉宁窗及其频响 window3=hann(n); [h3,w3]=freqz(window3,1); subplot(4,2,5);stem(window3);title('汉宁窗'); subplot(4,2,6); plot(w3/pi,20*log(abs(h3))/abs(h3(1)));title('汉宁窗频响'); %海明窗频响 window4=hamming(n);

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数字滤波器

数字信号处理实验报告---实验4窗函数法设计FIR数字滤波器

一、实验目的 1.掌握用窗函数法、频率采样法设计FIR数字滤波器的原理及方法,熟悉相应的计算机编程。 2.熟悉线性相位FIR数字滤波器的幅频特性和相频特性。 3.了解各种不同窗函数对滤波器性能的影响。 二、实验原理 1.常用的窗函数: 矩形窗函数为boxcar和rectwin,调用格式: w= boxcar(N)w= rectwin(N) 其中N是窗函数的长度,返回值w是一个N阶的向量。 三角窗函数为triang,调用格式: w= triang(N) 汉宁窗函数为hann,调用格式: w= hann(N) 汉明窗函数为hamming,调用格式: w= hamming(N) 三、设计指标 (1)矩形窗设计线性相位低通滤波器(参数自主设定)。 (2)改用汉宁窗,设计参数相同的低通滤波器。 四、上机程序及运行结果 生成四种窗函数:矩形窗、三角窗、汉宁窗、海明窗,并观察其频率响应。 n=30; %矩形窗及其频响 window1=rectwin(n); [h1,w1]=freqz(window1,1); subplot(4,2,1);

stem(window1);title('矩形窗');subplot(4,2,2); plot(w1/pi,20*log(abs(h1))/abs(h1(1)));title('矩形窗频响'); %三角窗及其频响 window2=triang(n); [h2,w2]=freqz(window2,1); subplot(4,2,3);stem(window2);title('三角窗'); subplot(4,2,4); plot(w2/pi,20*log(abs(h2))/abs(h2(1)));title('三角窗频响'); %汉宁窗及其频响 window3=hann(n); [h3,w3]=freqz(window3,1); subplot(4,2,5);stem(window3);title('汉宁窗'); subplot(4,2,6); plot(w3/pi,20*log(abs(h3))/abs(h3(1)));title('汉宁窗频响'); %汉明窗频响 window4=hamming(n); [h4,w4]=freqz(window4,1); subplot(4,2,7);stem(window4);title('汉明窗'); subplot(4,2,8); plot(w4/pi,20*log(abs(h4))/abs(h4(1)));title('汉明窗频响');

用窗函数法设计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滤波器的窗函数设计法及性能比较

MATLAB课程设计报告 学院:地球物理与石油资源学院 班级: 姓名: 学号: 班内编号: 指导教师: 完成日期: 2013年6月3日

一、 题目 FIR 滤波器的窗函数设计法及性能比较 1. FIR 滤波器简介 数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应(IIR )滤波器和有限冲激响应(FIR )滤波器。与IIR 滤波器相比,FIR 滤波器的主要特点为: a. 线性相位;b.非递归运算。 2. FIR 滤波器的设计 FIR 滤波器的设计方法主要有三种:a.窗函数设计法;b.频率抽样发;c.最小平法抽样法; 这里我主要讨论在MA TLAB 环境下通过调用信号分析与处理工具箱的几类窗函数来设计滤波器并分析与比较其性能。窗函数法设计FIR 滤波器的一般步骤如下: a. 根据实际问题确定要设计的滤波器类型; b. 根据给定的技术指标,确定期望滤波器的理想频率特性; c. 求期望滤波器的单位脉冲响应; d. 求数字滤波器的单位脉冲响应; e. 应用。 常用的窗函数有 同。 时与布莱克曼窗结果相当时与海明窗结果相同; 时与矩形窗一致;当当885.84414.50]!)2/([1)(120===+=∑∞ =x x x m x x I m m 3.窗函数的选择标准 1. 较低的旁瓣幅度,尤其是第一旁瓣; 2. 旁瓣幅度要下降得快,以利于增加阻带衰减; 3. 主瓣宽度要窄,这样滤波器过渡带较窄。 函数,可定义为是零阶式中Bessel x I n R I N n I n w window Kaiser n R N n N n n w window Balckm an n R N n n w window Ham m ing n R N n n w window Hanning N N N N )()5.2.9()(]) (})]1/(2[1{[)()4()4.2.9()()]14cos(08.0)12cos( 5.042.0[)()3()3.2.9()()]12cos( 46.054.0[)()2() 2.2.9()()]1cos( 5.05.0[)()1(0020ββππππ--=-+--=--=--=

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

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