首页> 中国专利> 使用动态排列重组的参考像素样值集的图像压缩方法

使用动态排列重组的参考像素样值集的图像压缩方法

摘要

本发明提供一种图像压缩方法。对一个编码单元CU进行匹配编码或者解码时,当前编码或者解码CU的2D像素采用当前编码或者解码CU的深度的1D排列方式,但参考像素样值集则不是采用单一深度的1D排列方式,而是根据当前编码或者解码CU的深度和/或序号的变化,动态地采用不同的组成规则重组参考像素样值集。

著录项

  • 公开/公告号CN104918050A

    专利类型发明专利

  • 公开/公告日2015-09-16

    原文格式PDF

  • 申请/专利权人 上海天荷电子信息有限公司;

    申请/专利号CN201510113719.0

  • 发明设计人 林涛;

    申请日2015-03-16

  • 分类号H04N19/176(20140101);H04N19/96(20140101);H04N19/186(20140101);H04N19/129(20140101);

  • 代理机构

  • 代理人

  • 地址 200233 上海市嘉定区柳州路600号1-9A

  • 入库时间 2023-12-18 11:00:03

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-16

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04N19/176 专利号:ZL2015101137190 变更事项:专利权人 变更前:上海雅罗可斯汽车零部件有限公司 变更后:上海万柔汽车电子有限公司 变更事项:地址 变更前:200135 上海市浦东新区川沙路1098号8幢 变更后:200000 上海市浦东新区川沙路1098号8幢

    专利权人的姓名或者名称、地址的变更

  • 2022-03-18

    专利权的转移 IPC(主分类):H04N19/176 专利号:ZL2015101137190 登记生效日:20220308 变更事项:专利权人 变更前权利人:彭爱勤 变更后权利人:上海雅罗可斯汽车零部件有限公司 变更事项:地址 变更前权利人:241000 安徽省芜湖市无为市高沟镇龙庵西路16号 变更后权利人:200135 上海市浦东新区川沙路1098号8幢

    专利申请权、专利权的转移

  • 2019-12-27

    专利权的转移 IPC(主分类):H04N19/176 登记生效日:20191206 变更前: 变更后: 申请日:20150316

    专利申请权、专利权的转移

  • 2019-11-15

    专利申请权的转移 IPC(主分类):H04N19/176 登记生效日:20191025 变更前: 变更后: 申请日:20150316

    专利申请权、专利权的转移

  • 2019-11-08

    授权

    授权

  • 2017-04-19

    实质审查的生效 IPC(主分类):H04N19/176 申请日:20150316

    实质审查的生效

  • 2015-09-16

    公开

    公开

查看全部

说明书

技术领域

本发明涉及一种数字视频压缩编码及解码系统,特别是计算机屏幕图像和视频的编码及解码的方法。

背景技术

图像的数字视频信号的自然形式是图像的序列。一帧图像通常是由若干像素组成的矩形区域,而数字视频信号就是由几十帧至成千上万帧图像组成的视频图像序列,有时也简称为视频序列或序列。对数字视频信号进行编码就是按照一定顺序对一帧一帧图像进行编码。在任一时刻,正在编码中的那一帧称为当前编码帧。同样,对压缩的数字视频信号的视频码流进行解码就是按照同样顺序对一帧一帧图像的视频码流进行解码。在任一时刻,正在解码中的那一帧称为当前解码帧。当前编码帧或当前解码帧都通常为当前帧。

在几乎所有视频图像编码的国际标准如MPEG-1/2/4,H.264/AVC以及最新国际视频压缩标准HEVC(High Efficiency Video Coding)中,对一帧图像进行编码(以及相应的解码)时,把一帧图像划分成若干块MxM像素的子图像,称为“编码单元(Coding Unit简称CU)”,以CU为基本编码单位,对子图像一块一块进行编码。常用的M的大小是8,16,32,64。因此,对一个视频图像序列进行编码就是对各帧的各个编码单元依次进行编码。同样,解码时也是对各帧的各个编码单元按照同样的顺序依次进行解码,最终重构出整个视频图像序列。

为适应一帧图像内各部分图像内容与性质的不同,有针对性地进行最有效的编码,一帧图像内各CU的大小可以是不同的,有的是8x8,有的是64x64,等等。为了使不同大小的CU能够无缝拼接起来,一帧图像总是先划分成大小完全相同具有NxN像素的“最大编码单元(Largest Coding Unit简称LCU)”,然后每个LCU再进一步划分成树状结构的多个大小不一定相同的CU。因此,LCU也称为“编码树单元(Coding Tree Unit简称CTU)”。与CTU同样大小的CU称为深度D为0(D=0)的CU。把一个D=0的CU四等分得到的四分之一大小的CU称为深度D为1(D=1)的CU。把一个D=1的CU再四等分得到的大小更小的CU称为深度D为2(D=2)的CU。把一个D=2的CU再四等分得到的大小更小的CU称为深度D为3(D=3)的CU。把一个D=3的CU再四等分得到的大小更小的CU称为深度D为4(D=4)的CU。例如,一帧图像先划分成大小完全相同的64x64像素的LCU(N=64)。一个LCU可以如图1所示由2个32x32像素的D=1的CU(图1中编号为0和15的CU)、6个16x16像素的D=2的CU(图1中编号为1、2、3、4、9和10的CU)和8个8x8像素的D=3的CU(图1中编号为5、6、7、8、11、12、13和14的CU)构成。这样16个成树状结构的CU构成一个CTU。一个LCU也可以如图2所示由3个32x32像素的D=1的CU(图2中编号为0、5和6的CU)和4个16x16像素的D=2的CU(图2中编号为1、2、3和4的CU)构成,这样7个成树状结构的CU也构成一个CTU。对一帧图像进行编码,就是依次对一个一个CTU中的一个一个CU进行编码。在任一时刻,正在编码中的CU称为当前编码CU。对一帧图像进行解码,也是按照同样的顺序依次对一个一个CTU中的一个一个CU进行解码。在任一时刻,正在解码中的CU称为当前解码CU。当前编码CU或当前解码CU都通常为当前CU。

一个CTU内的所有CU,都有一个深度D和一个序号。如图3所示,深度D=0的CU只有一个,其序号为0。如图4所示,深度D=1的CU有4个,其序号为0~3。如图5所示,深度D=2的CU有16个,其序号为0~15。如图6所示,深度D=3的CU有64个,其序号为0~63。如图7所示,深度D=4的CU有256个,其序号为0~255。

更一般地来说,图3~7也表示了对CTU的树状分割。图3是对CTU的深度D=0的分割,只有一个分割,其序号为0。图4是对CTU的深度D=1的分割,共有4个分割,其序号为0~3。图5是对CTU的深度D=2的分割,共有16个分割,其序号为0~15。图6是对CTU的深度D=3的分割,共有64个分割,其序号为0~63。图7是对CTU的深度D=4的分割,共有256个分割,其序号为0~255。

在以MPEG-1/2/4,H.264/AVC以及HEVC等为代表的现有技术中,为了提高编码效率,通常还将一个CU进一步划分成更小的子区域。所述子区域包括但不限于:预测单元(PU),变换单元(TU),不对称划分(AMP)的区域,宏块,块,微块,条(宽度或高度为一个像素或一个像素分量的区域),可变大小的矩形区域,可变大小的像素串(段)或像素分量串(段)或像素索引串(段)。对一个CU进行编码(以及相应的解码)就是对一个一个子区域进行编码(以及相应的解码)。在编码中,子区域称为编码子区域,而在解码中,子区域称为解码子区域。编码子区域和解码子区域统称为编解码子区域。在现有技术中,所述子区域(特别是预测单元,变换单元,不对称划分的区域,宏块,块,微块,条的情形)常称为“块”。所以,编码子区域和解码子区域在很多情况下常分别称为编码块和解码块,统称为编解码块。

一个彩色像素有3个分量(component)组成。最常用的两种像素色彩格式(pixel color format)是由绿色分量、蓝色分量、红色分量组成的GBR色彩格式和由一个亮度(luma)分量及两个色度(chroma)分量组成的通称YUV色彩格式如YCbCr色彩格式。因此,对一个CU进行编码时,可以把一个CU分成3个分量平面(G平面、B平面、R平面或Y平面、U平面、V平面),对3个分量平面分别进行编码;也可以把一个像素的3个分量捆绑组合成一个3元组,对由这些3元组组成的CU整体进行编码。前一种像素及其分量的排列方式称为图像(及其CU)的平面格式(planar format),而后一种像素及其分量的排列方式称为图像(及其CU)的叠包格式(packed format)。

以像素的GBR色彩格式p[x][y]={g[x][y], b[x][y], r[x][y]}为例,一种平面格式的排列方式是先排列宽度为W个像素高度为H个像素的一帧图像(或者一个CU)的所有WxH个G分量,然后排列所有WxH个B分量,最后排列所有WxH个R分量:

g[1][1],g[2][1],…,g[W-1][1],g[W][1],

g[1][2],g[2][2],…,g[W-1][2],g[W][2],

………………………………………,

………………………………………,

g[1][H],g[2][H],…,g[W-1][H],g[W][H],

b[1][1],b[2][1],…,b[W-1][1],b[W][1],

b[1][2],b[2][2],…,b[W-1][2],b[W][2],

………………………………………,

………………………………………,

b[1][H],b[2][H],…,b[W-1][H],b[W][H],

r[1][1],r[2][1],…,r[W-1][1],r[W][1],

r[1][2],r[2][2],…,r[W-1][2],r[W][2],

………………………………………,

………………………………………,

r[1][H],r[2][H],…,r[W-1][H],r[W][H]。

而一种叠包格式的排列方式是先排列第一个像素的G分量,然后排列其B分量和R分量,接着排列第二个像素的G分量、B分量和R分量,等等,最后排列最后一个(第WxH个)像素的G分量、B分量和R分量:

g[1][1],b[1][1],r[1][1], g[2][1],b[2][1],r[2][1], …………, g[W][1],b[W][1],r[W][1],

g[1][2],b[1][2],r[1][2], g[2][2],b[2][2],r[2][2], …………, g[W][2],b[W][2],r[W][2],

………………………………………………………………………………………,

………………………………………………………………………………………,

g[1][H],b[1][H],r[1][H], g[2][H],b[2][H],r[2][H], ………, g[W][H],b[W][H],r[W][H]。

这种叠包格式的排列方式也可以简化地表示为:

p[1][1],p[2][1],……,p[W-1][1],p[W][1],

p[1][2],p[2][2],……,p[W-1][2],p[W][2],

…………………………………………,

…………………………………………,

p[1][H],p[2][H],……,p[W-1][H],p[W][H]。

除了以上的平面格式的排列方式和叠包格式的排列方式外,按照三个分量的不同顺序,还可以有其他多种平面格式的排列方式和叠包格式的排列方式。

YUV色彩格式又可根据是否对色度分量进行下采样再细分成若干种子格式:1个像素由1个Y分量、1个U分量、1个V分量组成的YUV4:4:4像素色彩格式;左右相邻的2个像素由2个Y分量、1个U分量、1个V分量组成的YUV4:2:2像素色彩格式;左右上下相邻按2x2空间位置排列的4个像素由4个Y分量、1个U分量、1个V分量组成的YUV4:2:0像素色彩格式。一个分量一般用1个8~16比特的数字来表示。YUV4:2:2像素色彩格式和YUV4:2:0像素色彩格式都是对YUV4:4:4像素色彩格式施行色度分量的下采样得到。一个像素分量也称为一个像素样值(pixel sample)或简单地称为一个样值(sample)。一个样值可以是一个8比特的数即一个样值占用一个字节。一个样值也可以是一个10比特的数或一个12比特的数或一个14比特的数或一个16比特的数。

在对任一个CU进行编码或解码时,都会产生重构像素,又分为编码或解码过程之中产生的不同程度的部分重构像素和编码或解码过程全部完成后产生的完全重构像素。如果完全重构像素样值与编码之前的原始输入像素样值有相等的数值,则所经历的编码和解码过程称为无损编码和解码。如果完全重构像素样值与编码之前的原始输入像素样值有不相等的数值,则所经历的编码和解码过程称为有损编码和解码。在对一个一个CU依次进行编码或解码时,所产生的重构像素样值通常都作为历史数据保存起来,用作后续CU编码或解码时的参考像素样值。保存重构像素历史数据作为参考像素样值的存储空间称为参考像素样值存储空间或参考像素样值集或简称可参考区域。参考像素样值存储空间都是有限的,只能保存一部分历史数据。参考像素样值存储空间中的历史数据也可以包括当前CU的重构像素样值。

随着以远程桌面为典型表现形式的新一代云计算与信息处理模式及平台的发展和普及,多台计算机之间、计算机主机与智能电视、智能手机、平板电脑等其他数字设备之间及各种各类数字设备之间的互联已经成为现实并日趋成为一种主流趋势。这使得服务器端(云)到用户端的实时屏幕传输成为当前的迫切需求。由于需要传输的屏幕视频数据量巨大,对计算机屏幕图像必须进行高效高质量的数据压缩。

充分利用计算机屏幕图像的特点,对计算机屏幕图像进行超高效率的压缩,也是最新国际视频压缩标准HEVC的一个主要目标。

计算机屏幕图像的一个显著特点是同一帧图像内通常会有很多相似甚至完全相同的像素图样(pixel pattern)。例如,计算机屏幕图像中常出现的中文或外文文字,都是由少数几种基本笔划所构成,同一帧图像内可以找到很多相似或相同的笔划。计算机屏幕图像中常见的菜单、图标等,也具有很多相似或相同的图样。现有的屏幕图像和视频压缩技术中使用了各种匹配方式,包括帧内预测方式、块匹配(也称为帧内运动补偿或帧内块复制)方式、微块匹配方式、微块串匹配方式、精细划分匹配方式、调色板匹配方式、串匹配方式,来找到各种不同大小和形状的匹配,实现对屏幕图像的高效编码。各种匹配方式中,块匹配方式具有匹配参数少从而在某些情形能够达到很高的编码效率,而串匹配方式能够在很大范围内找到相当精确的匹配从而在某些情形能够达到很高的编码效率。

块匹配方式就是用参考像素样值存储空间中的若干合适的像素样值块(称为匹配参考样值块或简称参考块)来近似或精确地匹配(即代表)当前CU中的像素样值块(称为匹配当前样值块或简称当前块)并用划分模式和/或匹配位置(统称为匹配关系参数)来记录并通过视频码流来传输匹配参考样值块与匹配当前样值块之间的关系,从而在解码端使用参考像素样值存储空间中的匹配参考样值块和匹配关系参数就能得到匹配当前样值块。匹配关系参数通常只占用很少的比特数,远少于匹配当前样值块本身占用的比特数,因而能达到很好的数据压缩效果。

串匹配方式就是用参考像素样值存储空间中的若干合适的像素样值组成的串(称为匹配参考样值串或简称参考串)来近似或精确地匹配(即代表)当前CU中的像素样值串(称为匹配当前样值串或简称当前串)并用匹配位置、匹配长度和未匹配样值(统称为匹配关系参数)来记录并通过视频码流来传输匹配参考样值串与匹配当前样值串之间的关系,从而在解码端使用参考像素样值存储空间中的匹配参考样值串和匹配关系参数就能得到匹配当前样值串。匹配关系参数通常只占用很少的比特数,远少于匹配当前样值串本身占用的比特数,因而能达到很好的数据压缩效果。

串匹配方式中,需要把2维(2D)图像像素或像素样值数据重新排列成1维(1D)数据,然后在1D数据中进行数据匹配。因此,如何把2D数据排列成1D数据,即2D数据的1D排列方式,对串匹配方式的编码性能有很大影响。2D数据的1D排列方式根据其扫描模式来分类,有水平扫描、垂直扫描、水平双向扫描、垂直双向扫描、zigzag扫描、对角线扫描、Hilbert扫描等。图8是扫描模式的4个例。2D数据的1D排列方式根据CU的深度来分类,又可以分为深度D=0的1D排列方式、深度D=1的1D排列方式、深度D=2的1D排列方式、深度D=3的1D排列方式、深度D=4的1D排列方式。图9是不同深度的的1D排列方式的8个例。

串匹配和块匹配方式中,首先还需要确定可以用来作为参考串和参考块的可参考区域即参考像素样值存储空间。

现有串匹配方式中,采用一种固定深度的排列方式来进行串匹配,没有充分发挥串匹配方式的优越性。

现有匹配(包括串匹配和块匹配)方式中,采用一种固定大小和组成规则的可参考区域,没有充分发挥匹配方式的优越性。

需要说明的是,“匹配”是编码的操作,对应的重构和解码操作是“复制”。因此,各种匹配方式如块匹配方式、微块匹配方式、精细划分匹配方式、串匹配方式、调色板匹配方式等也称为块复制方式、微块复制方式、精细划分复制方式、串复制方式、调色板复制方式(也称调色板索引复制方式或简称索引复制方式)等。

发明内容

本发明的主要技术特征是在对一个当前CU进行匹配方式的编码或解码时,当前CU的2D像素采用当前CU的深度的1D排列方式,但参考像素样值集则不是采用单一深度的1D排列方式,而是根据当前CTU或/和CU的深度和/或序号的变化,动态地采用不同的组成规则(如不同深度的1D排列方式)重组参考像素样值集。从已重构像素的一个CTU或一个CU的角度来看,这个技术特征的一个具体表现是:该CTU或CU作为参考像素的排列或组成方式,随着该CTU或CU的相对于当前CTU或当前CU的CTU相对序号或CU相对序号的变化而至少改变(重组)一次。下面是动态重组参考像素样值集的几个例。

例1(根据CTU和CU的相对序号重组参考像素的扫描方式):如图10的上部所示,对序号为n的当前CTU的D=0的当前CU(64x64像素)进行编码或解码时,当前CU的2D像素采用D=0的1D排列方式;由已重构像素构成的参考像素样值集,包括序号为n-1的前一CTU(CTU相对序号为-1)和序号小于n-1(CTU相对序号小于-1)的所有更前面CTU的2D像素,也都采用D=0的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1)而至少改变一次。

例2a(根据CTU和CU的相对序号重组参考像素的扫描方式):如图10的中部所示,对序号为n的当前CTU的D=1的序号为2的当前CU进行编码或解码时,当前CU的2D像素采用D=1的1D排列方式;由已重构像素构成的参考像素样值集内,同属当前CTU的已重构参考像素,被划分成两个32x32的部分(即同深度D=1的CU相对序号为-1和-2的2个CU),每个部分的2D像素都采用D=1的1D排列方式;序号为n-1的前一CTU(CTU相对序号为-1)和序号小于n-1的所有更前面CTU(CTU相对序号小于-1)的2D像素,则采用D=0的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1)而至少改变一次。

例2b(根据CTU和CU的相对序号重组参考像素的扫描方式):如图10的下部所示,与例2a基本相同,不同之处在于,序号为n-1的前一CTU(CTU相对序号为-1)则被划分成四个32x32的部分,每个部分的2D像素都采用D=1的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从-1变为-2)而至少改变一次。

例3a(根据CTU和CU的相对序号重组参考像素的扫描方式):如图11的上部所示,对序号为n的当前CTU的D=2的序号为6的当前CU进行编码或解码时,当前CU的2D像素采用D=2的1D排列方式;由已重构像素构成的参考像素样值集内,与当前CU同属一个D=1(32x32像素)的分割的已重构参考像素,被划分成两个D=2(16x16像素)的部分(即同深度D=2的CU相对序号为-1和-2的2个CU),每个部分的2D像素都采用D=2的1D排列方式;同属当前CTU但与当前CU不属于同一个D=1(32x32像素)的分割的已重构参考像素,恰好组成另一个D=1(32x32像素)的部分(即深度D=1的CU相对序号为-1的1个CU),这个部分的2D像素采用D=1的1D排列方式;序号为n-1的前一CTU(CTU相对序号为-1)和序号小于n-1的所有更前面CTU(CTU相对序号小于-1)的2D像素,则采用D=0的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1)而至少改变一次。

例3b(根据CTU和CU的相对序号重组参考像素的扫描方式):如图11的中部所示,与例3a基本相同,不同之处在于,同属当前CTU但与当前CU不属于同一个D=1(32x32像素)的分割的已重构参考像素,被划分成四个D=2(16x16像素)的部分(即深度D=2的CU相对序号为-3至-6的4个CU),每个部分的2D像素都采用D=2的1D排列方式;序号为n-1的前一CTU(CTU相对序号为-1)的2D像素可以被划分成预先确定的若干个不同深度D的部分,每个部分的2D像素都采用深度D的1D排列方式;序号小于n-1的所有更前面CTU(CTU相对序号小于-1)的每一个CTU的2D像素,也可以被划分成预先确定的若干个不同深度D的部分,每个部分的2D像素都采用深度D的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1再变为-2)而至少改变一次。

例3c(根据CTU和CU的相对序号重组参考像素的扫描方式):如图11的下部所示,与例3b基本相同,不同之处在于,同属当前CTU但与当前CU不属于同一个D=1(32x32像素)的分割的已重构参考像素,被划分成四个D=2(16x16像素)的部分(即深度D=2的CU相对序号为-3至-6的4个CU)后,这四个部分可以按先左右再上下的顺序连接也可以按先上下再左右的顺序连接;序号为n-1的前一CTU(CTU相对序号为-1)的2D像素被划分成四个D=1的部分,每个部分的2D像素都采用D=1的1D排列方式,而这四个部分可以按先左右再上下的顺序连接也可以按先上下再左右的顺序连接。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1再变为-2)而至少改变一次。

例4a(根据CTU和CU的相对序号重组参考像素的扫描方式):如图12的上部所示,对序号为n的当前CTU的D=3的序号为25的当前CU进行编码或解码时,当前CU的2D像素采用D=3的1D排列方式;由已重构像素构成的参考像素样值集内,与当前CU同属一个D=2(16x16像素)的分割的已重构参考像素,恰好组成另一个D=3(8x8像素)的部分(即深度D=3的CU相对序号为-1的1个CU),这个部分的2D像素采用D=3的1D排列方式;与当前CU不属于同一个D=2(16x16像素)的分割但属于同一个D=1(32x32像素)的分割的已重构参考像素,被划分成两个D=2(16x16像素)的部分(即深度D=2的CU相对序号为-1和-2的2个CU),每个部分的2D像素都采用D=2的1D排列方式;同属当前CTU但与当前CU不属于同一个D=1(32x32像素)的分割的已重构参考像素,恰好组成另一个D=1(32x32像素)的部分(即深度D=1的CU相对序号为-1的1个CU),这个部分的2D像素采用D=1的1D排列方式;序号为n-1的前一CTU(CTU相对序号为-1)和序号小于n-1的所有更前面CTU(CTU相对序号小于-1)的2D像素,则采用D=0的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1)而至少改变一次。

例4b(根据CTU和CU的相对序号重组参考像素的扫描方式):如图12的中部所示,与例4a基本相同,不同之处在于,当前CTU内的全部已重构参考像素样值(即深度D=3的CU相对序号小于等于-1的所有CU)都采用D=3的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1)而至少改变一次。

例4c(根据CTU和CU的相对序号重组参考像素的扫描方式):如图12的下部所示,与例4b基本相同,不同之处在于,前一CTU(CTU相对序号为-1)的左半部分已重构参考像素样值采用D=1的1D排列方式而右半部分已重构参考像素样值则采用D=3的1D排列方式,右半部分32个D=3(8x8像素)的部分可以按先左右再上下的顺序连接也可以按先上下再左右的顺序连接或按其他的顺序连接;序号小于n-1的所有更前面CTU(CTU相对序号小于-1)的每一个CTU的2D像素,也可以被划分成预先确定的若干个不同深度D的部分,每个部分的2D像素都采用深度D的1D排列方式。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从0变为-1再变为-2)而至少改变一次。

例5(根据CTU和CU的相对序号重组参考像素的可取区域):如图13所示,序号为n的当前CTU和序号为n-1的前一CTU(CTU相对序号为-1)中的全体已重构像素样值的区域都是可参考区域,另一方面,序号小于n-1的所有更前面CTU(CTU相对序号小于-1)中的部分已重构像素样值的区域是可参考区域而另一部分已重构像素样值的区域不是可参考区域。例如,CTU相对序号等于-2的CTU中最右边的D=2的4个CU是可参考区域而其余部分都不是可参考区域,CTU相对序号等于-H(H是以CTU为单位的图像的宽度)的CTU(即位于当前CTU上方的CTU)是可参考区域,CTU相对序号等于-H-1的CTU(即位于当前CTU左上方的CTU)不是可参考区域,CTU相对序号等于-H-2的CTU中,最右上角和最右下角的D=2的2个CU是可参考区域而其余部分都不是可参考区域。显而易见,本例的一个基本特征是一个已重构CTU或CU作为参考像素的排列或组成方式随着其相对序号的变化(例如,CTU相对序号从-1变为-2)而至少改变一次。

本发明的编码方法中,最基本的特有技术特征就是,编码一个当前CTU或一个当前CU时,首先根据当前CTU的序号或/和当前CU的深度和/或序号,把已重构的参考像素样值存储空间划分成若干部分,把各部分按照预先确定的组成规则(如CTU相对序号或/和CU深度和/或序号)进行必要的重组(如按照与深度对应的1D扫描方式重新排列),形成一个重组(如由不同深度的1D排列方式混合组成)的参考像素样值集,然后在所述参考像素样值集内进行匹配编码。从已重构像素的一个CTU或一个CU的角度来看,这个最基本的特有技术特征的一个具体表现是:该CTU或CU作为参考像素的排列或组成方式,随着该CTU或CU的相对于当前CTU或当前CU的CTU相对序号或CU相对序号的变化而至少改变(重组)一次。

本发明的解码方法中,最基本的特有技术特征就是,依据从视频码流数据中读出的信息或者依据解码顺序计算得到当前CTU的序号或/和当前CU的深度和/或序号,解码一个当前CTU或一个当前CU时,首先根据当前CTU的序号或/和当前CU的深度和/或序号,把已重构的参考像素样值存储空间划分成若干部分,把各部分按照预先确定的组成规则(如CTU相对序号或/和CU深度和/或序号)进行必要的重组(如按照与深度对应的1D扫描方式重新排列),形成一个重组(如由不同深度的1D排列方式混合组成)的参考像素样值集,然后在所述参考像素样值集内进行匹配解码。从已重构像素的一个CTU或一个CU的角度来看,这个最基本的特有技术特征的一个具体表现是:该CTU或CU作为参考像素的排列或组成方式,随着该CTU或CU的相对于当前CTU或当前CU的CTU相对序号或CU相对序号的变化而至少改变(重组)一次。

根据本发明的一个方面,提供了一种图像编码方法,至少包括下列步骤的至少之一:

1)对编码块进行编码时,至少根据所述编码块的序号和/或深度,对参考像素样值集的部分或全体进行重组;

2)使用重组的参考像素样值集对所述编码块进行编码,并将编码结果写入视频码流;视频码流中至少间接或/和直接地包括在解码方法中对参考像素样值集的部分或全体进行重组所需要的全部或部分信息。

根据本发明的另一个方面,还提供了一种图像解码方法,至少包括下列步骤的至少之一:

1)解析视频码流,依据从视频码流数据中读出的信息或/和依据解码顺序来确定解码块的序号和/或深度,至少根据所述解码块的序号和/或深度,对参考像素样值集的部分或全体进行重组;

2)使用重组的参考像素样值集对所述解码块进行解码,产生重构像素。

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

本发明的编码方法的一个实施例,其流程示意图如图14所示,至少包括如下步骤之一:

1)        CU特性分析评估、前处理和编码方式选择步骤;对当前CU和邻近CU的像素样值特性进行分析评估,包括对像素样值进行必要的前处理,预先判断串匹配编码方式是否适合用来对当前CU进行编码,本步骤是可选的,即可以跳过本步骤,直接进入下一步骤;所述分析评估的办法的例:依据或参考邻近CU的编码结果的办法,计算当前CU中不同颜色的像素的个数的办法;所述前处理的例:样值量化、颜色量化和基于颜色的像素聚类、用调色板和索引来表示输入原始像素的颜色;

2)        动态重组参考像素样值集步骤;根据当前CU的深度和序号,把已重构的参考像素样值存储空间划分成若干部分,把每个部分都按照预先确定的可以互不相同的深度的1D排列方式重新排列,形成一个由不同深度的1D排列方式混合组成的参考像素样值集;当前CU的深度D=0时,参考像素样值集被动态划分成有K0个部分,这K0个部分的已重构参考像素样值分别采用深度为D(0,1),D(0,2),……,D(0, K0)的1D排列方式;当前CU的深度D=1时,参考像素样值集被动态划分成有K1个部分,这K1个部分的已重构参考像素样值分别采用深度为D(1,1),D(1,2),……,D(1, K1)的1D排列方式;当前CU的深度D=2时,参考像素样值集被动态划分成有K2个部分,这K2个部分的已重构参考像素样值分别采用深度为D(2,1),D(2,2),……,D(2, K2)的1D排列方式;当前CU的深度D=3时,参考像素样值集被动态划分成有K3个部分,这K3个部分的已重构参考像素样值分别采用深度为D(3,1),D(3,2),……,D(3, K3)的1D排列方式;当前CU的深度D=4时,参考像素样值集被动态划分成有K4个部分,这K4个部分的已重构参考像素样值分别采用深度为D(4,1),D(4,2),……,D(4, K4)的1D排列方式;

3)        串匹配编码步骤;使用串匹配编码方式对当前CU进行串匹配编码运算;所述串匹配编码运算过程中,当前CU的2D像素采用当前CU的深度的1D排列方式,而参考像素样值集是由采用不同深度的1D排列方式的几个部分混合组成;所述串匹配编码的输入是采用当前CU的深度的1D排列方式的输入原始像素或其经过前处理的像素;所述串匹配编码的输出是匹配位置、匹配长度,未匹配样值,匹配残差;所述匹配位置是用来表示与所述当前CU中匹配当前样值相匹配的匹配参考样值在所述参考像素样值集内的什么位置的变量;串匹配编码方式以可变长度的像素样值串(称为匹配当前串,其位置既可用一个2维坐标也可用一个线性地址来表示)为单位进行匹配编码,所述匹配参考样值形成所述参考像素样值集内的一个匹配串,称为匹配参考串,其位置也是既可用一个2维坐标也可用一个线性地址来表示,因而在串匹配编码方式中,所述匹配位置既可用匹配参考串的2维坐标与匹配当前串的2维坐标之差也可用匹配参考串的线性地址与匹配当前串的线性地址之差,通称为位移矢量来表示;由于匹配参考串的长度(等于匹配当前串的长度)是可变的,所以还需要另一个称为匹配长度的变量来表示其长度;所述未匹配样值是依据预先确定的匹配准则在所述参考像素样值集内未找到匹配的输入原始像素样值;所述匹配残差是输入原始像素样值与所述匹配参考样值之差,如果串匹配编码方式预先确定的匹配准则是绝对精确的无损匹配,则所述匹配残差为零,即这种串匹配编码方式就没有匹配残差作为输出,如果一种串匹配编码方式预先确定的匹配准则是近似的有损匹配,则所述匹配残差可能不为零,另一种有损匹配的情形是首先对输入原始像素样值进行样值量化、颜色量化或者基于颜色的像素聚类的前处理,然后再进行串匹配编码,在这种情形,由于样值量化、颜色量化或者基于颜色的像素聚类是有损的,即使串匹配编码本身是无损的,所述匹配残差(即输入原始像素样值与所述匹配参考样值之差)也可能不为零;对所述当前CU进行串匹配编码的结果是I(I ≥ 0)个匹配串和J(J ≥ 0)个未匹配像素样值,输出I对(位移矢量,匹配长度)和J个未匹配像素样值,其中I和J不可能同时为零;

4)        其余各种常用编码和重构运算步骤,完成当前CU的所有其余编码和重构运算,对输入的原始像素、各种参数和变量进行各种常用技术,如帧内预测、帧间预测、块匹配、调色板匹配、变换、量化、逆变换、反量化、对应于预测残差和匹配残差的补偿(即取残差运算的逆运算)、预测并求残差、DPCM、一阶和高阶差分、映射、游程、索引、去块效应滤波、样值自适应补偿(Sample Adaptive Offset),的编码和重构运算以及熵编码运算;本步骤的输入是上述步骤3)的输出和输入原始像素以及来自参考像素样值存储空间和参考像素样值集的参考像素;本步骤的输出是重构像素(包括完全重构像素和不同程度的部分重构像素)和含串匹配编码结果和其他编码结果的视频码流;所述重构像素放入参考像素样值存储空间中,用作后续串匹配编码运算、其余各种常用编码和重构运算步骤所需要的参考像素;所述视频码流是本编码方法的最后输出,包含了对应的解码方法进行解码和重构所需要的全部语法元素,特别是匹配位置(即位移矢量)、匹配长度、未匹配样值等语法元素。

本发明的解码方法的一个实施例,其流程示意图如图15所示,至少包括如下步骤之一:

1)        视频码流数据解析与部分解码步骤;对输入的含匹配位置、匹配长度、未匹配样值的压缩数据以及所有其他语法元素压缩数据的视频码流进行熵解码,并解析出熵解码得到的各种数据的意义;把解析和部分解码(如变换解码、预测并做补偿即求残差运算的逆运算、DPCM解码、一阶和高阶差分解码、映射解码、游程解码、索引解码)后得到的匹配位置(即位移矢量)、匹配长度、未匹配样值等匹配关系参数输出给后续串匹配解码步骤;把解析得到的当前CU的深度和序号输出给后续动态重组参考像素样值集步骤;把解析得到的所有其他语法元素如匹配残差的熵解码输出数据(即熵解码的结果)输出给后续其余各种常用解码和重构运算步骤;特别是,依据从视频码流数据中解析得到的信息或者依据从视频码流数据中解析得到的信息再加上对当前CU以及邻近CU的特性进行分析评估的结果,决定是否对当前CU进行串匹配解码;所述分析评估的办法的例:依据或参考邻近CU的若干解码结果的办法,使用串匹配解码方式和其他解码方式对当前CU先做一轮部分预解码并评估部分预解码结果的办法;如果决定对当前CU进行串匹配解码,则顺序执行下一步骤,否则,跳至步骤4);

2)        动态重组参考像素样值集步骤;根据当前CU的深度和序号,把已重构的参考像素样值存储空间划分成若干部分,把每个部分都按照预先确定的可以互不相同的深度的1D排列方式重新排列,形成一个由不同深度的1D排列方式混合组成的参考像素样值集;当前CU的深度D=0时,参考像素样值集被动态划分成有K0个部分,这K0个部分的已重构参考像素样值分别采用深度为D(0,1),D(0,2),……,D(0, K0)的1D排列方式;当前CU的深度D=1时,参考像素样值集被动态划分成有K1个部分,这K1个部分的已重构参考像素样值分别采用深度为D(1,1),D(1,2),……,D(1, K1)的1D排列方式;当前CU的深度D=2时,参考像素样值集被动态划分成有K2个部分,这K2个部分的已重构参考像素样值分别采用深度为D(2,1),D(2,2),……,D(2, K2)的1D排列方式;当前CU的深度D=3时,参考像素样值集被动态划分成有K3个部分,这K3个部分的已重构参考像素样值分别采用深度为D(3,1),D(3,2),……,D(3, K3)的1D排列方式;当前CU的深度D=4时,参考像素样值集被动态划分成有K4个部分,这K4个部分的已重构参考像素样值分别采用深度为D(4,1),D(4,2),……,D(4, K4)的1D排列方式;

3)        串匹配解码步骤;使用串匹配解码方式对当前CU进行串匹配解码运算;所述串匹配解码运算过程中,当前CU的2D像素采用当前CU的深度的1D排列方式,而参考像素样值集是由采用不同深度的1D排列方式的几个部分混合组成;所述串匹配解码运算的输入是在步骤1)中从视频码流数据中解析和解码得到的I(I ≥ 0)对(匹配位置,匹配长度)和J(J ≥ 0)个未匹配样值,其中I和J不可能同时为零;所述匹配位置是用来表示从参考像素样值集内的什么位置复制匹配参考样值并将其粘贴到当前CU的匹配当前样值的位置;显而易见,匹配当前样值是匹配参考样值的复制品,两者在数值上是相等的;串匹配解码方式以可变长度的像素样值串(称为匹配当前串,其位置既可用一个2维坐标也可用一个线性地址来表示)为单位进行串匹配解码,所述匹配参考样值形成所述参考像素样值集内的一个匹配串,称为匹配参考串,其位置也是既可用一个2维坐标也可用一个线性地址来表示,因而在串匹配解码方式中,所述匹配位置既可用匹配参考串的2维坐标与匹配当前串的2维坐标之差也可用匹配参考串的线性地址与匹配当前串的线性地址之差,通称为位移矢量来表示,由于匹配参考串的长度(等于匹配当前串的长度)是可变的,所以还需要另一个称为匹配长度的变量来表示其长度;所述未匹配样值是直接从视频码流数据中解析和解码得到的像素样值并将其粘贴到当前CU的当前解码中像素样值的位置,所述未匹配样值通常不存在于所述参考像素样值集;所述串匹配解码运算的输出是所述匹配当前样值(在数值上与匹配参考样值相等)加上所述未匹配样值;所述匹配当前样值和可能存在的所述未匹配样值全部合起来就构成所述当前CU的完整的串匹配解码输出;

4)        其余各种常用解码和重构运算步骤,完成当前CU的所有其余解码和重构运算,对输入的各种参数和变量进行各种常用技术,如帧内预测、帧间预测、块匹配、调色板匹配、逆变换、反量化、对应于预测残差和匹配残差的补偿(即取残差运算的逆运算)、预测并做补偿(即求残差运算的逆运算)、DPCM、一阶和高阶差分、映射、游程、索引、去块效应滤波、样值自适应补偿(Sample Adaptive Offset),的解码和重构运算;本步骤的输入是上述步骤1)输出的所有其他语法元素如匹配残差的熵解码输出数据和步骤3)的输出即所述匹配当前样值加上可能存在的所述未匹配样值,以及来自参考像素样值存储空间和参考像素样值集的参考像素;本步骤的输出是重构像素(包括完全重构像素和不同程度的部分重构像素);所述重构像素放入参考像素样值存储空间中,用作后续串匹配解码运算、其余各种常用解码和重构运算步骤所需要的参考像素;所述完全重构像素也是本解码方法的最后输出。

本发明适用于叠包格式图像或CU的编码和解码。本发明也同样适用于分量平面格式图像或CU的编码和解码。

以上所提供的图示仅以示意方式说明本发明的基本构想,图示中仅显示与本发明直接有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

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

根据CTU或/和CU的相对序号动态重组参考像素样值集的实施例1

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成两部分:

1)      属于当前CTU的已重构参考像素部分(即CU相对序号小于0的D=1的CU),采用D=1的1D排列方式,

2)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成三部分:

1)      属于当前CTU并且与当前CU属于同一个D=1的分割的已重构参考像素部分,采用D=2的1D排列方式,

2)      属于当前CTU但与当前CU不属于同一个D=1的分割的已重构参考像素部分,采用D=1的1D排列方式,

3)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成四部分:

1)      属于当前CTU并且与当前CU属于同一个D=2的分割的已重构参考像素部分,采用D=3的1D排列方式,

2)      属于当前CTU并且与当前CU不属于同一个D=2的分割但与当前CU属于同一个D=1的分割的已重构参考像素部分,采用D=2的1D排列方式,

3)      属于当前CTU但与当前CU不属于同一个D=1的分割的已重构参考像素部分,采用D=1的1D排列方式,

4)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成五部分:

1)      属于当前CTU并且与当前CU属于同一个D=3的分割的已重构参考像素部分,采用D=4的1D排列方式,

2)      属于当前CTU并且与当前CU不属于同一个D=3的分割但与当前CU属于同一个D=2的分割的已重构参考像素部分,采用D=3的1D排列方式,

3)      属于当前CTU并且与当前CU不属于同一个D=2的分割但与当前CU属于同一个D=1的分割的已重构参考像素部分,采用D=2的1D排列方式,

4)      属于当前CTU但与当前CU不属于同一个D=1的分割的已重构参考像素部分,采用D=1的1D排列方式,

5)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式。

在本实施例中,一个已重构CTU或CU作为参考像素的排列或组成方式至少随着其CTU相对序号从0变为-1而至少改变一次。

动态重组参考像素样值集的实施例2

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成两部分:

1)      属于当前CTU的已重构参考像素部分,采用D=1的1D排列方式,

2)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成两部分:

1)      属于当前CTU的已重构参考像素部分,采用D=2的1D排列方式,

2)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成两部分:

1)      属于当前CTU的已重构参考像素部分,采用D=3的1D排列方式,

2)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成两部分:

1)      属于当前CTU的已重构参考像素部分,采用D=4的1D排列方式,

2)      不属于当前CTU的已重构参考像素部分(即CTU相对序号小于0的CTU),采用D=0的1D排列方式。

在本实施例中,一个已重构CTU或CU作为参考像素的排列或组成方式至少随着其CTU相对序号从0变为-1而至少改变一次。

动态重组参考像素样值集的实施例3

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=1的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=2的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=3的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=4的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部前一CTU(即CTU相对序号为-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式。

在本实施例中,一个已重构CTU或CU作为参考像素的排列或组成方式至少随着其CTU相对序号从0变为-1而至少改变一次。

动态重组参考像素样值集的实施例4

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU,其中H是以CTU为单位的图像的宽度)的已重构参考像素部分,采用D=1的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=2的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=3的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=4的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)的已重构参考像素部分,采用D=0的1D排列方式。

在本实施例中,一个已重构CTU或CU作为参考像素的排列或组成方式至少随着其CTU相对序号从0变为-1而至少改变一次。

动态重组参考像素样值集的实施例5

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)或者属于部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=1的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)并且不属于所述部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)或者属于部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=2的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)并且不属于所述部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)或者属于部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=3的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)并且不属于所述部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成两部分:

1)      属于当前CTU或者属于部分或全部左方CTU(即CTU相对序号为-1的CTU)或者属于部分或全部上方CTU(即CTU相对序号为-H的CTU)或者属于部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=4的1D排列方式,

2)      不属于当前CTU并且不属于所述部分或全部左方CTU(即CTU相对序号为-1的CTU)并且不属于所述部分或全部上方CTU(即CTU相对序号为-H的CTU)并且不属于所述部分或全部左上方CTU(即CTU相对序号为-H-1的CTU)的已重构参考像素部分,采用D=0的1D排列方式。

在本实施例中,一个已重构CTU或CU作为参考像素的排列或组成方式至少随着其CTU相对序号从0变为-1而至少改变一次。

动态重组参考像素样值集的实施例6

当前CU的深度D=0时,参考像素样值集动态重组成深度D=0的1D排列方式;

当前CU的深度D=1时,参考像素样值集动态重组成深度D=1的1D排列方式;

当前CU的深度D=2时,参考像素样值集动态重组成深度D=2的1D排列方式;

当前CU的深度D=3时,参考像素样值集动态重组成深度D=3的1D排列方式;

当前CU的深度D=4时,参考像素样值集动态重组成深度D=4的1D排列方式。

动态重组参考像素样值集的物理实现

所述由不同深度的1D排列方式混合组成的参考像素样值集,在对当前CU进行编码或解码前,已经在物理上实现,即已经把已重构参考像素样值的各个部分都按照所述预先确定的可以互不相同的深度的1D排列方式重新排列并写入物理存储器。

动态重组参考像素样值集的虚拟实现

所述由不同深度的1D排列方式混合组成的参考像素样值集,用存储空间的读写地址转换的虚拟方式来实现,即在单一深度的1D排列方式的参考像素样值存储空间的物理实现基础上,把已重构参考像素样值的按其他任一深度的1D排列方式的地址都转换成按所述单一深度的1D排列方式的地址,然后直接读写所述单一深度的1D排列方式的参考像素样值存储空间,以此来实现由不同深度的1D排列方式混合组成的参考像素样值集。

动态重组参考像素样值集的实施例7

所述编码方法或解码方法,还至少包括下列特征之一或其组合:

1)一个已重构编码块或解码块作为参考像素的排列或组成方式随着所述已重构编码块或解码块的相对序号的变化而至少改变一次;

2)一个已重构编码块或解码块作为参考像素的排列或组成方式随着所述已重构编码块或解码块的相对序号从-K变为-K-1而改变一次,其中K是一个非负整数。

动态重组参考像素样值集的实施例8

所述编码方法或解码方法,还至少包括下列特征之一或其组合:

1)一个已重构编码块或解码块作为参考像素的扫描方式随着所述已重构编码块或解码块的相对序号的变化而至少改变一次;

2)一个已重构编码块或解码块作为参考像素的扫描方式随着所述已重构编码块或解码块的相对序号从-K变为-K-1而改变一次,其中K是一个非负整数。

动态重组参考像素样值集的实施例9

所述编码方法或解码方法,还至少包括下列特征之一或其组合:

1)一个已重构编码块或解码块作为参考像素的可取区域随着所述已重构编码块或解码块的相对序号的变化而至少改变一次;

2)一个已重构编码块或解码块作为参考像素的可取区域随着所述已重构编码块或解码块的相对序号从-K变为-K-1而改变一次,其中K是一个非负整数。

动态重组参考像素样值集的实施例10(重组所需信息)

所述编码方法或解码方法,还至少包括下列特征:至少根据下列参数的部分或全部或组合来确定对参考像素样值集的部分或全体进行重组所需要的全部或部分信息:

1)编解码块的序号;

2)编解码块在图像中的位置;

3)编解码块的编解码参数;如:编码模式、预测模式、复制模式、位移矢量;

4)编解码块的深度;

5)编解码块之间的相对序号;

6)编解码块之间的相对深度;

7)从码流中直接获取或隐含推导得出的标志位或标记参数。

动态重组参考像素样值集的实施例11(码流中直接包含或/和间接隐示重组所需信息)

所述编码方法或解码方法,还至少包括下列特征:至少在视频码流中下列地方的至少之一直接包含或/和间接隐示重组参考像素样值集所需要的全部或部分信息:

1)视频参数集;

2)序列参数集;

3)图像参数集;

4)条带头;

5)CTU头;

6)CU头;

7)编解码块头。

直接包含的例:写入码流的标志位或标记符。间接隐示的例:从其他编解码参数或变量推导获得。

动态重组参考像素样值集的实施例12(编解码块头信息中的重组标志位)

所述编码方法或解码方法,还至少包括下列特征:至少在编解码块的头中直接包含或/和间接隐示了所述编解码块的重构像素作为参考像素的排列或组成方式的重组所需要的全部或部分信息。

动态重组参考像素样值集的实施例13(编解码块头信息中的重组标志位)

所述编码方法或解码方法,还至少包括下列特征:至少在编解码块的头中直接包含或/和间接隐示了所述编解码块的重构像素作为参考像素的排列或组成方式的重组所需要的一个二值标志位:

所述标志位取一个值时表示所述编解码块的重构像素在其相对序号从-K变为-K-1时,从参考像素的可取区域变为不可取区域,即所述编解码块的重构像素在其相对序号大于等于-K时属于可参考区域而在其相对序号小于-K时不属于可参考区域;

所述标志位取另一个值时表示所述编解码块的重构像素不受其相对序号的取值的变化的影响始终属于可参考区域。

附图说明

图1是一个CTU的一种CU划分和树状结构例

图2是一个CTU的另一种CU划分和树状结构例

图3是一个CTU内深度D=0的CU或分割的序号

图4是一个CTU内深度D=1的4个CU或分割的序号

图5是一个CTU内深度D=2的16个CU或分割的序号

图6是一个CTU内深度D=3的64个CU或分割的序号

图7是一个CTU内深度D=4的256个CU或分割的序号

图8是2D数据的1D排列方式以扫描模式分类的例

图9是2D数据的1D排列方式以深度D分类的例

图10是根据CTU和CU的相对序号重组参考像素样值集时,对深度D=0和深度D=1的CU进行编码或解码时的1D排列方式的若干例

图11是根据CTU和CU的相对序号重组参考像素样值集时,对深度D=2的CU进行编码或解码时的1D排列方式的若干例

图12是根据CTU和CU的相对序号重组参考像素样值集时,对深度D=3的CU进行编码或解码时的1D排列方式的若干例

图13是根据CTU的相对序号重组参考像素样值集时,重新确定的可参考区域的例

图14是本发明的编码方法的一个实施例的流程示意图

图15是本发明的解码方法的一个实施例的流程示意图。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号