信号处理常用matlab之数字滤波器及滤波函数

1 freqz

可以画出设计的FIR滤波器h[n]的幅频响应和相频响应。
调用格式为:[h,w]=freqz(h[n])
其中h[n]为输入滤波器系数,h为输出频率响应,w为数字角频率。

2 fir1

fir1函数是用窗函数法来设计FIR滤波器。
b = fir1(n,Wn,ftype,window)
其中:
n为滤波器阶数
Wn为用pi进行归一化后的截止数字角频率, 0≤Wn≤1,Wn=1 对应于采样频率的一半。当设计带通和带阻滤波器时, Wn=[W1 W2],W1≤ω≤W2。
ftype 为当生成的滤波器类型,指定 ftype 时,可设计高通和带阻滤波器。ftype = high 时,设计高通 FIR 滤波器;
ftype=stop 时设计带阻 FIR 滤波器。低通和带通 FIR滤波器无需输入 ftype 参数。
Window 为窗函数,窗函数的长度应等于FIR 滤波器系数个数,即阶数 n+1,默认为hamming窗。
b为生成的滤波器系数。

3 fir2

b = fir2(n,f,m)
b = fir2(n,f,m,window)
b = fir2(n,f,m,npt)
b = fir2(n,f,m,npt,window)
参数含义:
b= fir2(n,f,m)可设计出一个n阶的FIR滤波器,其滤波器的频率特性由参数f和m决定.参数f为频率点矢量,f∈[0,1],f=1对应于fs/2。矢量f按升序排列,且第一个元素必须是0,最后一个必须为1,并可以包含重复的频率点。矢量m中包含了与f相对应的期望得到的滤波器的幅度。
Window 为窗函数,窗函数的长度应等于FIR 滤波器系数个数,即阶数 n+1,默认为hamming窗。
npt指定了函数fir2进行内插得频率响应的栅格点数目(即内插网格的点数),默认值为512。
ap指定了在f中重复频率点间插入的区域大小
b 为生成的滤波器系数
fir2滤波器使用频域采样率来设计滤波器。具体的过程如下:1)根据f和m得到频率响应;2)根据npt进行线性内插;3)lap进行平滑;4)逆傅里叶变换得到系数;5)依据window时域加窗。

4 fdatool

参考信号处理常用matlab之16数据链信号生成

5 firpm

b = firpm(n,f,a)
参见matlab使用firpm函数设计自定义响应的FIR数字滤波器

6 filter

filter函数是一维的数字滤波器,主要的应用语法:y = filter(b,a,X)
b和a分别为滤波器传递函数H(z)的分子多项式和分母多项式系数;
X是输入信号
y = filter(b,a,X)完成对输入信号X的滤波,y与x的大小相同

7 filtfilt

y = filtfilt(b,a,X) 对输入信号X进行零相位数字滤波
b和a分别为滤波器传递函数H(z)的分子多项式和分母多项式系数;

  • 4
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值