CN111294055B - 一种基于自适应字典的数据压缩的编解码方法 - Google Patents

一种基于自适应字典的数据压缩的编解码方法 Download PDF

Info

Publication number
CN111294055B
CN111294055B CN202010107260.4A CN202010107260A CN111294055B CN 111294055 B CN111294055 B CN 111294055B CN 202010107260 A CN202010107260 A CN 202010107260A CN 111294055 B CN111294055 B CN 111294055B
Authority
CN
China
Prior art keywords
characters
dictionary
value
prefix
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
CN202010107260.4A
Other languages
English (en)
Other versions
CN111294055A (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.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
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 Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN202010107260.4A priority Critical patent/CN111294055B/zh
Publication of CN111294055A publication Critical patent/CN111294055A/zh
Application granted granted Critical
Publication of CN111294055B publication Critical patent/CN111294055B/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于自适应字典的数据压缩的编解码方法,将自适应字典和数据预测理论结合在一起,利用自适应字典对数据进行准确预测,通过输出真实值与预测值的差值,把数据转换到一个更加紧凑、高效的空间,以提高数据的压缩率,满足计算机系统中对数据存储、传输速率和实时性的速率需求。

Description

一种基于自适应字典的数据压缩的编解码方法
技术领域
本发明属于数据压缩重构领域,特别涉及了一种基于自适应字典的编解码方法。
背景技术
自20世纪70年代以来,计算机和互联网的普及为人类的生产生活带来了极大的便利。与此同时,存储数据量的快速增长和传输速率的不断提高,使数据压缩技术开始得到广泛的关注和应用。根据压缩过程是否丢失信息,数据压缩被分为有损压缩和无损压缩两大类,每大类又包含多种不同的压缩算法。有损压缩一般针对特定的形式的信息,例如图像、视频、音频等。而无损压缩可以用于任意信息的压缩,包括文本、网页、图像、专用数据流等,是相对有损压缩更为通用的数据压缩方法。
数据压缩的一般方法通常包括建模表达、二次量化、熵编码三个步骤。建模表达是建立一个模型以便能更紧凑、更有效地重新表达规律性不那么明显的原始数据,此步骤目的降低信号的熵,以便于提高数据的压缩效率。目前,建模表达的常用方式有KL变换、DCT、DWT、预测编码等。但上述方法计算量大、用时长,不利于数据的实时压缩,尤其对于周期信号,上述变换没有能够充分利用数据间的冗余度,使得变换后的空间数据的熵依旧比较大。
发明内容
为了解决上述背景技术提到的技术问题,本发明提出了一种基于自适应字典的数据压缩的编解码方法,提高数据的压缩率。
为了实现上述技术目的,本发明的技术方案为:
一种基于自适应字典的数据压缩的编码方法,包括以下步骤:
(1a)量化原始数据序列{x(i)},设x(k)为当前待编码字符,e(k)为x(k)的编码字符,下标k为位置指针,首先令k=1和2,此时不对x(1)和x(2)进行编码,即直接输出编码字符e(1)=x(1),e(2)=x(2);然后令k=3,以x(k)的前缀字符x(k-1)与x(k-2)为二维坐标地址,储存已编码字符的前缀字符之间耦合的数据结构,建立二维字典D,D为一个n×n的矩阵,n为序列{x(i)}中不同字符的个数;
(2a)搜寻字典D中D(x(k-2),x(k-1))对应地址是否存在值,如果是,则执行步骤(3a),否则执行步骤(4a);其中,D(x(k-2),x(k-1))表示字典D中(x(k-2),x(k-1))位置的值;
(3a)把D(x(k-2),x(k-1))的值赋值给x′(k),然后转入步骤(5a);
(4a)利用前缀字符x(k-1)与x(k-2)的线性组合预测x′(k);
(5a)利用x′(k)为x(k)编码,输出编码字符e(k);
(6a)使用x(k)更新字典中D(x(k-2),x(k-1))的值;
(7a)令k=k+1,更新前缀字符x(k-1)和x(k-2),返回步骤(2a)。
进一步地,在步骤(4a)中,x′(k)=ax(k-1)+bx(k-2),a、b为前缀字符的线性预测系数。
进一步地,在步骤(5a)中,e(k)=x(k)-x′(k)。
基于上述编码方法的解码方法,包括以下步骤:
(1b)输入待解码数据序列{e(i)},设e(k)为当前待解码字符,u(k)为e(k)的解码字符,下标k为位置指针,首先令k=1和2,不对e(1)和e(2)进行编码,即直接输出解码字符u(1)=e(1),u(2)=e(2);然后令k=3,以u(k)的前缀字符u(k-1)与u(k-2)为二维坐标地址,储存已解码字符的前缀字符之间耦合的数据结构,建立二维字典H,H为一个n×n的矩阵,n为序列{e(i)}中不同字符的个数;
(2b)搜寻字典H中H(u(k-2),u(k-1))对应地址是否存在值,如果是,则执行步骤(3b),否则执行步骤(4b);其中,H(u(k-2),u(k-1))表示字典H中(u(k-2),u(k-1))位置的值;
(3b)把H(u(k-2),u(k-1))的值赋值给u′(k),然后转入步骤(5b);
(4b)利用前缀字符u(k-1)与u(k-2)的线性组合预测u′(k),此步骤中前缀字符的线性预测系数与权利要求1步骤(4a)中设置的相同;
(5b)利用u′(k)为e(k)解码,输出解码字符u(k);
(6b)使用u(k)更新字典H中H(u(k-2),u(k-1))的值;
(7b)令k=k+1,更新前缀字符u(k-1)和u(k-2),返回步骤(2b)。
进一步地,在步骤(4b)中,u′(k)=au(k-1)+bu(k-2),a、b为前缀字符的线性预测系数。
进一步地,在步骤(5a)中,u(k)=e(k)+u′(k)。
采用上述技术方案带来的有益效果:
(1)本发明能够把数据变换到一个更加稀疏的空间,从而使编码后的数据比原始数据有更低的信号熵;
(2)本发明输出的编码数据比原始数据更容易压缩,压缩的效果更好;
(3)本发明算法复杂度低,实时性好,有利于实时压缩。
附图说明
图1是本发明编码系统原理框图;
图2是本发明编码流程图;
图3是本发明解码系统原理框图;
图4是本发明解码流程图;
图5是本实施例周期信号的编码和解码示意图;
图6是本实施例非周期信号编码和解码示意图。
具体实施方式
以下将结合附图,对本发明的技术方案进行详细说明。
如图1和2所示,本发明设计的一种基于自适应字典的数据压缩的编码方法,包括以下步骤:
(1a)量化原始数据序列{x(i)},设x(k)为当前待编码字符,e(k)为x(k)的编码字符,下标k为位置指针,首先令k=1和2,此时不对x(1)和x(2)进行编码,即直接输出编码字符e(1)=x(1),e(2)=x(2);然后令k=3,以x(k)的前缀字符x(k-1)与x(k-2)为二维坐标地址,储存已编码字符的前缀字符之间耦合的数据结构,建立二维字典D,D为一个n×n的矩阵,n为序列{x(i)}中不同字符的个数;
(2a)搜寻字典D中D(x(k-2),x(k-1))对应地址是否存在值,如果是,则执行步骤(3a),否则执行步骤(4a);其中,D(x(k-2),x(k-1))表示字典D中(x(k-2),x(k-1))位置的值;
(3a)把D(x(k-2),x(k-1))的值赋值给x′(k),然后转入步骤(5a);
(4a)利用前缀字符x(k-1)与x(k-2)的线性组合预测x′(k);
(5a)利用x′(k)为x(k)编码,输出编码字符e(k);
(6a)使用x(k)更新字典中D(x(k-2),x(k-1))的值;
(7a)令k=k+1,更新前缀字符x(k-1)和x(k-2),返回步骤(2a)。
如图3和4所示,本发明设计的解码方法,包括以下步骤:
(1b)输入待解码数据序列{e(i)},设e(k)为当前待解码字符,u(k)为e(k)的解码字符,下标k为位置指针,首先令k=1和2,不对e(1)和e(2)进行编码,即直接输出解码字符u(1)=e(1),u(2)=e(2);然后令k=3,以u(k)的前缀字符u(k-1)与u(k-2)为二维坐标地址,储存已解码字符的前缀字符之间耦合的数据结构,建立二维字典H,H为一个n×n的矩阵,n为序列{e(i)}中不同字符的个数;
(2b)搜寻字典H中H(u(k-2),u(k-1))对应地址是否存在值,如果是,则执行步骤(3b),否则执行步骤(4b);其中,H(u(k-2),u(k-1))表示字典H中(u(k-2),u(k-1))位置的值;
(3b)把H(u(k-2),u(k-1))的值赋值给u′(k),然后转入步骤(5b);
(4b)利用前缀字符u(k-1)与u(k-2)的线性组合预测u′(k),此步骤中前缀字符的线性预测系数与权利要求1步骤(4a)中设置的相同;
(5b)利用u′(k)为e(k)解码,输出解码字符u(k);
(6b)使用u(k)更新字典H中H(u(k-2),u(k-1))的值;
(7b)令k=k+1,更新前缀字符u(k-1)和u(k-2),返回步骤(2b)。
本实施例采用MATLAB仿真周期信号和非周期信号的编码和解码,其结果如图5和6所示。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

Claims (2)

1.一种基于自适应字典的数据压缩的编码方法,其特征在于,包括以下步骤:
(1a)量化原始数据序列{x(i)},设x(k)为当前待编码字符,e(k)为x(k)的编码字符,下标k为位置指针,首先令k=1和2,此时不对x(1)和x(2)进行编码,即直接输出编码字符e(1)=x(1),e(2)=x(2);然后令k=3,以x(k)的前缀字符x(k-1)与x(k-2)为二维坐标地址,储存已编码字符的前缀字符之间耦合的数据结构,建立二维字典D,D为一个n×n的矩阵,n为序列{x(i)}中不同字符的个数;
(2a)搜寻字典D中D(x(k-2),x(k-1))对应地址是否存在值,如果是,则执行步骤(3a),否则执行步骤(4a);其中,D(x(k-2),x(k-1))表示字典D中(x(k-2),x(k-1))位置的值;
(3a)把D(x(k-2),x(k-1))的值赋值给x′(k),然后转入步骤(5a);
(4a)利用前缀字符x(k-1)与x(k-2)的线性组合预测x′(k)=ax(k-1)+bx(k-2),a、b为前缀字符的线性预测系数;
(5a)利用x′(k)为x(k)编码,输出编码字符e(k)=x(k)-x′(k);
(6a)使用x(k)更新字典中D(x(k-2),x(k-1))的值;
(7a)令k=k+1,更新前缀字符x(k-1)和x(k-2),返回步骤(2a)。
2.基于权利要求1所述编码方法的解码方法,其特征在于,包括以下步骤:
(1b)输入待解码数据序列{e(i)},设e(k)为当前待解码字符,u(k)为e(k)的解码字符,下标k为位置指针,首先令k=1和2,不对e(1)和e(2)进行编码,即直接输出解码字符u(1)=e(1),u(2)=e(2);然后令k=3,以u(k)的前缀字符u(k-1)与u(k-2)为二维坐标地址,储存已解码字符的前缀字符之间耦合的数据结构,建立二维字典H,H为一个n×n的矩阵,n为序列{e(i)}中不同字符的个数;
(2b)搜寻字典H中H(u(k-2),u(k-1))对应地址是否存在值,如果是,则执行步骤(3b),否则执行步骤(4b);其中,H(u(k-2),u(k-1))表示字典H中(u(k-2),u(k-1))位置的值;
(3b)把H(u(k-2),u(k-1))的值赋值给u′(k),然后转入步骤(5b);
(4b)利用前缀字符u(k-1)与u(k-2)的线性组合预测u′(k)=au(k-1)+bu(k-2),a、b为前缀字符的线性预测系数,此步骤中前缀字符的线性预测系数与权利要求1步骤(4a)中设置的相同;
(5b)利用u′(k)为e(k)解码,输出解码字符u(k)=e(k)+u′(k);
(6b)使用u(k)更新字典H中H(u(k-2),u(k-1))的值;
(7b)令k=k+1,更新前缀字符u(k-1)和u(k-2),返回步骤(2b)。
CN202010107260.4A 2020-02-21 2020-02-21 一种基于自适应字典的数据压缩的编解码方法 Active CN111294055B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010107260.4A CN111294055B (zh) 2020-02-21 2020-02-21 一种基于自适应字典的数据压缩的编解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010107260.4A CN111294055B (zh) 2020-02-21 2020-02-21 一种基于自适应字典的数据压缩的编解码方法

Publications (2)

Publication Number Publication Date
CN111294055A CN111294055A (zh) 2020-06-16
CN111294055B true CN111294055B (zh) 2021-10-22

Family

ID=71023238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010107260.4A Active CN111294055B (zh) 2020-02-21 2020-02-21 一种基于自适应字典的数据压缩的编解码方法

Country Status (1)

Country Link
CN (1) CN111294055B (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10020826B2 (en) * 2014-04-02 2018-07-10 International Business Machines Corporation Generating molecular encoding information for data storage
US9385751B2 (en) * 2014-10-07 2016-07-05 Protein Metrics Inc. Enhanced data compression for sparse multidimensional ordered series data
US10715177B2 (en) * 2017-06-20 2020-07-14 Samsung Electronics Co., Ltd. Lossy compression drive

Also Published As

Publication number Publication date
CN111294055A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
CA2610721C (en) Method and apparatus for adaptive tranforms for compressing data streams
CN108665067B (zh) 用于深度神经网络频繁传输的压缩方法及系统
CN107481295B (zh) 基于动态字节长度分配的卷积神经网络的图像压缩系统
CN110518917B (zh) 基于Huffman编码的LZW数据压缩方法及系统
KR100529311B1 (ko) 신경 회로망을 이용하여 가변 길이 부호화 비트 스트림의길이를 선택하는 장치 및 방법
US11863799B2 (en) Image encoding method and apparatus, image decoding method and apparatus, and chip
WO2018120019A1 (zh) 用于神经网络数据的压缩/解压缩的装置和系统
CN111918071A (zh) 数据压缩的方法、装置、设备及存储介质
CN104380733A (zh) 视频量化参数编码方法、视频量化参数解码方法、设备、以及程序
Fu et al. An extended hybrid image compression based on soft-to-hard quantification
CN111294055B (zh) 一种基于自适应字典的数据压缩的编解码方法
Cao et al. End-to-end optimized image compression with deep Gaussian process regression
CN101754021B (zh) 基于改进小波变换图像压缩方法实现手机移动门户的方法
Rao et al. Evaluation of lossless compression techniques
CN107205151B (zh) 基于混合失真度量准则的编解码装置及方法
Barman et al. A review on lossless data compression techniques
Tank Implementation of Lempel-ZIV algorithm for lossless compression using VHDL
CN104682966A (zh) 列表数据的无损压缩方法
Shaila et al. Block encoding of color histogram for content based image retrieval applications
Lu et al. Image Compression Based on Mean Value Predictive Vector Quantization.
Jagadeesh et al. An approach for image compression using adaptive Huffman coding
Campobello et al. A low complexity image compression algorithm for IoT multimedia applications
Kumar et al. Comparative analysis of wavelet based compression methods
KR102654690B1 (ko) 딥러닝 가속 장치 및 그 방법
Chang et al. Very efficient variable-length codes for the lossless compression of VQ indices

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