fir 低通 matlab,MATLAB常用的FIR滤波器设计方法之窗函数法

FIR滤波器很多工科出身的人都不会陌生,在我们的学习和工作中,也常常需要设计FIR滤波器。因为FIR滤波器有两个特点:滤波器是稳定的以及具有线性相位。FIR滤波器在信号处理相关领域当然也包括本人所在的雷达信号处理领域有着广泛的应用。本文主要介绍MATLAB最常用的FIR滤波器设计方法之窗函数法。其他的方法将在另一章中介绍。

窗函数法是一种基础且普遍应用的FIR滤波器设计方法。首先需要根据性能指标(如主瓣宽度、旁瓣衰减等)确定适合的窗函数。 主瓣宽度、旁瓣衰减是一对情敌,想要主瓣宽度窄且旁瓣衰减大,那是电视剧里都不会出现的情况。实际中,需要根据自己的任务指标权衡。此外,还需要确定阶数。然后就可以用fir1函数设计滤波器了。

b=fir1(n,wn,'ftype',window)

其中:

b:我们设计的fir滤波器系数,长度为n+1;b跟过渡带的宽度有关,设计时根据性能要求确定。

n:滤波器的阶数。注意,b的长度为n+1。

wn:滤波器的截止频率,可以是一个标量或者多元素的向量。取值范围0

window:表示使用的窗函数,最常用的是汉明窗(Hamming)、汉宁窗(Hanning)、三角窗(bartlett、triang)、矩形窗(boxcar)、布莱克曼窗(Blackman)、chebwin(切比雪夫窗)、凯赛窗(Kaiser);默认是汉明窗(Hamming)。各种窗的差别主要在集中于主瓣的能量和分散在所有旁瓣的能量之比。

例如我们需要设计一个50阶,截止频率ω = 0.3π,使用汉明窗的低通滤波器。

b = fir1(50,0.3,'low',hamming(51));

freqz(b,1,512)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值