第四章数字滤波器 §4-1数字滤波器的实现 1数字滤波器的传递函数 卷积滤波器(FR滤波器) 1()=∑h1z 递推滤波器(R滤波器) ∑hz H(z)=-=0 1+∑gz
第四章 数字滤波器 §4-1 数字滤波器的实现 1.数字滤波器的传递函数 •卷积滤波器(FIR滤波器): •递推滤波器(IIR滤波器): = − = N i i H z hi z 0 ( ) ˆ = − = − + = L i i i N i i i g z h z H z 1 0 1 ( ) ˆ
综合以上两式,数字滤波器的一般表达式: H(=) b(1)+b(2)z-+b(3)z-2+…+b(N+1)二 1+a(2)z1+a(3)z-2+…+a(L+1)2z 注: Matlab的向量下标是从1开始的,故此处从b(1)开始 记向量 b=b(1)b(2)b(3) b(N+1) 1a(2)a(3) a(L+1) 则一个滤波器完全由向量a、b决定 特例:a=1时,为FR滤波器
•综合以上两式,数字滤波器的一般表达式: 注:Matlab的向量下标是从1开始的,故此处从b(1)开始 记向量 b=[b(1) b(2) b(3) …… b(N+1)] a=[1 a(2) a(3) …… a(L+1)] 则一个滤波器完全由向量a、b决定。 特例:a=1 时,为FIR滤波器。 L N a z a z a L z b b z b z b N z H z − − − − − − + + + + + + + + + + = 1 (2) (3) ( 1) (1) (2) (3) ( 1) ( ) ˆ 1 2 1 2
2滤波器函数 (1) )filter函数 格式:y= filter(bax) 功能:用给定的b、a作为滤波系数构成滤波器,对x进 行滤波,结果放在y中,长度为max(n) 注:既适用于IR,也适用于FIR滤波器(a=1)
2.滤波器函数 (1)filter函数 格式:y=filter(b,a,x) 功能:用给定的b、a作为滤波系数构成滤波器,对x进 行滤波,结果放在y中,长度为max(na ,nb )。 注:既适用于IIR,也适用于FIR滤波器(a=1)
(2) fitful函数 格式:①y= fitfilt((b,x) ②y=tf(b,xn) 功能:基于FFT的FR滤波器 ①用给定的b作为滤波系数构成FR滤波器,对x 进行滤波,结果放在y中。 ②用给定的b作为滤波系数构成FIR滤波器,对x 进行滤波,结果放在y中。其中FFT的长度为 nft=2 nextpow2(n) 数据长度为 Inft-length(b)+1 注: newtow2(n)函数得到大于n且与n最接近的2的幂。 tHnextpow 2(33)=6; nextpow2(32)=5 length(b)函数得到b的长度
(2)fftfilt函数 格式:①y=fftfilt(b,x) ②y=fftfilt(b,x,n) 功能:基于FFT的FIR滤波器 ①用给定的b作为滤波系数构成FIR滤波器,对x 进行滤波,结果放在y中。 ②用给定的b作为滤波系数构成FIR滤波器,对x 进行滤波,结果放在y中。其中FFT的长度为 nfft=2^nextpow2(n); 数据长度为nfft-length(b)+1. 注: nextpow2(n)函数得到大于n且与n最接近的2的幂。 如nextpow2(33)=6; nextpow2(32)=5 length(b)函数得到b的长度
(3) filtfilt函数 格式:y= filthily(b,a,x) 功能:零相位滤波器。先将数据按顺序滤波,再将结 果逆转后反向通过滤波器,可得到零相位失真 例41对比上述几种滤波器。(eX41m)
(3)filtfilt函数 格式:y=filtfilt(b,a,x) 功能:零相位滤波器。先将数据按顺序滤波,再将结 果逆转后反向通过滤波器,可得到零相位失真。 例4.1 对比上述几种滤波器。(ex41.m)
§4-2数字滤波器的分析 1数字滤波器的频率响应函数 fretz 格式:有如下7种格式: ①[h,w]= fretz(b,a,n) --得到滤波器n点的频率响应,这n点均匀分布在单位 圆的上半圆(0-π)。h中为频率响应H(fw中为这n点的 频率。(缺省n=512) 2 [h, f]freqz(b a, n, Fs) 得到滤波器n点的频率响应,这n点均匀分布在单位 圆的(0s/2)范围内。h中为频率响应H,P为这n点 的频率(Fs和f以Hz为单位)
§4-2 数字滤波器的分析 1.数字滤波器的频率响应函数 freqz 格式:有如下7种格式: ①[h,w]=freqz(b,a,n) ----得到滤波器n点的频率响应,这n点均匀分布在单位 圆的上半圆(0-π)。h中为频率响应H(f),w中为这n点的 频率。(缺省n=512) ② [h,f]=freqz(b,a,n,Fs) ----得到滤波器n点的频率响应,这n点均匀分布在单位 圆的 (0-Fs/2)范围内。h中为频率响应H(f),f中为这n点 的频率(Fs 和f以Hz为单位)
③仇,w]=feqz(b,a,n, whole”) 得到滤波器n点的频率响应,这n点均匀分布在单 位圆上(02π)。h中为频率响应H(,w中为这n点的 频率 4 h, f=freqz(b, a, n, whole, Fs) -得到滤波器n点的频率响应,这n点均匀分布在单 位圆上0Fs的范围内。h中为频率响应H(,为这n 点的频率(FSs和f以Hz为单位) ⑤h= freqz b, a,w) 得到滤波器在矢量w所给定频率上的频率响应 注:w所给定频率必须在0-2π的范围内。h中为频率 响应H(f
③ [h,w]=freqz(b,a,n,’whole’) ----得到滤波器n点的频率响应,这n点均匀分布在单 位圆上 (0-2π) 。h中为频率响应H(f),w中为这n点的 频率。 ④[h,f]=freqz(b,a,n,’whole’,Fs) ----得到滤波器n点的频率响应,这n点均匀分布在单 位圆上0-Fs的范围内 。h中为频率响应H(f),f中为这n 点的频率(Fs 和f以Hz为单位)。 ⑤h=freqz(b,a,w) ----得到滤波器在矢量w所给定频率上的频率响应。 注:w所给定频率必须在0-2π的范围内 。h中为频率 响应H(f)
⑥h= fretz(b,anf,Fs 得到滤波器在失量所给定频率上的频率响应。注 所给定频率必须在0-Fs的范围内。h中为频率响应 H(f ⑦不带输出变量的 fretz函数画出幅频和相频特性曲线。 例42对一数字滤波器 0.2+0.3z-1+z H(z) 1+0.4z-+z 求频率特性。(ex42m)
⑥ h=freqz(b,a,f,Fs) ----得到滤波器在矢量f所给定频率上的频率响应。注: f所给定频率必须在0-Fs的范围内 。h中为频率响应 H(f)。 ⑦不带输出变量的freqz函数画出幅频和相频特性曲线。 例4.2 对一数字滤波器 求频率特性。(ex42.m) 1 2 1 2 1 0.4 0.2 0.3 ( ) − − − − + + + + = z z z z H z
2数字滤波器的脉冲响应函数impz 格式:有如下4种格式: ①[h,t}=impz(b,a) 得到滤波器的脉冲响应h,取样点数n由mpz函数 自动选取并记录在t中(t=[0n-1]) ②2[h,t=impz(b,an) --得到滤波器在指定点的脉冲响应h。当n为标量时, t=[0n-1];当n为矢量时(其值应为整数,则tn,即在 这些指定的点计算脉冲响应h
2.数字滤波器的脉冲响应函数 impz 格式:有如下4种格式: ①[h,t]=impz(b,a) ----得到滤波器的脉冲响应h,取样点数n由impz函数 自动选取并记录在t中(t=[0:n-1]’)。 ② [h,t]=impz(b,a,n) ----得到滤波器在指定点的脉冲响应h。当n为标量时, t= [0:n-1]’;当n为矢量时(其值应为整数),则t=n,即在 这些指定的点计算脉冲响应h
③h, IF=impz(b,an,Fs) --得到滤波器在指定点的脉冲响应h。取样间隔为l/Fs。 ④不带输出变量的impz函数用stem(th)画出脉冲响应特 性曲线 例4.3对一数字滤波器 0.2+0.1z1+0.3z2+0.1z3+0.2z H(=) 1-1.1z1+1.5z-2-0.7z3+0.3z4 求脉冲响应。(ex43,m)
③ [h,t]=impz(b,a,n,Fs) ----得到滤波器在指定点的脉冲响应h。取样间隔为1/Fs。 ④不带输出变量的impz函数用stem(t,h)画出脉冲响应特 性曲线。 例4.3 对一数字滤波器 求脉冲响应。(ex43.m) 1 2 3 4 1 2 3 4 1 1.1 1.5 0.7 0.3 0.2 0.1 0.3 0.1 0.2 ( ) − − − − − − − − − + − + + + + + = z z z z z z z z H z