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

技术编号:16389683 阅读:91 留言:0更新日期:2017-10-16 11:33
数据压缩装置具有:数据取得部(101),其从编码数据(11)取得n个整数;整数分割部(102),其将n个整数的各整数分割成由分割比特数b的低位比特表示的第2整数(1022)和由除去低位比特后的高位比特表示的第1整数(1021),输出n个第1整数(1021)和n个第2整数(1022);第1编码部(104),其对n个第1整数(1021)进行编码,作为由单位比特数L的自然数倍的比特数的二进制数据表示的第1码(1041)进行输出;以及第2编码部(106),其对n个第2整数(1022)进行编码,作为第2码(1061)进行输出。

【技术实现步骤摘要】
【国外来华专利技术】数据压缩装置、数据解压缩装置、数据压缩方法、数据解压缩方法和程序
本专利技术涉及数据压缩装置、数据解压缩装置、数据压缩方法、数据解压缩方法和程序。特别涉及使用对整数进行分割来编码的方式的数据压缩装置、数据解压缩装置、数据压缩方法、数据解压缩方法和程序。
技术介绍
作为用于对固定长度的整数串进行可逆压缩的编码方法,使用如下的方法:首先求出针对编码对象数据的预测值,接着求出预测值与编码对象数据的残差,然后以适当方式对由残差构成的数据序列进行编码。即,该方法由求出针对编码对象数据的预测值的预测值生成、求出预测值与编码对象数据的残差的残差生成、以适当方式对由残差构成的数据序列进行编码的残差编码构成。在该方法中,通过夹入求出残差的阶段,与实际数据序列进行比较,得到由较小的值即接近0的值构成的数据序列。由此,根据该方法,针对编码对象数据的残差编码容易有效,压缩效果往往得到提高。作为预测值生成和残差生成中的例子,存在取得与上次值之间的差分作为残差的方法。具体而言,选择上次值作为预测值,作为残差生成方法,采用单纯的整数值减法值作为残差。更一般地讲,作为预测值,选择线性预测等方法。关于残差编码,提出了γ编码、δ编码等各种方法。这些残差编码的方法大致分成用于提高压缩率的方法以及用于提高压缩速度、解压缩速度等处理速度的方法这两种方法。作为用于提高压缩率的方式,以哥伦布-赖斯编码为代表,存在将整数值在规定位置处分割成由高位比特构成的第1整数和由低位比特构成的第2整数的方式。下面,将对整数进行分割的编码方式统一称作上下比特分割方式。在上下比特分割方式中,通过γ编码或δ编码这样的适当的可变长度编码对由高位比特构成的第1整数进行编码并输出。然后,针对由低位比特构成的第2整数,不进行编码而作为固定长度的二进制数据进行输出。在哥伦布-赖斯编码中,作为第1整数的编码方法采用α编码。在专利文献1中公开有如下的方法:动态地决定由高位比特构成的第1整数的编码方法以及高位比特与低位比特的分割位置,由此提高压缩率。并且,在专利文献2中公开有基于上下比特分割方式的图像的压缩方法。上下比特分割方式是在作为压缩对象的整数串中混合存在有噪声等,从而在低位比特的变动较大时有效的方式。混合存在有噪声的低位比特很难进行压缩,因此,不进行压缩而作为固定长度的二进制数据进行输出,仅对比较容易压缩的高位比特进行压缩,这是上下比特分割方式的基本思路。如图8所示,在将整数串比特分割成高位比特和低位比特的情况下,高位比特容易进行压缩,低位比特很难进行压缩。关于用于提高处理速度的方式,存在以字节单位或更大的字单位进行压缩时的编码的多个方式。之前叙述的γ编码、δ编码、哥伦布-赖斯编码等以比特单位生成并输出码,因此,存在与计算机处理之间的亲和性较低、导致处理速度降低这样的课题。为了解决这种课题而提出的方式是以字节单位或字单位生成并输出码的方式。这里,字是某个固定长度的单位,例如是指2字节或4字节这样的单位。下面,将以字节单位、字单位生成码的压缩方式分别称作字节单位处理方式、字单位处理方式。作为字节单位处理方式的例子,广泛公知有Variable-Byte(非专利文献1)等编码方式。作为字单位处理方式,公知有Simple9(非专利文献2)、PForDelta(非专利文献3)等。在γ编码、δ编码、哥伦布-赖斯编码等中,逐一对整数进行编码,但是,在字单位处理方式中,统一对多个整数进行编码,以字单位生成其结果。现有技术文献专利文献专利文献1:日本特许第5570409号专利文献2:日本特开2011-223244非专利文献非专利文献1:F.Scholer,H.Williams,J.Yiannis,andJ.Zobel.CompressionofInvertedIndexesForFastQueryEvaluation.InProc.ofthe25thAnnualSIGIRConf.onResearchandDevelopmentinInformationRetrieval,August2002.非专利文献2:VoNgocAnh,AlistairMoffat.InvertedIndexCompressionUsingWord-AlignedBinaryCodes,InformationRetrieval,8,151-166,2005.非专利文献3:M.Zukowski,S.Heman,N.Nes,andP.Boncz.Super-ScalarRAM-CPUCacheCompression.InProc.oftheInt.Conf.onDataEngineering,2006.
技术实现思路
专利技术要解决的课题压缩率和处理速度存在折衷的关系。在上下比特分割方式中,压缩率提高,但是,处理速度降低。另一方面,在字单位处理方式中,处理速度提高,但是,压缩率降低。本专利技术的目的在于,实现如下的整数串的可逆压缩方式:通过同时实现上下比特分割方式和字单位处理方式双方,能够在维持上下比特分割方式的高压缩率的同时提高处理速度。用于解决课题的手段本专利技术的数据压缩装置具有:数据取得部,其从包含多个由处理单位的比特数即单位比特数的二进制数据表示的整数的编码数据取得n个整数,其中,n为自然数;整数分割部,其对由所述数据取得部取得的所述n个整数的各整数进行分割,将所述n个整数的各整数分割成由分割比特数的低位比特表示的第2整数和由从所述n个整数的各整数中除去所述低位比特后的高位比特表示的第1整数,输出n个第1整数和n个第2整数;第1编码部,其对从所述整数分割部输出的所述n个第1整数进行编码,输出对所述n个第1整数进行编码的结果作为由所述单位比特数的自然数倍的比特数的二进制数据表示的第1码;以及第2编码部,其对从所述整数分割部输出的所述n个第2整数进行编码,输出对所述n个第2整数进行编码的结果作为第2码。专利技术效果本专利技术的数据压缩装置具有第1编码部,该第1编码部对从整数分割部输出的n个第1整数进行编码,输出对n个第1整数进行编码的结果作为由单位比特数的自然数倍的比特数的二进制数据表示的第1码。并且,数据压缩装置具有第2编码部,该第2编码部对从整数分割部输出的n个第2整数进行编码,输出对n个第2整数进行编码的结果作为第2码。由此,根据本专利技术的数据压缩装置,通过同时实现上下比特分割方式和字单位处理方式双方,能够在维持高压缩率的同时提高处理速度。附图说明图1是实施方式1的数据压缩装置的结构框图。图2是实施方式1的数据解压缩装置的结构框图。图3是实施方式1的数据压缩装置、数据解压缩装置的硬件结构图。图4是实施方式1的数据压缩装置的数据压缩方法、数据压缩处理的流程图。图5是实施方式1的数据解压缩装置的数据解压缩方法、数据解压缩处理的流程图。图6是实施方式2的数据压缩装置的数据压缩方法、数据压缩处理的流程图。图7是实施方式2的数据解压缩装置的数据解压缩方法、数据解压缩处理的流程图。图8是关于整数串的比特分割的说明图。具体实施方式实施方式1***结构的说明***使用图1对本实施方式的数据压缩装置100的块结构进行说明。在以下的说明中,设处理单位的比特数即单位比特数为L比特。将单位比特数称作字或字节。单位比特数也称作字的长度即字单位。并且,本文档来自技高网
...
数据压缩装置、数据解压缩装置、数据压缩方法、数据解压缩方法和程序

【技术保护点】
一种数据压缩装置,该数据压缩装置具有:数据取得部,其从包含多个由处理单位的比特数即单位比特数的二进制数据表示的整数的编码数据取得n个整数,其中,n为自然数;整数分割部,其对由所述数据取得部取得的所述n个整数的各整数进行分割,将所述n个整数的各整数分割成由分割比特数的低位比特表示的第2整数和由从所述n个整数的各整数中除去所述低位比特后的高位比特表示的第1整数,输出n个第1整数和n个第2整数;第1编码部,其对从所述整数分割部输出的所述n个第1整数进行编码,输出对所述n个第1整数进行编码的结果作为由所述单位比特数的自然数倍的比特数的二进制数据表示的第1码;以及第2编码部,其对从所述整数分割部输出的所述n个第2整数进行编码,输出对所述n个第2整数进行编码的结果作为第2码。

【技术特征摘要】
【国外来华专利技术】1.一种数据压缩装置,该数据压缩装置具有:数据取得部,其从包含多个由处理单位的比特数即单位比特数的二进制数据表示的整数的编码数据取得n个整数,其中,n为自然数;整数分割部,其对由所述数据取得部取得的所述n个整数的各整数进行分割,将所述n个整数的各整数分割成由分割比特数的低位比特表示的第2整数和由从所述n个整数的各整数中除去所述低位比特后的高位比特表示的第1整数,输出n个第1整数和n个第2整数;第1编码部,其对从所述整数分割部输出的所述n个第1整数进行编码,输出对所述n个第1整数进行编码的结果作为由所述单位比特数的自然数倍的比特数的二进制数据表示的第1码;以及第2编码部,其对从所述整数分割部输出的所述n个第2整数进行编码,输出对所述n个第2整数进行编码的结果作为第2码。2.根据权利要求1所述的数据压缩装置,其中,所述第2编码部输出由对所述分割比特数乘以n而得到的数量的比特数的二进制数据表示的所述第2码。3.根据权利要求2所述的数据压缩装置,其中,所述数据压缩装置具有决定部,该决定部将所述单位比特数的k倍的数量决定为n,其中,k为自然数,所述第2编码部输出由对所述单位比特数乘以所述分割比特数与k之积而得到的数量的比特数的二进制数据表示的所述第2码。4.根据权利要求3所述的数据压缩装置,其中,所述数据压缩装置具有存储部,该存储部存储由所述第1编码部输出的所述第1码,并且在所述第1码之后连续存储由所述第2编码部输出的所述第2码。5.根据权利要求3或4所述的数据压缩装置,其中,所述决定部将K决定为k的上限值,并且决定参数c,在k≦K的范围内对n个第1整数进行编码时,选择在编码时冗余的剩余比特的比特数为c以下的k,其中,K、c为自然数。6.一种数据解压缩装置,该数据解压缩装置具有:第1解码部,其从由权利要求3或4所述的数据压缩装置编码而成的包含所述第1码和所述第2码的已编码数据取得所述第1码,将所取得的所述第1码解码成所述n个第1整数;第2解码部,其从所述已编码数据取得所述第2码,将所取得的所述第2码解码成所述n个第2整数;以及整数结合部,其根据所述n个第1整数和所述n个第2整数生成所述n个整数。7.根据权利要求6所述的数据解压缩装置,其中,所述第2解码部从所述第2码取得所述分割比特数与k之积的数量的作为所述单位比特数的二进制数据的第2单位数据,将所取得的所述分割比特数与k之积的数量的所述第2单位数据解码成所述n个第2整数。8.根据权利要求6或7所述的数据解压缩装置,其中,所述第1解码部从所述第1码依次取得作为所述单位比特数的二进制数据的第1单位数据,对所取得的所述第1单位数据进行解码,对通过解码而得到的第1整数的个数进行计数,反复进行从所述第1码取得所述第1单位数据并对所取得的所述第1单位数据进行解码的处理,直到所述个数等于n为止。9.根据权利要求6或7所述的数据解压缩装置,其中,所述数据解压缩装置具有结束判定部,该结束判定部将K决定为k的上限值,并且决...

【专利技术属性】
技术研发人员:柴田秀哉
申请(专利权)人:三菱电机株式会社
类型:发明
国别省市:日本,JP

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

1