一种无损自适应数据压缩和解压缩的系统技术方案

技术编号:15825245 阅读:82 留言:0更新日期:2017-07-15 06:39
本发明专利技术公开了一种无损自适应数据压缩和解压缩的系统,所述系统包括:指示数据值频率的频率表;识别频率表中一组数值的方法;根据压缩频率表中的频率,为所识别集合中的每个数据值生成基于频率的编码;从分组中检索数据值的方法;当检索到的数据值在所识别的集合中时,输出所生成的基于频率的编码用于检索数据值的方法,或者当检索到的数据值不在所识别的集合中时,以不基于频率编码的格式输出检索的数据值;将输出产生的编码和输出数据值存储为压缩数据值分组的方法;以及根据多个分组中一个分组数据值的频率,更新频率表的方法。

【技术实现步骤摘要】
一种无损自适应数据压缩和解压缩的系统
本专利技术数据压缩和解压缩
,尤其是涉及一种无损自适应数据压缩和解压缩的系统。
技术介绍
在很多环境下,数据的高速电子收集往往会存在很多问题。例如,当通过病人监护仪收集患者的临床数据时,大量的数据可在较短的时间间隔内完成收集。电脑系统则通过典型的方式将这些数据存储在计算机内存中等待后续处理。计算机内存是一种有限的资源,能够很快被所收集到的数据占满。为了减少所收集数据对计算机内存的需求,一些计算机系统会在向内存中存储数据之前对数据进行压缩。当后续处理需要所收集的数据时,电脑系统再将这些数据解压缩。因此,当不需要对数据进行处理时,数据储存所需要的内存空间能够实现最小化。目前有许多压缩和解压缩方法。不同的方法具有不同的优点。例如,一些方法能够大规模地减少数据储存规模。其他方法则能在压缩和解压缩过程中很好地保护原数据。这些方法又被称为无损压缩解压缩,因为在整个过程中数据没有发生损坏。其它方法能够很快地压缩或者解压缩数据。但是这些方法又存在着诸多不同的缺点。例如,一些方法不能大规模地减少数据储存规模。其它方法在压缩和解压缩过程中不能够保护原数据免于损失,因此解压缩后的数据只是原数据的近似值。另外,一些方法的压缩与解压缩速度过于缓慢。一些方法在压缩或者解压缩时,占用过多的计算机内存。因此,开发一种能够实时快速、显著减少数据大小,并且在压缩和解压缩过程中对计算机内存占用需求较小的无损数据压缩和解压缩方法,是十分必要的。
技术实现思路
本专利技术的目的在于提供一种无损自适应数据压缩和解压缩的系统。为实现上述目的,本专利技术采用以下内容:一种无损自适应数据压缩和解压缩的系统,所述系统包括:指示数据值频率的频率表;识别频率表中一组数值的方法;根据压缩频率表中的频率,为所识别集合中的每个数据值生成基于频率的编码;从分组中检索数据值的方法;当检索到的数据值在所识别的集合中时,输出所生成的基于频率的编码用于检索数据值的方法,或者当检索到的数据值不在所识别的集合中时,以不基于频率编码的格式输出检索的数据值;将输出产生的编码和输出数据值存储为压缩数据值分组的方法;以及根据多个分组中一个分组数据值的频率,更新频率表的方法。进一步地,还包括:用于当连续检索数据值相等时,输出检索数据值游程编码的方法,游程编码包括相等数据值数量的一个指示符和相等数据值。进一步地,还包括:用于当所识别的数据值集合包括一个数据值,该数据值等于游程编码中数据值数量的指示符,在游程编码中输出生成的基于频率编码的方法。进一步地,还包括:用于以不基于频率编码的格式输出指示符的方法当所识别的数据值集合不包括一个数据值,该数据值等于游程编码中数据值数量的指示符。进一步地,还包括:用于当游程编码中相等数据值在所述识别的组中时,输出所生成的基于频率的编码用于游程编码中相等数据值的方法。本专利技术具有以下优点:本专利技术的系统是通过以下方式来压缩数据的:首先计算相邻数据值之间的差异,识别确定出多个经常发生的差异性,并跟踪所识别出的差异的发生频率,同时对所识别出的差异性生成一次编码,该编码长度基于差异发生的频率;系统随后为除被识别出的差异以外的全部差异性生成二次编码,并在当计算差异不属于能够影响数据压缩的已识别差异时,使用一次编码进行差异编码识别,使用二次编码对每个计算差异性进行相应识别差异编码。优选地,系统根据被追踪到的发生频率再次生成一次编码。附图说明下面结合附图对本专利技术的具体实施方式作进一步详细的说明。图1是本专利技术系统压缩和解压缩技术原理的示意图。图2是压缩和解压缩例程数据流示意图。图3显示了iValue、Value以及Count的样本数据结构。图4显示了针对图3所示Count数组数据而生成的编码。图5显示了针对图3所示Count数组数据而生成的编码树。图6是压缩例程流程图。图7-1和图7-2是Adapt例程流程图。图8-1和图8-2是DivideCount例程流程图。图9是OutRun例程流程图。图10是Outvalue例程流程图。图11是解压缩例程流程图。图12是GetRun例程流程图。图13是解码例程流程图。具体实施方式为了更清楚地说明本专利技术,下面结合优选实施例对本专利技术做进一步的说明。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本专利技术的保护范围。实施例图1是本专利技术系统压缩和解压缩技术原理的示意图。系统通过病人监护仪110收集病患数据并在记录仪112上进行数据的记录。病人监护仪110能够收集多种病患信息,并能以每条通道每秒钟约448字节的传输速度,向中央处理单元111提供12条信息传输处理通道。有效整体数据传输速率约为5.376千字节/秒。当中央处理单元111从病人监护仪110处接收到字节数据信息时,其会将数据储存在原始数据随机存取存储器113中。当数据“包”存储在原始数据随机存取存储器113中之后,中央处理单元111发起存储在压缩软件随机存取存储器116中的压缩例程。在本专利技术的实施例中,数据包的大小由数据字节的多少预先确定。专业技术人员将会感受到本专利技术系统的这一好处,即数据包能够以其它方式进行定义,例如通过预先定义好的时间间隔来收集获取数据。压缩例程从原始数据随机存取存储器113中检索到数据包,进行压缩并将数据储存在压缩数据随机存取存储器114中。压缩数据随机存取存储器114可同时处理数个压缩数据包。当中央处理单元111决定记录读写某一数据包时,将会发起存储在解压缩程序随机访问内存RAM117中的解压缩例程。解压缩例程在压缩数据随机存取存储器114中检索到压缩数据,并进行解压缩,之后将其存储在解压数据随机存取存储器115中。中央处理单元111从解压数据随机存取存储器115中检索到已解压数据并将数据写入到记录器112中。本专利技术的压缩和解压缩技术能够用于其它系统实现中。例如,本专利技术的方法能够用于进行与医疗数据无关的其它数据压缩。此外,数据还可以在接收之时就进行压缩,无需先存储到原始数据随机存取存储器113中。同样地,压缩数据也可以直接在记录器112中读写,无需先存储到压缩数据随机存取存储器114中。被记录的数据可在完成处理之后再进行解压缩。在一个优选实施方式中,压缩系统将数据包中的数据(16位字)转化为后缀有一系列“增量”的初始值。每个增量是数据包中两个相邻字之间的差异。如果生成了增量“运算”的指令,系统会将“运算”转化为一个运算指示器,一个运算计数,以及一个增量运算值。“运算”是一系列的相同数值的相邻增量。对于病患数据而言,其大多数增量已被确定属于-16到+16的范围中,该范围也就是所谓的编码范围。专业技术人员将会感受到本专利技术系统的这一好处,也就是编码范围能够满足不同类型的待压缩数据的需求。本专利技术的方法能够用于多种编码范围。系统通过采用哈夫曼编码的改良型版本,也就是香农-范诺编码方法来对编码范围以及换码符号进行编译。系统从-16到+16,以及加上换码符号,共编译34个值。系统会跟踪这34个编译值在压缩过程中相互遇见的频率。在每个数据包压缩之后(或者在数据包解压缩之前),系统根据更新后的频率数据生成了一种新的香农-范诺编码。因此,编码能够自适应于压缩数据。“溢出”符是在编码范围之外(也就是17)的数值本文档来自技高网...
一种无损自适应数据压缩和解压缩的系统

【技术保护点】
一种无损自适应数据压缩和解压缩的系统,其特征在于,所述系统包括:指示数据值频率的频率表;识别频率表中一组数值的方法;根据压缩频率表中的频率,为所识别集合中的每个数据值生成基于频率的编码;从分组中检索数据值的方法;当检索到的数据值在所识别的集合中时,输出所生成的基于频率的编码用于检索数据值的方法,或者当检索到的数据值不在所识别的集合中时,以不基于频率编码的格式输出检索的数据值;将输出产生的编码和输出数据值存储为压缩数据值分组的方法;以及根据多个分组中一个分组数据值的频率,更新频率表的方法。

【技术特征摘要】
1.一种无损自适应数据压缩和解压缩的系统,其特征在于,所述系统包括:指示数据值频率的频率表;识别频率表中一组数值的方法;根据压缩频率表中的频率,为所识别集合中的每个数据值生成基于频率的编码;从分组中检索数据值的方法;当检索到的数据值在所识别的集合中时,输出所生成的基于频率的编码用于检索数据值的方法,或者当检索到的数据值不在所识别的集合中时,以不基于频率编码的格式输出检索的数据值;将输出产生的编码和输出数据值存储为压缩数据值分组的方法;以及根据多个分组中一个分组数据值的频率,更新频率表的方法。2.根据权利要求1所述的一种无损自适应数据压缩和解压缩的系统,其特征在于,还包括:用于当连续检索数据值相等时,输出检索数据值游程编码的方法,游程编...

【专利技术属性】
技术研发人员:张钧高庄徐步青
申请(专利权)人:武汉市瑞达源科技有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1