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

上传人:b****4 文档编号:1477305 上传时间:2022-10-22 格式:DOCX 页数:15 大小:1.05MB
下载 相关 举报
基于labview的心电信号分析解读.docx_第1页
第1页 / 共15页
基于labview的心电信号分析解读.docx_第2页
第2页 / 共15页
基于labview的心电信号分析解读.docx_第3页
第3页 / 共15页
基于labview的心电信号分析解读.docx_第4页
第4页 / 共15页
基于labview的心电信号分析解读.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

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

《基于labview的心电信号分析解读.docx》由会员分享,可在线阅读,更多相关《基于labview的心电信号分析解读.docx(15页珍藏版)》请在冰豆网上搜索。

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

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

信号与线性系统课程设计报告

课题名称:

基于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流程图:

 

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。

添加的幅值点采用一次线性插值。

对二维数据进行插值,相连幅值间数据的插值根据时间进行,运算公式如下:

,,,,

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

时数组依次排列,即得到了插值后等间隔的新数据。

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

一般正常人的心电信号频率在0.7~100HZ范围内,幅度为10μv(胎儿)~5mv(成人)。

人体心电信号微弱,信噪比小,因此,在采集心电信号时,易受到仪器、入体活动等因素的影响,而且所采集的心电信号常伴有干扰。

采集心电数据时,由于人的说话呼吸,常常会混有约为0.1Hz到0.25Hz频段的干扰。

对于这些低频干扰,可以让信号通过一个高频滤波器,低截止频率设置为0.25,来滤波低频信号;对于高频信号干扰,可以让信号再通过一个低频滤波器,其中截止频率设置为99Hz。

通过尝试比较几种滤波器的效果,我采用反切比雪夫滤波器进行滤波。

根据以上说明,利用labvIEW中的信号处理函数设计反切比雪夫滤波器,滤除数字信号中的干扰信号,来获取预想的信号。

4设计内容

4.1心电信号的读取

根据txt格式的数据文件特点,利用labvIEW提供的I/O文件函数,在本课题中,主要是围绕LabVIEW中的读取电子表格文件函数来设计心电信号的读取部分的VI,并利用XY图来对数据做图形化显示。

让心电数据文件中的第一列时间数据作为x轴,对应的MLII方式的幅值作为y轴,以此得到绘制的源心电波形。

此步骤主要是心电信号的字符串——数值转换部分比较复杂。

心电信号的读取VI图:

如图1所示:

 

4.2对原始心电信号线性插值

根据上文中提到的插值公式,以此为原理,设计labvIEW程序,对心电信号数据做线性插值处理。

插值完以后的数据应该是时间均匀的、以0.001秒为间隔的。

此步骤的实现主要是基于labvIEW中的数组操作函数(索引数组,数组子集等)来实现,插值方法的思路是:

第一步中读取的心电信号数据的时间数据和幅值数据分别存放在一个一维数组中。

然后利用For循环结构把所有数据依次读取进来。

判断时间数据数组中前后两个相邻的数据间隔是否为0.001s,如果是则判断下一对相邻两个数据;如果间隔大于0.001s则在一个CASE条件结构里面做插值处理。

对幅值数据同样做插值处理,时间数据和幅值数据一定是相互对应的。

线性插值相应的VI图,如图2所示:

 

 

4.3设计相应的低通高通滤波器及其谱分析

源心电信号里面是包含有噪声的,需要对数字心电信号做一定滤波处理。

由于心电信号是无限信号,只能用IIR滤波器。

LabVIEW提供的IIR滤波器类型有Butterworth、Chebyshev、InverseChebyshev、Elliptic和Bessel滤波器。

它们都有各自的特点,用途也不尽相同。

我采用Inversechebyshev滤波器。

由于时间间隔是0.001s,所以采样频率大于等于1000hz即可。

高通滤波器截止频率0.25hz,低通滤波器截止频率99hz。

滤波器和谱分析相应的VI图,如图3所示:

 

4.4选作部分:

4.4.1.三种滤波器设计

分别设计Butterworth、Chebyshev、InverseChebyshev三种滤波器,并对滤波后的信号分别做频谱分析,比较几种滤波器的差别(其中InverseChebyshev滤波器已在上一部分设计过,此处不再重复)。

设计原理图如图4:

 

4.4.2.设计50HZ工频陷波器

由于电子设备采集到的信号经常会混有电源线干扰。

电源线干扰是以50Hz为中心的窄带噪声,带宽小于1Hz。

设计相应滤波器滤除电源线干扰,并对处理后的信号做频谱分析。

原理图如图5:

 

 

4.5整体的程序框图及前面板

程序框图:

 

前面板:

 

5实验结果与分析

5.1读取心电信号文件的运行结果:

 

简要分析:

根据运行结果,很显然,所读取的原始的心电信号时间数组是不均匀的,原始的时间序列和幅值序列大小为3600;观察波形图可以发现,原始的心电信号中带有一定的噪声。

 

5.2线性插值的运行结果:

 

简要分析:

差值过程主要是利用For循环和移位寄存器,用两个For循环相嵌套结构,外层循环用来读取原始数组中的数据,内部循环用来对数据进行插值。

将依次读入数组中的数据。

从程序的运行结果可以看出,时间间隔等分成0.001s,幅值也相应成为期望值。

 

5.3反切比雪夫先通过低通,再通过高通滤波的运行结果:

 

简要分析:

由于心电信号中普遍存在直流分量的干扰,并且他对谱分析有一定的影响,所以,滤波过程首先都进行了直流分量的去除。

通过逐个尝试滤波器类型,发现反切比雪夫滤波器效果比较好,低通滤波器的阶数调节至5,截止频率设定为99Hz,高通滤波器阶数调节至2,截止频率设定在0.25Hz,此时滤波效果较好。

观察波形及频谱图可以发现,相对于滤波前的信号,此时的信号,毛刺有所减少,波形也略为平稳,并且基线漂移减少,得到了较好的滤波。

 

5.4选作部分1巴特沃斯与切比雪夫滤波器的运行结果:

 

简要分析:

该部分分别尝试使用了巴特沃斯和切比雪夫滤波器进行滤波,均选择带通形势,设定参数相同,采样频率为3000,高截止频率99Hz,低截止频率0.0001hz,通过调节比较,发现,此处设计中,两种滤波器对于阶数的改变,频谱变化不明显,基本选定阶数为5阶时,效果略为好些。

观察频谱,并与反切比雪夫滤波器滤波后的频谱相比较发现,效果不如切比雪夫好,验证了上一部分的选择是正确的。

5.5选作部分2的运行结果:

 

简要分析:

电源线干扰是以50Hz为中心的窄带噪声,带宽小于1Hz,采用反切比雪夫带阻滤波,采样频率设定为1000,高低截止频率分别为60.5Hz和59.5Hz,观察频谱图发现,信号得到了一定程度的滤波。

6总结(只对设计课题内容进行总结并给出结论)

本次课程设计对心电信号进行了读取、插值、去直流分量、铝箔、波形及频谱显示,根据频谱显示,该病例每分钟心跳大概66次,由于心电信号本身噪声很多,信噪比小,加之滤波效果并不是很明显,不能看出具体病态特征,但是通过尝试各种滤波器类型和滤波方式,可以发现用反切比雪夫滤波器进行先低通再高通滤波效果比较好。

 

参考文献

[1]高西全.数字信号处理(第三版).西安电子科技大学出版社,2008.8

[2]吴大正.信号与线性系统分析(第四版).高等教育出版社,2005.8

[3]零点工作室.LabVIEW8.20中文版编程及应用.电子工业出版社,2008.1

[4]黄进文.虚拟仪器心电信号自动分析系统设计:

现代虚拟测试分析系统设计方法研究,2009.02

[5]丁玉美.数字信号处理(第二版).西安电子科技大学出版社,2001

 

课程设计的收获、体会、意见、建议

经过几天的努力,终于把滤波器和设计报告完成,在这次课程设计中,通过上

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1