基于labview的心电信号分析解读

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号与线性系统课程设计

报告

课题名称:基于LABVIEW的心电信号的分

班级:通信102班

姓名:杨成方

学号:102140

成绩:

指导教师:王宝珠

日期:2012.12.30

基于LABVIEW的心电信号的分析

摘要:

心电信号分析系统是读取心电信号文件,并对其做一定的数字信号处理,以及进行频谱分析等。

Labview是一种带有图形控制流结构的数据流模式,程序执行是由数据驱动,同时也是一种图形化的编程语言。本设计采用Labview综合运用其丰富的VI库来实现心电信号的读取、线性插值、滤波、谱分析。该课题利用VI库中索引数组、数组子集、字符串--数值转换、While循环、For循环、chebyshev滤波器等,得到了简单的读取、插值、滤波、谱分析等功能,对心电信号做简单的数字信号处理。

关键词:Labview,心电信号,VI库,谱分析

1课程设计的目的、意义

本课题主要研究基于Labview的数字心电信号初步分析及其各种滤波器的应用。通过完成本课题的设计,了解基于LabVIEW虚拟仪器的特点和使用方法,熟悉并掌握LabVIEW的使用及练习使用其不同的功能,了解人体心电信号的时域特征和频谱特征,通过对心电信号的滤波处理、频谱分析,进一步了解数字信号的分析方法,进一步加深对各种滤波器(巴特沃斯、切比雪夫、反切比雪夫)的理解。此外,通过本课题的设计,培养运用所学知识分析和解决实际问题的能力。

心电信号分析是一门比较实用的电子工程的专业课程。当今社会,心血管疾病是发病率和死亡率最高、对人类生命威胁最大的疾病。心电信号预处理就是对心电信号的时域特征、频域特征进行了解,以便以后对心电信号的自动识别起到一定的基础作用。另外,Labview具有强大的虚拟仪器功能和软件开发功能,运行速度快、兼容性和移植性好、方便易用,适合于课程设计短期内完成。

2 设计任务及技术指标

课题所用信号是美国麻省理工学院提供的MIT-BIH数据库(一个权威性的国际心电图检测标准库),近年来应用广泛,为我国的医学工程界所重视。MIT-BIH 数据库共有48个病例,每个病例数据长30min,总计约有116000多个心拍,包含有正常心拍和各种异常心拍,内容丰富完整。

为了读取简单方便,采用其txt格式的数据文件作为我们的源心电信号数据。利用labvIEW提供的文件I/O函数,读取txt数据文件中的信号,并且还原实际波形。

2.1设计任务

设计一个基于虚拟仪器的简单的心电信号分析系统,对原始心电信号做输入

后,对其做一定的数字信号处理,进行频谱分析,根据具体设计要求完成系统的程序编写及调试。

(1)对原始数字心电信号进行读取,由数字信号数据绘制出其时域波形。

(2)对数字信号数据做一次线性插值,使其成为均匀数字信号,以便后面的信号分析。

(3)根据心电信号的频域特征(自己查阅相关资料),设计相应的低通和带通滤波器。

(4)编程绘制实现信号处理前后的频谱,做频谱分析,得出相关结论。

(5)对系统进行综合测试,整理数据。

2.2技术指标:

一个带通滤波器低截止平率设置为0.0001,高截止频率设置为99来分别滤除低频干扰和高频干扰。

或者一个高频滤波器,低截止频率设置为0.25,来滤波低频信号;对于高

频信号干扰,可以让信号再通过一个低频滤波器,其中截止频率设置为99Hz。

2.3流程图:

开始

读取心电信号

用For循环线性插值

反切比雪夫低通、高通滤波

巴特沃斯带通滤波

切比雪夫带通滤波

波形、频谱显示

结束

3 设计方案论证

3.1 心电信号读取设计方案论证与选择

课题所用信号是美国麻省理工学院提供的MIT-BIH 数据库,为了读取简单方便,采用其txt 格式的数据文件作为我们的原心电信号数据。利用labVIEW 提供的文件I/O 函数,读取txt 数据文件中的信号,并且还原实际波形。此数据库的数据文件的前两行为解释说明文字,不是真正的信号数据,读取信号程序需要自动忽略前两行文字,只读取真正的数字信号数据。另外labvIEW 默认的从文本文件中读取的数据都是字符串,因此在使用心电信号数据前需要将其转换为数值才可以。第一列时间数据均为0:00.001这种格式,因此需要将字符串0:00.001先转化为字符串0.001,即去除字符串中冒号以前的部分,然后再将其转为数值。最后利用已经转为数值的分别代表心电信号时间和幅值的两个一维数组,图形化还原原始心电信号波形,图形化时可使用控件XY 图。

3.2 线性插值的设计方案论证与选择

由于原始心电信号数据不是通过等间隔采样得到的,也就是说原始的心电数据并不是均匀的,而用Matlab 中提供的数字滤波器处理数据时,要求数据是等间隔的。因此设计的系统首先应对原始心电信号做线性插值处理,使其变为等间隔的数字信号,否则直接处理后会出现偏差,根据心电信号的特点, 把时间分隔成0.001s 。添加的幅值点采用一次线性插值。对二维数据进行插值,相连幅值间数据的插值根据时间进行,运算公式如下:

1--=∆i i t t t ,001.0/t N ∆=,1--=∆i i A A A ,001.01+=-j j t t ,N A A A j j /1∆+=-

其中i t 是第i 个数据时间点,Ai 是与之对应的数据,N 是两数据之间需要的插值数,A ∆是需要插值的两点数据差,

,,,,,,,,1321321-==N j arraysize i 1111----==i j i j A A t t ,,

1=j i ,时数组j j A t ,依次排列,即得到了插值后等间隔的新数据。

3.3 滤波器的设计方案论证与选择

一般正常人的心电信号频率在0.7~100HZ 范围内,幅度为10μv(胎儿)~5mv(成人)。人体心电信号微弱,信噪比小,因此,在采集心电信号时,易受到仪器、入体活动等因素的影响,而且所采集的心电信号常伴有干扰。采集心电数据时,由于人的说话呼吸,常常会混有约为0.1Hz 到0.25Hz 频段的干扰。对于这些低频干扰,可以让信号通过一个高频滤波器,低截止频率设置为0.25,来滤波低频信号;对于高频信号干扰,可以让信号再通过一个低频滤波器,其中截止频率设置为99Hz 。通过尝试比较几种滤波器的效果,我采用反切比雪夫滤

相关文档
最新文档