如何用matlab设计高通滤波器
调用方式取决于你设计的是FIR还是IIR,不论哪种首先把设计的滤波器的参数首先Export。FIR的话直接用
filter(b,1,x),其中b就是FIR滤波器的系数。若是IIR的话需要转化一下,将sos格式利用sos2tf转化为传递函数形式,再用filter函数调用
在MATLAB环境下IIR数字滤波器的典型设计和完全设计等方法。
典型设计是先按一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标,据此产生模拟滤波器原型,然后把模拟低通滤波器原型转换成模拟低通、高通、带通、带阻滤波器,最后再把模拟滤波器转换成数字滤波器。
完全设计方法中利用函数直接设计出低通、高通、带通和带阻滤波器,并分别用巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev)滤波器、椭圆(Cauer)滤波器来实现,并比较了各自的频率响应曲线。
在FIR滤波器的设计中,用切比雪夫窗和海明窗设计的带通滤波器的频率响应进行对照,结果表面用海明窗设计的滤波器的频率特性几乎在任何频带上都比切比雪夫窗设计的滤波器的频率特性好,只是海明窗设计的滤波器下降斜度较小。
本文利用不同的滤波器研究了MATLAB环境下的图像处理技术。
对一张无锡马山园林的风景照片进行的二种修正,取得了不同的效果。
先对原图进行线性变换增加了对比度和亮度对这张图像,图像效果有了一定的改善。
后来用非锐化滤波器对修正后的图像再进行了处理,对图像的过渡失真进行了补偿。
本文还对一幅加噪声婚纱照片的去噪效果进行了研究。
比较去噪效果证明,用小波变换的方法进行去噪,图像处理效果更佳。
Ωp=2π*fp*T Ωs=2π*fs*T
过渡带宽度△Ω=Ωp-Ωs
阻带衰减已经超过74db,要选用Kaiser窗了,Kaiser的参数可变,要根据公式确定滤波器的参数
一般都选用Ⅰ型线性相位滤波器即滤波器阶数M为偶数,程序如下:
wp=ws=Ap=1As=100
Rp=1-10.^(-0.05*Ap)Rs=10.^(-0.05*As)
f=[fp fs]
a=[0 1]
dev=[Rp Rs]
[M,wc,beta,ftype]=kaiserord(f,a,dev)
M=mod(M,2)+M
h=fir1(M,wc,ftype,kaiser(M+1,beta))
omega=linspace(0,pi,512)
mag=freqz(h,[1],omega)
plot(omega/pi,20*log10(abs(mag)))
grid
omega1=linspace(0,wp,512)
h1=freqz(h,[1],omega1)
omega2=linspace(ws,pi,512)
h2=freqz(h,[1],omega2)
fprintf('Ap=%.4f\n',-20*log10(min(abs(h1))))
fprintf('As=%.4f\n',-20*log10(max(abs(h2))))
运行程序可以得到滤波器的通阻带衰减,画出频率响应,若同阻带衰减不满足要求还可以使用滤波器的优化,一般使用的等波纹FIR进行优化