首页> 中国专利> 线性相位IIR滤波器的一种实现方法

线性相位IIR滤波器的一种实现方法

摘要

本发明公开了线性相位IIR滤波器的一种实现方法,包括划分等长片段进行时序反转、零输入延长后进行反向滤波、再时序反转、前向滤波等步骤。本发明能够满足实时场合无限连续信号应用,并且在实现线性相位的同时大大的减少计算量,减小波形失真误差,保证很好的幅频特性。

著录项

  • 公开/公告号CN102082559A

    专利类型发明专利

  • 公开/公告日2011-06-01

    原文格式PDF

  • 申请/专利权人 广东宝莱特医用科技股份有限公司;

    申请/专利号CN201010569177.5

  • 发明设计人 刘伟;

    申请日2010-12-02

  • 分类号H03H17/02;

  • 代理机构广州嘉权专利商标事务所有限公司;

  • 代理人李柏林

  • 地址 519085 广东省珠海市金鼎科技创新海岸创新一路宝莱特科技园

  • 入库时间 2023-12-18 02:43:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-08-21

    授权

    授权

  • 2011-07-20

    实质审查的生效 IPC(主分类):H03H17/02 申请日:20101202

    实质审查的生效

  • 2011-06-01

    公开

    公开

说明书

技术领域

 本发明属于信号处理领域,特别是线性相位IIR滤波器的一种实现方法。

背景技术

为了避免各种干扰对信号的采集记录过程产生影响,一般需要设置滤波器对这些干扰进行滤除。在实际滤除过程中,往往希望不改变波形或减少波形失真,因而如果设计的滤波器有线性相位响应,则这会是它们很理想的特性,会使波形失真很少。在陷波器的设计过程亦是如此。通常FIR滤波器很容易满足线性相位特性,但它的计算量相当的大;用简单整系数方法设计的窄带工频陷波器也能很好满足线性相位特性,但它有较大延时,并且会要求采样率是陷波点的整数倍,这对不同频带陷波器的设计也是一个制约;而常规方法设计的IIR陷波器不能有较精确的线性相位特性,因为它的零点和极点不会镜像对称,如果要求极点关于零点镜像对称,则极点会在单位圆的外部,造成滤波器不稳定。

后来有方法上的改进,比如,通过全通滤波器来实现IIR滤波的相位均等,但它的计算量有时比传统FIR滤波器还有所增加;通过等波纹及最大平坦群延时方法设计IIR滤波器,但它没有理想的幅频特性;还有报道较多的传统的零相位IIR滤波器,是由时序反转及多路滤波组合而成,通过递归计算,保持了幅频特性以及线性相位,但是它主要是针对有限长序列反转,并且反向IIR滤波不能实时实现,限制了其在连续信号等实时性要求较高的场合的应用。

发明内容

为解决上述问题,本发明提供线性相位IIR滤波器的一种实现方法,本方法能够满足实时场合无限连续信号应用,并且在实现线性相位的同时大大的减少计算量,减小波形失真误差,保证很好的幅频特性。

本发明为解决其问题所采用的技术方案是:

线性相位IIR滤波器的一种实现方法,包括以下步骤:

(1)对无限长连续信号采样后得到x(n)={x(0),x(1),x(2),…},按照时序划分成长度为L的等长片段,对等长片段依次进行时序反转,反转后得到a(n)={x(L-1),…,x(0),x(2L-1),…,x(L),x(3L-1),…,x(2L),x(4L-1),…};

(2)在反转后得到的片段后面进行L个零输入的延长,对延长后所得的2L长度的新片段利用反向IIR滤波器进行反向滤波,反向滤波后输出片段结果为当前片段的前L个滤波输出响应加上后一个片段的后L个滤波输出响应,即yk=xkL+xk+1T,其中yk为反向滤波后输出的第k个片段,xkL为第k个片段的前L个滤波输出响应,xk+1T为第k+1个片段后一个片段的后L个滤波输出响应,反向滤波的片段输出序列为f(n)={y0,y1,y2,…};

(3)步骤(2)所得到的片段输出序列再按照步骤(1)的方法进行时序反转;

(4)将步骤(3)所得到的片段序列利用前向IIR滤波器进行前向滤波,得到输出结果。

其中,所述反向IIR滤波器和前向IIR滤波器的传递函数相同。进一步优选的是,所述反向IIR滤波器和前向IIR滤波器采用相同的2阶IIR  Butterworth滤波器。

步骤(1)中时序反转的方法包括以下步骤:

a.预设一长度为L的寄存器,寄存器的两端分别为第一输入输出端和第二输入输出端;

b. x(n)第一个片段的L个信号x(0),…,x(L)从第一输入输出端依次存入寄存器;

c.第一个片段的L个信号从第一输入输出端依次取出得到x(L-1),…,x(0),第二个片段的L个信号x(L),…,x(2L-1)从第二输入输出端依次存入寄存器;

d.第二个片段的L个信号从第二输入输出端依次取出得到x(2L-1),…,x(L),第三个片段的L个信号x(2L),…,x(3L-1)从第一输入输出端依次存入寄存器;

e.依照上述步骤持续循环。

本发明将信号划分为等长片段后再进行时序反转,这种反转的方法可以满足无线信号场合的应用,保证实时性要求;针对分片处理后所导致的截断误差,本发明在反转后得到的片段后面进行零输入的延长,使得相邻片段反向滤波后的输出的叠加作为当前片段的反向滤波输出,实现片段滤波截断误差的补偿修正,从而减小波形失真误差;另外,通过对传递函数进行分析可知,基于本发明的方法制作的滤波器具有良好的幅频特性和线性相位特性,本发明的方法与FIR滤波器的实现方法以及通过全通滤波器来实现IIR滤波的相位均等的方法相比计算量大大减少。

附图说明

下面结合附图和实施例对本发明作进一步说明:

图1为基于本发明的线性IIR滤波器的系统框图;

图2为划分等长片段进行时序反转的一种实施例的示意图;

图3为反向滤波输出响应的一种实施例的示意图;

图4为一种常规IIR陷波器和本发明的线性IIR滤波器幅频特性的对比图;

图5为本发明的线性IIR滤波器的相位特性图;

图6为常规IIR陷波器和本发明的线性IIR滤波器分别对50Hz信号滤波后的信号特性对比图;

图7为本发明的线性IIR滤波器对有工频干扰的心电信号进行陷波的效果。

具体实施方式

本发明的线性相位IIR滤波器的实现方法包括划分等长片段进行时序反转、零输入延长后进行反向滤波、再时序反转、前向滤波等步骤。下面分别详细描述。

步骤(1):划分等长片段进行时序反转。对无限长连续信号采样后得到x(n)={x(0),x(1),x(2),…},按照时序划分成长度为L的等长片段,对等长片段依次进行时序反转。该时序反转的方法一般采用以下步骤:

a.预设一长度为L的寄存器,寄存器的两端分别为第一输入输出端和第二输入输出端;b. x(n)第一个片段的L个信号x(0),…,x(L)从第一输入输出端依次存入寄存器;c.第一个片段的L个信号从第一输入输出端依次取出得到x(L-1),…,x(0),第二个片段的L个信号x(L),…,x(2L-1)从第二输入输出端依次存入寄存器;d.第二个片段的L个信号从第二输入输出端依次取出得到x(2L-1),…,x(L),第三个片段的L个信号x(2L),…,x(3L-1)从第一输入输出端依次存入寄存器;e.依照上述步骤持续循环。反转后得到a(n)={x(L-1),…,x(0),x(2L-1),…,x(L),x(3L-1),…,x(2L),x(4L-1),…}。利用上述反转方法进行时序反转的具体实施例参照图2,在此实施例中,寄存器的长度L=5,经反转后得到的序列为a(n)={x(4),x(3),x(2),x(1),x(0),x(9),x(8),x(7),x(6),x(5),x(14),…}。从上面可以看出,本发明的时序反转方法可以无限的连续不断的对信号片段进行时序反转,能够满足实时场合无限连续信号应用。

步骤(2):零输入延长后进行反向滤波。在反转后得到的片段后面进行L个零输入的延长,对延长后所得的2L长度的新片段利用反向IIR滤波器进行反向滤波。假设反向IIR滤波器的传递函数为H(z),反向滤波后的输出yk(n)=h(-n)*x(n),其中kL≤n≤(k+1)L-1,上式进行下面的形式变换:

yk(n)

=h(-n)*x(n)

=∑n+L m=nx(m)h(n-m)

=∑(k+1)L-1 m=nx(m)h(n-m)+∑n+L m=(k+1)Lx(m)h(n-m)

=h(-n)*xk(n)+h(-n)*xk+1(n)

从上式可以看出反向滤波后输出片段结果为当前片段的前L个滤波输出响应加上后一个片段的后L个滤波输出响应,即yk=xkL+xk+1T,其中yk为反向滤波后输出的第k个片段,xkL为第k个片段的前L个滤波输出响应,xk+1T为第k+1个片段后一个片段的后L个滤波输出响应。这种采用相邻片段滤波输出叠加的结果作用当前片段的输出的方法可以看作是对步骤(1)中对信号分段截断而产生的误差的补偿修正,能够很好地减少和消除周期误差。经过步骤(2)的零输入延长及反向滤波处理后的片段输出序列为f(n)={y0,y1,y2,…}。图3为一种反向滤波输出响应的实施例的示意图,本实施例中的每个片段的长度L=5,从图中可以看出,反向滤波输出的每个片段都是由两部分相加得到的。

步骤(3):将步骤(2)所得到的片段输出序列再按照步骤(1)的方法进行时序反转。片段输出序列f(n)={y0,y1,y2,…},按照时序划分成长度为L的等长片段,对等长片段依次进行时序反转,反转后得到b(n)={y4,y3,y2,y1,y0,y9,y8,y7,y6,y5,y14,…}。

步骤(4):将步骤(3)所得到的片段序列利用前向IIR滤波器进行前向滤波,得到输出结果。作为优选的实施方式,该前向IIR滤波器和反向IIR滤波器的传递函数相同,在一般的陷波器系统中,该前向IIR滤波器和反向IIR滤波器优选采用相同的2阶IIR  Butterworth滤波器。

参照图1,为基于本发明的线性IIR滤波器的系统框图。信号输入序列为x(n),输出序列为y(n),本发明的步骤(1)于图中的A部分进行,步骤(2)于图中的B部分进行,步骤(3)于图中的C部分进行,步骤(4)于图中的D部分进行。假设B部分中的反向IIR滤波器的传递函数为Ha(z),D部分中的前向IIR滤波器的传递函数为Hb(z),那么整个滤波器的系统传递函数Heq(z)=Hb(z)Ha(z-1)e-jw(L-1)/2,系统的传递函数的幅度|Heq(z)|= |Hb(z)|*|Ha(z-1)|,当反向IIR滤波器和前向IIR滤波器的传递函数为相同的H(z)时,系统传递函数Heq(z)=H(z)H(z-1)e-jw(L-1)/2,幅度|Heq(z)|= |H(z)|2,即系统滤波器的衰减深度为滤波器H(z)衰减深度的2倍。

下面以一去除50Hz工频干扰的系统陷波器实例来说明本发明的效果。其中用到的前向IIR滤波器和反向IIR滤波器都为2阶IIR Butterworth滤波器,此滤波器采用常规IIR陷波器设计方法设计,截止频率分别为48Hz和52Hz。参照图4-图6,其中图4为常规IIR陷波器和系统幅频特性的对比图,线10为常规IIR陷波器H(z)的幅频特性曲线,线20为系统的幅频特性曲线,从图中可以看出,系统对50Hz工频的衰减效果比常规IIR陷波器更好。图5为系统的相位特性图,从图中可以看出,系统的相位特性为线性。图6为常规IIR陷波器和系统滤波器分别对50Hz信号滤波后的信号特性对比图,图中幅度接近0.02的部分为利用常规IIR陷波器进行滤波后的信号,幅度大大小于0.005接近零点的部分为利用本系统进行滤波后的信号,从图中可以看出,本系统对50Hz工频干扰信号的滤除效果远远优于常规IIR陷波器。此外,实验进一步表明,本系统与常规IIR陷波器相比,其对方波进行滤波时引起的方波过冲震荡和波形失真误差会更小。

本发明可以应用于对心电信号的处理方面。利用本发明的滤波器对有工频干扰的心电信号进行陷波的效果可参照图7,其中图中的灰色线M为原始输出信号,黑色线N为经过滤波后的信号,从图中可知,经过滤波后原始的信号的工频纹波基本被消除,所输出的心电信号更干净更直观。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号