虚拟心电监护系统软件设计
2009-11-12韩守谦蒋伟林冯凌杰
韩守谦 蒋伟林 冯凌杰
摘要:在LabVIEW图形化的编程环境下,利用MIT-BIH生理信号数据库和LabVIEW的各种控件,实现对心电信号的采集读取、滤波、保存和回放。通过改进普通阈值法,利用“双阈值+校正阈值”的方法实现自动实时计算心率,对异常心电给予报警提示。同时,本系统设置了众多交互按钮,使得此心电监护系统功能多样、人机界面简洁友好、操作方便。
关键词:心电信号;虚拟仪器;虚拟心电监护仪;LabVIEW
前言
当今心脏病已成为威胁人类健康最严重的疾病之一,因此需要一种能够连续记录或者智能记录并分析心脏活动的心电监护系统,对患者进行实时监护。至今心电监护技术经过40年的临床实践和技术发展,其监护内容和仪器技术有了相当的发展。目前国内外心电监护的发展呈现出模块化设计、长时数据保存、低功耗小型化、网络信息化趋势。理论和技术的不断发展也为心电监护的进一步研究创造了条件。
LabVIEW是一种基于图形编程语言-G语言的可视化开发平台,多被应用于仪器控制、数据采集、数据分析等领域。鉴于实际心电监护仪难以普及和虚拟仪器的强大优势,我们采用LabVIEW的开发环境、设计了虚拟心电监护仪系统,实现了对心电信号进行采集读取、滤波、保存和回放,自动计算心率并对异常心电给予报警。此心电监护仪可以实现长时间的数据保存,而且操作界面简洁友好,便于掌握。
心电监护系统
此心电监护系统采用模块化设计,包括读取模块、滤波模块、保存和回放模块、心率计算和异常报警模块,各模块间的关系如图1所示。我们采用的数据取自心电数据库、不需滤波,因此略去滤波模块;其中“双阈值+校正阈值”的设计方法包含在心率计算与异常报警模块中,引入校正阈值的目的是为了“放大”心电的某些波段,针对性的检测某些心脏疾病。
系统子模块的实现
读取模块
获取心电信号有三种主要方式:数据采集卡现场采集:软件仿真心电信号;从数据库中读取。鉴于开发成本和真实性,我们采用最后一种方法。
我们采用著名的MIT-BIH数据库,其心电数据由.atr.dat.hea三种文件描述。我们采用LabVIEW脚本接口控件MATLAB Script Node,利用读取心电数据的MatLab程序rddata.m,读取心电信号,输出心电波形。
滤波模块
心电信号总是存在各种干扰,如工频干扰、基线飘移、肌电干扰等,噪声严重时可完全淹没ECG(心电)信
号,因此必须消除噪声,对心电信号进行滤波处理。
由于本设计采用的心电数据基本不需滤波处理,故这里的滤波是为校正阈值而设计的特殊处理模块。我们选用的是平滑滤波器,它能很好地滤除心电信号中混杂的高频噪声信号。
保存和回放模块
本模块是以“写入测量文件”和“读取测量文件”控件为核心,辅以“数据转换”控件,可以实现心电异常时自动保存以及有选择地回放,可以在8道(可增删)心电通道间任意切换,也可以选择保存的文件类型。
这里,“数据转换”控件的运用体现了LabVIEw数据流编程的思想。即每个控件都是对数据流进行操作,但作用的数据类型不同,其间通信必须先转换数据类型。
心率计算和心电异常报警模块
此模块是虚拟心电监护仪的核心,也是用户最关心的功能模块。目前ECG自动检测技术的研究主要集中在QRS波,P波和T波检测,ST段检测等方面,QRS波检测是ECG检测中的首要问题。
QRs波群检测方法有阈值法、面积法、幅值法、神经网络法、模式匹配法等。面积法和幅值法易受到噪声干扰。后几种方法较为复杂,运算量大且计算速度较慢,不适用于实时处理系统的要求。本系统采用的是改进的阈值法,可以概括为“双阈值+校正阈值”。心电异常报警就是根据双阈值和校正阈值的检测数据,利用布尔运算判断分析,结果送前面板显示。
此方法的设计原理和思想与普通阈值法相似,即以检测QRs波波峰的个数作为计算心率的依据,不同的是,此法采用双阈值,利用“波峰峰值检测”控件,设置两个不同的波峰检测阈值,一个阈值较大,用于检测R波:一个阈值较小,用于检测过强的T波和R波(本系统的检测阈值可以在前面板中设置),得到两个检测心率,然后利用比较、布尔运算,分析心电信号的异常情况并适时报警。针对心电的某些特征信号、这里设计了校正阈值算法,用于特定心电异常的检测(如高频噪声干扰,可以选用平滑滤波器,设置合适阈值,校正检测心率)。
此算法优点是计算量小,实时性好,便于在线分析;开放性强,可以扩展检测阈值数量,提高分析的可信度;可以根据需要设置校正阈值。此法缺点是手动设定阈值,可以添加自学习模块加以改进,利用自学习算法可实现。
“双阈值”法可以解决普通阈值法中存在的幅度大的T波误检或低压的QRS波被漏检情况,而“校正阈值”能够解决噪声干扰造成的心率误检等(取决于校正算法)。总之,与普通阈值法相比,该算法极大地提高了系统的抗噪能力,并减低了误判率。当然,可以根据需要,增加阈值检测数目、以及采用其它校正算法,使其不仅仅局限于校正噪声干扰造成的心率误检。
该心电监护系统的前面板和程序框图分别见图2和图3。
结语
本文阐述了基于LabVIEW的虚拟心电监护系统的设计,该系统用户界面友好、使用方便,充分发挥了LabVIEW的优势;本心电监护仪实现了心电信号读取、滤波、保存和回放,并且可以自动保存异常数据,实时报警和简易的心电分析。