动态心电数据自适应高效存储方法
【技术领域】
本发明涉及一种动态心电数据存储方法,属于生物医学工程中医学数据存储领域。
【背景技术】
动态心电图(ambulatory electrocardiograph,AECG)是指长时间连续记录的体表心电图,1961年由美国Norman J.Holter发明问世,迄今临床中仍广泛将其称为“Holter”。动态心电图采集的大量心电数据信息通过记录设备进行储存,通过回放分析***进行心电图形的浏览与分析,用于科学研究或新产品的开发。随着生活水平的提高,科学技术的发展,对心脏疾病的关注程度日益提高,家庭式的远程心电监护产品因可以实时上传心电数据供远程终端分析判断,并提供相应的救助服务而成为研究的一个焦点。能够高效的存储数据,减轻传输数据的压力,是目前研究的一个热点。从另一个角度来讲,心电波形短期时间具有相对稳定性的特点,但对某些心脏疾病而言,因疾病发展状况心电波形在一定时间内会有演变,能高效保存各个时期的心电数据是十分必要的。
【发明内容】
本发明基于心电波形的特点,提供一种动态心电数据自适应高效存储方法。
上述目的由以下技术方案实现:
一种动态心电数据自适应高效存储方法,包括如下步骤:
(1)采集一定长度的心电数据片段;
(2)对所述心电数据片段进行特征点的提取,特征点至少包括每个心动周期QRS波群中主波极大值点【PR(i),VR(i)】,PR(i)为位置,VR(i)为对应的电压幅值;定义每个心动周期数据长度为K秒,数据长度K取0.60S,且以QRS波群中主波极大值点PR(i)为基准,PR(i)之前分配0.20S,PR(i)之后分配0.40S;以每个主波极大值点为基准,根据定义的心动周期数据长度将心电数据片段进行划分;
(3)选择划分后的某一心动周期的心电数据作为第一模板,保存该第一模板的全部数据及模板代号,并存储第一模板之前的全部心电数据;
(4)判断预存储的心动周期的主波极大值点与其在先心动周期的主波极大值点的间隔是否小于K秒,是则进行(a),否则进行(b):(a)除去与其在先心动周期的重叠部分保存预存储心动周期的其他数据;(b)存储预存储心动周期前、其在先心动周期后的数据,并将预存储心动周期的数据与最接近的模板进行特征点吻合判断,如果特征点吻合则存储相应模板代号,如果不吻合则将该预存储心动周期的数据建立为新的模板,并给予新的模板代号;
(5)重复步骤(4);
其特征在于:所述特征点还包括每个心动周期的:P波极大值点【PP(i),VP(i)】,T波极大值点【PT(i),VT(i)】,QRS波群极小值点【PD(i),VD(i)】。
所述特征点的提取方法具体为:①获取第i个心动周期QRS波群中主波极大值点,位置记为PR(i),对应的电压幅值记为VR(i),②在主波极大值点PR(i)之前0.07S到0.20S数据范围内寻找电压幅值最大值点,位置记为PP(i),对应的电压幅值记为VP(i),③在主波极大值点PR(i)之后0.07S到0.40S数据范围内寻找电压幅值最大值点,位置记为PT(i),对应的电压幅值记为VT(i),④在PP(i)与PT(i)之间数据范围内,寻找幅值最小值点,位置记为PD(i),对应的电压幅值记为VD(i)。
所述将预存储心动周期的数据与最接近的模板进行特征点吻合判断的方法,具体为:首先,以预存储心动周期数据与最接近的模板的主波极大值点为基准,判断其它特征点位置是否吻合,是则判定初步吻合,否则判定与模板不吻合;与模板初步吻合后,判断四个特征点对应的幅值是否与模板特征点幅值相对一致,若一致,则判断本心动周期波形与模板吻合;若不一致,则判断与模板不吻合。
模板吻合判断前,对心动周期的四个特征点幅值进行矫正,矫正过程如下:
(1)求取第一模板QRS波群主波极大值点0.10S之前八个数据幅值的平均值,并求取第一模板QRS波群主波极大值点0.10S之后八个数据幅值的平均值,再求两者平均值mean;
(2)求取每个心动周期PR(i)0.10S之前相邻八个数据幅值的平均值,并求取每个心动周期PR(i)0.10S之后相邻八个数据幅值的平均值,再求两者平均值mean(i),以mean(i)与mean的差值作为漂移值,用每个心动周期四个特征点的幅值减去该心动周期对应的漂移值即为矫正后的特征点的幅值。
判断预存储心动周期的特征点是否与模板的特征点吻合,具体判断过程如下:
(1)判断预存储心动周期中除主波极大值点外的其他特征点位置与模板中相对应特征点位置之差的绝对值是否都小于相应的特定的阈值,即|(PP(i)-PP(模板))-(PR(i)-PR(模板))|<th1,|(PT(i)-PT(模板))-(PR(i)-PR(模板))|<th2,且|(PD(i)-PD(模板))-(PR(i)-PR(模板))|<th3,其中,th1、th2、th3为判断的阈值,是则判定此心动周期与模板初步吻合,否则判定此心动周期与模板不吻合;
(2)判定与模板初步吻合后,判断|(VP(i)-VP(模板))|*a+|(VT(i)-VT(模板))|*b+|(VD(i)-VD(模板))|*c+|(VR(i)-VR(模板))|是否小于某个特定的阈值th4,其中,a、b、c分别为加权系数,是则判断此心动周期与模板吻合,否则判断此心动周期与模板不吻合。
所述选择最接近的模板的判断方法是:以VR(i)、VT(i)和VD(i)的和值作为参考,哪一模板的该三个幅值和与预存储心动周期的该三个幅值和接近,则选取该模板作为最接近的模板。
本发明的有益效果在于:它可以根据心率以及心电波形特征信息自适应的选择数据存储方式,从而提供了一种在心电主波位置提取基础上的心电数据存储方案。具体地,当心率较大时(即预存储心动周期的主波极大值点与在先心动周期的主波极大值点的间隔小于定义的心动周期数据长度),划分的前、后心电波形可能会发生重叠,破坏心电波形的重复性,为了更好的恢复存储前的波形,选择全部存储数据;当预存储心动周期的主波极大值点与在先心动周期的主波极大值点的间隔不小于定义的心动周期数据长度时,根据心电波形情况建立相应的模板,相同的波形存储时用模板代号代替,这样大大减少了的数据的存储量,提高了数据的存储效率,并且保持了良好的波形可信度。本发明提供的方法还便于操作,而且压缩失真率较低。
【附图说明】
图1为包含若干心动周期的特定长度的心电数据片段的波形图;
图2为某心动周期四个特征点信息提取流程图;
图3为某个心动周期四个特征点信息提取结果的相应波形图;
图4为心电数据自适应高效存储流程图。
【具体实施方式】
下面结合附图对动态心电数据自适应高效存储方法的最佳实施例进行详细说明。
参见图1,首先采集包含若干心动周期的特定长度的心电数据片段,如果存在基线漂移影响,则要对心电数据片段进行截止频率为0.05Hz的数字高通滤波,滤除基线漂移的影响。当然,如果不存在基线漂移或已经通过硬件消除基线漂移,则该步骤可以省略。把心电数据片段依照心动周期进行划分,依经验值,每个心动周期定义数据长度为0.60s,且以各个QRS波群中主波极大值点PR(i)为基准,PR(i)之前分配0.20S,PR(i)之后分配0.40S。
参见图2,接下来对各个心动周期分别进行特征点的提取,以第i个心动周期为例,具体方法为:①提取第i个心动周期QRS波群中主波极大值点,位置记为PR(i),对应的电压幅值记为VR(i),②在主波极大值点PR(i)之前0.07S到0.20S数据范围内(0.13S内)寻找电压幅值最大值点,位置记为PP(i),对应的电压幅值记为VP(i),③在主波极大值点PR(i)之后0.07S到0.40S数据范围内(0.33S内)寻找电压幅值最大值点,位置记为PT(i),对应的电压幅值记为VT(i),④在PP(i)与PT(i)之间数据范围内,寻找幅值最小值点,位置记为PD(i),对应的电压幅值记为VD(i),提取的特征点如图3所示。由上可知,每个心动周期的特征点包括QRS波群中主波极大值点【PR(i),VR(i)】,P波极大值点【PP(i),VP(i)】,T波极大值点【PT(i),VT(i)】,QRS波群极小值点【PD(i),VD(i)】。
结合图1所示,保存第2个QRS波群主波极大值点PR(2)位置之前0.2s到之后0.4s的心电数据(即划分的第二个心动周期)作为第一模板,保存该第一模板的全部数据及模板代号,它包含有四个特征点对应的位置信息和幅值信息以及0.60S的心电幅值数据,用此0.60S的模板心电数据作为滑动窗口进行模板吻合判断(下文详述)。选择第二个心动周期作为模板的原因主要是第一个心动周期的心电数据可能不稳定,当然也可以选择其他的心动周期作为第一模板。此外,还存储第一模板之前的全部心电数据。
第一模板之后各心动周期的心电数据将根据心率以及心电波形特征信息自适应的选择数据存储方式,结合图4及图1说明如下:
首先,判断第三心动周期的主波极大值点PR(3)与第二心动周期的主波极大值点PR(2)的间隔是否小于0.60秒,如果小于0.60秒(即当前心率大于100次),说明按照划分的前后心电波形发生重叠,破坏心电波形的重复性,此时不进行模板吻合的判断,为了更好的恢复存储前的波形,除去与第二心动周期的重叠的部分保存第三心动周期的其他数据。如果第三心动周期的主波极大值点PR(3)与在第二动周期的主波极大值点PR(2)的间隔不小于0.60秒(即心率小于100次情况下),则进行模板吻合判断:将第一模板向后移动PR(3)-PR(2)个数据长度,即以第三心动周期与第一模板的主波极大值点为基准,由四个特征点对比判断第三心动周期的波形是否与第一模板吻合,如果特征点吻合则存储第一模板代号,存储第二心动周期后、第三心动周期前的数据,如果不吻合则将第三心动周期的数据建立为第二模板,以此类推,进行下一个心动周期数据的判断与存储,并按照此过程完成整个数据片段的存储。
如果已经存在两个以上模板时,预存储心动周期的判断及存储过程选择与之最接近的模板进行。在有多个心电模板的情况下,依据预存储心动周期的主波幅值VR、VT和VD进行模板的匹配选择,例如以VR、VT和VD的和值作为参考,哪一模板的该三个幅值和与预存储心动周期的该三个幅值和接近,则选取该模板作为最接近的模板,依照最匹配的模板进行是否吻合的判断。
以第三心动周期和第一模板为例,说明基于特征点来判断预存储的心动周期数据与最接近的模板是否吻合的具体方法:
首先,矫正第三心动周期的四个特征点幅值,减少基线漂移对波形带来的影响。如果不存在基线漂移影响则此步骤可省略。
其次,将第一模板向后移动PR(3)-PR(2)个数据长度,即以第三心动周期与第一模板的主波极大值点为基准,判断其它特征点位置是否吻合,如果吻合则判定第三心动周期与第一模板初步吻合,进行下一步判断;如果不吻合,则判定第三心动周期与第一模板不吻合。
然后,如果第三心动周期与第一模板初步吻合后,进而判断矫正后四个特征点对应的幅值是否与第一模板特征点幅值相对一致,若一致,则判断第三心动周期波形与第一模板吻合;若不一致,则判断第三心动周期波形与第一模板不吻合。
上述方法中,对心动周期波形四个特征点幅值矫正过程如下:
(1)求取第一模板中QRS波群主波的位置PR(2)0.10S之前八个数据幅值的平均值,并求取QRS波群主波的位置PR(2)0.10S之后八个数据幅值的平均值,再求两者平均值mean。
(2)求取每个心动周期PR(i)0.10S之前相邻八个数据幅值的平均值,并求取QRS波群主波的位置PR(i)0.10S之后相邻八个数据幅值的平均值,再求两者平均值mean(i),以mean(i)与mean的差值作为漂移值,用每个心动周期四个特征点的幅值减去该心动周期对应的漂移值即为矫正后的特征点的幅值。
值得说明的是,上述方法中判断预存储心动周期的特征点是否与模板的特征点吻合,并不是指预存储心动周期特征点的位置和幅值与模板的特征点完全相同,而是指预存储心动周期特征点位置和幅值与模板的特征点的差值小于设定即认为吻合,具体判断过程如下:
(1)以第一模板为例,判断预存储心动周期中四个特征点位置与第一模板中相对应特征点位置之差的绝对值都小于相应的特定的阈值,则判断与模板初步吻合。若|(PP(i)-PP(2))-(PR(i)-PR(2))|<th1,|(PT(i)-PT(2))-(PR(i)-PR(2))|<th2,且|(PD(i)-PD(2))-(PR(i)-PR(2))|<th3,其中,th1、th2、th3为判断的阈值,应根据采样时的误差状况取一个稍大于零的值,如th1取0.004S,th2取0.004S,th3取0.006S,则判定此心动周期与第一模板初步吻合。
(2)判定与模板初步吻合后,判断|(VP(i)-VD(2))|*a+|(VT(i)-VT(2))|*b+|(VD(i)-VD(2))|*c+|(VR(i)-VR(2))|是否小于某个特定的阈值th4(其中,a、b、c分别为加权系数,a、b、c的取值可以根据采集对象的生理特征、经验值或者有针对性的要求灵活确定,鉴于VT与VP幅值相对较大,因采样等因素不可避免会造成相邻两个心动周期特征值差异的存在,故对其设置相应较低的加权系数,以便客观地进行吻合判断。例如本实施例根据经验将其确定为a=1.5,b=1,c=1.5),是则判断此心动周期与模板吻合,否则判断此心动周期与模板不吻合。
在心动周期波形与模板是否吻合判断时,因采集时或其他一些客观因素,相邻两个主波幅值会有差异,而且在PP(i)与PT(i)之间最小幅值点位置也会有些差异,故在进行吻合判断时,相对降低其加权系数,以使其更符合实际情况,提高存储的可靠度。