一种多数列——局部数字特征定位压缩/解压缩方法

文档序号:7506947阅读:303来源:国知局
专利名称:一种多数列——局部数字特征定位压缩/解压缩方法
技术领域
本发明涉及一种压缩/解压缩算法,具体的说是一种多数列——局部数字特征定位压缩/解压缩方法。
背景技术
严格意义上的数据压缩起源于人们对概率的认识。当我们对文字信息进行编码时,如果为出现概率较高的字母赋予较短的编码,为出现概率较低的字母赋予较长的编码,总的编码长度就能缩短不少。所以,要压缩一条信息,首先要分析清楚信息中每个符号出现的概率。不同的压缩程序通过不同的方法确定符号的出现概率,对符号的概率计算得越准确,也就越容易得到好的压缩效果。在压缩程序中,用来处理输入信息,计算符号的概率并决定输出哪个或哪些代码的模块叫做模型。
真正的压缩程序中使用的大多是一种叫“自适应模型”的东西。自适应模型可以说是一台具有学习功能的自动机。他在信息被输入之前对信息内容一无所知并假定每个字符的出现概率均等,随着字符不断被输入和编码,他统计并纪录已经出现过的字符的概率并将这些概率应用于对后续字符的编码。也就是说,自适应模型在压缩开始时压缩效果并不理想,但随着压缩的进行,他会越来越接近字符概率的准确值,并达到理想的压缩效果。自适应模型还可以适应输入信息中字符分布的突然变化,可以适应不同的文件中的字符分布而不需要保存概率表。
上面提到的模型可以统称为“统计模型”,因为他们都是基于对每个字符出现次数的统计得到字符概率的。另一大类模型叫做“字典模型”。实际上,当我们在生活中提到“工行”这个词的时候,我们都知道其意思是指“中国工商银行”,类似的例子还有不少,但共同的前提是我们心中都有一本约定俗成的缩写字典。字典模型也是如此,他并不直接计算字符出现的概率,而是使用一本字典,随着输入信息的读入,模型找出输入信息在字典中匹配的最长的字符串,然后输出该字符串在字典中的索引信息。匹配越长,压缩效果越好。事实上,字典模型本质上仍然是基于对字符概率的计算的,只不过,字典模型使用整个字符串的匹配代替了对某一字符重复次数的统计。
所以,从本质上来说,数据压缩的目的就是要消除信息中的冗余。目前的通用的压缩程序都是在这种指导思想下制作的。但是由于各种数据的特征不尽相同、压缩程序不可能一一对其进行优化,所以对于某种数据来说,一般都会使用专用的压缩工具进行压缩才会取得较好的压缩效果。

发明内容
本发明的目的是提供一种可以对所有类型的数据进行压缩、解压缩的方法。
本发明的基本思想是由于任何类型的数据储存时的表现形式只是一连串的数字,当这一连串的数字被视为一个整数时,这一连串的数字在数轴上如同人的指纹一样,具有唯一性,因此将这一连串的数字的特征寻找出来时,即可将其用它的特征表示出来。在本发明中,将上述一连串的数字视为一个正整数时,该正整数在数轴上表现为一个点,使用本发明描述的方法寻找该正整数的特征并进行描述,就可以以极小的信息量将其表示出来,如此就可以实现对数据的压缩。
本发明涉及的运算参数解释如下压缩目标压缩目标储存时的表现形式为一连串的数字,本发明将这一连串数字视为一个正整数,称之为T。
定位数列在单一数轴上,对压缩目标进行加、减运算的N(N为正整数)条数列,这些数列的首数为T或0。定位数列的类型为目前已知的任何数列。
局部数字特征是指将T的特定位置上的数字或字符视为T的特征,并将该特定位置上的数字或字符称之为局部数字信息S,局部数字信息S的位置称之为局部数字位置信息R;两者统称局部数字特征。
重合点定位数列对T进行加、减运算后的结果在数轴上表现为若干个点,某一点如果同时属于上述N条定位数列,则该点为重合点。
有效点重合点上的数字的特征如果符合局部数字特征,则该重合点称之为有效点。
有效重和次数Y记录位于有效点出现的次数,有效点每出现一次,Y+1,Y的起始量为1。根据本发明的运算流程,T本身满足有效点的条件,因此Y的起始量为1。
本发明的压缩流程如下将压缩目标视作一个正整数T,使用N个定位数列分别与T进行加或减运算,运算结果在数轴上形成若干个点,这些点中的某一点如果同时是上述N条数列分别与T进行加或减运算的结果,则该点为重合点。使用局部数字特征对位于重合点上的数字的特定位数上的数字或字符进行有效点甄选,如果该重合点为有效点,则有效重和次数Y+1;所述N个定位数列分别与T进行加或减运算的运算结果小于0时,则结束该定位数列与T的加或减运算,并记录该运算结果的前一个运算结果,将其作为定位数列与T进行加或减运算的最后结果;当所述N条定位数列与T的加或减运算的结果都小于0时,停止加或减运算;
当所有的重合点都经过有效点甄选后,压缩完成,记录Y值、定位数列、局部数字特征、N条定位数列与T进行加或减运算最后的运算结果;解压缩时,对压缩过程进行完整逆运算,即可完成解压。
使用本发明可以产生如下有益效果1.由于本发明只是使用了特定的方法将数据表现出来,不涉及对数据本身的特征进行概率计算,因此不存在目前已有压缩方法的弊端。所以本发明可以对任何类型的数据进行压缩。
2.本发明不对压缩目标进行任何权重分析,因此压缩进行的压缩是无损压缩。
下面结合附图和具体实施方式
对本发明作进一步详细的说明。


图1是本发明的概念示意图;本图中,T表示数轴中所有从0到T的所有数字,而不是T本身代表的正整数。
图2是本发明的数轴示意图;图3是本发明的压缩流程图。
具体实施例 本实施例中,定位数列使用两条等差数列A和B,A的公差为d1,B的公差为的d2,A1=B1=0,d1>0,d2>0,d2=d1+1,An=A1-(n-1)*d1,BM=B1-(m-1)*d2;局部数据特征中的局部数字位置信息R为T的第1、2位和尾数的第1、2位,局部数字信息S则为位于T的首2位和末尾2位的数字。
实施例中的名词解释如下运算的最后结果T对定位数列A和B分别进行减运算的运算结果小于0时,则结束T对该定位数列的减运算,并记录该运算结果的前一个运算结果,将其作为T对该定位数列进行减运算的最后结果。
图1为本发明的概念示意图。由于任何类型的数据储存时的表现形式只是一连串的数字,本发明将该数字视为一个正整数T时,T表现在数轴上只是一个点,本发明使用两个定位数列A和B对T进行叠减,然后对叠减结果中的重合点使用局部数据特征进行甄选,选取出的有效点的个数Y作为压缩参数。
图2为本发明叠减结果的数轴示意图。数轴A和数轴B上的点为定位数列A和B对T进行叠减后生成的数字在数轴上的表示,其中有效点点为使用局部数字特征对重合点进行甄选后产生。
图3为本发明进行压缩时的流程示意图1.将压缩目标视为正整数T;2.T-An;T-Bm;T对定位数列A和B分别进行减运算,m和n独立运算。
3.判断(T-An)-(T-Bm)的结果,如果小于0,则进入步骤4.1;如果大于0,则进入步骤4.2;如果等于0,则进入步骤4.3。
4.1 n+0;m+1,进入步骤5.1;4.2 n+1;m+0;进入步骤5.2;4.3进行有效点甄选——使用局部数字特征判断重合点是否为有效点,如果是则Y+1,如果不是则Y+0。所谓有效点甄选即为对重合点上的数字使用局部数字位置信息R定位,将定位后的数字与局部数字信息S进行比较,如果相同,即该重合点为有效点。判断完成后进入步骤5.3。
5.1判断T-An是否大于0,如果是,则进入步骤2,如果不是,则进入步骤6.1;5.2判断T-Bm是否大于0,如果是,则进入步骤2,如果不是,则进入步骤6.2;5.3 n+1;m+1;进入步骤2。
6.1 T对数列A的减运算结束,记录减运算的最后结果;6.2 T对数列B的减运算结束,记录减运算的最后结果;当T对定位数列A和B的减运算全部结束时,压缩结束,记录压缩参数Y、d1、d2、T-An的最后结果、T-Bm的最后结果以及局部数字特征。上述压缩参数可以完整的表示T,如此占用的存储空间就可以缩减到很小的量级,由此达到了压缩数据的目的。
在对经本发明压缩的数据进行解压缩时,使用上述记录的压缩参数对解压目标进行压缩的完整逆过程,即可将数据解压。
作为本发明的进一步补充,为了使本发明的压缩结果更加准确,本发明使用了最后结果校验,校验方法如下T整除d1的余数如果等于T对定位数列A进行减运算的最后结果,则T-An的运算正确;T整除d2的余数如果等于T对定位数列B进行减运算的最后结果,则T-Bm的运算正确。
权利要求
1.一种多数列-局部数字特征定位的压缩与解压缩方法,其特征在于将压缩目标视作一个正整数T,使用N个定位数列分别与T进行加或减运算,运算结果在数轴上形成若干个点,这些点中的某一点如果同时属于上述N条数列分别对T进行加或减运算的结果,则该点为重合点,使用局部数字特征对位于重合点上的数字的特定位数上的数字或字符进行有效点甄选,如果该重合点为有效点,则有效重和次数Y+1;所述N个定位数列分别与T进行加或减运算的运算结果小于0时,则结束该定位数列与T的加或减运算,并记录该运算结果的前一个运算结果,将其作为定位数列与T进行加或减运算的最后结果;当所述N条定位数列与T的加或减运算的结果都小于0时,停止加或减运算;当所有的重合点都经过有效点甄选后,压缩完成,记录Y值、定位数列、局部数字特征、所有N条定位数列与T进行加或减运算的最后结果;解压缩过程是压缩过程的完整逆过程。
2.根据权利要求1所述的一种多数列-局部数字特征定位的压缩与解压缩方法,其特征在于所述定位数列的起始数字可以是0,也可以是T。
3.根据权利要求1或2所述的一种多数列-局部数字特征定位的压缩与解压缩方法,其特征在于所述N为正整数。
全文摘要
本发明提供了一种多数列—局部数字特征定位的压缩与解压缩方法。本方法通过分析、记录数据的特征来记录数据,减小了储存数据的空间,从而达到压缩数据的目的。由于本发明只是使用了特定的方法将数据表现出来,不涉及对数据本身的特征进行概率计算,因此不存在目前已有压缩方法的弊端。所以本发明可以对任何类型的数据进行压缩。而且本发明不对压缩目标进行任何权重分析,因此压缩进行的压缩是无损压缩。
文档编号H03M7/30GK1728561SQ20041007115
公开日2006年2月1日 申请日期2004年7月30日 优先权日2004年7月30日
发明者郭鹏 申请人:郭鹏
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1