CN108880559B - 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备 - Google Patents

数据压缩方法、数据解压缩方法、压缩设备及解压缩设备 Download PDF

Info

Publication number
CN108880559B
CN108880559B CN201710334811.9A CN201710334811A CN108880559B CN 108880559 B CN108880559 B CN 108880559B CN 201710334811 A CN201710334811 A CN 201710334811A CN 108880559 B CN108880559 B CN 108880559B
Authority
CN
China
Prior art keywords
data
compressed
characters
preset
target data
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
CN201710334811.9A
Other languages
English (en)
Other versions
CN108880559A (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.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital 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 Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201710334811.9A priority Critical patent/CN108880559B/zh
Publication of CN108880559A publication Critical patent/CN108880559A/zh
Application granted granted Critical
Publication of CN108880559B publication Critical patent/CN108880559B/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

Abstract

本发明实施例提供了一种数据压缩方法、数据解压缩方法、压缩设备及解压缩设备,所述数据压缩方法包括:接收待处理的目标数据;获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;当所述已接收压缩字符的数量小于所述预设阈值时,判断所述目标数据是否为压缩字符,当所述目标数据为非压缩字符,或当所述已接收压缩字符的数量不小于所述预设阈值时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。本发明实施例能够提高数据压缩效率。

Description

数据压缩方法、数据解压缩方法、压缩设备及解压缩设备
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据压缩方法、数据解压缩方法、压缩设备及解压缩设备。
背景技术
随着计算机技术和信息技术的飞速发展,大量的信息是以数字化的方式进行表示、存储和传输的,如雷达、图像、语音等。如今面临的一个重要的问题就是这些信息占用了庞大的空间,同样,大量的数据量也给分析和传输带来了不便,给通信带来较大压力。相对于提高存储设备容量和增大通信带宽方法,采用数据压缩方法的成本较低,可取得较好的效果。
所谓数据压缩是通过改变信息的表示方式,在有限的信息空间中表示尽可能多的信息。常见的压缩方法有霍夫曼编码、游程编码、算术编码等,因游程编码简单、算法复杂度低、易于硬件实现等优点,应用较为广泛。
游程编码是一种无损压缩编码方法。主要是针对一连串出现的重复字符串做压缩的动作。比如,对于aaaaaaa,可以表示为7a,7表示计数值,a则是数据值;同样对于有规律的数据:aaaaaabbbcccc,则表示为6a3b4c。游程编码算法有着良好的编码和解码优势,但是当碰到abcde这样彼此都不重复的数据时,编码将返回lalblcldle,数据容量是压缩前的2倍,这是无法容忍的。这是一种“病态”情况。为了尽量避免“病态”情况的出现,需要对游程编码的基本方法进行改进。
已知的一种改进方法是对孤立字符进行特殊处理。具体的,需要获取到完整的待处理数据,然后对待处理数据进行分析,根据分析结果构建专门的特征字符表,之后基于所构建的特征字符表对待处理数据进行压缩处理。
例如,获取到的待处理数据为:
{2,2,2,194,197,199,214,217,238,255,81,81,81,35,32,32,32,243,…}
对其进行分析后,得到的特征字符表可以为:
序号 0 1 2 3 4 5 6 7
字符 0 1 4 6 7 10 11 12
即,0表示连续的0个字符,6表示连续的3个字符,12表示连续的7个字符。则压缩后的字符串可表示为:
(6,2),194,197,199,214,217,238,255,240,(6,81),35,(6,32)…
但是,上述方法中,需要先缓存待处理数据,对其进行分析,构建对应的特征字符表,之后才可以根据构建的特征字符表对待处理数据进行压缩。这种方法过程复杂,耗时较长,从而导致数据压缩效率较低。
发明内容
本发明实施例的目的在于提供一种数据压缩方法、数据解压缩方法、压缩设备及解压缩设备,以提高数据压缩效率。具体技术方案如下:
第一方面,本发明实施例提供了一种数据压缩方法,所述方法包括:
接收待处理的目标数据;
获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;
当所述已接收压缩字符的数量小于所述预设阈值时,判断所述目标数据是否为压缩字符,当所述目标数据为非压缩字符时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据;
当所述已接收压缩字符的数量不小于所述预设阈值时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。
可选的,所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据的步骤包括:
根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,生成包含所述第一预设位数的第一数据、以及所述目标数据的压缩数据。
可选的,所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据之前,所述方法还包括:
确定所述目标数据的值域;
根据所述目标数据的值域,以及预设的各值域范围与标识符的对应关系,确定所述目标数据对应的目标标识符;
根据所述目标数据的值域,以及预设的各值域范围与占用位数的对应关系,确定所述目标数据的目标占用位数;
所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据的步骤包括:
根据所述目标标识符、所述已接收压缩字符的数量、所述目标占用位数、所述目标数据、以及所述预设阈值对应的第一预设位数,生成包含所述目标标识符、所述第一预设位数的第一数据、以及所述目标占用位数的目标数据的压缩数据。
可选的,所述获取存储的已接收压缩字符的数量的步骤包括:
获取当前计数器的值,并将所获取的值确定为所述已接收压缩字符的数量。
可选的,所述更新所述已接收压缩字符的数量的步骤包括:
增大所述计数器的值。
可选的,对所述已接收压缩字符和所述目标数据进行压缩之后,所述方法还包括:
将所述当前计数器的值更新为初始值。
可选的,所述压缩字符为预定至少一种字符,所述非压缩字符为所述压缩字符之外的字符。
可选的,所述判断所述目标数据是否为压缩字符之后,所述方法还包括:
当所述目标数据为压缩字符时,更新所述已接收压缩字符的数量,并返回执行所述接收待处理的目标数据的步骤。
可选的,所述第一预设位数的第一数据是根据所述已接收压缩字符的数量确定的。
第二方面,本发明实施例提供了一种数据解压缩方法,所述方法包括:
接收压缩数据;
在所述压缩数据中,获取第一预设位数的第一数据,并根据所述第一数据确定压缩字符的数量;
判断所述压缩字符的数量是否为0;
当所述压缩字符的数量为非0时,输出第二预设位数的压缩字符,更新所述压缩字符的数量,并返回执行所述判断所述压缩字符的数量是否为0的步骤;
当所述压缩字符的数量为0时,获取并输出第二预设位数的数据。
可选的,所述编码数据中还包括与不同值域范围的数据对应的标识符;
所述在所述压缩数据中,获取第一预设位数的第一数据之前,所述方法还包括:
在所述压缩数据的预设位置处获取标识符,并根据预设的各标识符与占用位数的对应关系,确定所述标识符对应的第三预设位数;
相应的,所述获取并输出第二预设位数的数据的步骤包括:
判断所述第三预设位数与所述第二预设位数是否相同;
当所述第三预设位数与所述第二预设位数相同时,获取并输出第三预设位数的数据;
当所述第三预设位数与所述第二预设位数不同时,获取第三预设位数的数据,并通过在高位补0的方式将所获取的数据补充至所述第二预设位数后,输出处理后的数据。
可选的,所述根据所述第一数据确定压缩字符的数量之后,所述方法还包括:
将所确定的数量赋值给计数器;
相应的,所述判断所述压缩字符的数量是否为0的步骤包括:
判断所述计数器的值是否为0。
可选的,所述更新所述压缩字符的数量的步骤包括:
减小所述计数器的值。
可选的,所述压缩字符为预定至少一种字符,所述非压缩字符为所述压缩字符之外的字符。
第三方面,本发明实施例提供了一种压缩设备,包括:
处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器存储可执行程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如上述第一方面所述的一种数据压缩方法。
第四方面,本发明实施例提供了一种解压缩设备,包括:
处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器存储可执行程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如上述第二方面所述的一种数据解压缩方法。
本发明实施例提供了一种数据压缩方法、数据解压缩方法、压缩设备及解压缩设备,所述数据压缩方法包括:接收待处理的目标数据;获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;当所述已接收压缩字符的数量小于所述预设阈值时,判断所述目标数据是否为压缩字符,当所述目标数据为非压缩字符时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据;当所述已接收压缩字符的数量不小于所述预设阈值时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。
本发明实施例中,接收到待处理的目标数据后,即可对该目标数据进行压缩,而不需要先接收所有的待压缩数据,对待压缩数据进行分析后再进行压缩,从而能够提高数据压缩效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据压缩方法的流程图;
图2为本发明实施例提供的一种数据压缩方法的另一流程图;
图3为本发明实施例提供的一种数据压缩方法的实例图;
图4为本发明实施例提供的一种数据解压缩方法的流程图;
图5为本发明实施例提供的一种数据解压缩方法的另一流程图;
图6为本发明实施例提供的一种数据解压缩方法的实例图;
图7为本发明实施例提供的一种压缩设备的结构示意图;
图8为本发明实施例提供的一种解压缩设备的结构示意图。
具体实施方式
为了提高数据压缩效率,本发明实施例提供了一种数据压缩方法、数据解压缩方法、压缩设备及解压缩设备。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
如图1所示,本发明实施例提供了一种数据压缩方法过程,该过程可以包括以下步骤:
S101,接收待处理的目标数据。
本发明实施例提供的方法可以应用于电子设备。具体地,该电子设备可以为台式计算机、便携式计算机、智能移动终端等。
发明人在研究中发现,在一些应用场景(如深度学习)中,数据是有其分布特征的。具体的,在数据的值域范围中,有且仅有一个数值会大量出现,而其他数值出现的概率较少。如,通常情况下,数值0会大量出现,其他数值出现的概率较少。
在本发明实施例中,电子设备可以针对存在分布特征的数据,采用对应的数据压缩方法对其进行压缩。其中,可以将大量出现的字符称为压缩字符,其他字符称为非压缩字符。具体的,可以针对压缩字符和非压缩字符进行不同的处理。
具体的,可以预先设定一压缩字符(如0),对数据进行压缩时,针对连续出现的压缩字符,仅记录其数量;针对非压缩字符,记录其实际数值。也就是说,当接收到非压缩字符时,即进行一次压缩处理;而针对压缩字符,可以接收到多个压缩字符后,才进行一次压缩处理。当压缩字符大量出现时,能够达到很好的数据压缩效果。
并且,在本发明实施例中,电子设备可以每次接收一个目标数据。其中,目标数据占用位数可以为8比特。如,电子设备接收到的目标数据可以为00000000或00110101等。
S102,获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;如果是,执行步骤S103,如果否,执行步骤S105。
在本发明实施例中,为了区分压缩字符和非压缩字符,可以设定每次压缩过程中压缩字符所占的比特位和非压缩字符所占的比特位。如,压缩字符可以占用3比特、4比特等,非压缩字符可以占用8比特、12比特等。
当设定压缩字符所占的比特位后,一次压缩过程中电子设备最多能接收的压缩字符的数量就不能无限大。例如,当压缩字符所占比特位为3时,电子设备最多能接收的压缩字符的数量为111(2进制数),即为7。因此,电子设备可以根据压缩字符所占的比特位,设定对应的已接收压缩字符的阈值。
在本发明实施例中,电子设备可以存储已接收压缩字符的数量,以确认已接收压缩字符的数量是否超过设定的阈值。例如,电子设备可以每次接收到目标数据后,判断该目标数据是否为压缩字符,并根据判断结果来更新存储的已接收压缩字符的数量。其中,已接收压缩字符的数量为电子设备已接收的,且还未对其进行压缩处理的压缩字符的数量。
在数据压缩过程中,电子设备接收到目标数据后,可以首先获取存储的已接收压缩字符的数量,并判断已接收压缩字符的数量是否小于预设阈值,以根据判断结果,对目标数据进行对应的操作。例如,电子设备可以将已接收压缩字符的数量存储在预定存储空间中,接收到目标数据后,其可以从该预定存储空间中获取已接收压缩字符的数量,并比较获取的数量是否小于预设阈值。
S103,判断所述目标数据是否为压缩字符;如果是,执行步骤S104,并返回执行步骤S101,如果否,执行步骤S105。
当电子设备判断得到已接收压缩字符的数量小于预设阈值时,表明还可以接收压缩字符。这种情况下,电子设备可以进一步判断目标数据是否为压缩字符,以确定是否要对目标数据进行压缩。
S104,更新所述已接收压缩字符的数量。
当电子设备判断得到目标数据为压缩字符时,其可以不对目标数据马上进行压缩,而是更新存储的已接收压缩字符的数量,并返回继续接收新的目标数据。
S105,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。
当电子设备判断出存储的已接收压缩字符的数量不小于预设阈值,即等于预设阈值时,或者,电子设备判断出目标数据为非压缩字符时,其可以根据已接收压缩字符的数量、目标数据、以及预设阈值对应的第一预设位数,对已接收压缩字符和目标数据进行压缩。
具体的,电子设备可以根据已接收压缩字符的数量、目标数据、以及预设阈值对应的第一预设位数,生成包含第一预设位数的第一数据、以及目标数据的压缩数据。例如,压缩后的数据中可以包括与压缩字符数量对应的第一数据和目标数据。并且,由于电子设备是先接收到压缩字符后接收到目标数据,因此与原始数据相对应,第一数据可以位于目标数据之前。
如,当原始数据为00000000 00000000 00000000 00000000 00000000 0000000000000000 00000000 00000000 00000000 00000000 00000000 00000011时,压缩后的数据格式可以为:(3’d7,8’d0),(3’d4,8’d3),实际压缩后的数据为11100000000 10000000011。
其中,x’dy中x表示占用的比特位数,y表示具体的数值。也就是说,(3’d7,8’d0)表示,占用3比特用来表示压缩字符的数量为7,占用8比特用来表示最后接收到的目标数据为0,即11100000000是对原始的8个0压缩后的数据。(3’d4,8’d3)表示,占用3比特用来表示压缩字符的数量为4,占用8比特用来表示最后接收到的目标数据为3,即10000000011是对原始的4个0和1个3压缩后的数据。
当原始数据为00000000 00000000 00000000 00000000 00000011 00100011时,压缩后的数据格式可以为:(3’d4,8’d3),(3’d0,8’d35),实际压缩后的数据为1000000001100000100011。
其中,(3’d4,8’d3)表示,占用3比特用来表示压缩字符的数量为4,占用8比特用来表示最后接收到的目标数据为3,即10000000011是对原始的4个0和1个3压缩后的数据。(3’d0,8’d35)表示,占用3比特用来表示压缩字符的数量为0,占用8比特用来表示目标数据为35,即00000100011是对原始数据35压缩后的数据。
需要说明的是,在本发明实施例中,电子设备可以根据上述步骤进行数据压缩,或者,也可以对上述步骤进行调整,只要能达到数据压缩目的即可。例如,电子设备还可以先执行步骤S103,判断目标字符是否为压缩字符,如果否,执行步骤S105;如果是,再执行步骤S102,获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;如果是,执行步骤S104,如果否,执行步骤S105。
本发明实施例中,接收到待处理的目标数据后,即可对该目标数据进行压缩,而不需要先接收所有的待压缩数据,对待压缩数据进行分析后再进行压缩,从而能够提高数据压缩效率。
通常情况下,电子设备中的数据都是以8比特位来存储的。但是,可以理解,针对不同值域的数据,其所需要占用的比特位并不相同。例如,对于值域范围为0-1的数据,其所需要占用的比特位为1;对于值域范围为2-3的数据,其所需要占用的比特位为2;对于值域范围为4-7的数据,其所需要占用的比特位为3;对于值域范围为8-15的数据,其所需要占用的比特位为4等等。
作为本发明实施例的一种实施方式,为了进一步减小压缩后数据的大小,可以针对不同值域范围的目标数据,设置占用不同的比特位。如,可以针对值域范围为0-15的目标数据,设置其占用4比特位;针对值域范围为16-255的目标数据,设置其占用8比特位。相应的,还可以设置一标志位,用来存放标志目标数据所占用比特位数的标识符。例如,可以占用1比特作为标志位,其中,0标识符表示目标数据占用4比特,1标识符表示目标数据占用8比特。
在本发明实施例的一种可选实施方式中,如图2所示,本实施例提供的数据压缩方法,在对数据进行压缩之前,还包括:
S106,确定所述目标数据的值域。
在本实施例中,电子设备对已接收压缩字符和目标数据进行压缩之前,可以首先确定目标数据的值域。即可以确定目标数据的数值大小,如,可以确定目标数据为1、2、3、15等。
S107,根据所述目标数据的值域,以及预设的各值域范围与标识符的对应关系,确定所述目标数据对应的目标标识符。
在本发明实施例中,为了标识目标数据占用的比特位数,电子设备可以预先设定各值域范围与标识符的对应关系。例如,可以设定值域范围0-15,对应的标识符为0;值域范围16-255,对应的标识符为1。
在对目标数据进行压缩时,电子设备可以根据目标数据的值域,以及预设的各值域范围与标识符的对应关系,确定目标数据对应的目标标识符。例如,当确定目标数据值域为3时,可以确定其所在值域范围为0-15,进而确定对应的目标标识符为0;当确定目标数据值域为24时,可以确定其所在值域范围为16-255,进而确定对应的目标标识符为1。
S108,根据所述目标数据的值域,以及预设的各值域范围与占用位数的对应关系,确定所述目标数据的目标占用位数。
电子设备还可以预先设定各值域范围与占用位数的对应关系。如,可以设定值域范围0-15对应的占用位数为4;值域范围16-255对应的占用位数为8。
在进行数据压缩时,当确定目标数据值域为3时,可以确定其所在值域范围为0-15,进而确定对应的目标占用位数为4;当确定目标数据值域为24时,可以确定其所在值域范围为16-255,进而确定对应的目标占用位数为8。
相应的,步骤S105为:
S105A,根据所述目标标识符、所述已接收压缩字符的数量、所述目标占用位数、所述目标数据、以及所述预设阈值对应的第一预设位数,生成包含所述目标标识符、所述第一预设位数的第一数据、以及所述目标占用位数的目标数据的压缩数据。
确定目标数据的目标标识符和目标占用位数后,电子设备可以根据目标标识符、已接收压缩字符的数量、目标占用位数、目标数据、以及预设阈值对应的第一预设位数,生成包含目标标识符、第一预设位数的第一数据、以及目标占用位数的目标数据的压缩数据。例如,压缩后的数据中可以依次包括目标标识符、第一预设位数的第一数据和目标占用位数的目标数据。
需要说明的是,上述步骤S107和步骤S108的执行顺序可以不限于本实施例所描述的方式。也就是说,可以先执行步骤S107后执行步骤S108,也可以先执行步骤S108后执行步骤S107。
如,当原始数据为00000000 00000000 00000000 00000000 00000000 0000000000000000 00000000 00000000 00000000 00000000 00000000 00000011时,压缩后的数据格式可以为:(1’d0,3’d7,4’d0),(1’d0,3’d4,4’d3),实际压缩后的数据为0111000001000011。
其中,(1’d0,3’d7,4’d0)表示,占用1比特用来表示目标数据所占比特位为4,占用3比特用来表示压缩字符的数量为7,占用4比特用来表示最后接收到的目标数据为0,即01110000是对原始的8个0压缩后的数据。(1’d0,3’d4,4’d3)表示,占用1比特用来表示目标数据所占比特位为4,占用3比特用来表示压缩字符的数量为4,占用4比特用来表示最后接收到的目标数据为3,即01000011是对原始的4个0和1个3压缩后的数据。
当原始数据为00000000 00000000 00000000 00000000 00000011 00100011时,压缩后的数据格式可以为:(1’d0,3’d4,4’d3),(1’d1,3’d0,8’d35),实际压缩后的数据为01000011 100000100011。
其中,(1’d0,3’d4,4’d3)表示,占用1比特用来表示目标数据所占比特位为4,占用3比特用来表示压缩字符的数量为4,占用4比特用来表示目标数据为3,即01000011是对原始的4个0和1个3压缩后的数据。(1’d1,3’d0,8’d35)表示,占用1比特用来表示目标数据所占比特位为8,占用3比特用来表示压缩字符的数量为0,占用8比特用来表示目标数据为35,即100000100011是对原始数据35压缩后的数据。
本发明实施例中,针对不同大小的目标数据,占用不同的比特位来表示该目标数据,可以有效的减小压缩后数据所占的空间,从而提高数据压缩效果。
作为本发明实施例的一种实施方式,为了标识已接收压缩字符的数量,电子设备可以启用计数器来记录已接收压缩字符的数量,以提高获取的已压缩字符数量的准确性。这种情况下,电子设备在获取已接收压缩字符数量时,可以获取当前计数器的值,并将所获取的值确定为已接收压缩字符的数量。
例如,在进行数据压缩之前,电子设备可以启用计数器,并将其设置为初始值,如0。之后每接收到一个压缩字符,可以增大计数器的值,如将计数器的值加1。当已接收压缩字符的数量等于预设阈值或接收到非压缩字符,对数据进行压缩后,可以将计数器的值更新为初始值,如将其清零。如此循环计数,直到完成所有的数据压缩。
下面结合一个具体的实施例,对本发明提供的数据压缩方法进行详细说明。
如图3所示,电子设备接收到目标数据后,可以首先进入流程判断阶段。具体的,电子设备首先判断当前计数器的值是否小于7,当当前计数器的值小于7时,继续判断目标数据是否为压缩字符;当当前计数器的值不小于7时,表明当前接收的压缩字符的数量已等于7,不能再接收更多的压缩字符了,则直接进入组包输出阶段。
当电子设备判断出目标数据为压缩字符0时,其可以将计数器加1,并返回接收下一目标数据。当电子设备判断出目标数据不为压缩字符0时,则进入组包输出阶段。
在组包输出阶段,电子设备可以根据目标数据的值域,确定其标识符s以及所占位数,若目标数据的值域范围属于0-15,则将其截位为4比特的数据v,若目标数据的值域范围属于16-255,则保持8比特数据v。并且,可以获取当前计数器的值c,进而依次将标识符s、计数器的值c、以及目标数据v组合输出。
输出压缩后的数据的同时,电子设备还可以将计数器清零。进而,后续可以接收新的目标数据,再次进行数据压缩。
相应于图1所示实施例,本发明实施例还提供了一种数据解压缩方法,如图4所示,本发明实施例提供的一种数据解压缩方法,可以包括:
S401,接收压缩数据。
在本发明实施例中,电子设备可以接收压缩数据。其中,上述压缩数据可以为根据图1-图3所示实施例压缩后的数据。
S402,在所述压缩数据中,获取第一预设位数的第一数据,并根据所述第一数据确定压缩字符的数量。
电子设备接收到的压缩数据中,有一部分数据表示压缩字符的数量,另一部分表示除压缩字符之外实际的数据。在本发明实施例中,电子设备可以首先确定压缩字符的数量,进而输出对应的压缩字符。
具体的,电子设备可以在压缩数据中,获取第一预设位数的第一数据,并根据所述获取的第一数据确定压缩字符的数量。例如,当对数据进行压缩过程中压缩字符的数量所占比特位为3时,在对压缩数据进行解压缩时,就可以获取前3比特的第一数据,并将所获取的第一数据对应的值确定为压缩字符的数量。
如,当电子设备获取的前3比特的第一数据为010时,即可确定压缩字符的数量为2;当获取的前3比特的第一数据为111时,即可确定压缩字符的数量为7。
S403,判断所述压缩字符的数量是否为0;如果否,执行步骤S404,如果是,执行步骤S405。
确定压缩字符的数量后,电子设备可以进一步判断压缩字符的数量是否为0,以根据判断结果,对数据进行解压缩操作。
S404,输出第二预设位数的压缩字符,更新所述压缩字符的数量,并返回执行步骤S403。
当电子设备判断出压缩字符的数量为非0时,表明待解压的数据中包含压缩字符。这种情况下,电子设备可以输出对应数量的压缩字符。
具体的,电子设备可以输出第二预设位数的压缩字符。如,可以输出8比特位的压缩字符。并且,可以更新压缩字符数量,如,将压缩字符数量减1。之后,可以返回判断压缩字符数量是否为0。循环执行本步骤,直到判断出压缩字符的数量为0,表明压缩字符已全部输出。
S405,获取并输出第二预设位数的数据。
当电子设备判断出压缩字符的数量为0时,电子设备可以获取第二预设位数的数据,并输出所获取的数据。如,电子设备可以获取8比特的数据,并输出所获取的数据。其中,电子设备在输出8比特位的数据时,该数据在压缩数据中的高位仍为输出后数据的高位,该数据在压缩数据中的低位仍为输出后数据的低位。
如,当电子设备接收到的压缩数据为11100000000 10000000011时,其可以首先获取前3比特的第一数据,即111,确定压缩字符的数量为7。进而,电子设备可以依次输出7个8比特的0。
然后,电子设备将判断出压缩字符的数量为0,进而,其可以获取并输出接下来的8比特数据00000000。即,电子设备输出的数据为:00000000 00000000 00000000 0000000000000000 00000000 00000000 00000000。
之后,电子设备可以继续获取剩下的数据中前3比特的数据,即100,确定压缩字符的数量为4。进而,电子设备可以依次输出4个8比特的0。
然后,电子设备将判断出压缩字符的数量为0,进而,其可以获取并输出接下来的8比特数据00000011。即,电子设备输出的数据为:00000000 00000000 00000000 0000000000000011。
这样,电子设备就完成了对压缩数据的解压缩。与图1所示实施例对应,可以看出,电子设备可以准确的对数据进行解压缩,得到原始数据。
本发明实施例中,电子设备可以对其接收到的压缩数据进行解压缩,得到原始数据。
相应于图2所示实施例,在本发明实施例的一种实施方式中,压缩数据中还包括与不同值域范围的数据对应的标识符。其中,任一标识符表示,其所在的压缩数据中,末位的有效数据在压缩数据中所占位数。如,1-15值域范围的数据对应的标识符可以为0,表示该数据在压缩数据中占用4比特;16-255值域范围的数据对应的标识符可以为1,表示该数据在压缩数据中占用8比特。
如图5所示,在图4所示实施例的基础上,本发明提供的数据解压缩方法,在步骤S402之前,还可以包括:
S406,在所述压缩数据的预设位置处获取标识符,并根据预设的各标识符与占用位数的对应关系,确定所述标识符对应的第三预设位数。
在本发明实施例中,压缩数据的最高位可以为标识符。因此,在获取预设位数的目标数据之前,电子设备可以先获取标识符。并且,可以确定标识符对应的第三预设位数。
例如,当电子设备获取到的标识符为0时,其可以确定对应的第三预设位数为4;当电子设备获取到的标识符为1时,其可以确定对应的第三预设位数为8。
相应的,步骤S405包括:
S405A,判断所述第三预设位数与所述第二预设位数是否相同;如果是,执行步骤S405B,如果否,执行步骤S405C。
电子设备确定标识符对应的第三预设位数后,其可以判断第三预设位数与第二预设位数是否相同。例如,当第二预设位数为8时,也就是判断第三预设位数是否为8。
S405B,获取并输出第三预设位数的数据。
当电子设备判断出第三预设位数与第二预设位数相同时,其可以确定压缩数据中存储的即为8比特的有效数据。这种情况下,其可以直接获取并输出第三预设位数的数据。其中,电子设备在输出8比特位的数据时,该数据在压缩数据中的高位仍为输出后数据的高位,该数据在压缩数据中的低位仍为输出后数据的低位。
S405C,获取第三预设位数的数据,并通过在高位补0的方式将所获取的数据补充至所述第二预设位数后,输出处理后的数据。
当电子设备判断出第三预设位数与第二预设位数不同时,其可以确定压缩数据中存储的为小于8比特的有效数据。这种情况下,其可以获取第三预设位数的数据,并通过在高位补0的方式将所获取的数据补充至第二预设位数后,输出处理后的数据。
如,当电子设备接收到的压缩数据为01110000 01000011时,其可以首先获取最高位的数据,即0,进而根据获取的数据确定有效数据占用位数为4。之后,可以获取第2-4比特的数据,即111,确定压缩字符的数量为7。进而,电子设备可以依次输出7个8比特的0。
然后,电子设备可以获取接下来的4比特数据0000,并将其补充至8比特00000000。即,电子设备输出的数据为:00000000 00000000 00000000 00000000 00000000 0000000000000000 00000000。
之后,电子设备可以继续获取最高位的数据,即0,进而根据获取的数据确定有效数据占用位数为4。之后,可以获取第2-4比特的数据,即100,确定压缩字符的数量为4。进而,电子设备可以依次输出4个8比特的0。
然后,电子设备可以获取接下来的4比特数据0011,并将其补充至8比特00000011。即,电子设备输出的数据为:00000000 00000000 00000000 00000000 00000011。
本发明实施例中,针对不同大小的有效数据,占用不同的比特位来表示该有效数据,可以减小压缩后数据所占的空间。在进行数据解压缩时,可以针对占用不同空间的有效数据,均解压缩到正常大小的数据,从而保证了解压缩后数据的准确性。
作为本发明实施例的一种实施方式,为了标识压缩字符的数量,电子设备可以启用计数器来记录压缩字符的数量。具体的,电子设备在确定压缩字符的数量之后,可以将所确定的数量赋值给计数器。进而,在判断压缩字符数量是否为零时,可以判断计数器的值是否为0。
例如,在进行数据解压缩之前,电子设备可以启用计数器。之后确定压缩字符数量后,可以将确定的值赋值给计数器。并且,在每输出8比特的压缩字符后,可以减小计数器的值,如将计数器的值减1。
下面结合一个具体的实施例,对本发明提供的数据解压缩方法进行详细说明。
如图6所示,电子设备接收到压缩数据后,可以获取4比特数据。其中,这4比特数据中,最高位的数据为标识符,其余3比特表示压缩字符的数量。获取到数据后,电子设备可以将第2-4比特的数据的值赋值给计数器,然后判断计数器是否为0。
当计数器不为0时,表示有待解压的压缩字符。电子设备可以输出8比特的0,将计数器减1,并返回判断计数器的值是否为0。循环该步骤,直到计数器的值为0,表示压缩字符已输出完成。
当计数器不为0时,电子设备可以判断获取的最高位的数值是否为1,以确定后续待解压的有效数据所占位数。当最高位数值为1时,表明待解压的有效数据所占位数为8,从而电子设备可以继续获取8比特的数据,并输出所获取的数据。
当最高位数值不为1时,表明待解压的有效数据所占位数为4,从而电子设备可以继续获取4比特的数据,并将该数据最高位补充4个0扩充为8比特,输出扩充后的数据。
相应于上面的方法实施例,本发明实施例还提供了相应的设备实施例。
如图7所示,其示出了本发明实施例提供的一种压缩设备,所述设备包括:
处理器710、存储器720、通信接口730和总线740;
所述处理器710、所述存储器720和所述通信接口730通过所述总线740连接并完成相互间的通信;
所述存储器720存储可执行程序代码;
所述处理器710通过读取所述存储器720中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行本发明实施例的一种数据压缩方法,其中,所述数据压缩方法包括:
接收待处理的目标数据;
获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;
当所述已接收压缩字符的数量小于所述预设阈值时,判断所述目标数据是否为压缩字符,当所述目标数据为非压缩字符时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据;
当所述已接收压缩字符的数量不小于所述预设阈值时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。
本发明实施例中,接收到待处理的目标数据后,即可对该目标数据进行压缩,而不需要先接收所有的待压缩数据,对待压缩数据进行分析后再进行压缩,从而能够提高数据压缩效率。
如图8所示,其示出了本发明实施例提供的一种解压缩设备,所述设备包括:处理器810、存储器820、通信接口830和总线840;
所述处理器810、所述存储器820和所述通信接口830通过所述总线840连接并完成相互间的通信;
所述存储器820存储可执行程序代码;
所述处理器810通过读取所述存储器820中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行本发明实施例的一种数据解压缩方法,其中,所述数据解压缩方法包括:
接收压缩数据;
在所述压缩数据中,获取第一预设位数的第一数据,并根据所述第一数据确定压缩字符的数量;
判断所述压缩字符的数量是否为0;
当所述压缩字符的数量为非0时,输出第二预设位数的压缩字符,更新所述压缩字符的数量,并返回执行所述判断所述压缩字符的数量是否为0的步骤;
当所述压缩字符的数量为0时,获取并输出第二预设位数的数据。
本发明实施例中,解压缩设备可以对其接收到的压缩数据进行解压缩,得到原始数据。
对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (16)

1.一种数据压缩方法,其特征在于,所述方法包括:
接收待处理的目标数据;
获取存储的已接收压缩字符的数量,并判断所述已接收压缩字符的数量是否小于预设阈值,其中,所述压缩字符为预先设定的;
当所述已接收压缩字符的数量小于所述预设阈值时,判断所述目标数据是否为压缩字符,当所述目标数据为非压缩字符时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据;
当所述已接收压缩字符的数量不小于所述预设阈值时,根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据的步骤包括:
根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,生成包含所述第一预设位数的第一数据、以及所述目标数据的压缩数据。
3.根据权利要求1所述的方法,其特征在于,所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据之前,所述方法还包括:
确定所述目标数据的值域;
根据所述目标数据的值域,以及预设的各值域范围与标识符的对应关系,确定所述目标数据对应的目标标识符;
根据所述目标数据的值域,以及预设的各值域范围与占用位数的对应关系,确定所述目标数据的目标占用位数;
所述根据所述已接收压缩字符的数量、所述目标数据、以及所述预设阈值对应的第一预设位数,对所述已接收压缩字符和所述目标数据进行压缩,生成压缩数据的步骤包括:
根据所述目标标识符、所述已接收压缩字符的数量、所述目标占用位数、所述目标数据、以及所述预设阈值对应的第一预设位数,生成包含所述目标标识符、所述第一预设位数的第一数据、以及所述目标占用位数的目标数据的压缩数据。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述判断所述目标数据是否为压缩字符之后,所述方法还包括:
当所述目标数据为压缩字符时,更新所述已接收压缩字符的数量,并返回执行所述接收待处理的目标数据的步骤。
5.根据权利要求4所述的方法,其特征在于,所述获取存储的已接收压缩字符的数量的步骤包括:
获取当前计数器的值,并将所获取的值确定为所述已接收压缩字符的数量。
6.根据权利要求5所述的方法,其特征在于,所述更新所述已接收压缩字符的数量的步骤包括:
增大所述计数器的值。
7.根据权利要求5所述的方法,其特征在于,对所述已接收压缩字符和所述目标数据进行压缩之后,所述方法还包括:
将所述当前计数器的值更新为初始值。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述压缩字符为预定至少一种字符,所述非压缩字符为所述压缩字符之外的字符。
9.根据权利要求2-3任一项所述的方法,其特征在于,所述第一预设位数的第一数据是根据所述已接收压缩字符的数量确定的。
10.一种数据解压缩方法,其特征在于,所述方法包括:
接收压缩数据;
在所述压缩数据中,获取第一预设位数的第一数据,并根据所述第一数据确定压缩字符的数量;
判断所述压缩字符的数量是否为0;
当所述压缩字符的数量为非0时,输出第二预设位数的压缩字符,更新所述压缩字符的数量,并返回执行所述判断所述压缩字符的数量是否为0的步骤;
当所述压缩字符的数量为0时,获取并输出第二预设位数的数据。
11.根据权利要求10所述的方法,其特征在于,所述压缩数据中还包括与不同值域范围的数据对应的标识符;
所述在所述压缩数据中,获取第一预设位数的第一数据之前,所述方法还包括:
在所述压缩数据的预设位置处获取标识符,并根据预设的各标识符与占用位数的对应关系,确定所述标识符对应的第三预设位数;
相应的,所述获取并输出第二预设位数的数据的步骤包括:
判断所述第三预设位数与所述第二预设位数是否相同;
当所述第三预设位数与所述第二预设位数相同时,获取并输出第三预设位数的数据;
当所述第三预设位数与所述第二预设位数不同时,获取第三预设位数的数据,并通过在高位补0的方式将所获取的数据补充至所述第二预设位数后,输出处理后的数据。
12.根据权利要求10或11所述的方法,其特征在于,所述根据所述第一数据确定压缩字符的数量之后,所述方法还包括:
将所确定的数量赋值给计数器;
相应的,所述判断所述压缩字符的数量是否为0的步骤包括:
判断所述计数器的值是否为0。
13.根据权利要求12所述的方法,其特征在于,所述更新所述压缩字符的数量的步骤包括:
减小所述计数器的值。
14.根据权利要求10或11所述的方法,其特征在于,所述压缩字符为预定至少一种字符。
15.一种压缩设备,其特征在于,包括:
处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器存储可执行程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如权利要求1-9任一项所述的一种数据压缩方法。
16.一种解压缩设备,其特征在于,包括:
处理器、存储器、通信接口和总线;
所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;
所述存储器存储可执行程序代码;
所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如权利要求10-14任一项所述的一种数据解压缩方法。
CN201710334811.9A 2017-05-12 2017-05-12 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备 Active CN108880559B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710334811.9A CN108880559B (zh) 2017-05-12 2017-05-12 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710334811.9A CN108880559B (zh) 2017-05-12 2017-05-12 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备

Publications (2)

Publication Number Publication Date
CN108880559A CN108880559A (zh) 2018-11-23
CN108880559B true CN108880559B (zh) 2022-03-04

Family

ID=64320179

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710334811.9A Active CN108880559B (zh) 2017-05-12 2017-05-12 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备

Country Status (1)

Country Link
CN (1) CN108880559B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981108B (zh) * 2017-12-27 2023-05-02 杭州海康威视数字技术股份有限公司 数据压缩方法、解压缩方法、装置及设备
CN111279617A (zh) * 2019-04-17 2020-06-12 深圳市大疆创新科技有限公司 数据解压缩的装置与方法
CN111831211A (zh) * 2019-04-19 2020-10-27 阿里巴巴集团控股有限公司 数据传输方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787384A (zh) * 2004-12-06 2006-06-14 松下电器产业株式会社 解码方法及编码方法
CN1949670A (zh) * 2005-10-10 2007-04-18 中兴通讯股份有限公司 一种数据压缩及解压缩方法
CN103236847A (zh) * 2013-05-06 2013-08-07 西安电子科技大学 基于多层哈希结构与游程编码的数据无损压缩方法
US8878705B1 (en) * 2014-03-28 2014-11-04 Npression Technologies, LLC Variable bit-length reiterative lossless compression system and method
CN105262491A (zh) * 2015-10-13 2016-01-20 深圳市有方科技股份有限公司 数据压缩方法及系统、数据解压缩方法及系统、通信设备
CN106656198A (zh) * 2016-11-23 2017-05-10 郑州云海信息技术有限公司 一种基于lz77的编码方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1787384A (zh) * 2004-12-06 2006-06-14 松下电器产业株式会社 解码方法及编码方法
CN1949670A (zh) * 2005-10-10 2007-04-18 中兴通讯股份有限公司 一种数据压缩及解压缩方法
CN103236847A (zh) * 2013-05-06 2013-08-07 西安电子科技大学 基于多层哈希结构与游程编码的数据无损压缩方法
US8878705B1 (en) * 2014-03-28 2014-11-04 Npression Technologies, LLC Variable bit-length reiterative lossless compression system and method
CN105262491A (zh) * 2015-10-13 2016-01-20 深圳市有方科技股份有限公司 数据压缩方法及系统、数据解压缩方法及系统、通信设备
CN106656198A (zh) * 2016-11-23 2017-05-10 郑州云海信息技术有限公司 一种基于lz77的编码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LZW字典压缩改进算法研究及FPGA硬件实现;王智;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140415;第I136-58页 *

Also Published As

Publication number Publication date
CN108880559A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
US11044495B1 (en) Systems and methods for variable length codeword based data encoding and decoding using dynamic memory allocation
CN112953550B (zh) 数据压缩的方法、电子设备及存储介质
CN106549673B (zh) 一种数据压缩方法及装置
CN116681036B (zh) 基于数字孪生的工业数据存储方法
CN108880559B (zh) 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备
CN107888197B (zh) 一种数据压缩方法和装置
CN112165331A (zh) 数据压缩方法及其装置、数据解压方法及其装置、存储介质及电子设备
CN110808738B (zh) 数据压缩方法、装置、设备及计算机可读存储介质
CN110008192A (zh) 一种数据文件压缩方法、装置、设备及可读存储介质
US20190052284A1 (en) Data compression apparatus, data decompression apparatus, data compression program, data decompression program, data compression method, and data decompression method
CN115801902B (zh) 一种网络访问请求数据的压缩方法
CN110413580B (zh) 针对fpga配置码流的压缩方法、系统、装置
CN113852379A (zh) 一种数据编码方法、系统、设备及计算机可读存储介质
CN101534124B (zh) 一种用于短小自然语言的压缩算法
US6748520B1 (en) System and method for compressing and decompressing a binary code image
CN109981108B (zh) 数据压缩方法、解压缩方法、装置及设备
US20100194607A1 (en) Data compression method and apparatus
CN108053034B (zh) 模型参数处理方法、装置、电子设备及存储介质
US20160092492A1 (en) Sharing initial dictionaries and huffman trees between multiple compressed blocks in lz-based compression algorithms
CN113542225B (zh) 一种数据的压缩方法、装置、终端设备及存储介质
CN116934487B (zh) 一种金融清算数据优化存储方法及系统
US9479195B2 (en) Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device
CN116707532A (zh) 一种压缩文本的解压方法、装置、存储介质及电子设备
CN113556543B (zh) 一种图像压缩方法、装置、电子设备及存储介质
CN115603758A (zh) 一种客户号压缩和解压方法及装置

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