本发明涉及心电图扫描图像的数字化处理技术,尤其是针对心电图扫描图像的心电波形提取技术。
背景技术:
数字处理技术及人工智能的发展,使心电信号的识别、分析、归类有可能实现计算机自动处理。其中,针对心电波形数据的提取与量化是实现上述功能的前提。目前绝大多数心电图病历是以硬拷贝的形式存在心电图纸上。为了方便对心电数据进行自动分析与识别,需要将心电图纸进行扫描,存储为数字图像文件,然后从图像中提取心电数据,并转换为数字形式进行存储。如何能够有效且准确提取心电曲线,是实现心电信息的存储、归档和分析处理的前提。
由于扫描或者拍摄条件的约束,心电图图像会出现弯曲、倾斜、等畸变现象,因此首先要进行预处理,校正各类畸变,再完成心电波曲线信息的提取。研究者们已提出一些心电图波形提取方法,如王志祯提出了一种心电图曲线提取方法,他们采用高斯模糊去除噪声,然后使用otsu二值化技术分离背景网格和心电图波形,该方法虽然处理速度较快,但基于全局阈值的方法并不能很好区分网格点和心电图波形。史国洁使用一种改进k-means技术对心电图数据点进行分类,实验结果表明,使用该方法检测出的心电图波形图存在明显断裂情况。
技术实现要素:
本发明提出一种针对心电图扫描图像的心电波形快速提取方法,可以将心电图波形从背景中快速分离,为心电波形的数字化过程做好准备。技术方案如下:
一种心电图波形提取方法,包括下列步骤:
(1)构造强度图像
输入的扫描图像i,分别用ir、ig和ib表示红、绿、兰三通道图像,使用下式构造i对应的强度值图像v:
v=ir-|ig-ib|
(2)中值滤波
选用“十字形”中值滤波器对i进行滤波处理,用f表示增强结果图像。
(3)提取边缘图
使用sobel算子,检测f中的边缘点,用bw1表示得到二值图;使用半径为2的碟形结构元,对bw1进行膨胀运算,用bw2表示新的二值图,bw2称为边缘二值图;
(4)心电波形分割,方法如下
第一步:选取bw2中取值为1点在f中对应的灰度值,构建数据集da;
第二步:将da中数据按照从小到大顺序排列,选取位于中间位置点所对应的数值,记为th1;
第三步:使用th1做为阈值,将满足f中取值小于等于th1的点,判为心电图波形点,得到心电图波形二值图,用bw3表示;
(5)心电图波形提取,方法如下:
第一步:计算bw3中各连通区域的面积,即该连通区域内像素点的总数,用areai表示,其中下标i表示连通区域的序号;
第二步:将满足areai<th2的区域判为干扰区域滤除,处理结果用bw4表示;
第三步:使用形态学细化算法对bw4进行处理,处理结果用bw5表示;
第四步:从左至右扫描bw5中各心电波形,如果相邻两波形点之间存在断裂,则用线性插值方法填补数据,最终处理结果用bw表示。
附图说明
图1所提方法流程图
图2中值滤波模板示意图
图3所提方法处理结果示意图(a)扫描心电图(b)提取出的心电波形图
具体实施方式
下面结合附图和实施例对本发明进一步描述:
1、构造强度图像
输入的扫描图像(用i表示)通常是彩色的,由红(r)、绿(g)、蓝(b)三分量组成。分别用ir、ig和ib表示三通道图像。心电图扫描图像主要由黑色或深灰色的心电波形、红色的网格点,以及白色的背景点等三类区域构成。三类区域的灰度值存在一定差别,使用下式构造i对应的强度值图像,用v表示:
v=ir-|ig-ib|(1)
2、中值滤波
根据心电波形和背景网格点结构特点,选用“十字形”中值滤波器对i进行滤波处理,目的是在抑制噪声的同时,尽量保持图像中的边缘信息。所采用的“十字形”中值滤波器结构如图2所示。图中带有“·”标志的点为中心点,即当前处理点。用f表示增强结果图像。
3、提取边缘图
使用sobel算子,检测f中的边缘点,用bw1表示得到二值图。使用半径为2的碟形结构元,对bw1进行膨胀运算,用bw2表示新的二值图,bw2称为边缘二值图。
4、心电波形分割
使用下述方法,完成心电图波形的分割:
算法1:心电图波形分割算法
第一步:选取bw2中取值为1点在f中对应的灰度值,构建数据集da。
第二步:将da中数据按照从小到大顺序排列,选取位于中间位置点所对应的数值,记为th1。
第三步:使用th1做为阈值,将满足f中取值小于等于th1的点,判为心电图波形点,得到心电图波形二值图,用bw3表示。
5、心电图波形提取
bw3中可能存在各种干扰区域,采用上述步骤得到bw3中的心电波形较粗,不利于数据提取。借助连通域分析和形态学处理技术,采用以下算法,提取心电图波形:
算法2:心电图波形提取
第一步:计算bw3中各连通区域的面积,即该连通区域内像素点的总数,用areai表示,其中下标i表示连通区域的序号。
第二步:将满足areai<th2的区域判为干扰区域滤除,处理结果用bw4表示。
第三步:使用形态学细化算法对bw4进行处理,处理结果用bw5表示。
第四步:从左至右扫描bw5中各心电波形,如果相邻两波形点之间存在断裂,则用线性插值方法填补数据,最终处理结果用bw表示。
采用windows10系统下的matlab2015b作为实验仿真平台。选用50幅ecg扫描图像作为测试集。采用本专利提出的方法对测试图像进行处理,得到了良好的处理效果。对于1750×1275大小的图像,采用所提方法的处理速度平均为286ms,处理速度非常迅速。图3给出了部分处理结果图像,其中(a)为扫描图像,(b)为提取出的心电波形图。由实验结果可见,采用本专利所提方法,可以快速准确地提取心电图扫描图像中心电图波形。