一种基于霍夫曼编码的改进心电数据压缩算法的制作方法

文档序号:18132863发布日期:2019-07-10 10:23阅读:311来源:国知局
一种基于霍夫曼编码的改进心电数据压缩算法的制作方法

本发明涉及计算机技术领域,具体涉及一种基于霍夫曼编码的改进心电数据压缩算法。



背景技术:

心电是心脏的无数心肌细胞电活动的综合反映,心电的产生与心肌细胞的除极和复极过程密不可分。心肌细胞在静息状态下,细胞膜外带有正电荷,细胞膜内带有同等数量的负电荷,此种分布状态称为极化状态,这种静息状态下细胞内外的电位差称为静息电位,其值保持相对的恒定。当心肌细胞一端的细胞膜受到一定程度的刺激(或阈刺激)时,对钾、钠、氯、钙等离子的通透性发生改变,引起膜内外的阴阳离子产生流动,使心肌细胞除极化和复极化,并在此过程中与尚处于静止状态的邻近细胞膜构成一对电偶,此变化过程可用置于体表的仪器检测出来。

心电数据是人类较早研究并应用于医学临床的生物电信号之一,它比其他生物电信号更易于检测,并具有一定的规律性。目前国际上最重要的,具有权威性的心电数据库有四个:美国麻省理工学院与bethisrael医院联合建立的mit-bih心电数据库;美国心脏学会的aha心律失常心电数据库;欧盟的cse心电数据库和欧盟st-t心电数据库。心电数据的压缩能够在不丢失有用信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率。



技术实现要素:

本发明的目的在于提供一种基于霍夫曼编码的改进心电数据压缩算法,能够在不丢失有用信息的前提下,缩减心电数据量以减少存储空间,提高其传输、存储和处理效率。

本发明解决上述技术问题的技术方案如下:一种基于霍夫曼编码的改进心电数据压缩算法,包括以下步骤:

s1:打开要进行压缩的心电数据文件,按照心电数据波段组成分类,获取p波、pr间期、qrs波群、j点、st段、t波、u波、qt间期不同波段的数据组成,保存到双向链表linksrc;

s2:遍历链表linksrc,统计各个元素出现的概率,以该元素的基本信息为节点,新建立成一个双向链表linkrate;

s3:以链表linkrate中的节点做为叶子节点,组成一颗霍夫曼树,树根为linkroot;

s4:将linkroot中的叶子节点复制并保存为一个数组code,记录叶子节点对应的霍夫曼编码;

s5:遍历linksrc,将其中的内容转换为数组code中对应的霍夫曼编码,保存到对应的压缩文件中;

s6:将霍夫曼树保存到文件中,该文件名对应于相应的源文件;

s7:利用上述方法的逆运算实现解码,解压并将压缩内容进行恢复。

进一步,所述s4具体包括:

s401:计算心电数据某一波段输出字符中各字符的出现概率;

s402:取出出现概率最低的输出字符,其中一个配以0码元,另外一个配以1码元;

s403:将s402中的两个字符概率相加,作为一个新的字符出现概率,与未配以码元的其他字符的出现概率重复s401、s402步骤,直到最后两个字符配以0和1码元;

s404:从最后一级开始,向前返回得到各个字符所对应的码元序列。

进一步,所述基本信息包括走纸速度、电压值、心率。

本发明的有益效果是:通过对心电数据进行分类压缩,有效的增加压缩比,在不损失有效信息的前体下,缩减数据量以减少存储空间,提高其传输、存储和处理效率。

附图说明

图1为基于霍夫曼编码的改进心电数据压缩算法的流程示意图;

图2为获取霍夫曼编码的流程示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似改进,因此本发明不受下面公开的具体实施例的限制。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。

如图1所示,一种基于霍夫曼编码的改进心电数据压缩算法,包括以下步骤:

步骤s1:打开要进行压缩的心电数据文件,按照心电数据波段组成分类,获取p波、pr间期、qrs波群、j点、st段、t波、u波、qt间期不同波段的数据组成,保存到双向链表linksrc;

步骤s2:遍历链表linksrc,统计各个元素出现的概率,以该元素的基本信息为节点,新建立成一个双向链表linkrate;

步骤s3:以链表linkrate中的节点做为叶子节点,组成一颗霍夫曼树,树根为linkroot;

步骤s4:将linkroot中的叶子节点复制并保存为一个数组code,记录叶子节点对应的霍夫曼编码;

步骤s5:遍历linksrc,将其中的内容转换为数组code中对应的霍夫曼编码,保存到对应的压缩文件中;

步骤s6:将霍夫曼树保存到文件中,该文件名对应于相应的源文件;

步骤s7:利用上述方法的逆运算实现解码,解压并将压缩内容进行恢复。

其中步骤s4具体包括:

步骤s401:计算心电数据某一波段输出字符中各字符的出现概率;

步骤s402:取出出现概率最低的输出字符,其中一个配以0码元,另外一个配以1码元;

步骤s403:将s402中的两个字符概率相加,作为一个新的字符出现概率,与未配以码元的其他字符的出现概率重复s401、s402步骤,直到最后两个字符配以0和1码元;

步骤s404:从最后一级开始,向前返回得到各个字符所对应的码元序列。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。



技术特征:

技术总结
本发明涉及一种基于霍夫曼编码的改进心电数据压缩算法,包括以下步骤:S1:打开要进行压缩的心电数据文件,按照心电数据波段组成分类,获取P波、PR间期、QRS波群、J点、ST段、T波、U波、QT间期不同波段的数据组成,保存到双向链表LinkSrc;S2:遍历链表LinkSrc,统计各个元素出现的概率,以该元素的基本信息为节点,新建立成一个双向链表LinkRate;S3:以链表LinkRate中的节点做为叶子节点,组成一颗霍夫曼树,树根为LinkRoot;S4:将LinkRoot中的叶子节点复制并保存为一个数组Code,记录叶子节点对应的霍夫曼编码。本发明通过对心电数据进行分类压缩,有效的增加压缩比,在不损失有效信息的前体下,缩减数据量以减少存储空间,提高其传输、存储和处理效率。

技术研发人员:刘焕礼
受保护的技术使用者:烟台正展信息技术有限公司
技术研发日:2017.12.29
技术公布日:2019.07.09
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1