用于图片编码和解码的方法及设备

文档序号:144856 发布日期:2021-10-22 浏览:19次 >En<

阅读说明:本技术 用于图片编码和解码的方法及设备 (Method and apparatus for picture encoding and decoding ) 是由 E.弗朗索瓦 F.莱林内克 T.波伊里尔 于 2020-02-25 设计创作,主要内容包括:响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸,启用要用于图片的色度块的跨分量相关工具。然后,响应于所述跨分量相关工具的所述启用而对色度块进行解码。提供了一种编码和解码方法以及编码和解码设备。(Enabling a cross-component correlation tool to be used for a chroma block of a picture in response to a size of the chroma block and a size of at least one luma block co-located with the chroma block. Then, a chroma block is decoded in response to the enabling of the cross-component correlation tool. An encoding and decoding method and an encoding and decoding apparatus are provided.)

用于图片编码和解码的方法及设备

技术领域

本实施例中的至少一个实施例总体上涉及一种用于图片编码和解码的方法及设备,并且更具体地,涉及一种用于使用独立的亮度和色度分割来进行图片编码和解码的方法及设备。

背景技术

为了实现高压缩效率,图像和视频编解码方案通常采用预测和变换来利用视频内容中的空间和时间冗余。通常,使用帧内或帧间预测来利用帧内或帧间相关性,然后对原始图像块和预测图像块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵编解码。在编码期间,通常可能使用四叉树分割将原始图像块分割/划分成子块。为了重建视频,通过与预测、变换、量化和熵编解码对应的逆过程来对压缩数据进行解码。

发明内容

根据至少一个实施例的一般方面,提出了一种用于对视频数据进行解码的方法,包括:

-响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的所述色度块的跨分量相关工具;

-响应于所述跨分量相关工具的所述启用,对所述色度块进行解码。

根据至少一个实施例的一般方面,提出了一种用于对视频数据进行解码的装置,包括一个或多个处理器,一个或多个处理器被配置为执行:

-响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;以及

-响应于所述跨分量相关工具的所述启用,对所述色度块进行解码。

根据至少一个实施例的另一一般方面,比特流被格式化为包括根据上述编码方法产生的信号。

根据至少一个实施例的一般方面,提出了一种用于对视频数据进行编码的方法,包括:

-响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;

-响应于所述跨分量相关工具的所述启用,对所述色度块进行编码。

根据至少一个实施例的一般方面,提出了一种用于对视频数据进行编码的装置,包括一个或多个处理器,该一个或多个处理器被配置为执行:

-响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;以及

-响应于所述跨分量相关工具的所述启用,对所述色度块进行编码。

根据至少一个实施例的另一一般方面,比特流被格式化为包括根据上述编码方法产生的信号。

根据另一一般方面,用于对视频进行解码或编码的方法或用于对视频进行解码或编码的装置还包括:确定色度块中的给定样本位置在图片中的位置,确定共位亮度块,共位亮度块是包括与色度块中的位置共位的亮度样本的亮度块,确定共位亮度块的邻近亮度样本,从确定的邻近亮度样本确定亮度值,基于确定的亮度值确定缩放因子,以及根据缩放因子应用色度块残差的缩放。

本实施例中的一个或多个还提供了一种计算机可读存储介质,其上存储有用于根据上述任何方法的至少一部分对视频数据进行编码或解码的指令。一个或多个实施例还提供了一种计算机可读存储介质,其上存储有根据上述编码方法产生的比特流。一个或多个实施例还提供了一种用于发送或接收根据上述编码方法产生的比特流的方法和装置。一个或多个实施例还提供了一种计算机程序产品,其包括用于执行上述任何方法的至少一部分的指令。

附图说明

图1描绘了编解码树单元(CTU);

图2描绘了被划分为编解码单元、预测单元和变换单元的编解码树单元;

图3和图4描绘了使用四叉树加二叉树(QTBT)被划分为编解码单元的CTU;

图5示出了由四叉树加二叉树编解码工具定义的编解码单元的划分模式;

图6示出了编解码单元的附加划分模式,例如,非对称二元划分模式和三叉树划分模式;

图7描绘了根据一个实施例的用于启用或禁用跨分量相关编解码工具的方法的流程图;

图8A、8B、8C、8D示出了根据图7的实施例的启用/禁用跨分量相关编解码工具的原理;

图9描绘了根据一个实施例的用于启用或禁用跨分量相关编解码工具的方法的流程图;

图10示出了根据示例的色度块及其共位亮度块;

图11示出了根据图9的实施例的启用/禁用跨分量相关编解码工具的原理;

图12描绘了根据一个实施例的用于启用或禁用跨分量相关编解码工具的方法的流程图;

图13和图14示出了根据图12的实施例的启用/禁用跨分量相关编解码工具的原理;

图15描绘了根据一个实施例的用于启用或禁用跨分量相关编解码工具的方法的流程图;

图16示出了根据图15的实施例的启用/禁用跨分量相关编解码工具的原理;

图17描绘了根据一个实施例的用于获得色度块的缩放因子或缩放因子索引的方法的流程图;

图18描绘了当前色度块和一些邻近色度块;

图19、20和21示出了根据实施例的启用/禁用跨分量相关编解码工具的原理;

图22描绘了根据一个实施例的用于确定要在色度残差缩放中使用的缩放因子的方法的流程图;

图23A、23B、23C和23D描绘了色度块和共位亮度块;

图24A和24B示出了左上邻近亮度样本与邻近色度样本之间的距离的示例;

图25描绘了用于基于其共位色度样本并且基于当前块的色度样本来检查亮度样本可用性的方法的流程图;

图26示出了根据实施例的视频编码器的框图;

图27示出了根据实施例的视频解码器的框图;以及

图28示出了其中实现各个方面和实施例的系统的示例的框图。

具体实施方式

在HEVC编解码中,图片被分割成具有通常64×64、128×128或256×256的可配置尺寸的正方形形状的CTU。CTU是分割成4个相等尺寸的正方形编解码单元(CU)的四叉树的根,即如图1所描绘的宽度和高度上的父块尺寸的一半。四叉树是其中父节点可以被划分为四个子节点的树,每个子节点可以成为用于另一次划分为四个子节点的父节点。在HEVC中,编解码块(CB)被分割成一个或多个预测块(PB),并形成分割成变换块(TB)的四叉树的根。对应于编解码块、预测块和变换块,编解码单元(CU)包括预测单元(PU)和树结构的变换单元(TU)集合,PU包括用于所有颜色分量的预测信息(例如,帧内或帧间预测参数),并且TU包括用于每个颜色分量的残差编解码语法结构,如图2所描绘的。将帧内或帧间编解码模式分配给CU。亮度分量的CB、PB和TB的尺寸适用于对应的CU、PU和TU。

在最近的编码系统中,CTU是分割成编解码单元(CU)的编解码树的根。编解码树是其中父节点(通常对应于块)可以被划分为子节点(例如,划分为2、3或4个子节点)的树,每个子节点可以成为用于另一次划分为子节点的父节点。除了四叉树划分模式之外,还定义增加可能划分模式的总数的新划分模式(二叉树对称划分模式、二叉树非对称划分模式和三叉树划分模式)。编解码树具有唯一的根节点,例如CTU。编解码树的叶是树的终止节点。编解码树的每一节点表示可进一步划分为也称为子块的较小块的块。一旦确定CTU到CU的分割,就对与编解码树的叶对应的CU进行编码。可以通过速率失真优化过程在编码器侧确定CTU到CU的分割和用于编码每个CU(与编解码树的叶对应)的编码参数。

图3表示CTU到CU的分割,其中可以根据四叉树划分模式和对称二叉树划分模式两者来划分编解码单元。这种类型的划分被称为QTBT(四叉树加二叉树)。对称二叉树划分模式被定义为允许CU被水平地或垂直地划分为相等尺寸的两个编解码单元。在图3上,实线指示四叉树分割,并且虚线指示CU到对称CU的二元划分。图4表示相关联的编解码树。在图4上,实线表示四叉树划分,并且虚线表示在空间上嵌入四叉树叶中的二元划分。图5描绘了图3中使用的4种划分模式。模式NO_SPLIT指示CU不被进一步划分。模式QT_SPLIT指示CU根据四叉树被划分为4个象限,所述象限由两个划分线分开。模式HOR指示CU被水平地划分为由一个划分线分开的相等尺寸的两个CU。VER指示CU被垂直地划分为由一个划分线分开的相等尺寸的两个CU。划分线由图5中的虚线表示。

在QTBT划分的情况下,CU具有正方形或矩形形状。编解码单元的尺寸是2的幂,并且通常在两个方向(水平和垂直)上从4变为128。QTBT与HEVC划分具有若干差异。

首先,CTU的QTBT划分由两个阶段组成。首先,以四叉树方式划分CTU。然后,可以以二元方式进一步划分每个四叉树叶。这在图3的右侧示出,其中实线表示四叉树分解阶段,并且虚线表示在空间上嵌入四叉树叶中的二元分解。

其次,亮度及色度块分割结构可独立地分开及决定,尤其是在帧内条带中。

还可以使用附加类型的分割。非对称二叉树(ABT)划分模式被定义为允许CU被水平地划分为具有相应矩形尺寸(w,h/4)和(w,3h/4)的两个编解码单元,或者被垂直地划分为具有相应矩形尺寸(w/4,h)和(3w/4,h)的两个编解码单元,如图6所描绘的。这两个编解码单元由图6中虚线表示的一条划分线分开。

图6还示出了三叉树划分模式,根据该三叉树划分模式,编解码单元在垂直和水平方向上被划分为三个编解码单元。在水平方向上,CU被划分为相应尺寸(w,h/4)、(w,h/2)和(w,h/4)的三个编解码单元。在垂直方向上,CU被划分为相应尺寸(w/4,h)、(w/2,h)和(w/4,h)的三个编解码单元。

通过速率失真优化在编码器侧决定编解码单元的划分,速率失真优化包括确定具有最小速率失真成本的CTU的表示。

在本申请中,术语“块”或“图片块”可用于指CTU、CU、PU、TU、CB、PB和TB中的任一个。另外,术语“块”或“图片块”可以用于指H.264/AVC或其他视频编解码标准中指定的宏块、分割和子块,并且更一般地指许多尺寸的样本阵列。

在本申请中,术语“重建”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,术语“图像”、“条带”、“图块(title)”、“图片”和“帧”可以互换使用。通常但不一定,术语“重建”在编码器侧使用,而“解码”在解码器侧使用。

使用这些新的拓扑结构可以显著提高编解码效率。具体而言,获得色度分量的显著增益。该增益来自亮度和色度编解码树(或分割)的分开/独立性。

然而,CTU级处的亮度及色度编解码树的该分开在硬件实现方式方面具有一些问题。CTU的尺寸通常为128×128或256×256。完全分开亮度和色度分量的编解码树意味着这些亮度和色度也在压缩域中完全分开,因此也以分开的方式出现在编解码的比特流中。这导致解码器实现方式的一些问题,其中人们想要确保可以在可能小于CTU尺寸的最大解码单元尺寸上实现解码流水线。通常,对于一些解码器实现方式,期望基于64×64的解码器流水线。为此,在通用视频编解码测试模型中选择了等于64×64的最大变换块尺寸。

将分开的亮度/色度编解码树的使用与涉及色度与其共位的样本之间的相互依赖性的编解码工具(例如,亮度相关的色度残差缩放)进行组合可能是有问题的。实际上,为了处理色度块,必须在色度块之前处理与所考虑的色度块共位的亮度块的亮度样本。如果亮度块具有较大尺寸,则这可在能够处理色度块之前产生高结构流水线延迟。

至少一个实施例响应于与色度编解码块共位的至少一个亮度编解码块的尺寸,而对分开的亮度/色度编解码树及编解码工具的组合使用应用约束,所述编解码工具涉及色度与其共位的亮度样本之间的相互依赖性(例如色度残差缩放、称为CCLM的跨分量线性模型)。

至少一个实施例响应于色度编解码块的尺寸(或水平/垂直维度)及与所考虑的色度编解码块的样本共位的亮度编解码块的尺寸(或水平/垂直维度),而启用或禁用分量相互依赖编解码工具(例如,色度编解码块的亮度相关的色度残差缩放)。

至少一个实施例在由于上述关于分开的亮度/色度编解码树和色度残差缩放的组合使用的约束而禁用色度残差缩放的情况下,提供用于色度块的解决方案。

亮度相关的色度残差缩放是涉及色度与其共位的亮度样本之间的相互依赖性的编解码工具的示例。亮度相关的色度残差缩放在Lu等人的标题为“CE12:Mappingfunctions(test CE12-1 and CE12-2)”的JVET-M0427中公开。亮度相关的色度残差缩放包括使用由亮度值索引的缩放或逆缩放表。该表在流中显式地用信号发送或从在流中编解码的表中推导出。

在编码器侧,该过程如下工作。当对色度块进行编码时,计算表示共位亮度块的亮度值。此通常为与所考虑的色度块共位的亮度预测(或重建)块中的亮度样本的平均值。根据所计算的亮度值,从缩放表中拾取缩放值。在将变换然后量化应用于色度残差信号之前,将缩放值作为乘法因子应用于色度预测的残差。

在解码器侧,该过程如下工作。当对色度块进行解码时,计算表示与所考虑的色度块共位的亮度块的亮度值。此通常为与所考虑色度块共位的亮度预测(或重建)块中的亮度样本的平均值。根据所计算的亮度值,从在流中用信号发送的逆缩放表中拾取逆缩放值,或者从流中用信号发送的数据中推导出逆缩放值。在已经应用逆量化然后应用逆变换之后,将逆缩放值应用于色度预测的残差。

JVET-M0427建议在使用亮度/色度分开的编解码树的情况下禁用色度残差缩放。该解决方案对色度分量产生编解码损失。

在各种实施例中,启用分开的亮度/色度树分割,即,可独立地实现亮度及色度分割。所提出的实施例提高了编解码效率,特别是对于色度分量。

在下文中,色度格式被认为是4:2:0,即色度分量的维度是亮度分量的维度的一半。然而,应当理解,本实施例不限于该特定色度格式。可以通过修改亮度维度和色度维度之间的比率来使用其他色度格式。

为了简化和可读性,在以下附图中,针对亮度和色度分量描绘了相同的分辨率,即使实际分辨率不同,诸如例如在4:2:0色度格式的情况下。在这样的情况下,应将简单缩放应用于色度图片。

在启用分开的亮度/色度树分割的情况下,指定最大水平/垂直维度Wmax/Hmax,其约束给定编解码色度块的亮度相关的色度残差缩放的使用。图片被划分为用于亮度的尺寸为Wmax/Hmax、用于色度的尺寸为WmaxC/HmaxC(通常用于亮度的尺寸为Wmax=Hmax=32,或者用于色度的尺寸为WmaxC=HmaxC=16)的非重叠矩形区域,以下称为“授权矩形区域”(ARA)。在多个变型实施例中,亮度相关的色度残差缩放(在下文中标记为LDCRS)激活被调节到色度块的位置和尺寸以及和与ARA网格相关的色度块共位的亮度块的位置和尺寸。

各种实施例指与所考虑的色度块共位的亮度块。与色度块共位的亮度块可以被定义为:

-亮度块包含与色度块中的给定位置共位的像素,诸如

o色度块的中心,例如其被定义为色度块中的相对位置((x0+Wc)/2,(y0+Hc)/2),其中,(x0,y0)与色度块的左上样本的色度图片中的相对位置对应,并且(Wc,Hc)是色度块的水平/垂直维度

o色度块中的左上位置,其被定义为色度图片中的相对位置(x0,y0)

o色度块中的右下位置,其被定义为色度图片中的相对位置(x0+Wc-1,y0+Hc-1)

o色度块中的右上位置,其被定义为色度图片中的相对位置(x0+Wc-1,y0)。

o色度块中的左下位置,其被定义为色度图片中的相对位置(x0,y0+Hc-1)。

-与色度块中的若干给定位置共位的亮度块,诸如上文所提及的亮度块;例如,考虑与左上、右上、左下、右下的4个色度块位置共位的亮度块(参见图10);或

-与所考虑的色度块的所有色度样本位置共位的亮度块

实施例1-在色度块跨ARA边界的情况下禁用LDCRS

在至少一个实施例中,如果所考虑的色度块不完全包含在单个色度ARA中,则禁用LDCRS。这对应于以下等式:

如果((x0/WmaxC)!=((x0+Wc-1)/WmaxC))||((y0/HmaxC)!=((y0+Hc-1)/HmaxC)),则禁用LDCRS。

其中,x||y是x和y的布尔逻辑“或”,并且“!=”表示“不等于”。

该过程的简化框图在图7中示出。步骤300检查色度块是否在一个单个色度ARA内。如果该条件为真,则启用LDCRS(步骤303)。如果该条件为假,则禁用LDCRS(步骤302)。

图8A、8B、8C、8D示出了色度分割的一些情况,其中灰色块对应于其中启用LDCRS的色度块,并且白色块对应于其中禁用LDCRS的色度块。色度块由粗黑线描绘。由WmaxC和HmaxC定义的网格用虚线指示。

-在图8A中,2个色度块跨越若干色度ARA;根据当前实施例,针对两个色度块禁用LDCRS。

-在图8B中,2个色度块在一个色度ARA内;根据当前实施例,针对两个色度块启用LDCRS。

-在图8C中,1个矩形垂直色度块跨两个色度ARA;根据当前实施例,针对该色度块禁用LDCRS。所有其它色度块在一个色度ARA内,并且因此可针对那些色度块启用LDCRS。

-在图8D中,一个水平色度块跨两个色度ARA;根据当前实施例,针对该色度块禁用LDCRS。所有其它色度块在一个色度ARA内,并且因此可针对那些色度块启用LDCRS。

实施例2-在色度块跨越色度ARA边界的情况下或在共位亮度块中的至少一个跨共 位亮度ARA边界的情况下禁用LDCRS

在实施例中,在以下条件中的至少一个为真的情况下,禁用LDCRS:

·所考虑的色度块不完全包含在单个色度ARA中。

·与所考虑的色度块共位的亮度块中的至少一个不完全包含在与色度ARA共位的亮度ARA中,即,跨共位亮度ARA边界。

该过程的简化框图在图9中示出。步骤400检查色度块是否在一个单个色度ARA内。如果该条件为假,则禁用LDCRS(步骤401)。如果该条件为真,则标识与所考虑的色度块共位的亮度块(步骤402)。步骤403检查是否所有共位亮度块都在与色度ARA共位的亮度ARA内。如果该条件为假,则禁用LDCRS(步骤404)。如果该条件为真,则启用LDCRS(步骤405)。

图11提供了当前实施例的两个示例。在图的上方,色度块包含在单个色度ARA内(左上),并且具有3个共位亮度块(共位亮度块1、2和3,右上)。它们中的两个(共位亮度块1和2,在虚线块中)在共位亮度ARA内,而第三个(共位亮度块3)在共位亮度ARA外。因为该第三亮度块在共位亮度ARA外,所以根据当前实施例禁用LDCRS。

在图的下部,色度块包含在单个色度ARA内,并且具有3个共位亮度块(共位亮度块1、2和3)。它们中的三个在共位亮度ARA内。根据当前实施例启用LDCRS。

当前VVC规范支持三种类型的划分:四叉树(QT)、二叉树(BT,水平或垂直)和三叉树(TT,水平或垂直),如图5和图6所示。在变型中,从给定的ARA维度启用BT和TT划分(例如,当考虑4:2:0色度格式时,亮度为32×32,色度为16×16)。在该维度之上,仅启用QT划分或不启用划分。因此,除了大于亮度ARA/色度ARA维度的块的“没有划分”的情况(例如,对于亮度块64×64没有划分为4个32×32块),系统地满足实施例1和2中呈现的条件。

在至少一个实施例中,仅针对小于或等于32×32的亮度块尺寸或者小于或等于16×16的色度块尺寸(当使用4:2:0色度格式时)启用BT和TT划分。高于该尺寸,仅启用QT划分(或不启用划分)。该约束涉及模式LDCRS或模式CCLM。该过程在图11C中示出,考虑了尺寸为32×32的亮度ARA和尺寸为16×16的色度ARA。在步骤1300,检查所考虑的块是尺寸大于或等于64×64的亮度块还是尺寸大于或等于32×32的色度块。如果该测试为真,则步骤1301禁用BT和TT划分,同时启用不划分和QT划分。如果该测试为假,则步骤1302启用不划分、QT、BT和TT划分。

在至少一个实施例中,为了减少在模式LDCRS或CCLM的情况下处理色度的延迟,当大于亮度ARA的正方形亮度块不被划分时,对应的色度块可以仅通过QT划分被划分为4个块,该4个块可以被进一步划分,或者根本不被划分。例如,考虑到尺寸为32×32的亮度ARA和尺寸为16×16的色度ARA,当尺寸为64×64的正方形亮度块不被划分时,对应的色度块(尺寸为32×32,以4:2:0格式)只能通过QT划分被划分为4个16×16块,该4个16×16块可以被进一步划分(图中的虚线),或者根本不被划分。遵循这些约束的情况如图11D所示。

在至少一个实施例中,为了减少在模式LDCRS或CCLM的情况下处理色度的延迟,当通过QT划分将大于亮度ARA的正方形亮度块划分为4个块时,对应的色度块可以仅通过QT划分被划分为4个块,该4个块可以被进一步划分,或者根本不被划分。例如,考虑尺寸为32×32的亮度ARA及尺寸为16×16的色度ARA,当尺寸为64×64的正方形亮度块被划分为4个32×32块时,对应的色度块(尺寸为32×32,以4:2:0格式)可仅通过QT划分被划分为4个16×16块,该4个16×16块可以被进一步划分(图中的虚线)或根本不被划分。遵循这些限制的情况如图11E所示。

在至少一个实施例中,为了减少在模式LDCRS或CCLM的情况下处理色度的延迟,当通过水平BT划分将大于亮度ARA的正方形亮度块划分为2个块时,对应的色度块只能通过水平BT划分被划分为2个块,或者通过QT划分被划分为4个块。例如,考虑尺寸为32×32的亮度ARA和尺寸为16×16的色度ARA,当尺寸为64×64的正方形亮度块被划分为2个32行和64列的块时,对应的色度块(尺寸为32×32,以4:2:0格式)只能通过水平BT划分被划分为2个16行和32列的块,或者通过QT划分被划分为4个16×16块。遵循这些限制的情况如图11F所示。

在至少一个实施例中,为了减少在模式LDCRS或CCLM的情况下处理色度的延迟,当大于亮度ARA的正方形亮度块不被划分或通过QT划分被划分为4个块或通过水平QT划分被划分为2个块时,对应的色度块不能通过垂直二元划分被划分为2个块,而是可以通过QT划分被划分为4个块,或通过水平BT划分被划分为2个块,或不被划分。

在至少一个实施例中,为了减少在模式LDCRS或CCLM的情况下处理色度的延迟,当通过垂直BT划分将大于亮度ARA的正方形亮度块划分为2个块时,对应的色度块只能通过垂直BT划分被划分为2个块。例如,考虑尺寸为32×32的亮度ARA及尺寸为16×16的色度ARA,当尺寸为64×64的正方形亮度块被划分为2个64行和32列的块时,对应的色度块可仅被划分为2个32行和16列的块。遵循这些限制的情况如图11G所示。

基于文档JVET-N1001(版本9-日期2019-06-25 13:45:21)中描述的VTM5.0语法的语法示例

基于文档JVET-N1001版本9中描述的语法,下面的小字体文本对应于语法的示例,语法的示例对应于上述实施例的示例实现方式。章节编号对应于JVET-N1001版本9中使用的编号。

对于大于VDPU的块禁止BT/TT划分的版本

下面的语法描述对应于如上所述的约束分割的实施例。对VTM5 v9规范的改变以灰色突出显示。

6.4.2允许的二元划分过程

该过程的输入是:

-二元划分模式btSplit,

-亮度样本中的编解码块宽度cbWidth,

-亮度样本中的编解码高度cbHeight,

-所考虑的编解码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0),

-多类型树深度mttDepth,

-具有偏移的最大多类型树深度maxMttDepth,

-最大二元树尺寸maxBtSize,

-分割索引partIdx,

-变量treeType,其指定是否使用单树(SINGLE_TREE)或双树来分割CTU,并且当使用双树时,指定当前是否处理亮度分量(DUAL_TREE_LUMA)或色度分量(DUAL_TREE_CHROMA)。

该过程的输出是变量allowBtSplit。

表6-2-基于btSplit的parallelTtSplit和cbSize的规范。

btSplit==SPLIT_BT_VER btSplit==SPLIT_BT_HOR
parallelTtSplit SPLIT_TT_VER SPLIT_TT_HOR
cbSize cbWidth cbHeight

变量parallelTtSplit和cbSize被如表6-2中所指定导出。

变量allowBtSplit如下被导出:

-如果以下条件中的一个或多个为真,则allowBtSplit被设置为等于假:

-cbSize小于或等于MinBtSizeY

-cbWidth大于maxBtSize

-cbHeight大于maxBtSize

-treeType不等于SINGLE_TREE并且cbWidth大于32

-treeType不等于SINGLE_TREE并且cbHeight大于32

-mttDepth大于或等于maxMttDepth

-treeType等于DUAL_TREE_CHROMA,并且(cbWidth/SubWidthC)*(cbHeight/SubHeightC)小于或等于16[Ed.(SL):此处需要“小于或”吗]

-否则,如果以下所有条件都为真,则allowBtSplit被设置为等于假

-否则,allowBtSplit被设置为等于真。

6.4.2允许的三元划分过程

该过程的输入是:

-三元划分模式ttSplit,

-亮度样本中的编解码块宽度cbWidth,

-亮度样本中的编解码块高度cbHeight,

-所考虑的编解码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0),

-多类型树深度mttDepth,

-具有偏移的最大多类型树深度maxMttDepth,

-最大三元树尺寸maxTtSize,

-变量treeType,其指定是否使用单树(SINGLE_TREE)或双树来分割CTU,并且当使用双树时,指定当前是否处理亮度分量(DUAL_TREE_LUMA)或色度分量(DUAL_TREE_CHROMA)。

该过程的输出是变量allowTtSplit。

表6-3-基于ttSplit的cbSize的规范。

ttSplit==SPLIT_TT_VER ttSplit==SPLIT_TT_HOR
cbSize cbWidth cbHeight

变量cbSize被如表6-3中所指定导出。

变量allowTtSplit如下被导出:

-如果以下条件中的一个或多个为真,则allowTtSplit被设置为等于假:

-cbSize小于或等于2*MinTtSizeY

-cbWidth大于Min(MaxTbSizeY,maxTtSize)

-cbHeight大于Min(MaxTbSizeY,maxTtSize)

-treeType不等于SINGLE_TREE并且cbWidth大于32

-treeType不等于SINGLE_TREE并且cbHeight大于32

-mttDepth大于或等于maxMttDepth

-x0+cbWidth大于pic_width_in_luma_samples

-y0+cbHeight大于pic_height_in_luma_samples

-treeType等于DUAL_TREE_CHROMA,并且(cbWidth/SubWidthC)*(cbHeight/SubHeightC)小于或等于32

-否则,allowTtSplit被设置为等于真。

如果将VDPU划分为BT或TT,则禁止CCLM的版本下面的语法描述对应于其中CCLM(或CRS)不是不遵守上述分割约束的启用分割的实施例。例如,当色度块的尺寸为32×16、16×32时,或当其共位亮度块为64×32或32×64时,禁用CCLM。对于其它情况,启用CCLM(或CRS)。对VTM5 v9规范的改变以灰色突出显示。

1.1.1用于色度帧内预测模式的导出过程

该过程的输入是:

-亮度位置(xCb,yCb),其指定相对于当前图片的左上亮度样本的当前色度编解码块的左上样本,

-变量cbWidth,其指定亮度样本中的当前编解码块的宽度,

-变量cbHeight,其指定亮度样本中的当前编解码块的高度。

-变量treeType,其指定使用单树(SINGLE_TREE)还是双树来分割CTU。

在此过程中,色度帧内预测模式IntraPredModeC[xCb][yCb]被导出。

对应的亮度帧内预测模式lumaIntraPredMode导出如下:

-如果intra_mip_flag[xCb][yCb]等于1,则使用IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2]导出lumaIntraPredMode,并且sizeId设置为等于MipSizeId[xCb][yCb],如表8-4中所指定。

-否则,lumaIntraPredMode被设置为等于IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2]。

-通过调用子条款x.xx[Ed.(EF):子条款编号tbd]跨分量色度帧内预测模式检查过程导出变量cclmEnabled。

色度帧内预测模式IntraPredModeC[xCb][yCb]是使用如表8-5及表8-6中所指定的intra_chroma_pred_mode[xCb][yCb]和lumaIntraPredMode导出的。

表8-5-当cclmEnabled等于0时,取决于

intra_chroma_pred_mode[xCb][yCb]和lumaIntraPredMode的IntraPredModeC[xCb][yCb]的规范

表8-6-当cclmEnabled等于1时,取决于

intra_chroma_pred_mode[xCb][yCb]和lumaIntraPredMode的IntraPredModeC[xCb][yCb]的规范

当chroma_format_idc等于2时,使用如表8-7中所指定的表8-5及表8-6中的色度帧内预测模式X导出色度帧内预测模式Y,并且随后将色度帧内预测模式X设置为等于色度帧内预测模式Y。

表8-7-当chroma_format_idc等于2时,从色度帧内预测模式X到模式Y的4:2:2映射过程的规范

x.x.x跨分量色度帧内预测模式检查过程

该过程的输入是:

-亮度位置(xCb,yCb),其指定相对于当前图片的左上亮度样本的当前色度编解码块的左上样本,

-变量cbWidth,其指定亮度样本中的当前编解码块的宽度,

-变量cbHeight,其指定亮度样本中的当前编解码块的高度。

该过程的输出是:

-标志lmEnabled,其指定是否针对当前色度编解码块启用跨分量色度帧内预测模式。

在该过程中,cclmEnabled如下被导出。

-wColoc和hColoc被设置为等于覆盖由(xCb<<1,yCb<<1))给出的位置的共位亮度编解码块的宽度和高度。

-cclmEnabled被设置为等于1。

-如果sps_cclm_enabled_flag等于0,则cclmEnabled被设置为等于0。

-否则,如果treeType等于SINGLE_TREE,则cclmEnabled被设置为等于1。

-否则,如果以下条件中的一个为假,则cclmEnabled被设置为等于0。

-cbWidth或cbHeight大于或等于32并且cbWidth不等于cbHeight。

-wColoc或hColoc大于或等于64并且wColoc不等于hColoc。

实施例2a-使用用于亮度ARA的推断启用标志的变型;推广到CCLM

上文所描述的概念还可应用于其它亮度到色度模式,诸如CCLM。

在实施例2的变型中,在以下条件中的至少一个为真的情况下,禁用CCLM(或LDCRS):

·所考虑的色度块不完全包含在单个色度ARA中。

·与色度ARA共位的亮度ARA包含不完全在亮度ARA内的至少一个亮度块,即,跨共位亮度ARA的边界的一个亮度块。

这可以通过使用被分配给每个亮度ARA的在下文中被称为luma_blocks_inside_flag的推断标志来实现。对于每个亮度ARA,从亮度分割树(在编码器中选择或在解码器中解析)推断标志。一旦针对CTU(或VDPU)产生亮度分割树,就如下推断CTU(或VDPU)的每一亮度ARA的标志。如果给定亮度ARA的所有亮度块严格包括在亮度ARA中,则将标志设置为真。否则,如果至少一个亮度块跨亮度ARA边界中的一个或多个,则将标志设置为假。

然后可以如下使用标志。条件(如上所述):

·与色度ARA共位的亮度ARA包含不完全在亮度ARA内的至少一个亮度块,即,跨共位亮度ARA的边界的一个亮度块。

可以等效地如下公式表示:

·与色度ARA共位的亮度ARA的标志luma_blocks_inside_flag为假。

实施例2b-如果LDCR或CCLM在其共位亮度块内,则启用LDCR或CCLM

在另一变型中,如果色度块不完全在其共位亮度块内,则禁用亮度相关模式(LDCRS或CCLM)。

这可以表示如下。如果以下条件之一为假,则禁用LDCRS或CCLM:

·与色度块的左上样本共位的亮度块(在位置(x0,y0)处并且尺寸为(Wc,Hc))在32×32色度块内

·xColocY<=2*x0

·xColocY+wColocY–1>=2*(x0+Wc-1)

·yColocY<=2*y0

·yColocY+hColocY–1>=2*(y0+Hc-1)

(xColocY,yColocY)为与色度块的左上样本共位的亮度块的左上样本位置,并且(wColocY,hColocY)为此亮度块的维度。

实施例2c-当禁用LDCRS或CCLM时使用回退(fallback)模式

至少一个实施例涉及CCLM模式(及其变型MDLM)。在该实施例中,认为存在常规CCLM模式,加上回退CCLM模式。当由于本申请中描述的约束而未启用常规CCLM模式时,可以使用回退CCLM。

图11A中的框图提供了CCLM过程激活的简化框图。在步骤112,检查用于激活给定色度块的常规CCLM模式的条件(在当前申请的各种实施例中描述了这样的条件)。如果对于给定色度块满足所有启用条件,则启用常规CCLM模式并且常规CCLM模式可以由编码器/解码器使用(113)。如果对于给定色度块不满足启用条件之一,则禁用常规CCLM模式,并且启用回退CCLM模式并且回退CCLM模式可以由编码器/解码器使用(114)。

在至少一个实施例中,常规CCLM模式与其中CCLM参数是从所考虑的色度块的紧密邻域中的亮度及色度样本(例如,属于色度块上方的一行或两行的色度样本及其共位亮度样本,和/或属于色度块左侧的一列或两列的色度样本及其共位度样本)导出的模式对应。

可能的回退CCLM模式

在至少一个实施例中,回退CCLM模式使用从与当前CTU邻近的色度和亮度样本导出的CCLM参数。例如,使用CTU上方的一或两行和/或CTU左侧的一或两列。

在至少一个实施例中,回退CCLM模式使用从与当前VDPU邻近的色度和亮度样本导出的CCLM参数。例如,使用VDPU上方的一行或两行和/或VDPU左侧的一列或两列。

在至少一个实施例中,回退CCLM模式使用从与当前16×16色度ARA及其32×32对应的亮度ARA邻近的色度和亮度样本导出的CCLM参数。例如,使用当前16×16色度ARA及其32×32对应的亮度ARA上方的一行或两行和/或当前16×16色度ARA及其32×32对应的亮度ARA左侧的一列或两列。

在至少一个实施例中,回退CCLM模式使用从邻近与色度块的左上样本共位的亮度块的亮度样本以及从共位到这些亮度样本的色度样本导出的CCLM参数。

在至少一个实施例中,回退CCLM模式使用最新使用的CCLM参数。

CCLM参数历史列表的使用

在至少一个实施例中,回退CCLM模式使用来自在编码器和解码器处构建的CCLM参数的历史列表的CCLM参数。为历史列表指定最大尺寸Nh。历史列表填充有最新使用的CCLM参数。如果色度块使用CCLM模式,那么将其CCLM参数添加到历史列表。如果历史列表已经满,则移除最旧的CCLM参数,并且将新的CCLM参数插入历史列表中。

·在一个变型中,只有当新的CCLM参数与历史列表中已经存在的CCLM参数不同时,才将新的CCLM参数添加到历史列表。

·在一个变型中,如果使用回退CCLM模式对色度块进行编解码,则针对色度块对来自CCLM参数历史列表的CCLM参数的索引进行编解码。

·在一个变型中,基于色度块内或周围的亮度和/或色度样本与已用于计算列表的CCLM参数的亮度和/或色度样本的相似性检查来推断来自历史列表的CCLM参数的索引。

后一种变型的一种可能的实现方式如下。当将CCLM参数插入历史列表中时,计算用于导出参数的亮度样本的平均值并将其存储到列表中。它们被标记为avg_Ref_Y[idx],idx是CCLM参数的历史列表中的索引(idx=0至Nh-1,Nh是历史列表的尺寸)。

当CCLM模式用于色度块时,计算与色度块邻近的亮度样本(仅考虑可用的亮度样本)的平均值。它们被记为avg_Cur_Y。

用于执行色度块的CCLM预测的列表中的CCLM参数索引idx0被标识为使avg_Ref_Y[i]与avg_Cur_Y之间的差的绝对值最小化的索引:

idx0=argmin(|avg_Cur_Y-avg_Ref_Y[idx]|)

相似度度量可替代地基于色度样本。当将CCLM参数插入历史列表中时,计算用于导出参数的色度样本的平均值并将其存储到列表中。它们被标记为avg_Ref_Cb[idx]、avg_Ref_Cr[idx]。

当CCLM模式用于色度块时,计算与色度块邻近的色度样本的平均值。它们被标记为avg_Cur_Cb和avg_Cur_Cr。

用于执行色度块的CCLM预测的列表中的CCLM参数索引idx0被标识为使avg_Ref_Cb[idx]、avg_Ref_Cr[idx]与avg_Cur_Cb、avg_Cur_Cr之间的差的绝对值最小化的索引:

idx0=argmin(|avg_Cur_Cb-avg_Ref_Cb[idx]|+|avg_Cur_Cr-avg_Ref_Cr[idx]|)

图11B描绘了从历史列表的索引选择过程的示例的简化框图。所述过程的输入为与所考虑的色度块邻近的亮度和/或色度样本,以及历史列表。对于每个索引i,历史列表包含CCLM参数和与用于导出CCLM参数的亮度或色度样本相关的参考值(例如,avg_Ref_Y[i]、avg_Ref_Cb[i]、avg_Ref_Cr[i])。在步骤1200,从与色度块邻近的邻近亮度或色度样本(例如,avg_Cur_Y、avg_Cur_Cb、avg_Cur_Cr)计算局部值。在步骤1201,将参数distMin设置为大值。在步骤1202,在索引=0到Nh-1上的循环。在步骤1203,在步骤1200计算的局部值与索引i的参考值之间的失真“dist”。步骤1204检查dist是否低于minDist。如果为真,则在步骤1205更新idx0和minDist值,并且然后过程转到步骤1206。否则(dist不低于minDist),过程转到步骤1206。步骤1206检查历史列表索引上的循环结束是否完成。如果是,则idx0是输出索引值。如果否,则过程返回到步骤1202以检查下一个索引。

实施例3-如果色度块不跨ARA边界并且如果共位亮度块中的至少一个不跨共位亮 度ARA边界,则启用LDCR

在一个实施例中,在所有以下条件都为真的情况下,启用LDCRS:

·所考虑的色度块完全包含在单个色度ARA中

·与所考虑的色度块共位的亮度块中的至少一个完全包含在与色度ARA共位的亮度ARA中。这样的亮度块在下文中被命名为“共位启用亮度块”。

该过程的简化框图在图12中示出。步骤500检查色度块是否在一个单个色度ARA内。如果该条件为假,则禁用LDCRS(步骤501)。如果该条件为真,则标识与所考虑的色度块共位的亮度块(步骤502)。步骤503检查共位亮度块中的至少一个是否在与色度ARA共位的亮度ARA内。如果该条件为假,则禁用LDCRS(步骤504)。如果该条件为真,则启用LDCRS(步骤505)。

参考图13(其示出与图11的上方图片相同的分割),启用LDCRS,因为色度块在一个单个色度ARA内,并且共位亮度块1和2在共位亮度ARA内,即与所考虑的色度块共位的亮度块中的至少一个完全包含在与色度ARA共位的亮度ARA中。

参考图14,禁用LDCRS,因为色度块覆盖两个色度ARA(第一色度ARA和第二色度ARA),即使其共位亮度块(共位亮度块1和2)中的两个在与第一色度ARA共位的亮度ARA内。

实施例4-在共位亮度块中的至少一个不跨共位亮度ARA边界的情况下启用LDCR

在实施例中,即使所考虑的色度块不完全包含在单个色度ARA中,在与所考虑的色度块共位的亮度块中的至少一个完全包含在与所考虑的色度块的第一色度ARA共位的亮度ARA中的情况下,也可以启用LDCRS。在该实施例中,所考虑的色度块可以大于一个单个色度ARA。

该过程的简化框图在图15中示出。与所考虑的色度块共位的亮度块被标识(步骤600)。步骤601检查共位亮度块中的至少一个是否在与第一色度ARA共位的亮度ARA内。如果该条件为假,则禁用LDCRS(步骤602)。如果该条件为真,则启用LDCRS(步骤603)。

图16示出了与图14相同的分割。启用LDCRS,因为即使色度块覆盖两个色度ARA(第一色度ARA和第二色度ARA),其共位亮度块(块1和2)中的一些在与色度块的第一色度ARA共位的亮度ARA内。

在当前实施例的变型中,在针对色度块启用和激活LDCRS的情况下,用于缩放色度残差的缩放因子仅从属于共位启用亮度块的亮度样本导出。所有色度样本使用仅从共位亮度样本的一部分导出的相同缩放因子。

例如,考虑图16的情况,计算来自共位亮度块1和2的亮度样本的平均值。该平均亮度值用于标识要应用于整个色度块残差的缩放因子。因此,不使用亮度块3的亮度样本。

实施例5:用信号发送针对禁用LDCRS的色度块的缩放因子

在实施例中,在色度块确实受益于基于亮度的色度残差缩放的情况下,在比特流中用信号发送色度缩放因子。如果色度块由若干变换单元构成,则色度缩放因子适用于每一TU的残差。

该过程的简化框图在图17中示出。步骤700检查LDCRS是否针对所考虑的色度块被启用。如果该条件为假,则对缩放因子或缩放因子索引进行编码/解码(步骤701)。如果该条件为真,则从共位亮度块导出缩放因子或缩放因子索引(步骤702)。

在实施例中,用信号发送色度缩放因子的索引。在实施例中,缩放因子或缩放因子的索引是从先前编码的/解码的一个或若干邻近色度块的缩放因子或缩放因子索引预测。例如,如图18中所示,来自包含块A、然后在块A不可用的情况下包含块B、然后在块A及块B不可用的情况下包含块C、然后在块A及块B及块C不可用的情况下包含块D的色度块的缩放因子或缩放因子索引用作预测符。否则,不预测缩放因子或缩放因子索引。

在变型中,使用已处理的邻近色度块通过预测过程推断缩放因子。不使用附加信令,并且仅推断的缩放值用于所考虑的色度块。

实施例6:用信号发送用于禁用LDCRS的色度块的差值QP

在实施例中,在色度块确实受益于基于亮度的色度残差缩放的情况下,在比特流中用信号发送的差值QP参数可以用于该色度块。如果色度块由若干变换单元构成,则差值QP参数适用于每一TU的残差。

在实施例中,针对色度块用信号发送差值QP参数。

在实施例中,针对包含色度块的量化组用信号发送差值QP参数。

在实施例中,针对包含色度块的CTU用信号发送差值QP参数。

在实施例中,基于来自先前编码的/解码的一个或若干邻近色度块的QP值或缩放因子预测色度QP参数。例如,如图18中所示,来自包含块A、然后在块A不可用的情况下包含块B、然后在块A及块B不可用的情况下包含块C、然后在块A及块B及块C不可用的情况下包含块D的色度块的QP值或缩放因子用作预测符。

在预测符是缩放因子sc的情况下,首先使用以下等式将用于预测色度QP的该缩放因子转换为类似QP的值,标记为QPpred:

QPpred=-6*Log2(Sc)

其中,Log2是以2为下的对数函数。

在预测值是QP值的情况下,将该QP值用作预测值QPpred。

在变型中,使用已处理的邻近色度块通过预测过程推断QP值。不使用附加信令,并且仅推断的QP值用于所考虑的色度块。

实施例7:对其他亮度相关的色度编解码模式的扩展

关于基于亮度的色度残差缩放公开的实施例可以与其他亮度相关的色度编解码模式一起使用,或者更一般地用于涉及跨分量相关性的编解码工具,例如,来自亮度帧内预测的色度(也称为CCLM或LM模式,及其变型多方向线性模型,也称为MDLM)。

在附加实施例中,在具有大于WmaxL和HmaxL的维度WL和HL的亮度块的情况下,可仅在亮度块在最大维度WmaxL和HmaxL的变换单元中被划分的情况下启用CCLM。

以相同的方式,在具有大于WmaxL和HmaxL的维度WL和HL的亮度块的情况下,只有当亮度块在最大维度WmaxL和HmaxL的变换单元中被划分时,才能启用色度残差缩放。

在附加实施例中,在具有大于WmaxL和HmaxL的维度WL和HL的亮度块的情况下,然后在最大尺寸WmaxL和HmaxL的变换单元中系统地划分亮度块。这样,色度残差缩放和/或CCLM模式可以用在色度分量中,而不遭受由重建共位亮度块的可用性的需要所暗示的结构延迟,以便处理色度块。

在附加变型中,在色度块具有大于WmaxC和HmaxC的维度Wc和Hc的情况下,然后色度块在最大尺寸WmaxC和HmaxC的变换单元中被系统地划分。这样,无论色度编解码单元的尺寸如何,都可以在色度分量中使用色度残差缩放和/或CCLM模式。

在图19的示例中示出了划分为2个TU(左侧)或4个TU(右侧)的亮度块。

因此,在变型中,如果色度块具有大于WmaxC和HmaxC的维度Wc和Hc,则仅当色度块在最大维度WmaxC和HmaxC的变换单元中被划分时才可以启用CCLM。

以相同的方式,如果色度块具有大于WmaxC和HmaxC的维度Wc和Hc,则仅当色度块在最大维度WmaxC和HmaxC的变换单元中被划分时才可以启用色度残差缩放。

实施例8:使用CCLM的参考样本可用性去激活(de-activation)CTU的分开的亮度/ 色度树

CCLM模式使用参考亮度及色度样本来确定进一步用于从色度块样本的共位亮度样本预测色度块样本的参数。参考亮度和色度样本通常位于:

·在与色度/共位亮度块邻近的上方行上,

·在与色度/共位亮度块邻近的左列上,

·可能在与色度/共位亮度块邻近的左上位置上。取决于所考虑的CCLM模式,可以使用这三个位置的组合。

在实施例中,如果用于CCLM模式的色度参考样本属于包括在包括所考虑的色度块的色度ARA的上方/左侧/右上邻近色度ARA中的色度块,则它们被认为是可用的(图20)。如果色度参考样本不包括在上方/左侧/右上邻近色度ARA中,则它们被认为是不可用的。

图21示出了用于色度块的上方参考色度样本(在色度块上方的对角线阴影矩形中)属于不同亮度块(块1、3和4)并且这些亮度块中的一些(块3和4)不在邻近上方色度ARA内的情况。根据实施例,仅属于块1的参考样本被认为是可用的。来自块3和块4的其他参考样本不可用于CCLM模式。

在变型中,如果用于CCLM预测的色度参考样本的给定比例(例如30%)不包括在邻近上方/左侧/右上色度ARA中,则禁用CCLM模式。

在图21上,可用参考样本的数量等于参考样本总数的25%。因此,CCLM将被禁用。

在变型中,一旦用于CCLM预测的至少一个色度参考样本不包括在邻近上方/左侧/右上色度ARA中,就禁用CCLM模式。

参考图21,由于在该图示中至少一个参考样本不可用,因此CCLM将被禁用。

类似地,对于用于CCLM的亮度参考样本,提出以下实施例。如果用于CCLM模式的亮度参考样本属于包括在亮度ARA中的亮度块,则它们被认为是可用的,所述亮度ARA与包括所考虑的色度块的色度ARA的上方/左侧/右上处的邻近色度ARA共位(图20)。如果亮度参考样本不包括在与邻近上方/左侧/右上邻近色度ARA共位的邻近上方/左侧/右上亮度ARA中,则将其视为不可用。

在变型中,如果给定比例(例如30%)的亮度参考样本不包括在与上方/左侧/右上邻近色度ARA共位的邻近上方/左侧/右上亮度ARA中,则禁用CCLM模式。

在变型中,如果至少一个亮度参考样本不包括在与邻近上方/左侧/右上色度ARA共位的邻近上方/左侧/右上亮度ARA中,则禁用CCLM模式。

实施例9:使用CCLM去激活CTU的分开的亮度/色度树

在实施例中,在CTU内的至少一个色度块使用CCLM(或LDCRS)的情况下,禁用分开的亮度/色度树,并且从亮度分割推断CTU的色度分割。

在变型中,在CTU级用信号发送标志以指示在CTU中是否使用CCLM(或LDCRS)。

可以针对不同于CTU的块类型(例如,视频解码处理单元,也称为VDPU)来推广该概念。

实施例10:基于与色度块的左上角共位的亮度块的邻近样本的色度残差缩放

在另一实施例中,通过从已经在与色度块中的给定位置共位的亮度块的邻域中处理的预测或重建亮度样本确定要用于色度块的色度残差缩放的缩放因子来进一步减少潜在硬件延迟问题。

这些样本在下文中被称为“邻近亮度样本”。

图22描绘了用于确定要在色度块的色度残差缩放中使用的缩放因子的方法的流程图。

在步骤800,标识色度块中的给定样本位置在图片中的位置。在步骤801,标识包括与色度块中的位置共位的亮度样本的亮度块。在步骤802,标识与亮度块邻近的已处理的亮度样本。在步骤803,从那些标识的邻近亮度样本确定亮度值,例如标识的邻近亮度样本的平均值。在步骤804,基于亮度值确定色度块的缩放因子。在步骤805,使用缩放因子来缩放色度块残差。

在实施例中,色度块中的给定样本位置是色度块的左上角。这在图23A中示出。色度块(矩形)以粗线指示。色度块的左上样本的共位亮度块(正方形)呈细线。其邻近样本以灰色指示。在变型中,色度块中的给定样本位置是色度块的中心。

在实施例中,仅使用一个邻近亮度样本,并且所述一个邻近亮度样本对应于共位亮度块的左上样本的上方或左侧样本。这在图23B中示出。在变型中,使用上方样本和左侧样本两者。

在另一实施例中,邻近亮度样本由尺寸为WL的邻近上行及尺寸为HL的邻近左列行构成,WL及HL为亮度块的水平及垂直维度。这在图23C中示出。

在另一实施例中,邻近亮度样本由尺寸为minS的邻近上行及尺寸为minS的邻近左列行构成,其中minS为WL及HL当中的最小值。

在另一实施例中,邻近亮度样本由尺寸为Wc*2的邻近上行及尺寸为Hc*2的邻近左列行构成,Wc及Hc为色度块的水平及垂直维度并且考虑色度格式为4:2:0。

在另一实施例中,邻近亮度样本由尺寸为minSC*2的邻近上行及尺寸为minSC*2的邻近左列行构成,其中minSC为Wc及Hc当中的最小值。

在变型中,尺寸为minSC*2的邻近上行在与色度左上角相同的相对水平位置处开始,并且尺寸为minSC*2的邻近左列行在与色度左上角相同的相对垂直位置处开始,如图23D所示。例如,如果色度块中的左上角在色度图片中的位置(xc,yc)处,并且色度格式为4:2:0,则邻近亮度样本的上行中的第一样本在水平位置2*xc处,并且邻近亮度样本的左列中的第一样本在垂直位置2*yc处。

根据进一步变型,用于确定要应用于残差当前色度块的缩放因数的邻近样本由一个或多个重建亮度样本构成,所述一个或多个重建亮度样本属于分别属于包含当前色度块的ARA的上方和左侧邻近ARA的亮度样本的下行和/或右列。

在另一实施例中,如果给定比例的邻近亮度样本不可用,则不应用色度块残差缩放。

在另一实施例中,如果邻近亮度样本不在与色度块相同的CTU中,则所述邻近亮度样本被视为不可用。

在另一实施例中,如果邻近亮度样本不在与色度块相同的VDPU中,则所述邻近亮度样本被视为不可用。

在另一实施例中,如果邻近亮度样本不在与第一色度块ARA共位的相同亮度ARA中,则所述邻近亮度样本被视为不可用。

在另一实施例中,如果所考虑邻域中的色度样本的给定比例不可用,则不应用色度块残差缩放。这可在邻近色度块在其重建状态中尚未可用的情况下发生,此时当前色度块正被处理。

在实施例中,用于导出色度残差缩放因子的邻近亮度样本是用于预测共位亮度块的样本(通常也称为帧内预测参考样本)。在双树情况下,对于每个给定区域(例如,VDPU),通常首先处理给定区域的亮度块,然后处理给定区域的色度块。当应用当前实施例时,这表示将有必要针对给定区域的每一亮度块存储其邻近亮度样本,这需要附加存储器存储并且使过程复杂,因为参考样本的数目取决于块尺寸而改变。为了减少这些负面影响,在一个实施例中,针对每一亮度块仅存储在步骤803从邻近亮度样本导出的亮度值。在另一实施例中,针对每一亮度块仅存储在步骤804从在步骤803从邻近亮度样本导出的亮度值导出的缩放因子。这将存储限制为每个亮度块一个单个值。此原理可扩展到除LMCS以外的其它模式,例如CCLM,其中代替存储每一块的亮度和色度样本,仅存储用以导出块的CCLM参数的亮度和色度样本的最小值和最大值。

实施例10的概念可以推广到CCLM模式。在此情况下,当前实施例在于从预测或重建亮度样本(邻近亮度样本)和已在与色度块中的给定位置共位的亮度块的邻域中处理的预测或重建色度样本(邻近色度样本)确定要用于色度块的预测的CCLM线性参数。图23A至23D示出了该概念。以灰色填充的矩形区域对应于与当前色度块的左上样本共位的亮度块的邻近样本(亮度和色度),其潜在地用于CCLM参数的导出。

根据变型,用以确定要用以执行当前色度块的CCLM预测的线性模型的亮度和/或色度邻近样本由至少一个重建或预测亮度和/或色度样本构成,所述重建或预测亮度和/或色度样本属于亮度和/或色度样本的下行和/或右列,所述亮度和/或色度样本分别属于包含当前色度块的ARA的上方和/或左侧邻近亮度和/或色度ARA。概念可扩展到包含当前色度块的ARA的右上邻近亮度和/或色度ARA的下行,并且可扩展到包含当前色度块的ARA的左下邻近亮度和/或色度ARA的右列。概念可扩展到包含当前色度块的ARA的右上邻近亮度和/或色度ARA的下行,并且可扩展到包含当前色度块的ARA的左下邻近亮度和/或色度ARA的右列。

实施例11:基于其相对于色度块的位置的亮度样本可用性检查

在另一实施例中,如果位置(xL,yL)处的邻近亮度样本与所考虑色度块的左上样本的位置(xC,yC)之间的距离高于给定值,则邻近亮度样本被视为不可用。换句话说,如果以下条件为真,则邻近亮度样本被视为不可用:

((xC*2)-xL)>TH或((yC*2)-yL)>TV

或等效地

(xc-(xL/2))>TH/2或(yC-(yL/2))>TV/2

其中TH和TV是在比特流中预定义或用信号发送的值。通常,TH=TC=16。在变型中,TH和TC取决于图片分辨率。例如,根据以下条件定义TH和TH:

-如果图片分辨率低于或等于832×480亮度样本,则TH=TC=8,

-否则,如果图片分辨率低于或等于1920×1080亮度样本,则TH=TC=16,

-否则,TH=TC=32。

图24A和24B示出了左上邻近亮度样本与邻近色度样本之间的距离(在4:2:0色度格式的情况下按2缩放)的示例。图24A示出了共位亮度块的左上色度样本与左上邻近色度样本之间的距离。图24B示出了左上色度样本与上行或左列之间的距离。

在变型中,并非严格禁用离左上色度样本太远的样本,而是将取决于邻近色度样本与左上色度样本之间的距离的加权应用于所考虑的参考样本。

在变型中,并非严格禁用离左上色度样本太远的样本,而是将取决于邻近色度样本与左上色度样本之间的距离的加权应用于所考虑的参考样本。

实施例12:基于其共位色度样本的值相对于当前块的色度样本的值的亮度样本可 用性检查

在另一实施例中,邻近亮度样本neighborY的可用性是基于其共位Cb和Cr色度样本、neighborCb、neighborCr的值,以及当前色度块的预测Cb和Cr色度样本的值。例如,如果以下条件为真,则邻近亮度样本邻近者被视为不可用:

-如果Abs(topLeftCb-neighborCb)>Th_Ch或Abs(topLeftCr-neighborCr)>Th_Ch

其中Th_Ch是在比特流中预定义或用信号发送的值,并且Abs是绝对值函数。Th_Ch可取决于色度样本的比特深度。通常,对于10比特内容,Th_Ch=64,对于8比特内容,Th_Ch=32。

在变型中,如果与邻近亮度样本共位的色度样本的平均Cb和Cr值avgNeighCb、avgNeighCr不太远离当前色度块的色度样本的平均Cb和Cr值avgCurrCb、avgCurrCr,则仅应用色度残差缩放。

例如,如果以下条件为真,则邻近亮度样本被视为不可用:

-如果Abs(avgCurrCb–avgNeighCb)>Th_Ch或Abs(avgCurrCr–avgNeighCr)>Th_Ch

在变型中,并非严格禁用与左上色度样本太不同的样本,而是将取决于邻近色度样本与左上色度样本之间的差的加权应用于所考虑的参考样本。

在变型中,并非严格禁用与左上色度样本太不同的样本,而是将取决于邻近色度样本与左上色度样本之间的差的加权应用于所考虑的参考样本。

图25描绘了用于基于其共位色度样本并且基于当前块的色度样本来检查亮度样本可用性的方法的流程图。步骤800至802类似于图22的对应的步骤。在步骤802之后插入步骤900以标识与邻近亮度样本共位的邻近色度样本。在步骤901,检查邻近色度样本和当前块的色度样本的相似性。如果色度样本相似,则针对当前色度块启用色度残差缩放(903)。如果样本被视为不相似,则针对当前色度块禁用色度残差缩放(902)。

实施例12a:用于MDLM的参考样本可用性

MDLM模式为CCLM模式的变型,其使用上方邻近亮度和色度样本(MDLM上方)或左侧邻近亮度和色度样本(MDLM左侧)作为用于从亮度样本导出用于预测色度样本的线性参数的参考样本。

在至少一个实施例中,当划分过程导致包括具有VDPU宽度/高度的一半宽度/高度的2个上方正方形块的亮度VDPU的分割,或导致包括具有VDPU宽度/高度色度VDPU的一半宽度/高度的2个上方正方形块的色度VDPU的分割时,第二正方形块左侧的MDLM的参考样本(在图25A中标注为“2”)仅是与块2的左边界邻近的样本。那些参考样品下方的样本被认为不可用。这有利地限制了处理块2的延迟,因为不需要块2下方的块来导出MDLM参数。

对于图25A的亮度或色度块1被进一步划分为较小分割的情况,该实施例也可以被推广。

实施例13:用于激活或去激活色度残差缩放的低级标志

在另一实施例中,在比特流语法中插入低级标志,以在比条带或图块组更低的级别启用或禁用色度残差缩放工具。该实施例可仅适用于分开的亮度/色度分割树情况的情况。其也可扩展到不使用分开的亮度/色度分割树的情况。

下表示出了与文档JVET-N0220的VTM规范相比的语法改变(以灰色突出显示)的示例。在该表中,在CTU级进行用信号发送,并且仅在分开的亮度/色度分割树(由语法元素qtbtt_dual_tree_intra_flag标识)情况下进行用信号发送。

下表示出了与文档JVET-N0220的VTM规范相比的语法改变(以灰色突出显示)的另一示例。在该表中,在CTU级进行用信号发送,并且无论是否使用任何分开的亮度/色度分割树,都进行用信号发送。

根据这些变型,色度残差缩放的CTU中的激活由标志ctu_chroma_residual_scale_flag的值来调节。

根据实施例2的规范语法适配的示例

下面提供根据实施例2的当前VVC草案规范(参见Benjamin Bross等人的“多功能视频编解码(草案4)”,JVET第13次会议:马拉喀什,摩洛哥,2019年1月9日至18日,JVET-M1001-v7)中的语法改变的示例。与JVET-M1001相比的改变以灰色突出显示。

8.4.3用于色度帧内预测模式的导出过程

该过程的输入是:

-亮度位置(xCb,yCb),其指定相对于当前图片的左上亮度样本的当前色度编解码块的左上样本,

-变量cbWidth,其指定亮度样本中的当前编解码块的宽度,

-变量cbHeight,其指定亮度样本中的当前编解码块的高度。

在该此过程中,导出色度帧内预测模式IntraPredModeC[xCb][yCb]。

-变量lmEnabled被设置为等于sps_cclm_enabled_flag。

-当以下条件为真时,通过调用过程跨分量色度帧内预测模式检查过程导出lmEnabled。

-lmEnabled等于1,

-tile_group_type等于2(I图块组),

-qtbtt_dual_tree_intra_flag等于1。

色度帧内预测模式IntraPredModeC[xCb][yCb]是使用如表8-2及表8-3中所指定的intra_chroma_pred_mode[xCb][yCb]和IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2]导出的。

表8-2-当lmEnabled等于0时,取决于intra_chroma_pred_mode[xCb][yCb]和IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2]的IntraPredModeC[xCb][yCb]的规范

表8-3-当lmEnabled等于1时,取决于intra_chroma_pred_mode[xCb][yCb]和IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2]的IntraPredModeC[xCb][yCb]的规范

跨分量色度帧内预测模式检查过程

该过程的输入是:

-亮度位置(xCb,yCb),其指定相对于当前图片的左上亮度样本的当前色度编解码的左上样本,

-变量cbWidth,其指定亮度样本中的当前编解码的宽度,

-变量cbHeight,其指定亮度样本中的当前编解码的高度。

该过程的输出是:

-标志lmEnabled,其指定是否针对当前色度编解码启用跨分量色度帧内预测模式。

在该过程中,lmEnabled被导出如下。

-如果((16+xCb)/16)不等于((16+xCb+cbWidth-1)/16)或((16+yCb)/16)不等于((16+yCb+cbHeight-1)/16),则cclmEnabled被设置为等于0

-否则,以下适用。

-对于i=0,(CbHeight-1)和j=0…(cbWidth-1),以下适用。

-(xTL,yTL)被设置为等于相对于共位亮度编解码块ColLumaBlock的当前图片的左上亮度样本的左上样本位置,所述共位亮度编解码块ColLumaBlock覆盖由((xCb+j)<<1,(yCb+i)<<1))给定的位置。

-wColoc和hColoc被设置为等于ColLumaBlock的宽度和高度。

-如果以下条件之一为假,则cclmEnabled被设置为等于0,并且停止i和j上的循环。

-((32+xTL)/32)等于((32+xTL+wColoc-1)/32)

-((32+yTL)/32)等于((32+yTL+hColoc-1)/32)

-当cclmEnabled等于1时,以下适用于i=1…(cbHeight–2)以及j=0…(cbWidth-1)。

-(xTL,yTL)被设置为等于相对于共位亮度编解码块ColLumaBlock的当前图片的左上亮度样本的左上样本位置,所述共位亮度编解码块ColLumaBlock覆盖由((xCb+j)<<1,(yCb+i)<<1))给定的位置。

-wColoc和hColoc被设置为等于ColLumaBlock的宽度和高度。

-如果以下条件之一为假,则cclmEnabled被设置为等于0,并且停止i和j上的循环。

-((32+xTL)/32)等于((32+xTL+wColoc-1)/32)

-((32+yTL)/32)等于((32+yTL+hColoc-1)/32)

根据实施例10的规范语法适配的示例

下面提供根据实施例10的包含在当前VVC草案规范(例如,文档JVET-M1001)中的语法的示例。

具有用于色度样本值的映射过程的图片重建

该过程的输入是:

-(nCurrSwx2)x(nCurrShx2)阵列映射的predMapSamples,其指定当前块的映射的亮度预测样本,

-当tile_group_type等于2(I图块组)并且qtbtt_dual_tree_intra_flag等于1时,指定当前图片的重建亮度的阵列recSamples,

-(nCurrSw)x(nCurrSh)阵列predSamples,其指定当前块的色度预测样本,

-(nCurrSw)x(nCurrSh)阵列resSamples,其指定当前块的色度残差样本的。

-在7.4.4.1中导出的阵列InputPivot[i]和ReshapePivot[i],其中i在0到MaxBinIdx+1的范围内(包括0和MaxBinIdx+1)。

-在7.4.4.1中导出的阵列InvScaleCoeff[i]和ChromaScaleCoef[i],其中i在0到MaxBinIdx的范围内(包括0和MaxBinIdx)。

该过程的输出是重建色度样本阵列recSamples。

recSamples被导出如下:

-如果(!tile_group_reshaper_chroma_residual_scale_flag||((nCurrSw)x(nCurrSh)<=4))

recSamples[xCurr+i][yCurr+j]=Clip1c(predSamples[i][j]+resSamples[i][j])

其中i=0…nCurrSw-1,j=0…nCurrsh-1

-否则(tile_group_reshaper_chroma_residual_scale_flag&&((nCurrSw)x(nCurrSh)>4)),以下适用:

变量varScale被导出如下:

-invAvgLuma被导出如下:

-如果tile_group_type等于2(I图块组)并且qtbtt_dual_tree_intra_flag等于1,则以下适用。

-标识色度当前块的左上样本相对于当前图片的左上色度样本的色度位置(xCh,yCh)。

-亮度位置(xTL,yTL)被设置为等于共位亮度编解码块ColLumaBlock的左上样本位置,所述共位亮度编解码块ColLumaBlock相对于当前图片的左上亮度样本覆盖由(xCh<<1,yCh<<1)给定的位置,并且wColoc和hColoc被设置为等于ColLumaBlock的宽度和高度。

-如果((32+yCh)/32)等于((64+yTL-1)/64),则invAvgLuma被设置为等于recSamples[yTL-1][xTL]

-否则,如果((32+xCh)/32)等于((64+xTL-1)/64),则invAvgLuma被设置为等于recSamples[yTL][xTL-1]

-否则invAvgLuma被设置为等于-1。

-否则,以下适用:

invAvgLuma=Clip1Y((∑ijpredMapSamples[i][j]+nCurrSw*nCurrSh*2)/(nCurrSw*nCurrSh*4))

-如果invAvgLuma不等于-1,则以下适用:

-变量idxYInv是通过涉及用样本值invAvgLuma的输入来标识如条款8.5.6.2中所指定的分段函数索引而导出的。

-varScale被设置为等于ChromaScaleCoef[idxYInv]

-否则varScale被设置为等于(1<<shiftC)

recSamples被导出如下:

-如果tu_cbf_cIdx[xCurr][yCurr]等于1,则以下适用:

shiftC=11

recSamples[xCurr+i][yCurr+j]=ClipCidx1

(predSamples[i][j]+Sign(resSamples[i][j])

*((Abs(resSamples[i][j])*varScale+(1<<(ShiftC-1)))>>shiftC))

其中i=0…nCurrSw-1,j=0...nCurrSh-1

-否则(tu_cbf_cIdx[xCurr][yCurr]等于0)

recSamples[xCurr+i][yCurr+j]=ClipCidx1(predSamples[i][j])

其中i=0…nCurrw-1,j=0...nCurrSh-1

本申请描述了各种方面,包括工具、特征、实施例、模型、方法等。这些方面中的许多方面被特定描述,并且至少为了示出各个特性,通常以听起来可能是限制性的方式来描述。然而,这是为了描述清楚的目的,并且不限制那些方面的应用或范围。实际上,所有不同的方面可以组合和互换以提供另外的方面。此外,这些方面也可以与先前申请中描述的方面组合和互换。

本申请中描述和预期的方面可以以许多不同的形式实现。下面的图26、图27和图28提供了一些实施例,但是可以预期其他实施例,并且图26、图27和图28的讨论不限制实现方式的广度。所述方面中的至少一个总体上涉及视频编码和解码,并且至少一个其它方面总体上涉及发送所产生或编码的比特流。这些和其它方面可实现为方法、装置、其上存储有用于根据所描述方法中的任一个编码或解码视频数据的指令的计算机可读存储介质,和/或其上存储有根据所描述方法中的任一个产生的比特流的计算机可读存储介质。

本文描述了各种方法,并且每个方法包括用于实现所描述的方法的一个或多个步骤或动作。除非方法的正确操作需要特定顺序的步骤或动作,否则可以修改或组合特定步骤和/或动作的顺序和/或使用。

本申请中描述的各种方法和其他方面可以用于修改模块,例如,如图26和图27所示的视频编码器100和解码器200的图像分割和缩放模块(102、151、235和251)。此外,本方面不限于VVC或HEVC,并且可应用于(例如)其它标准及推荐(无论是预先存在的还是未来开发的),以及任何这样的标准及推荐(包括VVC及HEVC)的扩展。除非另有指示或技术上排除,否则本申请中描述的方面可以单独使用或组合使用。

在本申请中使用各种数值,例如Wmax、Hmax、WmaxC和HmaxC。具体值是出于示例目的,并且所描述的方面不限于这些具体值。

图26示出了编码器100。可以预期该编码器100的变型,但是为了清楚起见,下面描述编码器100,而不描述所有预期的变型。

在被编码之前,视频序列可以经历预编码处理(101),例如,将颜色变换应用于输入颜色图片(例如,从RGB 4:4:4到YCbCr 4:2:0的转换),或者执行输入图片分量的重新映射,以便获得对压缩更具弹性的信号分布(例如,使用颜色分量之一的直方图均衡化)。元数据可以与预处理相关联,并且附加到比特流。

在编码器100,如下所述,由编码器元件对图片进行编码。要编码的图片以例如CU为单位被分割(102)和处理。使用例如帧内或帧间模式对每个单元进行编码。当以帧内模式对单元进行编码时,其执行帧内预测(160)。在帧间模式中,执行运动估计(175)和补偿(170)。编码器决定(105)使用帧内模式或帧间模式中的哪一种来对单元进行编码,并且通过例如预测模式标志来指示帧内/帧间决定。编码器可执行应用于亮度样本的前向映射(191)以获得预测亮度块。对于色度样本,将不应用前向映射。例如,通过从原始图像块中减去(110)预测块来计算预测残差。对于色度样本,色度残差缩放可应用于色度残差(111)。

然后对预测残差进行变换(125)和量化(130)。量化的变换系数以及运动矢量和其他语法元素被熵编解码(145)以输出比特流。编码器可以跳过变换并将量化直接应用于未变换的残差信号。编码器可以绕过变换和量化两者,即,在不应用变换或量化过程的情况下直接对残差进行编解码。

编码器对编码块进行解码以提供用于进一步预测的参考。量化的变换系数被去量化(140)、逆变换(150)以对预测残差进行解码。然后通过执行缩放过程(111)的逆过程的逆缩放(151)来处理色度残差。组合(155)解码的预测残差和预测块,重建图像块。对于亮度样本,可以应用逆映射(190),该步骤是前向映射步骤(191)的逆。将环路滤波器(165)应用于重建图片以执行例如解块/SAO(样本自适应偏移)、自适应环路滤波器(ALF)滤波以减少对伪像进行编码。滤波的图像被存储在参考图片缓冲器(180)中。

图27示出了视频解码器200的框图。在解码器200,如下所述,由解码器元件对比特流进行解码。视频解码器200通常执行与如图26所述的编码通道互逆的解码通道。编码器100通常还执行视频解码作为编码视频数据的一部分。

具体而言,解码器的输入包括可以由视频编码器100产生的视频比特流。首先对比特流进行熵解码(230)以获得变换系数、运动矢量和其他编解码信息。图片分割信息指示图片如何被分割。因此,解码器可以根据解码的图片分割信息来划分(235)图片。变换系数被去量化(240)、逆变换(250)以对预测残差进行解码。对于色度样本,通过类似于编码器的反向缩放(151)的反向缩放(251)来处理色度残差。组合(255)解码的预测残差和预测块,重建图像块。可以从帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)预测块。前向映射(295)可在预测之后应用于亮度样本。类似于编码器的逆映射(190),逆映射(296)可应用于重建亮度样本。然后,将环路滤波器(265)应用于重建图像。滤波的图像被存储在参考图片缓冲器(280)处。

解码图片可以进一步经历后解码处理(285),例如,逆颜色变换(例如,从YCbCr 4:2:0到RGB 4:4:4的转换)或执行在预编码处理(101)中执行的重新映射过程的逆的逆重新映射。后解码处理可以使用在预编码处理中导出并在比特流中用信号发送的元数据。

图28示出了其中实现各个方面和实施例的系统的示例的框图。系统1000可以体现为包括下面描述的各种组件并且被配置为执行本文档中描述的一个或多个方面的设备。这样的设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收器、个人视频记录系统、连接的家用电器和服务器。系统1000的元件可以单独地或组合地体现在单个集成电路(IC)、多个IC和/或分立组件中。例如,在至少一个实施例中,系统1000的处理和编码器/解码器元件分布在多个IC和/或分立组件上。在各种实施例中,系统1000经由例如通信总线或通过专用输入和/或输出端口通信地耦合到一个或多个其他系统或其他电子设备。在各种实施例中,系统1000被配置为实现本文档中描述的方面中的一个或多个方面。

系统1000包括至少一个处理器1010,其被配置为执行加载在其中的指令,用于实现例如本文档中描述的各个方面。处理器1010可以包括嵌入式存储器、输入输出接口和本领域已知的各种其他电路。系统1000包括至少一个存储器1020(例如,易失性存储器设备和/或非易失性存储器设备)。系统1000包括存储设备1040,其可以包括非易失性存储器和/或易失性存储器,包括但不限于电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备1040可以包括内部存储设备、附接存储设备(包括可拆卸和不可拆卸存储设备)和/或网络可访问存储设备。

系统1000包括编码器/解码器模块1030,其被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块1030可以包括其自己的处理器和存储器。编码器/解码器模块1030表示可以包括在设备中以执行编码和/或解码功能的模块。众所周知,设备可以包括编码和解码模块中的一个或两个。另外,编码器/解码器模块1030可以实现为系统1000的单独元件,或者可以作为本领域技术人员已知的硬件和软件的组合并入处理器1010内。

要加载到处理器1010或编码器/解码器1030上以执行本文档中描述的各个方面的程序代码可以存储在存储设备1040中,并且随后加载到存储器1020上以供处理器1010执行。根据各种实施例,处理器1010、存储器1020、存储设备1040和编码器/解码器模块1030中的一个或多个可以在执行本文档中描述的过程期间存储各种项目中的一个或多个。这样的存储项可以包括但不限于输入视频、解码视频或解码视频的部分、比特流、矩阵、变量以及来自等式、公式、运算和运算逻辑的处理的中间或最终结果。

在一些实施例中,处理器1010和/或编码器/解码器模块1030内部的存储器用于存储指令并提供用于在编码或解码期间所需的处理的工作存储器。然而,在其他实施例中,处理设备外部的存储器(例如,处理设备可以是处理器1010或编码器/解码器模块1030)用于这些功能中的一个或多个。外部存储器可以是存储器1020和/或存储设备1040,例如动态易失性存储器和/或非易失性闪存。在若干实施例中,外部非易失性闪存用于存储例如电视的操作系统。在至少一个实施例中,诸如RAM的快速外部动态易失性存储器被用作用于视频编码和解码操作的工作存储器,诸如用于MPEG-2(MPEG指运动图片专家组,MPEG-2也被称为ISO/IEC 13818,并且13818-1也被称为H.222,以及13818-2也被称为H.262)、HEVC(HEVC指高效视频编解码,也被称为H.265和MPEG-H第2部分)或VVC(通用视频编解码,由联合视频专家组JVET开发的新标准)。

可以通过各种输入设备提供对系统1000的元件的输入,如框1130所示。这样的输入设备包括但不限于:(i)接收例如由广播者通过空中发送的RF信号的射频(RF)部分,(ii)组件(COMP)输入端子(或一组COMP输入端子),(iii)通用串行总线(USB)输入端子,和/或(iv)高清晰度多媒体接口(HDMI)输入端子。图28中未示出的其他示例包括复合视频。

在各种实施例中,框1130的输入设备具有如本领域中已知的相关联的相应输入处理元件。例如,RF部分可以与适合于以下内容的元件相关联:(i)选择期望的频率(也称为选择信号,或将信号频带限制到频带),(ii)下变换所选择的信号,(iii)再次频带限制到更窄的频带以选择(例如)在某些实施例中可以称为信道的信号频带,(iv)解调下变换和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择期望的数据分组流。各种实施例的RF部分包括用于执行这些功能的一个或多个元件,例如频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变换器、解调器、纠错器和解复用器。RF部分可以包括执行这些功能中的各种功能的调谐器,这些功能包括例如将接收到的信号下变换到较低频率(例如,中频或近基带频率)或基带。在一个机顶盒实施例中,RF部分及其相关联的输入处理元件接收在有线(例如,电缆)介质上传输的RF信号,并且通过滤波、下变换和再次滤波到期望的频带来执行频率选择。各种实施例重新排列上述(和其他)元件的顺序,移除这些元件中的一些,和/或添加执行类似或不同功能的其他元件。添加元件可以包括在现有元件之间插入元件,诸如,例如插入放大器和模数转换器。在各种实施例中,RF部分包括天线。

另外,USB和/或HDMI端子可以包括用于通过USB和/或HDMI连接将系统1000连接到其他电子设备的相应接口处理器。应当理解,输入处理的各个方面,例如里德-所罗门纠错,可以根据需要例如在单独的输入处理IC内或在处理器1010内实现。类似地,USB或HDMI接口处理的各方面可以根据需要在单独的接口IC内或在处理器1010内实现。将解调、纠错和解复用的流提供给各种处理元件,包括例如处理器1010和编码器/解码器1030,其与存储器和存储元件组合操作以根据需要处理数据流以在输出设备上呈现。

系统1000的各种元件可以设置在集成壳体内。在集成壳体内,可以使用合适的连接布置1140(例如,本领域已知的内部总线,包括IC间(I2C)总线、布线和印刷电路板)将各种元件互连并在它们之间传输数据。

系统1000包括能够经由通信信道1060与其他设备进行通信的通信接口1050。通信接口1050可以包括但不限于被配置为通过通信信道1060发送和接收数据的收发器。通信接口1050可以包括但不限于调制解调器或网卡,并且通信信道1060可以例如在有线和/或无线介质内实现。

在各种实施例中,使用诸如Wi-Fi网络的无线网络(例如IEEE802.11(IEEE指电气和电子工程师协会))将数据流式传输或以其他方式提供给系统1000。通过适于Wi-Fi通信的通信信道1060和通信接口1050接收这些实施例的Wi-Fi信号。这些实施例的通信信道1060通常连接到接入点或路由器,该接入点或路由器提供对包括互联网的外部网络的访问,以允许流式传输应用和其他过顶(over-the-top)通信。其他实施例使用通过输入框1130的HDMI连接递送数据的机顶盒向系统1000提供流式传输的数据。还是其他实施例使用输入框1130的RF连接向系统1000提供流式传输的数据。如上所示,各种实施例以非流式传输方式提供数据。另外,各种实施例使用除Wi-Fi之外的无线网络,例如蜂窝网络或蓝牙网络。

系统1000可以向各种输出设备提供输出信号,包括显示器1100、扬声器1110和其他外围设备1120。各种实施例的显示器1100包括例如触摸屏显示器、有机发光二极管(OLED)显示器、弯曲显示器和/或可折叠显示器中的一个或多个。显示器1100可以用于电视、平板电脑、膝上型计算机、蜂窝电话(移动电话)或其他设备。显示器1100还可以与其他组件集成(例如,如在智能电话中),或者是单独的(例如,用于膝上型计算机的外部监视器)。在实施例的各种示例中,其他外围设备1120包括独立数字视频盘(或数字通用盘)(DVR,对于两个术语)、盘播放器、立体声系统和/或照明系统中的一个或多个。各种实施例使用基于系统1000的输出提供功能的一个或多个外围设备1120。例如,盘播放器执行播放系统1000的输出的功能。

在各种实施例中,使用诸如AV.Link、消费电子控制(CEC)或在有或没有用户干预的情况下实现设备到设备控制的其他通信协议的信令,在系统1000与显示器1100、扬声器1110或其他外围设备1120之间通信控制信号。输出设备可以通过相应的接口1070、1080和1090经由专用连接通信地耦合到系统1000。可替代地,输出设备可以经由通信接口1050使用通信信道1060连接到系统1000。显示器1100和扬声器1110可以与诸如例如电视的电子设备中的系统1000的其他组件集成在单个单元中。在各种实施例中,显示接口1070包括显示驱动器,诸如例如定时控制器(T Con)芯片。

例如,如果输入1130的RF部分是单独的机顶盒的一部分,则显示器1100和扬声器1110可以替代地与其他组件中的一个或多个分开。在显示器1100和扬声器1110是外部组件的各种实施例中,可以经由专用输出连接(包括例如HDMI端口、USB端口或COMP输出)来提供输出信号。

实施例可以通过由处理器1010实现的计算机软件或通过硬件或通过硬件和软件的组合来执行。作为非限制性示例,实施例可以由一个或多个集成电路实现。作为非限制性示例,存储器1020可以是适合于技术环境的任何类型,并且可以使用任何适当的数据存储技术来实现,诸如光学存储器设备、磁存储器设备、基于半导体的存储器设备、固定存储器和可移动存储器。作为非限制性示例,处理器1010可以是适合于技术环境的任何类型,并且可以包含微处理器、通用计算机、专用计算机和基于多核架构的处理器中的一个或多个。

各种实现方式涉及解码。如本申请中所使用的“解码”可以包含例如对所接收的编码序列执行的过程的全部或部分,以便产生适合于显示的最终输出。在各种实施例中,这样的过程包括通常由解码器执行的过程中的一个或多个,例如熵解码、逆量化、逆变换及差分解码。在各种实施例中,这样的过程还或替代地包括由本申请中所描述的各种实现方式的解码器执行的过程,例如,使得跨分量相关工具能够响应于色度块的尺寸并且响应于与色度块的至少一个样本共位的至少一个亮度块的尺寸而用于色度块。

作为进一步示例,在一个实施例中,“解码”仅指熵解码,在另一实施例中,“解码”仅指差分解码,并且在另一实施例中,“解码”指熵解码和差分解码的组合。基于具体描述的上下文,短语“解码过程”旨在具体地指操作的子集还是一般地指更广泛的解码过程将是清楚的,并且被认为是本领域技术人员很好理解的。

各种实现方式涉及编码。以与上面关于“解码”的讨论类似的方式,本申请中使用的“编码”可以包含例如对输入视频序列执行的过程的全部或部分,以便产生编码比特流。在各种实施例中,这样的过程包括通常由编码器执行的过程中的一个或多个,例如,分割、差分编码、变换、量化和熵编码。在各种实施例中,这样的过程还或替代地包括由本申请中所描述的各种实现方式的编码器执行的过程,例如,使得跨分量相关工具能够响应于色度块的尺寸并且响应于与色度块的至少一个样本共位的至少一个亮度块的尺寸而用于色度块。

作为进一步示例,在一个实施例中,“编码”仅指熵编码,在另一实施例中,“编码”仅指差分编码,并且在另一实施例中,“编码”指差分编码和熵编码的组合。基于具体描述的上下文,短语“编码过程”旨在具体地指操作的子集还是一般地指更广泛的编码过程将是清楚的,并且被认为是本领域技术人员很好理解的。

注意,如本文所使用的语法元素(例如,色度缩放因子的索引)是描述性术语。因此,它们不排除使用其他语法元素名称。

当附图被呈现为流程图时,应当理解,它还提供了对应的装置的框图。类似地,当附图被呈现为框图时,应当理解,它还提供了对应的方法/过程的流程图。

各种实施例指速率失真优化。具体而言,在编码过程期间,通常考虑到计算复杂度的约束,通常考虑速率和失真之间的平衡或权衡。速率失真优化通常被公式化为最小化速率失真函数,其是速率和失真的加权和。存在不同的方法来解决速率失真优化问题。例如,这些方法可以基于对所有编码选项的广泛测试,包括所有考虑的模式或编解码参数值,在编码和解码之后对其编解码成本和重建信号的相关失真进行完整评估。还可以使用更快的方法,以节省编码复杂度,特别是基于预测或预测残差信号而不是重建的预测或预测残差信号来计算近似失真。也可以使用这两种方法的混合,诸如通过仅对一些可能的编码选项使用近似失真,并且对其他编码选项使用完全失真。其他方法仅评估可能的编码选项的子集。更一般地,许多方法采用各种技术中的任何一种来执行优化,但是优化不一定是编码成本和相关失真两者的完全评估。

本文描述的实现方式和方面可以在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单个实现形式的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实现方式也可以以其他形式(例如,装置或程序)来实现。装置可以以例如适当的硬件、软件和固件来实现。该方法可以以例如处理器来实现,该处理器通常是指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,诸如例如计算机、蜂窝电话、便携式/个人数字助理(“PDA”)和促进终端用户之间的信息通信的其他设备。

对“一个实施例”或“实施例”或“一个实现方式”或“实现方式”以及其其他变型的引用表示结合该实施例描述的特定特征、结构、特性等被包括在至少一个实施例中。因此,贯穿本申请在各个地方出现的短语“在一个实施例中”或“在实施例中”或“在一个实现方式中”或“在实现方式中”以及任何其他变型的出现不一定都指相同的实施例。

另外,本申请可以指“确定”各种信息。确定信息可以包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一个或多个。

此外,本申请可以指“访问”各种信息。访问信息可以包括例如接收信息、检索信息(例如,从存储器)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一个或多个。

另外,本申请可以指“接收”各种信息。与“访问”一样,接收旨在是广义的术语。接收信息可以包括例如访问信息或检索信息(例如,从存储器)中的一个或多个。此外,在诸如例如存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,通常以一种方式或另一种方式涉及“接收”。

应当理解,例如,在“A/B”、“A和/或B”和“A和B中的至少一个”的情况下,使用以下“/”、“和/或”和“中的至少一个”中的任何一个旨在包含仅选择第一个列出的选项(A),或仅选择第二个列出的选项(B),或选择两个选项(A和B)。作为进一步示例,在“A、B和/或C”和“A、B和C中的至少一个”的情况下,这样的短语旨在包含仅选择第一个列出的选项(A),或仅选择第二个列出的选项(B),或仅选择第三个列出的选项(C),或仅选择第一个和第二个列出的选项(A和B),或仅选择第一个和第三个列出的选项(A和C),或仅选择第二个和第三个列出的选项(B和C),或选择所有三个选项(A和B和C)。如本领域和相关领域的普通技术人员所清楚的,这可以扩展到所列出的尽可能多的项目。

此外,如本文中所使用,词语“信号”尤其是指向对应的解码器指示某物。例如,在某些实施例中,编码器用信号发送色度缩放因子索引中的特定一个。以这种方式,在实施例中,在编码器侧和解码器侧都使用相同的参数。因此,例如,编码器可以将特定参数发送(显式用信号发送)到解码器,使得解码器可以使用相同的特定参数。相反,如果解码器已经具有特定参数以及其他参数,则可以使用用信号发送而无需发送(隐式用信号发送)来简单地允许解码器知道并选择特定参数。通过避免传输任何实际函数,在各种实施例中实现了比特节省。应当理解,可以以各种方式实现用信号发送。例如,在各种实施例中,一个或多个语法元素、标志等用于将信息用信号发送到对应的解码器。虽然前面涉及词语“信号”的动词形式,但是词语“信号”在本文中也可以用作名词。

对于本领域普通技术人员显而易见的是,实现方式可以产生被格式化为携带可以例如被存储或发送的信息的各种信号。该信息可以包括例如用于执行方法的指令或由所描述的实现方式之一产生的数据。例如,信号可以被格式化以携带所描述的实施例的比特流。这样的信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码和用编码的数据流调制载波。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路发送。信号可以存储在处理器可读介质上。

我们描述了多个实施例。这些实施例的特征可以跨各种权利要求类别和类型单独提供或以任何组合提供。此外,实施例可以跨各种权利要求类别和类型单独地或以任何组合包括以下特征、设备或方面中的一个或多个:

·响应于色度块的尺寸并且可能响应于与色度块共位的至少一个亮度块的尺寸而启用跨分量相关相关工具。

·在色度块在通过将图片的色度分量分割成非重叠矩形区域而定义的单个色度矩形区域内的情况下,启用跨分量相关工具;

·在至少一个共位亮度块在与第一色度矩形区域共位的亮度矩形区域内的情况下,启用跨分量相关工具,所述亮度矩形区域通过将所述图片的亮度分割成非重叠矩形区域来定义;

·包括所描述语法元素中的一个或多个或者其变型的比特流或信号。

·包括传达根据所描述的任何实施例产生的信息的语法的比特流或信号。

·在所述信令中插入语法元素,所述语法元素使得所述解码器能够以与编码器所使用的方式对应的方式启用/禁用跨分量相关工具。

·创建和/或发送和/或接收和/或解码包括所描述的语法元素中的一个或多个或者其变型的比特流或信号。

·根据所描述的任何实施例创建和/或发送和/或接收和/或解码。

·根据所描述的任何实施例的方法、过程、装置、存储指令的介质、存储数据的介质或信号。

·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其执行根据所描述的任何实施例的启用/禁用跨分量相关工具的。

·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其执行根据所描述的任何实施例的启用/禁用跨分量相关工具,并且显示(例如,使用监视器、屏幕或其他类型的显示器)所得到的图像。

·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其选择(例如,使用调谐器)信道以接收包括编码的图像的信号,并且执行根据所描述的任何实施例的启用/禁用跨分量相关工具。

·TV、机顶盒、蜂窝电话、平板电脑或其他电子设备,其通过空中接收(例如,使用天线)包括编码的图像的信号,并且执行根据所描述的任何实施例的启用/禁用跨分量相关工具。

此外,实施例可以跨各种权利要求类别和类型单独地或以任何组合包括以下特征、设备或方面中的一个或多个。

根据至少一个实施例的一般方面,提出了一种解码方法,包括:

-响应于色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;

-响应于所述跨分量相关工具的所述启用,对所述色度块进行解码。

根据至少一个实施例的一般方面,提出了一种解码装置,包括一个或多个处理器,被配置为执行:

-响应于色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;以及

-响应于所述跨分量相关工具的所述启用,对所述色度块进行解码。

根据至少一个实施例的一般方面,提出了一种编码方法,包括:

-响应于色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的跨分量相关工具;

-响应于所述跨分量相关工具的所述启用,对所述色度块进行编码。

根据至少一个实施例的一般方面,提出了一种编码装置,该编码装置包括一个或多个处理器,被配置为执行:

-响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要图片的色度块的跨分量相关工具;以及

-响应于所述跨分量相关工具的所述启用,对所述色度块进行编码。

本实施例中的一个或多个还提供了一种计算机可读存储介质,其上存储有用于根据上述任何方法的至少一部分对视频数据进行编码或解码的指令。一个或多个实施例还提供了一种计算机可读存储介质,其上存储有根据上述编码方法产生的比特流。一个或多个实施例还提供了一种用于发送或接收根据上述编码方法产生的比特流的方法和装置。一个或多个实施例还提供了一种计算机程序产品,其包括用于执行上述任何方法的至少一部分的指令。

在一个实施例中,所述跨分量相关工具是亮度相关的色度残差缩放。

在一个实施例中,响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的所述亮度相关的色度残差缩放包括:

-在以下情况下启用所述亮度相关的色度残差缩放:

·色度块在单个色度矩形区域内,所述色度矩形区域通过将所述图片的色度分量分割成非重叠矩形区域来定义;以及

·与色度块共位的至少一个亮度块在与所述色度矩形区域共位的单个亮度矩形区域内,所述亮度矩形区域通过将所述图片的亮度分割成非重叠矩形区域来定义;以及

-否则禁用所述亮度相关的色度残差缩放。

在一个实施例中,响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的所述亮度相关的色度残差缩放包括:

-在以下情况下启用所述亮度相关的色度残差缩放:

·色度块在单个色度矩形区域内,所述色度矩形区域通过将所述图片的色度分量分割成非重叠矩形区域来定义;以及

·与色度块共位的所有亮度块在与所述色度矩形区域共位的单个亮度矩形区域内,所述亮度矩形区域通过将所述图片的亮度分割成非重叠矩形区域来定义;以及

-否则禁用所述亮度相关的色度残差缩放。

在一个实施例中,响应于所述色度块的尺寸和与色度块共位的至少一个亮度块的尺寸而启用要用于图片的色度块的所述亮度相关的色度残差缩放包括:

-在与色度块共位的至少一个亮度块在与第一色度矩形区域共位的单个亮度矩形区域内的情况下,启用所述亮度相关的色度残差缩放,所述色度矩形区域通过将所述图片的色度分量分割成非重叠矩形区域来定义,并且所述亮度矩形区域通过将所述图片的亮度分割成非重叠矩形区域来定义;以及

-否则禁用所述亮度相关的色度残差缩放。

在一个实施例中,在禁用所述亮度相关的色度残差缩放的情况下,通过从色度缩放因子或从标识与邻近于所述色度块的至少一个解码的(分别编码的)色度块相关联的色度缩放因子的索引的预测来为所述色度块确定缩放因子。

在一个实施例中,在禁用所述亮度相关的色度残差缩放的情况下,针对所述色度块从比特流中解码(分别在比特流中编码)差值量化参数。

在另一实施例中,跨分量相关工具是跨分量线性模型预测。

62页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:编码装置、解码装置、编码方法及解码方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类