• FIR滤波器设计


    FIR滤波器的优越性:

    相位对应为严格的线性,不存在延迟失真,仅仅有固定的时间延迟;

    因为不存在稳定性问题,设计相对简单;

    仅仅包括实数算法,不涉及复数算法,不须要递推运算,长度为M,阶数为M-1,计算值约为M/2。


    关于FIR滤波器的幅频特性和相频特性。在人们不关心相位时,能够让幅频特性常为正,原来为负的部分仅仅需相位加上pi来补偿。

    但当相位非常重要,不同意随便增减时,幅频特性就必须区分正负。我们这里称为符幅特性。

    符幅特性负值部分向上反褶就和我们平时看到的幅频特性一样,还是满足对称性的。


    4类FIR的比較(摘自百度文库):


         

    不同类型要注意他们在w=0和pi时的取值是否为0,对滤波器选型有影响。

    另外要注意到FIR极点在原点,零点则是成对出现,并且极点数等于零点数。


    实际中用窗函数截断法设计FIR滤波器。

    矩形窗缺点:

    突然截断引起吉布斯效应,由于矩形窗在频谱上的旁瓣相对幅度过大,导致滤波器波动大。

    因此要採用平滑截断的窗,旁瓣相对小。但平滑窗主瓣宽度大,主瓣宽度是决定过渡带的关键因素。因此用提高阶数的方法解决。

    matlab中各种窗函数:

    wd = boxcar(N);%矩形窗

    wd = triang(N);%三角窗

    wd = hanning(N);&汉宁窗

    wd = hamming(N);%汉明窗

    wd = blackman(N);%布莱克曼窗

    wd = kaiser(N,beta);%凯泽-贝塞尔窗,最优的窗结构之中的一个,对于给定的波动,提供最小的主瓣宽度。

    另外有个现成的设计函数:

    b = fir1(M,wn,'type',window);

    b为待设计的滤波器系数向量,长度为N = M+1;

    M为阶数;

    wn为滤波器给定的边缘频率,标量或数组;

    type滤波器类型,低通,高通……

    window为窗函数类型,默认汉明窗。

    比如b = fir1(32,0.7,high',kaiser(33,4));

    注意0.7是指边界数字频率0.7*pi。

    滤波器设计也能够利用matlab的fdatool工具设计,更为直观。





  • 相关阅读:
    Flink延时监控
    FLink全链路时延—测量方式
    Linux搭建SFTP服务器
    Red Hat:USING AMQ STREAMS WITH MIRRORMAKER 2.0
    idea 搭建运行kafka 源码
    Kafka Connect Concepts
    Java IPv6相关属性preferIPv4Stack、preferIPv6Addresses介绍
    如何确定Flink反压的根源?How to identify the source of backpressure?
    如何成为 Apache 项目的 Committer
    Apache Kafka KIP 介绍
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4039925.html
Copyright © 2020-2023  润新知