掌桥专利:专业的专利平台
掌桥专利
首页

借用点矢量索引值表示未匹配元素串的编解码方法及装置

文献发布时间:2024-04-18 19:52:40



技术领域

本发明涉及一种对数据进行有损或无损压缩的编码及解码系统,特别是采用点预测对数据进行压缩的编码方法及装置和解码方法及装置。

背景技术

随着人类社会进入人工智能、大数据、虚拟现实、增强现实、混合现实、云计算、移动计算、云-移动计算、超高清(4K)和特超高清(8K)视频图像分辨率、4G/5G通讯的时代,对各种数据,包括大数据、图像数据、视频数据、以及各种新形态的数据,进行超高压缩比和极高质量的数据压缩成为必不可少的技术。

数据集是由数据元素(例如:字节、比特、像素、像素分量、空间采样点、变换域系数)组成的集合。

对数据集进行编码或解码(简称为编解码)时,通常将数据元素按照预定规则排序即规定前后顺序,依前后顺序进行编解码。

对排列成一定空间(一维、二维、或多维)形状的数据集(例如:一个一维数据队列、一个二维数据文件、一帧图像、一个视频序列、一个变换域、一个变换块、多个变换块、一个三维场景、一个持续变化的三维场景的序列),特别是二维或以上数据集进行数据压缩的编码(以及相应的解码)时,一般将此数据集划分成若干具有预定形状和/或大小(即元素数目)的压缩子集,以压缩子集为单位,以预定的顺序,一个压缩子集接着一个压缩子集地依次进行编码或者解码。

在对一个压缩子集进行编码或者解码时,通常将此压缩子集划分成若干具有预定形状和/或大小(即元素数目)的最大压缩单元,以最大压缩单元为单位,以预定的顺序,一个最大压缩单元接着一个最大压缩单元地依次进行编码或者解码。从左向右排列成一行的最大压缩单元组成最大压缩单元行。

在一个最大压缩单元内,还把此最大压缩单元进一步划分成若干具有预定形状和/或大小(即元素数目)的子单元,称为整压缩单元,以整压缩单元为单位,以预定的顺序,一个一个整压缩单元地进行编码或者解码。

简而言之,以上过程最终将数据集划分成若干具有预定形状和/或大小(即元素数目)的子集,称为整压缩单元,以整压缩单元为单位,以预定的顺序,一个一个整压缩单元地进行编码或者解码。

在任一时刻,正在编码或者解码中的压缩子集称为当前压缩子集。正在编码或者解码中的最大压缩单元称为当前最大压缩单元。正在编码或者解码中的最大压缩单元行称为当前最大压缩单元行。正在编码或者解码中的整压缩单元称为当前整压缩单元。正在编码或者解码中的数据元素(有时也简称为元素)称为当前编码数据元素或者当前解码数据元素,统称为当前数据元素,简称为当前元素。元素由N个分量(通常1≤N≤5)组成,因此数据集、压缩子集、最大压缩单元和整压缩单元也都由N个分量组成。元素的分量也称为分量元素。

例如,压缩子集是一帧图像,其元素即像素排列成矩形形状,具有3840(宽度)x2160(高度)的大小(分辨率),由3个分量组成:G(绿色)分量,B(蓝色)分量,R(红色)分量或Y(亮度)分量,U(Cb色度)分量,V(Cr色度)分量。一帧图像被划分为128x128大小的最大压缩单元。每个最大压缩单元又进一步被划分成从4x4到64x64的大小各异的正方形或矩形的整压缩单元。

在数据集划分成压缩子集、最大压缩单元和整压缩单元的情形,对元素进行排序的一种预定规则是首先对压缩子集排序、继而对每个压缩子集内的最大压缩单元排序,然后对每个最大压缩单元内的整压缩单元排序,再对每个整压缩单元内的元素排序。

也就是说,在数据集最终划分成整压缩单元的情形,排序的一种预定规则是首先对整压缩单元排序,再对每个整压缩单元内的元素排序。

作为编码对象的多分量数据集和整压缩单元的各分量的采样率之间的关系通常用采样格式来表示。N个分量都具有同样的采样率和大小(即分量样值的数目)的数据被称为全采样格式数据。N个分量具有不同的采样率和大小,其中N

在下采样格式中,一个次分量所在的位置(通常称为次分量位置)及其元素对应于多个主分量所在的位置(通常称为主分量位置,即使简称为位置也不会产生混淆)及其元素。这种一对多的对应关系具有不确定性。为了消除这种不确定性,通常在与一个次分量位置及其元素对应的多个位置(如420格式中的2x2个位置或422格式中的2x1个位置)及其元素中预先指定一个主分量

在数据是420采样格式的二维数据元素的阵列或阵列的序列的情形,有一个主分量F和两个次分量D和E;

次分量D和E的采样率和尺寸分别是主分量F的四分之一,也就是主分量与次分量之间具有4:1即2x2:1的下采样关系;

一个D分量元素D[i][j]和一个E分量元素E[i][j]对应于2×2个即上下左右排列的4个F分量元素F[2i][2j],F[2i+1][2j],F[2i][2j+1],F[2i+1][2j+1];

F分量元素的分辨率是2M×2N,即F分量元素组成阵列F = {F[m][n]:m = 0~2M-1,n = 0~2N-1},

D分量元素的分辨率是M×N,即D分量元素组成阵列D = {D[m][n]:m = 0~M-1,n= 0~N-1},

E分量元素的分辨率也是M×N,即E分量元素组成阵列E = {E[m][n]:m = 0~M-1,n = 0~N-1}。

预先指定的正位置上的主分量正元素是F[2i][2j],称为左上角类型的主分量正位置及其正元素;

或者,

预先指定的正位置上的主分量正元素是F[2i+1][2j],称为右上角类型的主分量正位置及其正元素;

或者,

预先指定的正位置上的主分量正元素是F[2i][2j+1],称为左下角类型的主分量正位置及其正元素;

或者,

预先指定的正位置上的主分量正元素是F[2i+1][2j+1],称为右下角类型的主分量正位置及其正元素。

在数据集划分成整压缩单元的情形,排序的一种预定规则是首先对整压缩单元排序,再对每个整压缩单元内的元素排序。

数据压缩的一种有效手段是串预测也称串匹配。串预测将一个当前整压缩单元的元素分割成长度可变的元素串,对一个正在编码或者解码中的当前元素串,简称为当前串,在一个称为参考集的已完成预定程度的编解码的元素的集合或其子集之中,获得与所述当前串具有相同或相近似的数值的参考元素串简称参考串,也称之为所述当前串的参考串或预测串或匹配串。对于一个当前串的参考串,仅需要使用若干参数来记录所述参考串在参考集内的位置和/或形状和/或大小和/或尺寸,而不需要逐个记录所述当前串内每个元素的数值本身,就能完整地表示并且在需要的时候随时随地重建所述当前串的所有元素及其数值,从而达到数据压缩的目的。重建所产生的当前串的元素称为重建元素,其数值称为当前串及其元素的重建值。元素的重建值等同于元素的原始值的数据压缩称为无损压缩。元素的重建值不等同于元素的原始值的数据压缩称为有损压缩。

例如,一个按照一定扫描方式连续排序的当前串,如果能在参考集内找到相应的参考串,则仅需要使用当前串的第一个元素与参考串的第一个元素之间的位置关系和串长度这两个参数来记录所述参考串在参考集内的位置和大小,而不需要逐个记录所述当前串内每个元素的数值本身,就能完整地表示并且在需要的时候随时随地重建所述当前串的所有元素及其数值,获得当前串及其元素的重建值。记录所述两个参数所消耗的比特数常常远少于逐个记录所述当前串内每个元素的数值本身所消耗的比特数,从而达到了数据压缩的目的。

串预测中,重建操作通常是通过读取参考元素并将其复制到当前元素的位置来完成的。因此,串预测也称为串复制。产生重建元素的吞吐量基本上取决于读取参考元素的吞吐量。

串预测中,也可能出现在参考集内找不到参考元素的不可预测(也称为未匹配或不匹配或不可匹配)元素。不可预测元素的分量、主分量、次分量分别被称为不可预测分量、不可预测主分量、不可预测次分量。对于不可预测元素,只能将其精确或近似数值本身记录下来,按照预定方式对其进行压缩,并且在需要的时候随时随地重建不可预测元素,获得不可预测元素的重建值。

串预测中经常使用的扫描方式包括:

水平光栅扫描:一个整压缩单元内的元素沿水平方向一个元素一个元素排列,排列完一行后接着排列下一行,所有行内扫描方向都是从左至右排列或者所有行内扫描方向都是从右至左排列。

或者

水平来回扫描也称往返扫描或弓形扫描:一个整压缩单元内的元素沿水平方向一个元素一个元素排列,排列完一行后接着排列下一行,任何相邻的两行中一行的行内扫描方向是从左至右排列而另一行的行内扫描方向是从右至左排列,从左至右排列的行称之为正向行,从右至左排列的行称之为反向行;

或者

垂直光栅扫描:一个整压缩单元内的元素沿垂直方向一个元素一个元素排列,排列完一列后接着排列下一列,所有列内扫描方向都是从上至下排列或者所有列内扫描方向都是从下至上排列;

或者

垂直来回扫描也称往返扫描或弓形扫描:一个整压缩单元内的元素沿垂直方向一个元素一个元素排列,排列完一列后接着排列下一列,任何相邻的两列中一列的列内扫描方向是从上至下排列而另一列的列内扫描方向是从下至上排列,从上至下排列的列称之为正向列,从下至上排列的列称之为反向列。

串的扫描即排列中的第一个元素称为起始元素,串的扫描即排列中的最后一个元素称为终结元素。

串预测的一种特殊情形是块预测也称块匹配。在这种特殊情形,每个串都形成一个矩形形状的块,甚至一个串即一个块就是一个整压缩单元。在这种特殊情形,编解码可以不按照元素扫描的形式和顺序进行,而是直接以块的形式进行,但也可以块与串统一按照元素扫描的形式和顺序进行。

在本申请中,串和块统称为串。因此,串预测也是串预测与块预测的统称。

影响串预测的编码效率的一个重要因素是参考集,通常也称为参考范围,即串矢量所指向的参考元素的位置的可取范围,的大小。参考范围越大,候选的参考元素也越多,越能找到合适的参考元素,编码效率也就越高。但参考范围越大,实现复杂度和成本也越高。特别是参考范围大到一定程度,参考元素就不能放在编解码器芯片的内部,而必须放到编解码器芯片外部的专用存储芯片中,不但成本增加,读写带宽和像素处理吞吐量都会成为严重瓶颈,甚至无法支持高像素分辨率的图像和视频的编解码。

串预测技术中,为了降低实现复杂度和成本,参考范围通常是有限的,有预定的固定大小(即元素数目),如被限制在当前整压缩单元所在最大压缩单元或附近最大压缩单元内。即使参考范围有限,其元素都在编解码器芯片的内部,读写带宽和元素处理吞吐量,特别是读取参考元素的吞吐量,也仍然是瓶颈。例如,如果每个时钟周期仅能读取最多产生1个重建元素的参考元素,则产生重建元素的吞吐量也绝不会超过每时钟1个元素。

点预测是串预测的另一种特殊情形,也是数据压缩的一种有效手段。

点预测技术将若干其数值经常重复出现于当前整压缩单元内或附近的已完成预定程度的编解码的数据元素在数据集内的位置,称为常现位置,存放在一个常现位置数组或其子集中,数组或其子集中存放的每个常现位置用一个索引来标明,称其为常现位置索引或常现位置地址。常现位置上的数据元素作为参考元素或称预测元素或称匹配元素来使用。当前整压缩单元内的具有相等数值的一个待编码或待解码的等数值串,仅需要使用一个索引参数和一个所述索引所标明的常现位置的重复次数参数,来表示所述等数值串的所有元素的参考元素都是这个索引标明的常现位置(这个常现位置可以是所述等数值串之前的数据集内的某一个元素的位置,也可以是所述等数值串中的一个元素的位置)上的元素,或者来表示所述等数值串的所有元素的数值都等于这个索引标明的常现位置(这个常现位置可以是所述等数值串之前的数据集内的某一个元素的位置,也可以是所述等数值串中的一个元素的位置)上的元素的数值,而不需要逐个记录所述等数值串内每个元素的数值本身,从而达到数据压缩的目的。作为重建元素的等数值串上元素的数值通常等于或接近(即误差不超过一个预定阈值)原始元素的数值,从而在达到数据压缩的目的的同时,也保证重建元素的高质量即小失真。常现位置通常用点矢量的形式来表示,故常现位置索引也称点矢量地址,常现位置数组通常是点矢量数组即存放点矢量的参数的数组,点矢量的参数至少包括点矢量以及与点矢量有关的信息,点矢量通常用预定形式的坐标,称为点矢量的位置坐标,来表示。点矢量数组有时也称为点预测数组或点预测信息表。

例如,一个按照预定扫描方式排列的当前串,如果能在常现位置数组或其子集内找到一个点矢量,其指向的参考元素的数值是所述当前串上所有元素的预测值,并且以预测值作为重建元素的数值,则仅需要使用所述点矢量的点矢量地址和当前串长度这两个参数来记录所述当前串内每个元素的数值,而不需要逐个记录所述当前串内每个元素的数值本身,就能完整地表示所述当前串的所有元素及其数值。记录所述两个参数所消耗的比特数常常远少于逐个记录所述当前串内每个元素的数值本身所消耗的比特数,从而达到了数据压缩的目的。

常现位置元素,如果出现在正位置,即表示该常现位置的点矢量所指定的位置是正位置,则具有包括次分量的所有N个分量,压缩数据码流中存在包括次分量的所有N个分量,编码器将包括次分量的所有N个分量的数值写入压缩数据码流,而解码器从压缩数据码流中获得包括次分量的所有N个分量的数值,否则,仅具有主分量却没有次分量,压缩数据码流中仅存在主分量却不存在次分量,编码器仅将主分量的数值写入压缩数据码流,而解码器从压缩数据码流中仅获得主分量的数值。常现位置元素的次分量的数值存储在正位置上的次分量空间内。常现位置元素,一方面是所在位置的重建元素,另一方面也是其他元素的参考元素,用于获得其他元素的重建值,这时,该常现位置元素也被称为常现位置参考元素。

使用点预测技术进行编解码的整压缩单元中,有可能存在找不到参考元素的未匹配元素。未匹配元素,如果出现在

点预测技术将一个整压缩单元的元素,沿着扫描路径即按照预定扫描方式连续排序所形成的路径,分割成长度可变的下列三种串类型的元素串:

串类型1:等数值串或称等值串。一个等数值串上的所有元素的参考元素或称预测元素的数值都等于一个常现位置元素的数值;

串类型2:未匹配元素串。一个未匹配元素串上的所有元素都是未匹配元素即不可预测元素;

串类型3:单位基矢量串。单位基矢量串是参考串位于当前串正上方一个单位距离的串,其中,在水平扫描模式中,所述正上方是指直接相邻的上方,而在垂直扫描模式中,所述正上方是指直接相邻的左方。因此,单位基矢量串又称为复制上方串。

点预测技术还强制规定:单位基矢量串的参考元素仅限于当前整压缩单元内部的元素,不能是当前整压缩单元外部的元素。因此,一个整压缩单元内所有三种串类型的串上的每个元素,其最初的来源只能是常现位置元素或未匹配元素。也就是说,一个整压缩单元的所有元素,其参考元素都是毫无例外地直接来源于常现位置元素或未匹配元素。

因此,使用点预测技术进行编解码的整压缩单元中,重建元素的数值(即元素的重建值)都是从常现位置元素或者未匹配元素获得。

为了提高点预测的编码效率,点预测技术中,将当前整压缩单元中所使用的部分常现位置及其点矢量或者全部常现位置及其点矢量的参数,添加和存储到一个历史点预测信息表中,以供后续的整压缩单元重复使用。采用点预测的整压缩单元所使用的常现位置及其点矢量,一部分来自所述历史点预测信息表,称其为复用常现位置及其复用点矢量,另一部分不在所述历史点预测信息表中,是该整压缩单元所新产生的常现位置及其点矢量,称其为新常现位置及其新点矢量。对于新常现位置及其新点矢量,在编码器中将新点矢量表示的新常现位置上的元素数值写入压缩数据码流而在解码器中从压缩数据码流中获得新点矢量表示的新常现位置上的元素数值。当前整压缩单元中所使用的全部点矢量的参数,都存储在该整压缩单元专用的点预测信息表中;所述点预测信息表由复用点矢量的参数和新点矢量的参数组成。在对一个当前整压缩单元进行编码或解码时,一方面,将复用点矢量的参数从所述历史点预测信息表中取出,放入当前整压缩单元专用的当前点预测信息表中,另一方面,将新点矢量的参数也放入所述当前点预测信息表中。在将一个当前整压缩单元中使用的全部点矢量的参数都放入当前整压缩单元专用的当前点预测信息表中之后,将所述当前点预测信息表和所述历史点预测信息表合并,删除重复的冗余的点矢量的参数,产生新的历史点预测信息表。

在数据集具有主分量和次分量的情形,当前整压缩单元可分为下列三种类型。

1)主次分量整压缩单元:同时对主分量和对应的次分量进行编解码,用于对主分量和对应的次分量之间具有较强相关性的部分数据元素,通常采用同样或基本同样的方式对主分量和次分量进行编解码。

2)主分量整压缩单元:仅对主分量进行编解码,用于对主分量和对应的次分量之间没有较强相关性的部分数据元素。

3)次分量整压缩单元:仅对次分量进行编解码,用于对主分量和对应的次分量之间没有较强相关性的部分数据元素。

主分量整压缩单元都有对应的次分量整压缩单元。可以多个主分量整压缩单元对应于一个次分量整压缩单元。也可以多个主分量整压缩单元对应于多个次分量整压缩单元,但所述多个主分量整压缩单元与所述多个次分量整压缩单元之间不是一一对应。

现有点预测技术中,有专用的标志位来表示当前串是等值串还是未匹配元素串。虽然在大多数情形,大部分串是等值串,仅小部分串是未匹配元素串,但每个等值串或者未匹配元素串,都需要消耗一个比特来编码所述标志位,严重影响了点预测的编码效率。

发明内容

为了解决点预测技术中的这个问题,本发明提供了一种借用常现位置及其点矢量索引的一个预定值来表示未匹配元素串的编码和解码的方法及装置。在对一个整压缩单元进行点预测编解码并且所述整压缩单元中存在至少一个未匹配元素串时,利用每个等值串都需要用常现位置及其点矢量索引来表示该等值串上所有元素的参考元素或称预测元素的数值都等于哪个点矢量所指向的常现位置上的数据元素的数值这个特征,借用所述点矢量索引并增加一个预定的索引值来表示当前串实际上是一个未匹配元素串而非一个等值串;当前点矢量索引值等于所述预定的索引值表示当前串是一个未匹配元素串,当前点矢量索引值不等于所述预定的索引值表示当前串是一个等值串。这样,不需要多消耗一个比特来编码大多数的等值串,显著提高了点预测的编码效率。

优选地,

所述预定的索引值是表示当前整压缩单元的全部常现位置及其点矢量所需要用到的索引值的最大值加一。

优选地,

所述预定的索引值是表示编解码过程中当前候选的常现位置及其点矢量所需要用到的索引值的最大值加一。

优选地,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,如果尚有从未出现的新常现位置及其点矢量,则所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有已出现至少一次的新常现位置及其点矢量所需要用到的索引值的最大值加二,否则,所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有新常现位置及其点矢量所需要用到的索引值的最大值加一。

优选地,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,如果尚有从未出现的新常现位置及其点矢量,则所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有已出现至少一次的新常现位置及其点矢量以及将要出现的下一个新常现位置及其点矢量所需要用到的索引值的最大值加一,否则,所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有新常现位置及其点矢量所需要用到的索引值的最大值加一。

优选地,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,所述点矢量索引的当前取值范围和总取值范围分别是[0, MaxValPvAddress]和[0,MaxValPvAddressUpperBound];其中,MaxValPvAddress从一个初始值开始,每首次出现一个新常现位置及其点矢量,MaxValPvAddress加一,一直加到MaxValPvAddress等于MaxValPvAddressUpperBound为止;

对MaxValPvAddress的初始值和MaxValPvAddressUpperBound进行赋值的语法描述表至少包括下列操作:

以上语法描述表中,IscNumOfReusedPv是当前整压缩单元中用到的复用常现位置及其点矢量的数目,IscNumOfNewPv是当前整压缩单元中用到的新常现位置及其点矢量的数目;如果当前整压缩单元中至少存在一个未匹配元素串,则IscUpsPresentFlag为1,否则,IscUpsPresentFlag为0;

当IscUpsPresentFlag为1时,在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,当前点矢量索引值PvAddress落在取值范围[0, MaxValPvAddress - 1]内表示当前串是一个等值串,当前点矢量索引值PvAddress等于MaxValPvAddress表示当前串是一个未匹配元素串。

根据本发明的第一个方面,提供了一种点预测的编码方法,其特征在于至少包括下列步骤:

1) 至少输入一个整压缩单元的原始数据,

2) 至少对所述整压缩单元进行点预测编码,当所述整压缩单元中存在至少一个未匹配元素串时,利用每个等值串都需要用常现位置及其点矢量索引来表示该等值串上所有元素的参考元素或称预测元素的数值都等于哪个点矢量所指向的常现位置上的数据元素的数值这个特征,借用所述点矢量索引并增加一个预定的索引值来表示当前串实际上是一个未匹配元素串而非一个等值串;当前点矢量索引值等于所述预定的索引值表示当前串是一个未匹配元素串,当前点矢量索引值不等于所述预定的索引值表示当前串是一个等值串,

3)至少输出所述整压缩单元的压缩数据码流。

根据本发明的第二个方面,提供了一种点预测的编码装置,其特征在于至少包括下列模块:

1) 原始数据输入模块:至少输入一个整压缩单元的原始数据,

2) 点预测编码模块:至少对所述整压缩单元进行点预测编码,当所述整压缩单元中存在至少一个未匹配元素串时,利用每个等值串都需要用常现位置及其点矢量索引来表示该等值串上所有元素的参考元素或称预测元素的数值都等于哪个点矢量所指向的常现位置上的数据元素的数值这个特征,借用所述点矢量索引并增加一个预定的索引值来表示当前串实际上是一个未匹配元素串而非一个等值串;当前点矢量索引值等于所述预定的索引值表示当前串是一个未匹配元素串,当前点矢量索引值不等于所述预定的索引值表示当前串是一个等值串,

3)压缩数据码流输出模块:至少输出所述整压缩单元的压缩数据码流。

根据本发明的第三个方面,提供了一种点预测的解码方法,其特征在于至少包括下列步骤:

1) 至少输入一个整压缩单元的压缩数据码流,

2) 至少对所述整压缩单元进行点预测解码,当所述整压缩单元中存在至少一个未匹配元素串时,利用每个等值串都需要用常现位置及其点矢量索引来表示该等值串上所有元素的参考元素或称预测元素的数值都等于哪个点矢量所指向的常现位置上的数据元素的数值这个特征,借用所述点矢量索引并增加一个预定的索引值来表示当前串实际上是一个未匹配元素串而非一个等值串;当前点矢量索引值等于所述预定的索引值表示当前串是一个未匹配元素串,当前点矢量索引值不等于所述预定的索引值表示当前串是一个等值串,

3)至少输出所述整压缩单元的重建元素。

根据本发明的第四个方面,提供了一种点预测的解码装置,其特征在于至少包括下列模块:

1) 压缩数据码流输入模块:至少输入一个整压缩单元的压缩数据码流,

2) 点预测解码模块:至少对所述整压缩单元进行点预测解码,当所述整压缩单元中存在至少一个未匹配元素串时,利用每个等值串都需要用常现位置及其点矢量索引来表示该等值串上所有元素的参考元素或称预测元素的数值都等于哪个点矢量所指向的常现位置上的数据元素的数值这个特征,借用所述点矢量索引并增加一个预定的索引值来表示当前串实际上是一个未匹配元素串而非一个等值串;当前点矢量索引值等于所述预定的索引值表示当前串是一个未匹配元素串,当前点矢量索引值不等于所述预定的索引值表示当前串是一个等值串,

3)重建元素输出模块:至少输出所述整压缩单元的重建元素。

本发明适用于对数据进行有损压缩的编码和解码,本发明也同样适用于对数据进行无损压缩的编码和解码。本发明适用于一维数据如字符串数据或字节串数据或一维图形或分维图形的编码和解码,本发明也同样适用于二维或以上维度的数据如图像、图像序列或视频数据的编码和解码。

本发明中,数据压缩所涉及的数据包括下列类型的数据之一或其组合

1)一维数据;

2)二维数据;

3)多维数据;

4)图形;

5)分维图形;

6)图像;

7)图像的序列;

8)视频;

9)音频;

10)文件;

11)字节;

12)比特;

13)像素;

14)三维场景;

15)持续变化的三维场景的序列;

16)虚拟现实的场景;

17) 持续变化的虚拟现实的场景的序列

18)像素形式的图像;

19)图像的变换域数据;

20)二维或二维以上字节的集合;

21)二维或二维以上比特的集合;

22)像素的集合;

23)单分量像素的集合;

24)三分量像素(R,G,B,A)的集合;

25)三分量像素(Y,U,V)的集合;

26)三分量像素(Y,Cb,Cr)的集合;

27)三分量像素(Y,Cg,Co)的集合;

28)四分量像素(C,M,Y,K)的集合;

29)四分量像素(R,G,B,A)的集合;

30)四分量像素(Y,U,V,A)的集合;

31)四分量像素(Y,Cb,Cr,A)的集合;

32)四分量像素(Y,Cg,Co,A)的集合。

以上通过若干特定的具体实例说明本发明的技术特征。本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在不背离本发明的精神下进行各种修饰或改变。

附图说明

图1是本发明的编码方法或装置的一个示意图。

图2是本发明的解码方法或装置的一个示意图。

具体实施方式

以下是本发明的更多的实施细节。

实施例1

所述编码方法或者编码装置或者解码方法或者解码装置中,原始数据是包括图像、图像的序列、视频的二维数据元素的阵列或阵列的序列,

点预测涉及的压缩子集包括图像、图像的子图像、片块tile、条带slice、片patch;

点预测涉及的最大压缩单元包括片块tile、最大编码单元LCU、编码树单元CTU;

所述整压缩单元包括宏块、编码单元CU、CU的子区域、子编码单元SubCU、预测块、预测单元PU、PU的子区域、子预测单元SubPU、变换块、变换单元TU、TU的子区域、子变换单元SubTU。

实施例2

所述编码方法或者编码装置或者解码方法或者解码装置中,

所述预定的索引值是表示当前整压缩单元的全部常现位置及其点矢量所需要用到的索引值的最大值加一。

实施例3

所述编码方法或者编码装置或者解码方法或者解码装置中,

所述预定的索引值是表示编解码过程中当前候选的常现位置及其点矢量所需要用到的索引值的最大值加一。

实施例4

所述编码方法或者编码装置或者解码方法或者解码装置中,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,如果尚有从未出现的新常现位置及其点矢量,则所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有已出现至少一次的新常现位置及其点矢量所需要用到的索引值的最大值加二,否则,所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有新常现位置及其点矢量所需要用到的索引值的最大值加一。

实施例5

所述编码方法或者编码装置或者解码方法或者解码装置中,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,如果尚有从未出现的新常现位置及其点矢量,则所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有已出现至少一次的新常现位置及其点矢量以及将要出现的下一个新常现位置及其点矢量所需要用到的索引值的最大值加一,否则,所述预定的索引值是表示当前整压缩单元中所有复用常现位置及其点矢量和所有新常现位置及其点矢量所需要用到的索引值的最大值加一。

实施例6

所述编码方法或者编码装置或者解码方法或者解码装置中,

在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,所述点矢量索引的当前取值范围和总取值范围分别是[0, MaxValPvAddress]和[0,MaxValPvAddressUpperBound];其中,MaxValPvAddress从一个初始值开始,每首次出现一个新常现位置及其点矢量,MaxValPvAddress加一,一直加到MaxValPvAddress等于MaxValPvAddressUpperBound为止;

对MaxValPvAddress的初始值和MaxValPvAddressUpperBound进行赋值的语法描述表至少包括下列操作:

以上语法描述表中,IscNumOfReusedPv是当前整压缩单元中用到的复用常现位置及其点矢量的数目,IscNumOfNewPv是当前整压缩单元中用到的新常现位置及其点矢量的数目;如果当前整压缩单元中至少存在一个未匹配元素串,则IscUpsPresentFlag为1,否则,IscUpsPresentFlag为0;

当IscUpsPresentFlag为1时,在对当前整压缩单元沿着扫描路径进行点预测编解码的过程中,当前点矢量索引值PvAddress落在取值范围[0, MaxValPvAddress - 1]内表示当前串是一个等值串,当前点矢量索引值PvAddress等于MaxValPvAddress表示当前串是一个未匹配元素串。

相关技术
  • 一种具有镀金引线内层走线结构的PCB及其走线方式
  • 一种高强耐磨铜合金接触线及其制备工艺
  • 一种走线架的连接头及其制备工艺
  • 一种青铜工艺Nb3Sn超导体多芯线接头及其制备方法
技术分类

06120116334502