一种滤波系统的过滤方法技术方案

技术编号:11363905 阅读:84 留言:0更新日期:2015-04-29 14:17
本发明专利技术公开了一种滤波系统的过滤方法,所述滤波系统包括依次连接的一进多出的LIFO队列、第一个IIR滤波器、一进一出的LIFO队列和第二个IIR滤波器,所述过滤方法首先根据实际应用获取IIR滤波器的系统函数H(z),并根据采用的精度确定系统函数H(z)所需要的等长片段长度L;之后,对于采样频率为fs的心电信号x(n),设置与心电信号x(n)对应的输入数组Div_x(n),将该数组划分为N_block段,每段长度为M,且M=L/2;之后,将每一段数据流通过滤波系统进行过滤。本发明专利技术在减少滤波器的个数同时减少滤波的延时。

【技术实现步骤摘要】
一种滤波系统的过滤方法
本专利技术涉及心电信号处理领域,特别是一种滤波系统的过滤方法。
技术介绍
在心电信号的采集过程中,不可避免地会混入各种噪声。工频干扰、高频等来自外界的干扰对心电信号的采集及进一步的准确分析诊断造成了不良的影响。因此,在实际采集、分析心电信号的过程中,要对这些干扰进行滤除处理。在实际滤除过程中,往往希望不改变波形或减少波形的失真,又由于心电信号对相位比较敏感,因而就要求设计的滤波器最好是拥有良好的线性相位响应。目前有很多种方法都可以滤除心电信号的基线漂移干扰和工频信号的干扰,主要的方式有:一、FIR滤波器,即有限脉冲响应滤波器。虽然FIR滤波器有良好的线性相位的特性,但一般要采用高阶数的FIR滤波器才能满足设计需求,因此FIR滤波器计算量大,滤波延时较长,在实际应用中对芯片要求高,不利于实际应用。二、采用小波变换来处理心电信号,但是其方法运算量大,而且重构信号时容易产生信号的失真。三、采用IIR滤波器,即无限脉冲响应滤波器。一般采用H(z^-1)H(z)的形式,使得整个滤波器算法的相位近似为0相位。由于其计算量小,对芯片要求不高,有利于实际的应用,且心电波形通过滤波器后失真度小,因此,是一种实用的技术。但其滤波效果与选取的信号片段长度有关,现有技术采用滤波延时为4倍的信号片段长度,对应使用滤波器的个数为3个,但其算法具有较长时间的延时,不利于实时信号处理,并不是一种最优的解决方案。
技术实现思路
为解决上述问题,本专利技术的目的在于提供一种滤波系统的过滤方法,在减少滤波器个数的同时,降低滤波的延迟。本专利技术解决其问题所采用的技术方案是:一种滤波系统的过滤方法,所述滤波系统包括依次连接的一进多出的LIFO队列、第一个IIR滤波器、一进一出的LIFO队列和第二个IIR滤波器,所述过滤方法包括:(1)根据实际应用获取两个IIR滤波器的系统函数H(z),并根据采用的精度确定系统函数H(z)所需要的等长片段长度L;(2)对于采样频率为fs的心电信号x(n),设置与心电信号x(n)对应的输入数组Div_x(n),将该数组划分为N_block段,每段长度为M,且M=L/2;(3)将每一段数据流通过滤波系统进行过滤。进一步,所述步骤(3)包括:(31)将每一段数据通过一进多出的LIFO队列进行处理;(32)将步骤(31)处理后的每一段数据通过第一个IIR滤波器进行滤波和延时叠加处理,使处理后的数据变为一进一出;(33)将步骤(32)处理后的每一段数据通过一进一出的LIFO队列进行处理;(34)将步骤(33)处理后的每一段数据通过第二个IIR滤波器进行过滤。进一步,所述一进多出的LIFO队列的缓存长度为M,且为1进3出,所述步骤(31)中循环将每一段数据通过一进多出的LIFO队列进行处理时,具体为:所述LIFO队列中的指针1指向缓存的头部,指针2指向缓存的尾部,进行1进3出的LIFO处理时,指针1先指向缓存的尾部,而指针2还未指向缓存的头部时,输出0直到指针2指向缓存的头部为止,此时指针1指向缓存的尾部,指针2指向缓存的头部,以同样的方式进行循环处理,即当指针1先指向缓存的头部,而指针2还未指向缓存的尾部时,则输出0直到指针2指向缓存的尾部为止,每输出3个数据点则写入1个数据点,所述步骤(31)对每一段数据进行处理,使每一段数据后面连接2个长为M的0数组。进一步,所述步骤(32)对每一段输出的长度为3M的3个滤波点进行过滤时,对应IIR滤波器每计算完3M个长度数据后,对应缓存清零并再次输入新的数据点,同时,对应IIR滤波器对滤波后的数据进行延时叠加处理,使得得3M个长度的数据变成M个长度的数据,将处理后的数据变为一进一出。进一步,所述步骤(32)中对应IIR滤波器求解系统响应时,所述系统响应包括零状态响应和零输入响应,对于N’_block数组的零状态响应:在第N’_block个数组输入前,对应的IIR滤波器的缓存已经清零,因此,N’_block数组输入到对应IIR滤波器所产生的响应即为N’_block数组产生的零状态响应;对于N’_block数组的零输入响应:所述N’_block数组当前时刻所产生的零输入响应来源具有两个,第一个是前一时刻即N-1’_block数组后的第1组0数组输入滤波系统所产生的响应,第二个是前二时刻即N-2’_block数组后的第2个0数组输入滤波系统所产生的响应;最终,N’_block数组输入对应IIR滤波器所产生的响应为:N’_block数组输入到对应IIR滤波器所产生的零状态响应加上N-1’_block数组后的第1个0数组输入到对应IIR滤波器所产生的零输入响应再加上N-2’_block数组后的第2个0数组输入到对应IIR滤波器所产生的零输入响应。本专利技术的有益效果是:本专利技术采用一种滤波系统的过滤方法,滤波算法其滤波延时为2倍的信号片段长度,滤波器的使用个数为2个,通过一个一进多出的LIFO(后进先出)进行时序反转,采用多进一出的方式来进行滤波求和,在减少滤波器的个数同时减少滤波的延时。附图说明下面结合附图和实例对本专利技术作进一步说明。图1是本专利技术所述滤波系统的结构连接示意图;图2是本专利技术所述将心电信号x(n)与对应输入数组Div_x(n)的关系示意图;图3是所述对应图2中数组Div_x(n)由第一个LIFO队列处理后的示意图;图4是数据通过一进多出的LIFO队列和第一个IIR滤波器的流程示意图;图5是数据通过一进一出的LIFO队列和第二个IIR滤波器处理后的示意图,图中T为滤波系统总延时;图6是图1中所述滤波系统的幅频特性图;图7是图1中所述滤波系统的相频特性图;图8是作为输入信号x(n)的标准心电信号图;图9是图8中的标准心电信号通过本专利技术所述方法滤波后的效果示意图;图10是采用滤波延时为4倍的信号片段长度、其使用滤波器的个数为3个时,将图8中的标准心电信号过滤后的效果示意图。具体实施方式本专利技术提供了一种滤波系统的过滤方法,参照图1所示,所述滤波系统包括依次连接的一进多出的LIFO队列、第一个IIR滤波器、一进一出的LIFO队列和第二个IIR滤波器。所述心电信号x(n)经一进多出的LIFO队列处理后生成数据b(n),b(n)经第一个IIR滤波器FILTER1进行过滤后输出d(n),之后,d(n)进入一进一出的LIFO队列处理后,由第二个IIR滤波器FILTER2进行过滤生成最终的信号y(n)。所述滤波系统的过滤方法包括:(1)根据实际应用获取IIR滤波器的系统函数H(z),并根据采用的精度确定系统函数H(z)所需要的等长片段长度L。其中,根据实际需要确定其性能指标求得IIR滤波器的系统函数H(z),再根据采用的精度确定系统函数所需要的等长片段长度L。L的选择与整个系统的3dB截止频率fc、滤波器参数的选择相关。H(z)与L的选取可以参考论文ScottR.PowellandPaulM.Chau《ATechniqueforRealizingLinearPhaseIIRFilters》IEEETRANSACTIONSONSIGNALPROCESSING.VOL.39.NO.II,NOVEMBER1991。(2)对于采样频率为fs的心电信号x(n),设置与心电信号x(n)对应的本文档来自技高网...
一种滤波系统的过滤方法

【技术保护点】
一种滤波系统的过滤方法,其特征在于,所述滤波系统包括依次连接的一进多出的LIFO队列、第一个IIR滤波器、一进一出的LIFO队列和第二个IIR滤波器,所述过滤方法包括:(1)根据实际应用获取两个IIR滤波器的系统函数H(z),并根据采用的精度确定系统函数H(z)所需要的等长片段长度L;(2)对于采样频率为fs的心电信号x(n),设置与心电信号x(n)对应的输入数组Div_x(n),将该数组划分为N_block段,每段长度为M,且M=L/2;(3)将每一段数据流通过滤波系统进行过滤。

【技术特征摘要】
1.一种滤波系统的过滤方法,其特征在于,所述滤波系统包括依次连接的一进多出的LIFO队列、第一个IIR滤波器、一进一出的LIFO队列和第二个IIR滤波器,所述过滤方法包括:(1)根据实际应用获取两个IIR滤波器的系统函数H(z),并根据采用的精度确定系统函数H(z)所需要的等长片段长度L;(2)对于采样频率为fs的心电信号x(n),设置与心电信号x(n)对应的输入数组Div_x(n),将该数组划分为N_block段,每段长度为M,且M=L/2;(3)将每一段数据流通过滤波系统进行过滤,其包括,(31)将每一段数据通过一进多出的LIFO队列进行处理,(32)将步骤(31)处理后的每一段数据通过第一个IIR滤波器进行滤波和延时叠加处理,使处理后的数据变为一进一出,(33)将步骤(32)处理后的每一段数据通过一进一出的LIFO队列进行处理,(34)将步骤(33)处理后的每一段数据通过第二个IIR滤波器进行过滤;其中所述一进多出的LIFO队列的缓存长度为M,且为1进3出,所述步骤(31)中将每一段数据通过一进多出的LIFO队列进行处理时,具体为:所述LIFO队列中的指针1指向缓存的头部,指针2指向缓存的尾部,进行1进3出的LIFO处理时,指针1先指向缓存的尾部,而指针2还未指向缓存的头部时,输出0直到指针2指向缓存的头部为止,此时指针1指向缓存的尾部,指针2指向缓存的头部,以同样的方式进行循环处理,即当指针1先指向缓存的头部,而指针2还未指向缓存的尾部时,则输出0直到指针2指向缓存的尾部为止,每输出3个数据点则写入...

【专利技术属性】
技术研发人员:闵苏勾大海
申请(专利权)人:广东宝莱特医用科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1