IIR零相移滤波器法去除心电信号中的基线漂移

IIR零相移滤波器法去除心电信号中的基线漂移

一.实验目的:

在心电信号的采集过程中,会引入各种干扰噪声,如基线漂移。为了得到不失真的心电信号,在诊断分析前要对信号进行预处理---数字滤波。

心电信号的能谱范围集中在180Hz之间,基线漂移的频率一般是00.8Hz之间。故认为基线漂移是一个缓慢变化的超低频信号。所以,对基线漂移的剔除,可以认为是要去除心电信号中的低频信号,但又要不影响有价值的信号,包括幅度和相位等。心电信号的滤波一般要求线性相位。

IIR滤波器是非线性相位的,但可以通过逆滤波实现线性相位。

 

二.实验设备

PC 兼容机一台,操作系统为Windows2000(Windows98WindowsXP),安装Code Composer Studio 3.3 软件。

 

三.实验原理

零相位IIR数字滤波的流程图:

若图片无法显示请联系QQ3249114,本论文免费,转发请注明源于www.751com.cn 

先将输入序列按顺序滤波(forward filter),然后将所得结果逆转后反向通过滤波器(reverse filter),再将所得结果逆转后输出(reverse output),即得精确零相位失真的输出序列。其时域表达式如下:

                      (1)

                    (2)

                     (3)

                    (4)

零相位滤波的频率描述即式(1~4)的相应频率响应:

                 (5)

                (6)

                  (7)

                 (8)

由(5~8)即可得:

               (9)

从式(9)可见,输出 之间不存在附加相位。如果将所用的滤波器 连同上述方法看作组成某一系统的构件与逻辑,那么这一系统的频率响应是:

                      10

不管 具有多么奇怪的相频特性,都可以实现具有式(10)所描述的频率特性的系统——零相位数字滤波器。

因为零相位数字滤波器必须将信号序列作“时间上反转”处理,因此从物理上这种方法无法实现,这种构造零相位数字滤波器的思想无法应用于靠硬件实现的滤波器设计,不过可以通过软件来实现。

 

四.实验数据说明

心电信号来自MIT-BIH数据库,数据采样频率为360Hz,如下图所示,实验中为文本文件baseline.txt;滤波器的设计可以用matlab 中的fdatool实现。

注意:在CCS中读数据需要在文本文件中加头:1651 2 0 1

 

五.实验步骤

1)先用matlab 仿真实现能去除基线的IIR零相移滤波器,观察滤波功能,保存滤波系数;

1. matlab中滤波器的设计

对心电信号,我们如下给出指标:

通带: ,幅度失真约为1%

阻带: ,衰减大于40dB

相对应的数字滤波器 的指标:

通带截止频率: =0.012217rad

通带纹波: =0.005

阻带截止频率: =0.005236rad

阻带最小衰减:

调用matlab中的ellip函数设计椭圆滤波器的程序清单如下: 

clear all;

fs=360;

Wp=1.4/fs;     %通带截止频率

Ws=0.6/fs;     %阻带截止频率

devel=0.005;    %通带纹波

Rp=20*log10((1+devel)/(1-devel));   %通带纹波系数 

Rs=20;                          %阻带衰减

[N Wn]=ellipord(Wp,Ws,Rp,Rs);     %求椭圆滤波器的阶次

[b a]=ellip(N,Rp,Rs,Wn,'high');       %求椭圆滤波器的系数

[hw,w]=freqz(b,a);     

subplot(2,1,1);   plot(w/pi,20*log10(abs(hw)));     grid;   axis([0 1 -80 5]);

xlabel('w/\pi');    ylabel('幅度(dB))');

subplot(2,1,2);    plot(w/pi,angle(hw));            grid;   axis([0 1 -1 4]);  

xlabel('w/\pi');    ylabel('相位(rad))') ;

 

运行上面的程序,得到所设计的滤波器的系数如下:

N=3

Rp= 0.08686

Rs= 20

Wn= 0.0038889

Wp= 0.0038889

Ws= 0.0016667

a= 1   -2.9846    2.9693 -0.98474

b= 0.99234    -2.977 2.977  -0.99234

devel= 0.005

fs= 80

[1] [2] [3] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有