数据压缩方法及装置、数据解压缩方法及装置制造方法及图纸

技术编号:8080602 阅读:162 留言:0更新日期:2012-12-14 00:04
本发明专利技术涉及一种数据压缩方法,包括,输入原始数据流,确定作为组成一个符号所需的N比特的大小,N≥1;将原始数据流分割成由每段N比特符号组成的连续符号流;区分压缩符号和非压缩符号,并根据设定的压缩格式进行压缩输出压缩数据流。本发明专利技术还涉及一种数据压缩装置、一种数据解压缩方法及装置。采用本发明专利技术的技术方案,能够高效的对数据进行压缩和解压缩,从而实现对原始数据流的有效处理。

【技术实现步骤摘要】
数据压缩方法及装置、数据解压缩方法及装置
本专利技术涉及数据处理领域,特别地,涉及数据压缩方法及装置、数据解压缩方法及装置。
技术介绍
数据压缩是指在不丢失信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率的一种技术方法。或按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间。数据压缩包括有损压缩和无损压缩。有损压缩是利用了人类对图像或声波中的某些频率成分不敏感的特性,允许压缩过程中损失一定的信息;虽然不能完全恢复原始数据,但是所损失的部分对理解原始图像的影响缩小,却换来了大得多的压缩比。有损压缩广泛应用于语音,图像和视频数据的压缩。无损压缩格式,是利用数据的统计冗余进行压缩,可完全恢复原始数据而不引起任何失真,但压缩率是受到数据统计冗余度的理论限制,一般为2∶1到5∶1,这类方法广泛用于文本数据,程序和特殊应用场合的图像数据(如指纹图像,医学图像等)的压缩。对于任何形式的通信来说,只有当信息的发送方和接受方都能够理解编码机制的时候压缩数据通信才能够工作。只有当接受方知道编码方法的时候他才能够理解压缩数据。一些压缩算法利用了这个特性,在压缩过程中对数据进行加密,例如利用密码加密,以保证只有得到授权的一方才能正确地得到数据,数据压缩能够实现是因为多数现实世界的数据都有统计冗余。如果允许一定程度的保真度损失,还可以实现进一步的压缩。例如,人们看图画或者电视画面的时候可能并不会注意到一些细节并不完善。同样,两个音频录音采样序列可能听起来一样,但实际上并不完全一样。有损压缩算法在带来微小差别的情况下使用较少的位数表示图像、视频或者音频,由于可以帮助减少如硬盘空间与连接带宽这样的昂贵资源的消耗,所以压缩非常重要,然而压缩需要消耗信息处理资源,这也可能是费用昂贵的。所以数据压缩机制的设计需要在压缩能力、失真度、所需计算资源以及其它需要考虑的不同因素之间进行折衷。目前缺少一种高效的数据压缩方法,从而实现对原始数据流有效压缩。
技术实现思路
本专利技术解决的技术问题在于提供了一种数据压缩方法和解压缩方法,还提供了一种数据压缩装置和解压缩装置。为解决上述问题,本专利技术提供了一种数据压缩方法,包括,输入原始数据流,确定作为组成一个符号所需的N比特的大小,N≥1;将原始数据流分割成由每段N比特符号组成的连续符号流;区分压缩符号和非压缩符号,并根据设定的压缩格式进行压缩输出压缩数据流。上述的方法,其中,所述确定作为组成一个符号所需的N比特的大小为原始数据流中连续的0和1比特出现最多的次数。上述的方法,其中,在将原始数据流分割成由每段N比特符号组成的连续符号流时,若连续符号组成的数据流的大小超过原始数据流时,用0比特进行填充。上述的方法,其中,所述区分压缩符号和非压缩符号具体为,将连续的0比特作为压缩符号0,连续的1比特作为压缩符号1,其余的非连续0、1符号作为非压缩符号。上述的方法,其中,所述设定的压缩格式为,首位为一个压缩标志,随后为压缩符号0的标志位信息,压缩符号1与非压缩符号的个数信息,压缩符号1的位置信息,压缩符号1的个数信息,压缩符号1的数值信息,而后依次为非压缩符号的位置信息与数值信息;或者首位为一个压缩标志,随后为压缩符号1的标志位信息,压缩符号0与非压缩符号的个数信息,压缩符号0的位置信息,压缩符号0的个数信息,压缩符号0的数值信息,随后依次为非压缩符号的位置信息与数值信息。进一步地,在根据设定的压缩格式进行压缩输出压缩数据流前,还包括,将非压缩符号的个数与设定的压缩门限数K进行比较,当非压缩符号的个数大于K时,则输出非压缩标志位,将输入的原始数据流依次输出;当非压缩符号的个数小于K时,则进行压缩。本专利技术还提供了一种数据解压缩方法,包括,接收压缩数据流,当遇到压缩标志时,准备解压缩;根据压缩格式对应的解压缩算法进行还原,输出原始数据流。上述的方法,其中,所述解压缩算法包括,根据压缩符号的标志位确定压缩符号为0,随后根据压缩符号1与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩数据流的其余位置写入确定的非压缩符号0;根据压缩数据流压缩符号1与非压缩符号的个数信息确定填充比特的数值信息,删除还原的原始数据流的相应位填充比特的信息;或者根据压缩符号的标志位确定压缩符号为1,随后根据解压缩符号0与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩的其余位置写入所述确定的非压缩符号1;根据压缩数据流压缩符号0与非压缩符号的个数信息确定填充比特的数值信息,删除还原的数据流的相应位填充比特的信息。本专利技术还提供了一种数据压缩装置,其特征在于,包括,输入模块,用于输入原始数据流,确定作为组成一个符号所需的N比特的大小,N≥1;分割模块,用于将原始数据流分割成由每段N比特符号组成的连续符号流;输出单元,区分压缩符号和非压缩符号,并根据设定的压缩格式进行压缩输出压缩数据流。上述的装置,其中,所述确定作为组成一个符号所需的N比特的大小为原始数据流中连续的0和1比特出现最多的次数;在将原始数据流分割成由每段N比特符号组成的连续符号流时,若连续符号组成的数据流的大小超过原始数据流时,用0比特进行填充;所述区分压缩符号和非压缩符号具体为,将连续的0比特作为压缩符号0,连续的1比特作为压缩符号1,其余的非连续0、1符号作为非压缩符号。上述的装置,其中,所述设定的压缩格式为,首位为一个压缩标志,随后为压缩符号0的标志位信息,压缩符号1与非压缩符号的个数信息,压缩符号1的位置信息,压缩符号1的个数信息,压缩符号1的数值信息,而后依次为非压缩符号的位置信息与数值信息;或者首位为一个压缩标志,随后为压缩符号1的标志位信息,压缩符号0与非压缩符号的个数信息,压缩符号0的位置信息,压缩符号0的个数信息,压缩符号0的数值信息,随后依次为非压缩符号的位置信息与数值信息。进一步地,所述装置还包括,比较模块,用于在根据设定的压缩格式进行压缩输出压缩数据流前,将非压缩符号的个数与设定的压缩门限数K进行比较,当非压缩符号的个数大于K时,则输出非压缩标志位,将输入的原始数据流依次输出;当非压缩符号的个数小于K时,则进行压缩。本专利技术还提供了一种数据解压缩装置,包括,接收模块,用于接收压缩数据流,在遇到压缩标志时,准备解压缩;解压缩模块,用于根据所述压缩格式对应的解压缩算法进行还原,输出原始数据流。上述的装置,其中,所述解压缩算法包括,根据压缩符号的标志位确定压缩符号为0,随后根据压缩符号1与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩数据流的其余位置写入确定的非压缩符号0;根据压缩数据流压缩符号1与非压缩符号的个数信息确定填充比特的数值信息,删除还原的原始数据流的相应位填充比特的信息;或者根据压缩符号的标志位确定压缩符号为1,随后根据解压缩符号0与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩本文档来自技高网
...

【技术保护点】
一种数据压缩方法,其特征在于,包括,输入原始数据流,确定作为组成一个符号所需的N比特的大小,N≥1;将原始数据流分割成由每段N比特符号组成的连续符号流;区分压缩符号和非压缩符号,并根据设定的压缩格式进行压缩输出压缩数据流。

【技术特征摘要】
1.一种数据压缩方法,其特征在于,包括,输入原始数据流,确定作为组成一个符号所需的N比特的大小,N≥1;将原始数据流分割成由每段N比特符号组成的连续符号流;区分压缩符号和非压缩符号,并根据设定的压缩格式进行压缩输出压缩数据流;其中,所述设定的压缩格式为,首位为一个压缩标志,随后为压缩符号0的标志位信息,压缩符号1与非压缩符号的个数信息,压缩符号1的位置信息,压缩符号1的个数信息,压缩符号1的数值信息,而后依次为非压缩符号的位置信息与数值信息;或者,首位为一个压缩标志,随后为压缩符号1的标志位信息,压缩符号0与非压缩符号的个数信息,压缩符号0的位置信息,压缩符号0的个数信息,压缩符号0的数值信息,随后依次为非压缩符号的位置信息与数值信息。2.根据权利要求1所述的方法,其特征在于,所述确定作为组成一个符号所需的N比特的大小为原始数据流中连续的0和1比特出现最多的次数。3.根据权利要求1或2所述的方法,其特征在于,在将原始数据流分割成由每段N比特符号组成的连续符号流时,若连续符号组成的数据流的大小超过原始数据流时,用0比特进行填充。4.根据权利要求1或2所述的方法,其特征在于,所述区分压缩符号和非压缩符号具体为,将连续的0比特作为压缩符号0,连续的1比特作为压缩符号1,其余的非连续0、1符号作为非压缩符号。5.根据权利要求1或2所述的方法,其特征在于,在根据设定的压缩格式进行压缩输出压缩数据流前,还包括,将非压缩符号的个数与设定的压缩门限数K进行比较,当非压缩符号的个数大于K时,则输出非压缩标志位,将输入的原始数据流依次输出;当非压缩符号的个数小于K时,则进行压缩。6.一种数据解压缩方法,其特征在于,包括,接收压缩数据流,当遇到压缩标志时,准备解压缩;根据压缩格式对应的解压缩算法进行还原,输出原始数据流;其中,所述解压缩算法包括,根据压缩符号的标志位确定压缩符号为0,随后根据压缩符号1与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩数据流的其余位置写入确定的非压缩符号0;根据压缩数据流压缩符号1与非压缩符号的个数信息确定填充比特的数值信息,删除还原的原始数据流的相应位填充比特的信息;或者,根据压缩符号的标志位确定压缩符号为1,随后根据解压缩符号0与非压缩符号的个数信息确定待还原符号的个数,根据非压缩符号的位置信息与数值信息确定非压缩符号在原始数据流中的位置与数值大小;在输出的解压缩的其余位置写入所述确定的非压缩符号1;根据压缩数据流压缩符号0与非压缩符号的个数信息确定填充比特的数值信息,删除还原的数据流的相应位填充比特的信...

【专利技术属性】
技术研发人员:张帅许进郁光辉胡留军
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

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

1