欢迎来到天天文库
浏览记录
ID:39073519
大小:561.50 KB
页数:10页
时间:2019-06-24
《101210113-宋浪》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、※※※※※※※※※※※※※※※※※※※※※※※※2010级物理学专业光电图像处理课程设计光电图像课程设计报告书课题名称基于matlab的滤波器设计姓名宋浪学号101210113院部通信与电子工程学院专业物理学指导教师熊翠秀2013年06月07日10一、设计任务及要求:设计任务:如何用matlab来实现滤波。要求:1.选图像,并输入;2.采用butter命令,设计一个巴特沃斯低通滤波器,以此实现信号的滤波;3.在同一面上显示滤波前后的所有的图像和程序;4.使用MATLAB分别实现IIR滤波器和FIR滤波器;指导教师签名:年月日二、指导教师评语:指导教师签名:年月日三、成绩
2、验收盖章年月日10图像复原的MATLAB实现1课程设计目的(1)了解基于matlab的滤波器处理及其基本操作;(2)学习MATLAB在滤波器中的使用;(3)提高学习与解决问题的能力。2课程设计基本内容2.1滤波器的基本原理2.1.1设计数字滤波器的任务就是寻求一个因果稳定的线性时不变系统,并使系统函数H(z)具有指定的频率特性。数字滤波器从实现的网络结构或者从单位冲激响应分类,可以分成无限单位冲激响应(IIR)数字滤波器和有限长单位冲激响应(FIR)数字滤波器。数字滤波器频率响应的三个要素:(1)幅度平方响应(2)相位响应(3)群时延响应IIR数字滤波器:IIR数字滤波
3、器的系统函数为有理分数,即IIR数字滤波器的逼近问题就是求解滤波器的系数和,使得在规定的物理意义上逼近所要求的特性的问题。如果是在s平面上逼近,就得到模拟滤波器,如果是在z平面上逼近,则得到数字滤波器。FIR数字滤波器:设FIR的单位脉冲响应h(n)为实数,长度为N,则其z变换和频率响应分别为按频域采样定理FIR数字滤波器的传输函数H(z)和单位脉冲响应h(z)可由它的N歌频域采值H(k)唯一确定。MATLAB中提供了几个函数,分别用于实现IIR滤波器和FIR滤波器。(1)卷积函数conv,调用格式为,c=conv(a,b)10该格式可以计算两向量a和b的卷积,可以直接
4、用于对有限长信号采用FIR滤波器的滤波。(1)函数filter的调用格式为,y=filter(b,a,x)该格式采用数字滤波器对数据进行滤波,既可以用于IIR滤波器,也可以用于FIR滤波器。其中向量b和a分别表示系统函数的分子,分母多项式的系数,若a=1,此时表示FIR滤波器,否则就是IIR滤波器。该函数就是利用给出的向量b和a,对x中的数据进行滤波,结果放入向量y。(2)函数fftfilt的调用格式为,y=fftfilt(b,x)该格式是利用基于FFT的重叠相加法对数据进行滤波,这种频域滤波技术只对FIR滤波器有效。该函数是通过向量b描述的滤波器对x数据进行滤波。关于
5、用butter函数求系统函数分子与分母的几种形式。[b,a]=butter(N,wc,‘high’):设计N阶高通滤波器,wc为它的3dB边缘频率,以Hz为单位。[b,a]=butter(N,wc):当wc为具有两个元素的矢量wc=[w1,w2]时,它设计2N阶带通滤波器,3dB通带,以Hz为单位。[b,a]=butter(N,wc,‘stop’):若wc=[w1,w2],则它设计2N阶带阻滤波器,3dB通带,以Hz为单位。如果在这个函数输入变元的最后,加一个变元“s”,设计的是模拟滤波器。这里不作讨论。为了设计任意的选项巴特沃斯滤波器,必须知道阶数N和3dB边缘频率矢
6、量wc。这可以直接利用信号处理工具箱中的buttord函数来计算。如果已知滤波器指标,,和,则调用格式为[N,wc]=buttord(wp,ws,Rp,As)对于不同类型的滤波器,参数wp和ws有一些限制:对于低通滤波器,wpws;对于带通滤波器,wp和ws分别为具有两个元素的矢量,wp=[wp1,wp2]和ws=[ws1,ws2],并且ws17、(对信号x(n)=sin(n/4)+5cos(n/2)进行滤波,信号长度为500点),从中了解滤波的实现过程。程序如下:Wn=0.2*pi;N=5;[b,a]=butter(N,Wn/pi);N=0:1:499;x=sin(pi*n/4)+5*cos(pi*n/2);X=fft(x,4096);Subplot(2,2,1);plot(x);title(‘滤波前信号的波形’);Subplot(2,2,2);plot(X);title(‘滤波前信号的频谱’);y=filter(b,a,x);Y=fft(y,4096);Subplot(2,2,
7、(对信号x(n)=sin(n/4)+5cos(n/2)进行滤波,信号长度为500点),从中了解滤波的实现过程。程序如下:Wn=0.2*pi;N=5;[b,a]=butter(N,Wn/pi);N=0:1:499;x=sin(pi*n/4)+5*cos(pi*n/2);X=fft(x,4096);Subplot(2,2,1);plot(x);title(‘滤波前信号的波形’);Subplot(2,2,2);plot(X);title(‘滤波前信号的频谱’);y=filter(b,a,x);Y=fft(y,4096);Subplot(2,2,
此文档下载收益归作者所有