【技术实现步骤摘要】
本申请涉及数据处理领域,且更具体地,涉及一种数据编码方法及其系统以及数据解码方法及其系统。
技术介绍
在数据处理领域,为了进行例如数据编码、压缩等的数据处理,为了使得编码或压缩后的数据更小以便于存储和传输,都希望要编码或压缩的二进制数据具有更多的连续的零(即稀疏的)。可是现实中,要存储或传输的数据大多数是非稀疏的,即,不一定有很多连续的零,因此,在编码或压缩时,不能使得编码或压缩后的数据变得尽可能地小。较大的数据量不仅可能会需要更大的数据存储器、缓冲器等来存储或缓冲,还可能会减慢数据传输的速度,例如在传输带宽有限的情况下,如此对例如实时传输和播放的应用场景下是不利的。另外,在数据编码或压缩时,可进行无损编码或压缩或者有损编码或压缩。无损编码或压缩的数据可以在不损失任何信息细节的情况下被无损地解码或解压缩(还原),如此能够还原得到没有任何信息损失的原始数据。而有损编码或压缩可能损失一定程度的信息细节而得到数据量小的编码或压缩后数据,但是这样的有损编码或压缩的数据在还原时仅能还原出一部分信息,而丢失了一定程度的信息细节,如此,还原得到的数据并不是原始数据。从尽可能还原真实的数据的角度出发,期望更多地应用无损编码或压缩。因此,需要一种能够在无信息损失的情况下又使得编码或压缩后的数据的量尽可能小的技术。
技术实现思路
基于现有技术的上述问题之一,本专利技术的各个实施例公开了一种能够在无信息损失的情况下 ...
【技术保护点】
一种数据编码方法,包括:第一获得步骤,获得基础元素集合P,其中所述基础元素集合P包括多个基础元素;第二获得步骤,获得基础元素组集合Q和基础元素组顺序表SQ,其中所述基础元素组集合Q中的基础元素组是由基础元素集合P中的基础元素组成的第一预定大小的基础元素组,所述基础元素组顺序表SQ中的基础元素组SQ[k]是相互不同的基础元素组,且按预定顺序排列,且所述基础元素组顺序表SQ的长度为LSQ,LSQ是正整数,其中,k∈[0,LSQ‑1];第三获得步骤,获得待处理数据R;转换步骤,将所述待处理数据R转换为m*n的数据矩阵C,其中m和n是正整数,所述数据矩阵C中的每个元素Cij被取值为从待处理数据R中按顺序截取的第一预定大小的数据组,其中i和j是大于或等于0的整数,i∈[0,m‑1],j∈[0,n‑1],Cij∈Q;提取步骤,按所述基础元素组顺序表SQ中的基础元素组的所述预定顺序,从所述数据矩阵C中针对所述预定顺序的所有基础元素组提取各个单元矩阵作为单元矩阵组;其中,所述提取步骤包括:按所述基础元素组顺序表SQ的基础元素组SQ[k]的顺序,针对每个基础元素组SQ[k],从所述数据矩阵C中提取基础元 ...
【技术特征摘要】
1.一种数据编码方法,包括:
第一获得步骤,获得基础元素集合P,其中所述基础元素集合P包括多个基础元素;
第二获得步骤,获得基础元素组集合Q和基础元素组顺序表SQ,其中所述基础元素组集
合Q中的基础元素组是由基础元素集合P中的基础元素组成的第一预定大小的基础元素组,
所述基础元素组顺序表SQ中的基础元素组SQ[k]是相互不同的基础元素组,且按预定顺序排
列,且所述基础元素组顺序表SQ的长度为LSQ,LSQ是正整数,其中,k∈[0,LSQ-1];
第三获得步骤,获得待处理数据R;
转换步骤,将所述待处理数据R转换为m*n的数据矩阵C,其中m和n是正整数,所述数据
矩阵C中的每个元素Cij被取值为从待处理数据R中按顺序截取的第一预定大小的数据组,其
中i和j是大于或等于0的整数,i∈[0,m-1],j∈[0,n-1],Cij∈Q;
提取步骤,按所述基础元素组顺序表SQ中的基础元素组的所述预定顺序,从所述数据矩
阵C中针对所述预定顺序的所有基础元素组提取各个单元矩阵作为单元矩阵组;
其中,所述提取步骤包括:
按所述基础元素组顺序表SQ的基础元素组SQ[k]的顺序,针对每个基础元素组SQ[k],从
所述数据矩阵C中提取基础元素组顺序表SQ中的基础元素组SQ[k]的单元矩阵C_SQ[k],其
中,单元矩阵C_SQ[k]是m*n矩阵,且单元矩阵C_SQ[k]中的每个元素C_SQ[k]ij的取值规则是:
如果数据矩阵C中的元素Cij=SQ[k]时,单元矩阵C_SQ[k]中的对应元素C_SQ[k]ij=1;否
则,单元矩阵C_SQ[k]中的对应元素C_SQ[k]ij=0。
2.根据权利要求1所述的方法,其中,所述从所述数据矩阵C中提取的针对所述预定顺
序的基础元素组的单元矩阵是稀疏矩阵。
3.根据权利要求1所述的方法,当待处理数据R是长度为LR的待处理数据序列、第一预定
大小的基础元素组是长度h的基础元素序列时,其中,h和LR是正整数,所述转换步骤包括:
使得所述数据矩阵C中的每个元素Cij被取值为从待处理数据序列R中按顺序截取的长
度为h的子序列,且LR≤m×n×h。
4.根据权利要求1或3所述的方法,其中,所述转换步骤包括:
根据对数据处理的要求,自适应地选择每次待处理的数据R的大小,以确定所述数据矩
阵C的m和n的大小。
5.根据权利要求1或3所述的方法,其中,所述数据矩阵C的m与n的比值大于1/2且小于
2。
6.根据权利要求3所述的方法,其中,所述转换步骤包括:
确定所述数据矩阵C的m和n的大小,以使得m×n×h的值与LR的差值最小。
7.根据权利要求1或3所述的方法,其中,所述转换步骤包括:
在数据矩阵C中的元素Cij被取值为在从待处理数据R中按顺序截取的第一预定大小的
数据组之后,
将剩余的未被取值的元素Cij取值为空、或例外数据、或出现概率最小的基础元素组SQ[k],所述例外数据与每个基础元素组SQ[k]都不同。
8.根据权利要求1或3所述的方法,其中,所述提取步骤包括:
如果提取得到了除了最后一个单元矩阵的其他单元矩阵C_SQ[k],则无需进行最后一个
具体的提取步骤,而自动生成最后一个单元矩阵C_SQ[k],其中所述最后一个单元矩阵C_SQ[k]中的对应元素C_SQ[k]ij中取1的元素的位置是除了已得到的其他单元矩阵C_SQ[k]中各
个取1的元素的位置的剩余位置,且所述最后一个单元矩阵C_SQ[k]中的除了取1的元素以
外的元素取0。
9.根据权利要求1或3所述的方法,其中,当h=1时,所述基础元素组集合Q与所述基础
元素集合P相同。
10.根据权利要求1或3所述的方法,其中,所述基础元素组集合Q中的基础元素组是由
基础元素集合P中的所有基础元素能够组成的第一预定大小的所有的不相同的排列组合。
11.根据权利要求1或3所述的方法,其中,所述在所述基础元素组顺序表SQ中的基础元
素组SQ[k]的顺序包括如下中的一种:
公认的顺序;
按基础元素组SQ[k]的出现概率从小到大排列的顺序。
12.根据权利要求1所述的方法,其中,所述第一预定大小的基础元素组是由基础元素
组成的序列;
其中,所述第一预定大小大于基础元素的大小,
其中,所述待处理数据R是数据序列。
13.根据权利要求1所述的方法,还包括:
重复所述第三获得步骤、转换步骤和提取步骤。
14.根据权利要求1所述的方法,还包括:
对所述单元矩阵组串行或并行地进行如下操作中的至少一种:数据压缩操作;数据编
码操作;数据加密操作;数据传输操作。
15.一种数据编码系统,包括:
存储器,用于存储一个或多个计算机可执行指...
【专利技术属性】
技术研发人员:王杰林,
申请(专利权)人:湖南千年华光软件开发有限公司,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。