CN113381768B - 一种哈夫曼校正编码方法、系统及相关组件 - Google Patents

一种哈夫曼校正编码方法、系统及相关组件 Download PDF

Info

Publication number
CN113381768B
CN113381768B CN202110916338.1A CN202110916338A CN113381768B CN 113381768 B CN113381768 B CN 113381768B CN 202110916338 A CN202110916338 A CN 202110916338A CN 113381768 B CN113381768 B CN 113381768B
Authority
CN
China
Prior art keywords
huffman
data block
code table
target data
huffman tree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110916338.1A
Other languages
English (en)
Other versions
CN113381768A (zh
Inventor
张永兴
刘宇豪
徐江波
王江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202110916338.1A priority Critical patent/CN113381768B/zh
Publication of CN113381768A publication Critical patent/CN113381768A/zh
Application granted granted Critical
Publication of CN113381768B publication Critical patent/CN113381768B/zh
Priority to US18/277,984 priority patent/US11881873B1/en
Priority to PCT/CN2021/142856 priority patent/WO2023015831A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4031Fixed length to variable length coding
    • H03M7/4037Prefix coding
    • H03M7/4043Adaptive prefix coding
    • H03M7/405Tree adaptation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6572Implementations using a tree structure, e.g. implementations in which the complexity is reduced by a tree structure from O(n) to O (log(n))
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3068Precoding preceding compression, e.g. Burrows-Wheeler transformation
    • H03M7/3079Context modeling
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4031Fixed length to variable length coding
    • H03M7/4037Prefix coding
    • H03M7/4043Adaptive prefix coding
    • H03M7/4056Coding table selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请公开了一种哈夫曼校正编码方法、系统及相关组件,该方法包括:获取目标文件中的目标数据块;利用目标数据块构建哈夫曼树;判断哈夫曼树的深度是否超出预设值;若否,则利用哈夫曼树生成第一码表并对目标数据块进行编码;若是,则利用备用码表对目标数据块进行编码;备用码表为目标文件中已编码数据块的码表。本申请在哈夫曼树的深度超过预设值时选择目标文件中已编码数据块的码表进行编码,由于同一目标文件中不同数据块的符号与概率存在相似性,此时已编码数据块的哈夫曼树的深度没有超出预设值并将顺利生成码表进行编码,利用备用码表即可对目标数据块完成可靠的编码,这一过程同样能达到校正超长码的效果,且效率明显提高。

Description

一种哈夫曼校正编码方法、系统及相关组件
技术领域
本发明涉及数据压缩领域,特别涉及一种哈夫曼校正编码方法、系统及相关组件。
背景技术
随着信息科学领域数据爆发式的增长,服务器对如何存储海量数据有较大压力,数据压缩成为减轻服务器存储负担、降低存储成本的有效手段。常见的数据压缩标准,如Gzip、zip、zlib等,会将数据块压缩封装为一种deflate格式的数据,deflate是一种无损数据压缩算法,其中采用LZ77算法查找数据中的重复数据,采用哈夫曼编码对重复数据进行表征和编码。
由于哈夫曼编码时经过排序生成的哈夫曼树可能存在过深、编码出现超长码的情况,在超过deflate协议规定的最大深度时,必须对超过最大深度的哈夫曼树进行校正。目前常用的超长码校正方法基于软件算法,需要遍历搜索二叉树,在其中找到超长节点的位置和超长节点的嫁接点。这种方法能够得到保证最优压缩率的哈夫曼树,但是遍历搜索耗时极高,特殊情况下不能并行遍历,极端情形下,校正哈夫曼树的时间消耗可能会数倍于构建哈夫曼树的时间消耗。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种快速高效的哈夫曼校正编码方法、系统及相关组件。其具体方案如下:
一种哈夫曼校正编码方法,包括:
获取目标文件中的目标数据块;
利用所述目标数据块构建哈夫曼树;
判断所述哈夫曼树的深度是否超出预设值;
若否,则利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码;
若是,则利用备用码表对所述目标数据块进行编码;
所述备用码表为所述目标文件中已编码数据块的码表。
优选的,所述哈夫曼校正编码方法还包括:
若所述哈夫曼树的深度未超出所述预设值,则将所述第一码表的数值更新到所述备用码表。
优选的,所述利用所述目标数据块构建哈夫曼树的过程,包括:
对所述目标数据块进行频率分布统计,得到频率分布结果;
根据所述频率分布结果构建哈夫曼树。
优选的,所述预设值为15。
优选的,所述已编码数据块具体为所述目标文件中与所述目标数据块相邻的已编码数据块。
优选的,所述哈夫曼校正编码方法通过硬件电路实现。
相应的,本申请还公开了一种哈夫曼校正编码系统,包括:
获取模块,用于获取目标文件中的目标数据块;
构建模块,用于利用所述目标数据块构建哈夫曼树;
判断模块,用于判断所述哈夫曼树的深度是否超出预设值;
编码模块,用于在所述哈夫曼树的深度未超出所述预设值时利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码,还用于在所述哈夫曼树的深度超出所述预设值时利用备用码表对所述目标数据块进行编码;
所述备用码表为所述目标文件中已编码数据块的码表。
相应的,本申请还公开了一种哈夫曼校正编码装置,包括:
存储器,用于存储哈夫曼编码程序;
处理器,用于执行所述哈夫曼编码程序时实现如上文任一项所述哈夫曼校正编码方法的步骤。
优选的,所述处理器为硬件电路。
相应的,本申请还公开了一种可读存储介质,所述可读存储介质上存储有哈夫曼编码程序,所述哈夫曼编码程序被处理器执行时实现如上文任一项所述哈夫曼校正编码方法的步骤。
本申请公开了一种哈夫曼校正编码方法,包括:获取目标文件中的目标数据块;利用所述目标数据块构建哈夫曼树;判断所述哈夫曼树的深度是否超出预设值;若否,则利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码;若是,则利用备用码表对所述目标数据块进行编码;所述备用码表为所述目标文件中已编码数据块的码表。本申请在哈夫曼树的深度超过预设值时选择目标文件中已编码数据块的码表进行编码,由于同一目标文件中不同数据块的符号与概率存在相似性,此时已编码数据块的哈夫曼树的深度没有超出预设值并将顺利生成码表进行编码,利用备用码表即可对目标数据块完成可靠的编码,这一过程中没有对当前目标数据块构建的哈夫曼树进行遍历,同样能达到校正超长码的效果,且效率明显提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中一种哈夫曼校正编码方法的步骤流程图;
图2为本发明实施例中数据块之间哈夫曼表相似性数据分布曲线图;
图3为本发明实施例中一种哈夫曼编码校正系统的结构分布图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前常用的超长码校正方法基于软件算法,需要遍历搜索二叉树,在其中找到超长节点的位置和超长节点的嫁接点。这种方法能够得到保证最优压缩率的哈夫曼树,但是遍历搜索耗时极高,特殊情况下不能并行遍历,极端情形下,校正哈夫曼树的时间消耗可能会数倍于构建哈夫曼树的时间消耗。
本申请在哈夫曼树的深度超过预设值时选择目标文件中已编码数据块的码表进行编码,由于同一目标文件中不同数据块的符号与概率存在相似性,此时已编码数据块的哈夫曼树的深度没有超出预设值并将顺利生成码表进行编码,利用备用码表即可对目标数据块完成可靠的编码,同样能达到校正超长码的效果,且效率明显提高。
本发明实施例公开了一种哈夫曼校正编码方法,参见图1所示,包括:
S1:获取目标文件中的目标数据块;
可以理解的是,对任何文件进行压缩时,首先将目标文件分割为若干数据块,然后对每个数据块进行deflate编码,deflate编码的过程包括利用lz77算法模块查找数据块中的重复数据,然后利用哈夫曼编码模块对重复数据进行表征和编码,本实施例正是哈夫曼编码模块的表征和编码部分的校正优化,此处目标数据块为哈夫曼编码模块的输入内容。
S2:利用目标数据块构建哈夫曼树;
具体的,步骤S2包括:
对目标数据块进行频率分布统计,得到频率分布结果;
根据频率分布结果构建哈夫曼树。
S3:判断哈夫曼树的深度是否超出预设值;
可以理解的是,由于本实施例基于deflate协议编码,deflate协议要求哈夫曼树的深度不超过15,因此此处预设值为15。
S4:若否,则利用哈夫曼树生成第一码表并对目标数据块进行编码;
S5:若是,则利用备用码表对目标数据块进行编码;
备用码表为目标文件中已编码数据块的码表。
进一步的,已编码数据块具体为目标文件中与目标数据块相邻的已编码数据块。
可以理解的是,同一目标文件中数据块之间存在相关性,数据块越近,其相关性越强。通过收集统计相关数据,可对同一文件中数据块的哈夫曼数据进行分析,以相似性最常用的评价参数峰值信噪比(Peak Signal to Noise Ratio,PSNR)作为评价参数,PSNR值越高,相似性越大,通常PSNR大于35,数据块接近一致,PSNR大于25,数据块高度一致,PSNR小于20,数据块高度较低,具体的计算公式如下:
Figure 702480DEST_PATH_IMAGE001
其中n为样本的值的比特数,这里可取4,MSE为均方差,计算公式如下:
Figure 259102DEST_PATH_IMAGE002
图2为某一目标文件的数据块之间的哈夫曼码表相似性数据分布曲线,横坐标为不同组数据块的序号,纵轴为每组数据块的PSNR值,图中实线为literal tree类型的哈夫曼树的PSNR,取值大致在30上下,虚线为distance tree类型的哈夫曼树的PSNR,取值在25左右,因此可以认为同一目标文件中的数据块之间的哈夫曼码表具有很高的相似性,在目标数据块的哈夫曼树深度超过预设值时,可利用已编码数据块的码表作为备用码表,对目标数据块进行编码。
为了验证本实施例的有效性,现对两个数据压缩测试集cantrbry和silesia内的文件进行压缩测试,下表1为背景技术中软件算法和本实施例两种算法的测试结果:
表1 测试结果对比
Figure 835576DEST_PATH_IMAGE003
表中,第一列file_name与第二列src_size分别为测试集内文件名及其文件大小,第三列soft_ratio为使用背景技术中软件算法压缩文件得到的压缩比,第四列ratio(context)为本实施例中方法压缩文件得到的压缩比,第五列delta_ratio为软件算法与本实施例的差别,最后一行mean是以上总体数据的均值。从第五列的数据可以看出,本实施例的方案与软件软法在压缩比上差异很小,平均差值只有0.0094,因此本实施例的压缩效果是较为理想的。同时本实施例中哈夫曼校正编码方法可选择硬件电路实现,硬件电路利用本实施例进行编码的效率要远高于使用原软件算法的效率。
进一步的,若哈夫曼树的深度未超出预设值,本实施例中哈夫曼校正编码方法还包括:
S6:将第一码表的数值更新到备用码表。
可以理解的是,当前哈夫曼树的深度未超过预设值时,其对应的第一码表作为目标文件中其他数据块的编码参考,因此将当前第一码表更新到备用码表中,之后新的目标数据块解码可将该备用码表作为参考。
本申请实施例公开了一种哈夫曼校正编码方法,包括:获取目标文件中的目标数据块;利用所述目标数据块构建哈夫曼树;判断所述哈夫曼树的深度是否超出预设值;若否,则利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码;若是,则利用备用码表对所述目标数据块进行编码;所述备用码表为所述目标文件中已编码数据块的码表。本申请在哈夫曼树的深度超过预设值时选择目标文件中已编码数据块的码表进行编码,由于同一目标文件中不同数据块的符号与概率存在相似性,此时已编码数据块的哈夫曼树的深度没有超出预设值并将顺利生成码表进行编码,利用备用码表即可对目标数据块完成可靠的编码,这一过程中没有对当前目标数据块构建的哈夫曼树进行遍历,同样能达到校正超长码的效果,且效率明显提高。
相应的,本申请实施例还公开了一种哈夫曼校正编码系统,参见图3所示,包括:
获取模块1,用于获取目标文件中的目标数据块;
构建模块2,用于利用所述目标数据块构建哈夫曼树;
判断模块3,用于判断所述哈夫曼树的深度是否超出预设值;
编码模块4,用于在所述哈夫曼树的深度未超出所述预设值时利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码,还用于在所述哈夫曼树的深度超出所述预设值时利用备用码表对所述目标数据块进行编码;
所述备用码表为所述目标文件中已编码数据块的码表。
本申请实施例在哈夫曼树的深度超过预设值时选择目标文件中已编码数据块的码表进行编码,由于同一目标文件中不同数据块的符号与概率存在相似性,此时已编码数据块的哈夫曼树的深度没有超出预设值并将顺利生成码表进行编码,利用备用码表即可对目标数据块完成可靠的编码,这一过程中没有对当前目标数据块构建的哈夫曼树进行遍历,同样能达到校正超长码的效果,且效率明显提高。
在一些具体的实施例中,所述哈夫曼校正编码系统还包括:
更新模块5,用于若所述哈夫曼树的深度未超出预设值,则将所述第一码表的数值更新到所述备用码表。
在一些具体的实施例中,所述构建模块具体用于:
对所述目标数据块进行频率分布统计,得到频率分布结果;
根据所述频率分布结果构建哈夫曼树。
在一些具体的实施例中,所述预设值为15。
在一些具体的实施例中,所述已编码数据块具体为所述目标文件中与所述目标数据块相邻的已编码数据块。
相应的,本申请实施例还公开了一种哈夫曼校正编码装置,包括:
存储器,用于存储哈夫曼编码程序;
处理器,用于执行所述哈夫曼编码程序时实现如上文任一项实施例所述哈夫曼校正编码方法的步骤。
在一些具体的实施例中,所述处理器为硬件电路。
相应的,本申请还公开了一种可读存储介质,所述可读存储介质上存储有哈夫曼编码程序,所述哈夫曼编码程序被处理器执行时实现如上文任一项实施例所述哈夫曼校正编码方法的步骤。
其中,本实施例中有关哈夫曼校正编码方法的具体细节,可以参照上文实施例中的相关描述,此处不再赘述。
其中,本实施例中哈夫曼校正编码装置和可读存储介质具有与上文实施例中哈夫曼校正编码方法相同的技术效果,此处不再赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种哈夫曼校正编码方法、系统及相关组件进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种哈夫曼校正编码方法,其特征在于,包括:
获取目标文件中的目标数据块;
利用所述目标数据块构建哈夫曼树;
判断所述哈夫曼树的深度是否超出预设值;
若否,则利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码;
若是,则利用备用码表对所述目标数据块进行编码;
所述备用码表为所述目标文件中已编码数据块的码表。
2.根据权利要求1所述哈夫曼校正编码方法,其特征在于,还包括:
若所述哈夫曼树的深度未超出所述预设值,则将所述第一码表的数值更新到所述备用码表。
3.根据权利要求1所述哈夫曼校正编码方法,其特征在于,所述利用所述目标数据块构建哈夫曼树的过程,包括:
对所述目标数据块进行频率分布统计,得到频率分布结果;
根据所述频率分布结果构建哈夫曼树。
4.根据权利要求1所述哈夫曼校正编码方法,其特征在于,所述预设值为15。
5.根据权利要求1所述哈夫曼校正编码方法,其特征在于,所述已编码数据块具体为所述目标文件中与所述目标数据块相邻的已编码数据块。
6.根据权利要求1至5任一项所述哈夫曼校正编码方法,其特征在于,所述哈夫曼校正编码方法通过硬件电路实现。
7.一种哈夫曼校正编码系统,其特征在于,包括:
获取模块,用于获取目标文件中的目标数据块;
构建模块,用于利用所述目标数据块构建哈夫曼树;
判断模块,用于判断所述哈夫曼树的深度是否超出预设值;
编码模块,用于在所述哈夫曼树的深度未超出所述预设值时利用所述哈夫曼树生成第一码表并对所述目标数据块进行编码,还用于在所述哈夫曼树的深度超出所述预设值时利用备用码表对所述目标数据块进行编码;
所述备用码表为所述目标文件中已编码数据块的码表。
8.一种哈夫曼校正编码装置,其特征在于,包括:
存储器,用于存储哈夫曼编码程序;
处理器,用于执行所述哈夫曼编码程序时实现如权利要求1至6任一项所述哈夫曼校正编码方法的步骤。
9.根据权利要求8所述哈夫曼校正编码装置,其特征在于,所述处理器为硬件电路。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有哈夫曼编码程序,所述哈夫曼编码程序被处理器执行时实现如权利要求1至6任一项所述哈夫曼校正编码方法的步骤。
CN202110916338.1A 2021-08-11 2021-08-11 一种哈夫曼校正编码方法、系统及相关组件 Active CN113381768B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110916338.1A CN113381768B (zh) 2021-08-11 2021-08-11 一种哈夫曼校正编码方法、系统及相关组件
US18/277,984 US11881873B1 (en) 2021-08-11 2021-12-30 Huffman correction encoding method and system, and relevant components
PCT/CN2021/142856 WO2023015831A1 (zh) 2021-08-11 2021-12-30 一种哈夫曼校正编码方法、系统及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110916338.1A CN113381768B (zh) 2021-08-11 2021-08-11 一种哈夫曼校正编码方法、系统及相关组件

Publications (2)

Publication Number Publication Date
CN113381768A CN113381768A (zh) 2021-09-10
CN113381768B true CN113381768B (zh) 2021-11-09

Family

ID=77576691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110916338.1A Active CN113381768B (zh) 2021-08-11 2021-08-11 一种哈夫曼校正编码方法、系统及相关组件

Country Status (3)

Country Link
US (1) US11881873B1 (zh)
CN (1) CN113381768B (zh)
WO (1) WO2023015831A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113381768B (zh) 2021-08-11 2021-11-09 苏州浪潮智能科技有限公司 一种哈夫曼校正编码方法、系统及相关组件
CN113676187A (zh) * 2021-08-11 2021-11-19 山东云海国创云计算装备产业创新中心有限公司 一种哈夫曼修正编码方法、系统及相关组件

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1143861A (zh) * 1995-08-03 1997-02-26 Ntt移动通信网株式会社 变长编码数据发送装置
US20150229326A1 (en) * 2013-10-21 2015-08-13 International Business Machines Corporation Boosting decompression in the presence of reoccurring huffman trees
CN111510156A (zh) * 2020-06-03 2020-08-07 合肥师范学院 一种基于分段的哈夫曼动态压缩及解压大文件的方法
US10756758B1 (en) * 2019-08-30 2020-08-25 International Business Machines Corporation Length-limited huffman encoding

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3415481B2 (ja) * 1999-05-27 2003-06-09 Necエレクトロニクス株式会社 可変長符号の復号装置
US6771824B1 (en) * 1999-12-28 2004-08-03 Lucent Technologies Inc. Adaptive variable length decoding method
US8593308B1 (en) * 2012-05-31 2013-11-26 International Business Machines Corporation Method of accelerating dynamic Huffman decompaction within the inflate algorithm
US9337862B2 (en) * 2014-06-09 2016-05-10 Tidal Systems, Inc. VLSI efficient Huffman encoding apparatus and method
US10135463B1 (en) * 2017-09-29 2018-11-20 Intel Corporation Method and apparatus for accelerating canonical huffman encoding
US10694217B2 (en) * 2018-09-21 2020-06-23 Intel Corporation Efficient length limiting of compression codes
US11075647B2 (en) * 2019-02-27 2021-07-27 Movidius Limited Methods and apparatus to compress data
CN111093081B (zh) * 2019-12-20 2022-05-31 合肥埃科光电科技股份有限公司 一种图像无损压缩方法及系统
CN113381768B (zh) * 2021-08-11 2021-11-09 苏州浪潮智能科技有限公司 一种哈夫曼校正编码方法、系统及相关组件
CN113676187A (zh) * 2021-08-11 2021-11-19 山东云海国创云计算装备产业创新中心有限公司 一种哈夫曼修正编码方法、系统及相关组件
CN113708772A (zh) * 2021-08-11 2021-11-26 山东云海国创云计算装备产业创新中心有限公司 一种哈夫曼编码方法、系统、装置及可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1143861A (zh) * 1995-08-03 1997-02-26 Ntt移动通信网株式会社 变长编码数据发送装置
US20150229326A1 (en) * 2013-10-21 2015-08-13 International Business Machines Corporation Boosting decompression in the presence of reoccurring huffman trees
US10756758B1 (en) * 2019-08-30 2020-08-25 International Business Machines Corporation Length-limited huffman encoding
CN111510156A (zh) * 2020-06-03 2020-08-07 合肥师范学院 一种基于分段的哈夫曼动态压缩及解压大文件的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
An optimal text compression algorithm based on frequent pattern;C. Oswald等;《Journal of Ambient Intelligence and Humanized computing》;20170715;第803-822页 *
一种基于缓冲窗口的双哈夫曼压缩算法;乔雨等;《物联网技术》;20210219;第90-94页 *
利用少数相关位的SoC测试数据压缩方法;欧阳一鸣等;《电子测量与仪器学报》;20130131;第27卷(第1期);第76-82 *

Also Published As

Publication number Publication date
US11881873B1 (en) 2024-01-23
CN113381768A (zh) 2021-09-10
WO2023015831A1 (zh) 2023-02-16
US20240039561A1 (en) 2024-02-01

Similar Documents

Publication Publication Date Title
US11044495B1 (en) Systems and methods for variable length codeword based data encoding and decoding using dynamic memory allocation
US10979071B2 (en) Systems and methods for variable length codeword based, hybrid data encoding and decoding using dynamic memory allocation
CN113381768B (zh) 一种哈夫曼校正编码方法、系统及相关组件
US5510785A (en) Method of coding a digital signal, method of generating a coding table, coding apparatus and coding method
KR100750165B1 (ko) 압축률 향상을 위해 개선된 컨텍스트 모델 선택을 사용하는cabac 부호화 방법 및 장치, 그리고 cabac복호화 방법 및 장치
US5999111A (en) Variable length encoding/decoding apparatus using re-association of symbol-codeword for variable length code table
KR101049699B1 (ko) 데이터의 압축방법
KR101118089B1 (ko) 가변장 복호화 장치 및 방법
CN107370560A (zh) 一种极化码的编码和速率匹配方法、装置及设备
CN113676187A (zh) 一种哈夫曼修正编码方法、系统及相关组件
IL294187A (en) Methods and systems for information compression
US5594435A (en) Permutation-based data compression
Atallah et al. Pattern matching image compression: Algorithmic and empirical results
US6778109B1 (en) Method for efficient data encoding and decoding
CN106357275B (zh) 一种哈夫曼压缩方法及装置
US6055273A (en) Data encoding and decoding method and device of a multiple-valued information source
CN112398484A (zh) 一种编码方法及相关设备
CN113708772A (zh) 一种哈夫曼编码方法、系统、装置及可读存储介质
KR101023536B1 (ko) 데이터 무손실 압축 방법
CN108880559B (zh) 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备
Djusdek et al. Adaptive image compression using adaptive Huffman and LZW
CN111711511A (zh) 频域数据有损压缩方法
CN114095035A (zh) 一种依托云字典基于字节的无损压缩方法
CN114429200A (zh) 规范化哈夫曼编解码方法及神经网络计算芯片
Kozhemiakina et al. Means and results of efficiency analysis for data compression methods applied to typical multimedia data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant