基于子块使用变换跳过模式

文档序号:453566 发布日期:2021-12-28 浏览:24次 >En<

阅读说明:本技术 基于子块使用变换跳过模式 (Transform skip mode based on sub-block usage ) 是由 张莉 张凯 刘鸿彬 张娜 王悦 于 2020-05-21 设计创作,主要内容包括:描述了用于可视媒体编解码的无损编解码的设备、系统和方法。一种用于视频处理的示例性方法包括,在包括多个子块的当前视频块的子块级别,确定是否启用编解码模式来在比特流表示中表示对应的子块,其中,对于启用了编解码模式的给定子块,在不应用正变换的情况下,在编解码表示中表示给定子块,或者在不应用逆变换的情况下,从编解码表示重构给定子块,以及基于该确定,执行视频的当前视频块和视频的比特流表示之间的转换。(Devices, systems, and methods for lossless codec for visual media codec are described. An example method for video processing includes, at a subblock level of a current video block comprising a plurality of subblocks, determining whether a coding mode is enabled to represent a corresponding subblock in a bitstream representation, wherein, for a given subblock for which the coding mode is enabled, the given subblock is represented in the coding representation without applying a forward transform or reconstructed from the coding representation without applying an inverse transform, and performing a transition between the current video block of video and the bitstream representation of video based on the determination.)

基于子块使用变换跳过模式

相关申请的交叉引用

根据适用的专利法和/或巴黎公约的规则,本申请是适时要求于2019年5月22日提交的国际专利申请No.PCT/CN2019/087986的优先权和权益而提出的。出于法律规定的所有目的,上述申请的全部公开内容作为本申请公开内容的一部分通过引用结合于此。

技术领域

本专利文档涉及视频编解码技术、设备和系统。

背景技术

尽管在视频压缩方面取得了进步,但数字视频仍然占在互联网和其他数字通信网络上使用的最大带宽。随着能够接收和显示视频的互连用户设备数量的增加,预计针对数字视频使用的带宽需求将继续增长。

发明内容

提供了涉及数字视频编解码的设备、系统和方法,特别是涉及用于可视媒体编解码的无损编解码。所描述的方法可以被应用于现有的视频编解码标准(例如,高效视频编解码(High Efficiency Video Coding,HEVC))和未来的视频编解码标准或视频编解码器。

在一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:在包括多个子块的当前视频块的子块级别,确定是否启用编解码模式来在比特流表示中表示对应的子块,其中,对于启用了编解码模式的给定子块,在不应用正变换的情况下,在编解码表示中表示给定子块,或者在不应用逆变换的情况下,从编解码表示重构给定子块;以及基于该确定,执行视频的当前视频块和视频的比特流表示之间的转换。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:确定视频的当前视频块和视频的编解码表示之间的转换基于第一编解码模式,其中在该第一编解码模式下,无损编解码技术用于在编解码表示中表示当前视频块;以及至少基于该确定,通过禁用亮度映射与色度缩放(LMCS)过程来执行转换,其中,禁用LMCS过程在当前视频块来自亮度分量的情况下禁用对当前视频块的整形域和原始域中的样点之间的切换的执行,或者在当前视频块来自色度分量的情况下禁用对当前视频块的色度残差的缩放。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:执行视频的当前视频块和视频的比特流表示之间的转换,其中,比特流表示符合第一格式规则,其中该第一格式规则指定transquant旁路模式的第一语法元素和量化参数的一个或多个语法元素的出现顺序,其中,比特流表示符合第二格式规则,其中该第二格式规则指定第一语法元素和一个或多个语法元素是否被包括在编解码表示中,并且其中,在transquant旁路模式下,在编码期间不对当前视频块应用变换和量化过程,或者在对当前视频块的编解码表示的解码期间不使用逆变换和逆量化。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:执行视频的视频片段的当前视频块和视频的比特流表示之间的转换,其中,该转换符合格式规则,其中该格式规则指定transquant旁路模式和亮度映射的色度缩放(LMCS)模式对当前视频块的转换的应用性之间的应用性关系,其中,该格式规则还指定指示应用性关系的视频片段级别的语法结构,其中,在transquant旁路模式下,不对当前视频块使用变换和量化过程,并且其中,LMCS模式包括,在当前视频块来自亮度分量的情况下对当前视频块的整形域和原始域中的样点之间的切换的执行,或者在当前视频块来自色度分量的情况下对当前视频块的色度残差的缩放。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:根据第一规则和第二规则,执行视频的当前视频块和视频的比特流表示之间的转换,其中,第一规则指定是否在转换期间使用逆整形过程用于通过从整形域转换到原始域来生成当前视频块的解码像素值,并且其中,第二规则指定应用逆整形过程和环路滤波过程以用于当前视频块的重构的顺序。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:为包括多个色彩分量的当前视频块配置当前视频块的比特流表示,其中,对于多个色彩分量中的至少两个色彩分量,在比特流表示中分开信令通知跳过变换和量化过程的指示,以及基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。

在另一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:基于当前视频块的特性,做出关于启用跳过对当前视频块应用变换和量化过程的模式的决定,以及基于该决定,执行当前视频块和当前视频块的比特流表示之间的转换。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:基于当前视频块的至少一个维度,做出关于启用跳过对当前视频块应用变换和量化过程的第一模式和不对当前视频块应用变换的第二模式的决定,以及基于该决定,执行当前视频块和当前视频块的比特流表示之间的转换。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:确定使用跳过对当前视频块应用变换和量化过程的第一模式和第二模式对当前视频块进行编解码,以及基于该确定,执行当前视频块和当前视频块的比特流表示之间的转换。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:为当前视频块配置当前视频块的比特流表示,其中,在信令通知与一个或多个多重变换相关编解码工具有关的语法元素之前,在比特流表示中信令通知跳过变换和量化过程的指示,以及基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:确定使用跳过对当前视频块应用变换和量化过程的模式对当前视频块进行编解码,以及基于该确定并作为执行当前视频块和当前视频块的比特流表示之间的转换的一部分,禁用滤波方法。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:确定使用跳过对当前视频块应用变换和量化过程的模式对当前视频块进行编解码,以及基于该确定并作为执行当前视频块和当前视频块的比特流表示之间的转换的一部分,对(i)包括当前视频块的当前图片或(ii)当前图片的一部分禁用环路整形(ILR)过程。

在又一个代表性方面,所公开的技术可以用于提供一种用于视频处理的方法。该方法包括:为当前视频块配置当前视频块的比特流表示,其中,在信令通知量化参数的一个或多个指示之后,在比特流表示中选择性地信令通知跳过变换和量化过程的指示;以及基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。

在又一个代表性方面,上述方法以处理器可执行代码的形式体现,并存储在计算机可读程序介质中。

在又一个代表性方面,公开了一种被配置或可操作为执行上述方法的设备。该设备可以包括被编程为实现该方法的处理器。

在又一个代表性方面,一种视频解码器装置可以实现本文所描述的方法。

在附图、说明书和权利要求中更详细地描述了所公开的技术的上述和其他方面和特征。

附图说明

图1示出了示例编码器的框图。

图2示出了67种帧内预测模式的示例。

图3A-图3D示出了被应用于对角线和相邻角度帧内模式的位置依赖帧内预测组合(position dependent intra prediction combination,PDPC)方法所使用的样点的示例。

图4示出了与预测块邻近的四条参考线的示例。

图5示出了4×8和8×4块的分割的示例。

图6示出了除4×8、8×4和4×4之外的所有块的分割的示例。

图7示出了针对4×4块的ALWIP示例。

图8示出了针对8×8块的ALWIP示例。

图9示出了针对8×4块的ALWIP示例。

图10示出了16×16块的ALWIP示例。

图11示出了JEM中的二次变换的示例。

图12示出了所提出的简化二次变换(Reduced Secondary Transform,RST)的示例。

图13示出了子块变换模式SBT-V和SBT-H的示例。

图14示出了具有整形的解码流的流程图。

图15A-图15G示出了用于视频处理的示例方法的流程图。

图16是用于实现本文档中描述的可视媒体解码或可视媒体编码技术的硬件平台的示例的框图。

图17是示出可以利用本公开的技术的示例视频编解码系统的框图。

图18是示出视频编码器的示例的框图。

图19是示出视频解码器的示例的框图。

图20是示出其中可以实现本文所公开的各种技术的示例视频处理系统的框图。

图21-图25示出了用于视频处理的示例方法的流程图。

具体实施方式

所公开的技术的实施例可以被应用于现有的视频编解码标准(例如,HEVC、H.265)和未来的标准以提高压缩性能。在本文档中使用章节标题来提高说明书的可读性,并且不以任何方式将讨论或实施例(和/或实现方式)仅限制于相应的章节。

2视频编解码介绍

由于对更高分辨率视频的需求不断增加,因此视频编解码方法和技术在现代技术中无处不在。视频编解码器通常包括压缩或解压缩数字视频的电子电路或软件,并且不断被改进以提供更高的编解码效率。视频编解码器将未压缩的视频转换为压缩格式,反之亦然。视频质量、(由比特率确定的)用于表示视频的数据量、编码和解码算法的复杂度、对数据丢失和错误的敏感度、编辑的容易程度、随机访问和端到端延迟(等待时间)之间存在复杂的关系。压缩格式通常符合标准视频压缩规范,例如高效视频编解码(HEVC)标准(也被称为H.265或MPEG-H Part 2)[1]、待最终确定的多功能视频编解码标准或其他当前和/或未来的视频编解码标准。

视频编解码标准主要是通过公知的ITU-T和ISO/IEC标准的发展而演变出来的。ITU-T产生了H.261和H.263,ISO/IEC产生了MPEG-1和MPEG-4视觉,并且两个组织联合产生了H.262/MPEG-2视频和H.264/MPEG-4高级视频编解码(Advanced Video Coding,AVC)和H.265/HEVC[1]标准。自H.262以来,视频编解码标准就是基于混合视频编解码结构的,在混合视频编解码结构中利用了时域预测加变换编解码。为了探索HEVC之外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索组(Joint Video Exploration Team,JVET)。此后,JVET采用了多种新方法,并将这些新方法放入了名为联合探索模型(JointExploration Model,JEM)的参考软件中[3][4]。2018年4月,VCEG(Q6/16)和ISO/IEC JTC1SC29/WG11(MPEG)创建了联合视频专家组(Joint Video Expert Team,JVET),致力于VVC标准,目标是与HEVC相比使比特率降低50%。

2.1典型视频编解码器的编解码流程

图1示出了VVC的编码器框图的示例,其包含三个环路(in-loop)滤波块:去块滤波器(deblocking filter,DF)、样点自适应偏移(sample adaptive offset,SAO)和ALF。与使用预定义滤波器的DF不同,SAO和ALF利用当前图片的原始样点,分别通过添加偏移和通过应用有限脉冲响应(finite impulse response,FIR)滤波器来减少原始样点和重构样点之间的均方误差,其中经编解码的边信息(side information)信令通知偏移和滤波器系数。ALF位于每个图片的最后一个处理阶段,可以被视为试图捕捉和修复先前阶段创建的伪影的工具。

2.2具有67种帧内预测模式的帧内模式编解码

为了捕获自然视频中呈现的任意边缘方向,定向帧内模式的数量从在HEVC中使用的33个扩展到65个。在图2中用虚线箭头表示附加的定向模式,而平面模式和DC模式保持不变。这些更密集的定向帧内预测模式适用于所有块尺寸以及亮度和色度帧内预测。

传统的角度帧内预测方向被定义为顺时针方向45度到-135度,如图2所示。在VTM2中,对于非正方形块,若干个传统的角度帧内预测模式被自适应地替换为广角帧内预测模式。被替换的模式使用原始方法来信令通知,并且在解析后被重新映射到广角模式的索引。帧内预测模式的总数(即67)不变,并且帧内模式编解码不变。

在HEVC中,每一个经帧内编解码的块具有正方形形状,并且其边中的每一个的长度是2的幂。因此,使用DC模式生成帧内预测器不需要除法运算。在VVV2中,块可以具有矩形形状,在一般情况下需要对每个块使用除法运算。为了避免针对DC预测的除法运算,仅使用较长边来计算非正方形块的平均。

2.2.1位置依赖帧内预测组合(PDPC)

在VTM2中,通过位置依赖帧内预测组合(PDPC)方法进一步修改平面模式的帧内预测的结果。PDPC是调用未滤波的边界参考样点和具有经滤波的边界参考样点的HEVC型帧内预测的组合的帧内预测方法。PDPC适用于以下无信令的帧内模式:平面、DC、水平、垂直、左下角度模式及其八个相邻角度模式,以及右上角度模式及其八个相邻角度模式。

预测样点pred(x,y)是根据如下等式、使用帧内预测模式(DC、平面、角度)和参考样点的线性组合来预测的:

pred(x,y)=(wL×R-1,y+wT×Rx,-1–wTL×R-1,-1+(64–wL–wT+wTL)×pred(x,y)+32)>>6

这里,Rx,-1、R-1,y分别表示位于当前样点(x,y)的顶部和左边的参考样点,而R-1,-1表示位于当前块的左上角的参考样点。

如果将PDPC应用于DC、平面、水平和垂直帧内模式,则不需要附加的边界滤波器,如在HEVC DC模式边界滤波器或水平/垂直模式边缘滤波器的情况下。

图3A-图3D示出了针对在各种预测模式下应用的PDPC的参考样点(Rx,-1,R-1,y和R-1,-1)的定义。预测样点pred(x’,y’)位于预测块内的(x’,y’)处。参考样点Rx,-1的坐标x由x=x’+y’+1给出,参考样点R-1,y的坐标y类似地由y=x’+y’+1给出。PDPC权重依赖于预测模式,如表1所示。

表1:根据预测模式的PDPC权重的示例

预测模式 wT wL wTL
对角线右上 16>>((y’<<1)>>shift) 16>>((x’<<1)>>shift) 0
对角线左下 16>>((y’<<1)>>shift) 16>>((x’<<1)>>shift) 0
相邻对角线右上 32>>((y’<<1)>>shift) 0 0
相邻对角线左下 0 32>>((x’<<1)>>shift) 0

2.3多参考线(Multiple reference line,MRL)

多参考线(MRL)帧内预测使用更多参考线来进行帧内预测。在图4中,描绘了4条参考线的示例,其中片段A和F的样点不是从重构的邻近样点中获取的,而是分别用来自片段B和E的最接近的样点填充的。HEVC图片内预测使用最近的参考线(即,参考线0)。在MRL中,使用了2条附加的线(参考线1和参考线3)。

所选参考线的索引(mrl_idx)被信令通知并用于生成帧内预测器。对于大于0的参考线索引,仅包括MPM列表中的附加参考线模式,并且仅信令通知MPM索引信号,而不管剩余的模式。在帧内预测模式之前信令通知参考线索引,并且在信令通知非零参考线索引的情况下,从帧内预测模式下排除平面模式和DC模式。

针对CTU内的块的第一条线禁用MRL,以防止使用当前CTU线之外的扩展的参考样点。此外,当使用附加的线时,禁用PDPC。

2.4帧内子块分割(Intra subblock partitioning,ISP)

在JVET-M0102中,提出了ISP,其依赖于块的尺寸维度将亮度帧内预测块垂直或水平地分为2或4个子分割,如表2所示。图5和图6示出了两种可能性的示例。所有子分割都满足具有至少16个样点的条件。对于块尺寸4×N或N×4(其中N>8),如果允许,1×N或N×1子分割可能存在。

表2:依赖于块尺寸的子分割的数量(通过maxTBSize表示最大变换尺寸)

对于这些子分割中的每一个,通过对编码器发送的系数进行熵解码,然后对其进行逆量化和逆变换来生成残差信号。然后,帧内预测子分割,并且最终通过将残差信号添加到预测信号来获得相应的重构样点。因此,每个子分割的重构值将可用于生成下一个分割的预测,这将重复该过程。所有子分割共享同一种帧内模式。

表3:依赖于predModeIntra的trTypeHor和trTypeVer的规范

2.5仿射线性加权帧内预测(ALWIP或基于矩阵的帧内预测)

在JVET-N0217中提出了仿射线性加权帧内预测(ALWIP,即,基于矩阵的帧内预测(Matrix based intra prediction,MIP))。

2.5.1通过矩阵矢量乘法生成简化预测信号

首先经由平均对邻近的参考样点进行下采样,以生成简化参考信号bdryred。然后,通过计算矩阵矢量积并添加偏移来计算简化预测信号predred

predred=A·bdryred+b

这里,A是具有Wred·Hred行,并且如果W=H=4则具有4列,而在其他情况下则具有8列的矩阵。b是尺寸Wred·Hred的矢量。

2.5.2对整个ALWIP过程的说明

图7-图10示出了针对不同形状的平均、矩阵矢量乘法和线性插值的整个过程。注意,其余的形状被视为所描述的情况之一。

1.给定4×4的块,ALWIP沿着边界的每个轴取两个平均值。得到的四个输入样点进入矩阵矢量乘法。矩阵取自集合S0。在添加偏移后,产生16个最终预测样点。线性插值对于生成预测信号不是必需的。因此,针对每个样点总共执行(4·16)/(4·4)=4次乘法。

2.给定8×8的块,ALWIP沿着边界的每个轴取四个平均值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合S1。这在预测块的奇数位置上产生16个样点。因此,针对每个样点总共执行(8·16)/(8·8)=2次乘法。添加偏移后,使用缩小的顶部边界对这些样点进行垂直插值。使用原始左边界进行水平插值。

3.给定8×4的块,ALWIP沿着边界的水平轴取四个平均值,并且取左边界上的四个原始边界值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合S1。这在预测块的奇数水平位置和每个垂直位置上产生16个样点。因此,每个样点总共执行(8·16)/(8·4)=4次乘法。添加偏移后,使用原始左边界对这些样点进行水平插值。

4.给定16×16的块,ALWIP沿着边界的每个轴取四个平均值。得到的八个输入样点进入矩阵矢量乘法。矩阵取自集合S2。这在预测块的奇数位置产生64个样点。因此,每个样点总共执行(8·64)/(16·16)=2次乘法。添加偏移后,通过使用顶部边界的八个平均对这些样点进行垂直插值。使用原始左边界进行水平插值。在这种情况下,插值过程不增加任何乘法运算。因此,总的来说,针对每个样点需要两次乘法来计算ALWIP预测。

对于更大的形状,过程基本相同,并且很容易检查每个样点的乘法次数是否少于四。

对于W>8的W×8块,只需要水平插值,因为样点是在奇数水平位置和每个垂直位置给出的。

最后,对于W>8的W×4块,使A_kbe是这样产生的矩阵,即,沿着经下采样的块的水平轴省略与奇数条目相对应的每一行。因此,输出尺寸是32,并且再次,仅剩下水平插值要执行。

相应地处理转置的情况。

2.6 VVC中的多重变换集(Multiple Transform Set,MTS)

2.6.1显式多重变换集(MTS)

在VTM4中,支持最大64X64的大块尺寸变换,这主要适用于较高分辨率的视频,例如1080p和4K序列。对于尺寸(宽度或高度、或宽度和高度二者)等于64的变换块,高频变换系数被归零,从而仅保留较低频系数。例如,对于以M为块宽度且N为块高度的M×N变换块,当M等于64时,仅保留左边32列变换系数。类似地,当N等于64时,仅保留前32行变换系数。对于大块,当使用变换跳过模式时,将使用整个块而不归零任何值。

除了已经在HEVC中采用的DCT-II之外,多重变换选择(Multiple TransformSelection,MTS)方案还用于对经帧间编解码的块和经帧内编解码的块两者进行残差编解码。MTS使用来自DCT8/DST7的多个所选变换。新引入的变换矩阵是DST-VII和DCT-VIII。下表4示出了所选DST/DCT的基函数。

表4:VVC中使用的变换矩阵的基函数

为了保持变换矩阵的正交性,相比于HEVC中的变换矩阵,变换矩阵被更准确地量化。为了将变换系数的中间值保持在16比特范围内,在水平和垂直变换之后,所有系数都要有10比特。

为了控制MTS方案,在SPS级针对帧内和帧间分别指定了单独的启用标志。当在SPS启用MTS时,将信令通知CU级标志,以指示是否应用了MTS。这里,MTS仅适用于亮度。当满足以下条件时,信令通知MTS CU级标志。

ο宽度和高度两者都小于或等于32

οCBF标志等于一

如果MTS CU标志等于零,则双向应用DCT2。然而,如果MTS CU标志等于1,则另外信令通知两个其它标志,以分别指示水平和垂直方向的变换类型。变换和信令映射表如表5所示。在涉及变换矩阵精度时,使用8比特一次变换核。因此,在HEVC中使用的所有变换核保持不变,包括4点DCT-2和DST-7以及8点、16点和32点DCT-2。此外,包括64点DCT-2、4点DCT-8以及8点、16点、32点DST-7和DCT-8的其他变换核使用8比特一次变换核。

表5:tu_mts_idx的解码值和水平和垂直方向的对应变换矩阵的映射

为了降低大尺寸DST-7和DCT-8的复杂度,对于尺寸(宽度或高度、或宽度和高度两者)等于32的DST-7和DCT-8块,高频变换系数被归零。仅保留16x16较低频区域内的系数。

除了应用不同变换的情况之外,VVC还支持被称为变换跳过(Transform Skip,TS)的模式,其类似于HEVC中TS的概念。TS被视为MTS的特例。

2.6.1.1语法和语义

可以在比特流中信令通知MTS索引,这种设计被称为显式MTS。此外,还支持根据变换块尺寸直接推导矩阵的替代方式,即隐式MTS。

对于显式MTS,它支持所有编解码模式。而对于隐式MTS,仅支持帧内模式。

7.3.2.4图片参数集RBSP语法

7.3.7.10变换单元语法

transform_skip_flag[x0][y0]指定是否对亮度变换块应用了变换。阵列索引x0、y0指定所考虑的变换块的左上亮度样点相对于图片的左上亮度样点的位置(x0,y0)。等于1的transform_skip_flag[x0][y0]指定没有任何变换被应用于亮度变换块。等于0的transform_skip_flag[x0][y0]指定是否将变换应用于亮度变换块的决定是依赖于其他语法元素的。当transform_skip_flag[x0][y0]不存在时,推断其等于0。

tu_mts_idx[x0][y0]指定沿着相关联的亮度变换块的水平和垂直方向将哪些变换核应用于残差样点。阵列索引x0、y0指定所考虑的变换块的左上亮度样点相对于图片的左上亮度样点的位置(x0,y0)。

当tu_mts_idx[x0][y0]不存在时,推断其等于0。

在CABAC解码过程中,一个上下文用于解码transform_skip_flag,截断一元用于二值化tu_mts_idx。tu_mts_idx的每个二进制位都是经上下文编解码的,对于第一个二进制位,使用四叉树深度(即cqtDepth)来选择一个上下文;对于剩余的二进制位,使用一个上下文。

表9-15—将ctxInc分配给具有经上下文编解码的二进制位的语法元素

2.6.2隐式多重变换集(MTS)

注意,ISP、SBT和被启用了但具有隐式信令的MTS都被视为隐式MTS。在规范中,implicitMtsEnabled用于定义隐式MTS是否已被启用。

8.7.4用于缩放的变换系数的变换过程

8.7.4.1概述

变量implicitMtsEnabled如下推导:

-如果sps_mts_enabled_flag等于1,并且下列条件之一为真,则implicitMtsEnabled被设置为1:

-IntraSubPartitionsSplitType不等于ISP_NO_SPLIT

-cu_sbt_flag等于1,并且Max(nTbW,nTbH)小于或等于32

-sps_explicit_mts_intra_enabled_flag和sps_explicit_mts_inter_enabled_flag两者都等于0,并且

CuPredMode[xTbY][yTbY]等于MODE_INTRA

-否则,implicitMtsEnabled被设置为0。

指定水平变换核的变量trTypeHor和指定垂直变换核的变量trTypeVer如下推导:

-如果cIdx大于0,则trTypeHor和trTypeVer被设置为等于0。

-否则,如果implicitMtsEnabled等于1,则适用以下情况:

-如果IntraSubPartitionsSplitType不等于ISP_NO_SPLIT,则依赖于intraPredMode,在表8-15中指定trTypeHor和trTypeVer。

-否则,如果cu_sbt_flag等于1,则依赖于cu_sbt_horizontal_flag和cu_sbt_pos_flag,在表8-14中指定trTypeHor和trTypeVer。

-否则(sps_explicit_mts_intra_enabled_flag和sps_explicit_mts_inter_enabled_flag等于0),trTypeHor和trTypeVer如下推导:

trTypeHor=(nTbW>=4&&nTbW<=16&&nTbW<=nTbH)?1:0(8-1030)

trTypeVer=(nTbH>=4&&nTbH<=16&&nTbH<=nTbW)?1:0(8-1031)

-否则,依赖于tu_mts_idx[xTbY][yTbY],在表8-13中指定了trTypeHor和trTypeVer。

表8-13—依赖于tu_mts_idx[x][y]的trTypeHor和trTypeVer的规范

tu_mts_idx[x0][y0] 0 1 2 3 4
trTypeHor 0 1 2 1 2
trTypeVer 0 1 1 2 2

表8-14—依赖于cu_sbt_horizontal_flag和cu_sbt_pos_flag的trTypeHor和trTypeVer的规范

cu_sbt_horizontal_flag cu_sbt_pos_flag trTypeHor trTypeVer
0 0 2 1
0 1 1 1
1 0 1 2
1 1 1 1

2.7 JVET-N 0193中提出的简化二次变换(RST)

2.7.1 JEM中的不可分二次变换(Non-Separable Secondary Transform,NSST)

在JEM中,在正一次变换和量化之间(编码器处)以及在去量化和逆一次变换之间(解码器处)应用二次变换。如图11所示,依赖于块尺寸,执行4×4(或8×8)二次变换。例如,对于每个8×8块,4×4二次变换被应用于小块(即,min(width,height)<8),而8×8二次变换被应用于较大块(即,min(width,height)>4)。

以下面的输入为例描述对不可分变换的应用。为了应用不可分变换,4x4输入块X

被首先表示为矢量

不可分变换被计算为其中指示变换系数矢量,T是16×16变换矩阵。16×1系数矢量随后使用针对该块的扫描顺序(水平、垂直或对角线)被重新组织为4×4块。具有较小索引的系数将与较小扫描索引一起被放置在4x4系数块中。总共有35个变换集,每个变换集使用3个不可分的变换矩阵(核)。从帧内预测模式到变换集的映射是预先定义的。对于每个变换集,所选不可分二次变换(NSST)候选进一步由显示信令通知的二次变换索引来指定。在变换系数之后,针对每个帧内CU在比特流中信令通知一次索引。

2.7.2 JVET-N 0193中简化二次变换(RST)

在JVET-K0099中引入了RST(即,低频不可分变换(Low Frequency Non-SeparableTransform,LFNST))变换,并且在JVET-L0133中引入了4个变换集(而不是35个变换集)映射。在JVET-N0193中,采用了16x64(进一步缩小为16x48)和16x16矩阵。为了便于标记,16x64(缩小为16x48)变换表示为RST8x8,16x16变换表示为RST4x4。图12示出了RST的示例。

2.8子块变换

对于cu_cbf等于1的帧间预测的CU,可以信令通知cu_sbt_flag来指示是解码整个残差块还是残差块的子部分。在前一种情况下,进一步解析MTS信息以确定CU的变换类型。在后一种情况下,残差块的一部分用推断的自适应变换来编解码,而残差块的另一部分被归零。SBT不适用于组合帧间-帧内模式。

在子块变换中,位置依赖变换被应用于SBT-V和SBT-H下的亮度变换块(色度TB总是使用DCT-2)。SBT-H和SBT-V的两个位置与不同的核变换相关联。更具体地,在图13中指定了每个SBT位置的水平和垂直变换。例如,SBT-V位置0的水平和垂直变换分别是DCT-8和DST-7。当残差TU的一边大于32时,相应的变换被设置为DCT-2。因此,子块变换联合指定残差块的TU平铺(tiling)、cbf以及水平和垂直变换,这可以被认为是在块的主要残差在块的一侧的情况下的语法快捷方式。

2.8.1语法元素和语义

7.3.7.5编解码单元语法

7.3.7.11残差编解码语法

sps_sbt_max_size_64_flag等于0指定允许子块变换的最大CU宽度和高度为32个亮度样点。sps_sbt_max_size_64_flag等于1指定允许子块变换的最大CU宽度和高度为64个亮度样点。

MaxSbtSize=sps_sbt_max_size_64_flag?64:32 (7-33)

2.9量化残差域块差分脉冲码调制编解码(Quantized residual domain Blockdifferential pulse-code modulation coding,QR-BDPCM)

在JVET-N0413中,提出了量化后的残差域BDPCM(以下被称为RBDPCM)。类似于帧内预测,通过在预测方向(水平或垂直预测)上进行样点复制来对整个块进行帧内预测。量化残差,然后对量化后的残差与其预测的(水平或垂直)量化后的值之间的差值进行编解码。

对于尺寸为M(行)×N(列)的块,设ri,j,0≤i≤M-1,0≤j≤N-1为使用来自上方或左块边界样点的未经滤波的样点,来水平地(逐行地复制预测块上的左边邻近像素值)或垂直地(将顶部邻近行复制到预测块中的每一行)执行帧内预测后的预测残差。设Q(ri,j),0≤i≤M-1,0≤j≤N-1表示残差ri,j的量化后的版本,其中残差是原始块和预测块值之间的差。然后,块DPCM被应用于量化后的残差样点,得到具有元素的修改后的M×N阵列当信令通知垂直BDPCM时:

对于水平预测,类似的规则也适用,并且通过以下方式获得残差量化后的样点:

残差量化后的样点被发送到解码器。

在解码器侧,上述计算被反过来,以得到Q(ri,j),0≤i≤M-1,0≤j≤N-1。对于垂直预测情况,

对于水平情况,

逆量化后的残差Q-1(Q(ri,j))被添加到帧内块预测值以产生重构的样点值。

在QR-BDPCM中总是使用变换跳过。

2.9.1经TS编解码的块和经QR-BDPCM编解码的块的系数编解码

QR-BDPCM遵循用于经TS编解码的块的上下文建模方法。

TS残差的修改后的变换系数级编解码。相对于常规残差编解码情况,TS的残差编解码包括以下变化:

(1)没有对最后x/y位置的信令通知,

(2)当所有先前标志都等于0时,针对除了最后一个子块之外的每一个子块编解码的coded_sub_block_flag,

(3)使用简化模板的sig_coeff_flag上下文建模,

(4)针对abs_level_gt1_flag和par_level_flag的单个上下文模型,

(5)针对符号标志、附加的大于5、7、9标志的上下文建模,

(6)针对余数二值化的修改后的Rice参数推导

(7)对每个样点的经上下文编解码的二进制位的数量的限制,一个块内每个样点2个二进制位。

2.9.2语法和语义

7.3.6.5编解码单元语法

bdpcm_flag[x0][y0]等于1指定bdpcm_dir_flag存在于包括位置(x0,y0)处的亮度编解码块的编解码单元中。

bdpcm_dir_flag[x0][y0]等于0指定要在bdpcm块中使用的预测方向是水平的,否则是垂直的。

7.3.6.10变换单元语法

对于每个CG,经上下文编解码的二进制位的数量被限制为每个样点不大于2个二进制位。

表9-15–将ctxInc分配给具有经上下文编解码的二进制位的语法元素

表9-15-将ctxInc分配给具有经上下文编解码的二进制位的语法元素

2.10 JVET-M 0427中的环路整形(In-loop reshaping,ILR)

环路整形(ILR)的基本思想是将原始(第一域中的)信号(预测/重构信号)转换到第二域(整形域)。

环路亮度整形器被实现为查找表(look-up table,LUT)对,但是仅需要信令通知两个LUT之一,因为可以根据信令通知的LUT计算出另一个LUT。每个LUT都是一维、10比特、1024条目的映射表(1D-LUT)。一个LUT是正LUT(FwdLUT),其将输入亮度码值Yi映射到改变的值Yr:Yr=FwdLUT[Yi]。另一个LUT是逆LUT(InvLUT),其将改变的码值Yr映射到 (表示Yi的重构值)。

在VVC中,ILR也被称为亮度映射与色度缩放(Luma Mapping with ChromaScaling,LMCS)。

2.10.1 PWL模型

概念上讲,逐段线性(piece-wise linear,PWL)是通过以下方式实现的:

对于一个分段(piece),设x1、x2是两个输入轴点,y1、y2是x1、x2的相应的输出轴点。x1和x2之间的任何输入值x的输出值y可以通过以下等式来插值:

y=((y2-y1)/(x2-x1))*(x-x1)+y1

在定点实现方式中,等式可以被改写为:

y=((m*x+2FP_PREC-1)>>FP_PREC)+c

这里,m是标量,c是偏移,并且FP_PREC是指定精度的常数值。

注意,在CE-12软件中,PWL模型用于预计算1024条目FwdLUT和InvLUT映射表;但是PWL模型也允许实现在不预计算LUT的情况下即时计算相同的映射值。

2.10.2亮度整形

环路亮度整形的测试2(即,提案中的CE12-2)提供了较低复杂度的流水线,这也消除了帧间条带重构中逐块(block-wise)帧内预测的解码等待时间。对于帧间和帧内条带两者,在整形域中执行帧内预测。

无论条带类型如何,总是在整形域中执行帧内预测。通过这样的安排,帧内预测可以在先前的TU重构完成之后立即开始。这样的安排还可以为帧内模式提供统一的过程,而不是依赖于条带的。图14示出了基于模式的CE12-2解码过程的框图。

CE12-2还测试了16段逐段线性(PWL)模型用于亮度和色度残差缩放,而不是CE12-1的32段PWL模型。

CE12-2中具有环路亮度整形器的帧间条带重构(较浅阴影块表示整形域中的信号:亮度残差;帧内亮度预测的;和帧内亮度重构的)

2.10.3亮度依赖的色度残差缩放

亮度依赖的色度残差缩放是通过定点整数运算实现的乘法过程。色度残差缩放补偿亮度信号与色度信号的相互作用。在TU级应用色度残差缩放。更具体地,利用相应亮度预测块的平均值。

平均值用于标识PWL模型中的索引。该索引标识缩放因子cScaleInv。色度残差乘以这个数。

注意,色度缩放因子是根据正映射的预测亮度值而不是重构亮度值来计算的。

2.10.4 ILR的使用

在编码器侧,每个图片(或片(tile)组)首先被转换到整形域。并且所有的编解码过程都在整形域中执行。对于帧内预测,邻近块在整形域中;对于帧间预测,参考块(从解码的图片缓冲区的原始域中生成的)首先被转换到整形域。然后生成残差并将残差编解码为比特流。

在整个图片(或片组)完成编码/解码之后,整形域中的样点被转换到原始域,然后应用去块滤波器和其他滤波器。

对于以下情况,禁用对预测信号进行正整形:

ο当前块是帧内编解码的

ο当前块被编解码为CPR(当前图片参考,又名帧内块复制(intra block copy,IBC))

ο当前块被编解码为组合帧间-帧内模式(CIIP),并且对于帧内预测块,禁用正整形

3现有实现方式的缺点

当前设计存在以下问题:

(1)LMCS仍然可以被应用于以变换和量化旁路模式(即,cu_transquant_bypass_flag等于1)编解码的块。然而,从原始域到整形域的映射、或者从整形域到原始域的映射都是有损的。不期望启用LMCS和cu_transquant_bypass_flag两者。

(2)还未研究如何信令通知若干新的变换相关编解码工具(诸如MTS索引或RST索引或者SBT)、无变换的编解码工具(诸如QR-DPCM)和cu_transquant_bypass_flag。

(3)HEVC中的cu_transquant_bypass_flag被信令通知一次,并被应用于所有三色分量。需要研究如何处理双树(dual tree)。

4针对可视媒体编解码的无损编解码的示例方法

当前公开技术的实施例克服了现有实现的缺点,从而提供了具有更高编解码效率的视频编解码。基于所公开的技术,针对可视媒体编解码的无损编解码的方法可以增强现有的和未来的视频编解码标准,在以下针对各种实现方式描述的示例中进行了阐述。下面提供的公开技术的示例解释了一般概念,并且不旨在被解释为限制。在示例中,除非明确指出相反的情况,否则这些示例中描述的各种特征可以被组合。

通过W*H表示一个块尺寸,其中W是块宽度,并且H是块高度。通过MaxTbW*MaxTbH表示最大变换块尺寸,其中MaxTbW和MaxTbH分别是最大变换块宽度和高度。通过MinTbW*MinTbH表示最小变换块尺寸,其中MinTbW和MinTbH分别是最小变换块的宽度和高度。

TransQuantBypass模式被定义为跳过变换和量化过程,诸如cu_transquant_bypass_flag设置为1。

对多个色彩分量使用TransQuantBypass模式

1.对于不同的色彩分量,可以单独地信令通知TransQuantBypass模式的指示(例如,cu_transquant_bypass_flag)。

a.在一个示例中,当启用双树时,可以单独地编解码亮度分量和色度分量或者每个色彩分量的cu_transquant_bypass_flag。

b.在一个示例中,可以对该模式的使用进行上下文编解码。

i.在一个示例中,对上下文的选择可以依赖于色彩分量。

c.在一个示例中,可以应用对该标志的预测性编解码。

d.在一个示例中,对于所有色彩分量是信令通知多个指示还是仅一个指示可以依赖于编解码结构(例如,单树或双树)。

e.在一个示例中,对于所有色彩分量是信令通知多个指示还是仅一个指示可以依赖于色彩格式和/或色彩分量编解码方法(例如,是否启用单独的平面编解码)和/或编解码模式。

i.在一个示例中,当对色度块启用了联合色度残差编解码时,两个色度块可以共享TransQuantBypass的同一个启用标志。

2.可以从对应的亮度区域中推导色度块的TransQuantBypass模式的指示(例如,cu_transquant_bypass_flag)。

a.在一个示例中,如果色度块对应于覆盖一个或多个块(诸如编解码单元(CU)或预测单元(PU)或变换单元(TU))的亮度区域,并且至少一个亮度块是以TransQuantBypass模式编解码的,则色度块应该以TransQuantBypass模式编解码。

i.可替代地,如果色度块对应于覆盖一个或多个块的亮度区域,并且所有这些亮度块都是以TransQuantBypass模式编解码的,则色度块应该以TransQuantBypass模式编解码。

ii.可替代地,色度块可以被分为子块。如果子块对应于覆盖一个或多个块的亮度区域,并且所有这些亮度块都是以TransQuantBypass模式编解码的,则色度子块应该以TransQuantBypass模式编解码。

3.可以对大于VPDU的块启用TransQuantBypass模式。

a.如果块的宽度或高度大于VPDU的宽度或高度,则该块被定义为大于VPDU。

i.可替代地,如果块的宽度和高度分别大于VPDU的宽度和高度,则该块被定义为大于VPDU。

b.在一个示例中,可以针对大于VPDU的块信令通知TransQuantBypass模式的指示(例如,cu_transquant_bypass_flag)cu_transquant_bypass_flag。

c.在一个示例中,对于大于VPDU的CTU,其可以经由四叉树被划分,直到达到多个VPDU为止,或者其可以不被划分。当不划分时,cu_transquant_bypass_flag可以被推断为1,而无需被信令通知。

i.可替代地,对于那些大块,可以允许帧内预测模式。

4.可以对大于VPDU的块启用变换跳过模式和/或不应用变换的其他编解码方法。

a.如果块的宽度或高度大于VPDU的宽度或高度,则该块被定义为大于VPDU。

i.可替代地,如果块的宽度和高度分别大于VPDU的宽度和高度,则该块被定义为大于VPDU。

b.在一个示例中,可以针对大于VPDU的块信令通知变换跳过模式的指示。

c.在一个示例中,对于大于VPDU的CTU,其可以经由四叉树被划分,直到达到多个VPDU为止,或者其可以不被划分。当不划分时,变换跳过标志可以被推断为1,而无需被信令通知。

i.可替代地,对于那些大块,可以允许帧内预测模式。

d.不应用变换的其他编解码方法可以包括变换跳过模式、DPCM、QR-DPCM等。

TransQuantBypass模式的块维度设置

5.TransQuantBypass模式的允许块维度可以与可以启用TS的相同。

a.TransQuantBypass模式可以适用于可以启用QR-BDPCM的相同块维度。

b.可以在序列/视图/图片/条带/片组/片/CTU/视频单元级别信令通知具有TransQuantBypass模式的块的最大和/或最小块维度。

i.在一个示例中,可以在SPS/VPS/PPS/条带头/片组头/片等中信令通知具有cu_transquant_bypass_flag的块的最大和/或最小块维度的指示。

6.提出对齐禁用变换的所有种类的编解码模式(诸如TS、TransQuantBypass模式、QR-BDPCM、BDPCM等)的允许块维度。

a.可替代地,可以信令通知这些情况的允许最大和/或最小尺寸的单个指示,以控制对所有这些模式的使用。

TransQuantBypass模式和其他编解码工具之间的交互

7.对于TransQuantBypass编解码的块,可以禁用亮度整形和/或色度缩放。

a.当TransQuantBypass被应用于块时,无论LMCS的启用/禁用标志如何,都在原始域而不是整形域中对残差进行编解码。例如,可以在条带/序列级别信令通知LMCS的启用/禁用标志。

b.在一个示例中,对于帧内和TransQuantBypass编解码的块,在帧内预测中使用的预测信号/参考样点可以首先从整形域映射到原始域。

c.在一个示例中,对于IBC和TransQuantBypass编解码的块,在IBC预测中使用的预测信号/参考样点可以首先从整形域映射到原始域。

d.在一个示例中,对于CIIP和TransQuantBypass编解码的块,以下

可以适用:

i.在帧内预测中使用的帧内预测的预测信号/参考样点可以首先从整形域映射到原始域。

ii.跳过帧间预测的预测信号从原始域到整形域的映射。

e.在一个示例中,对于调色板模式,可以在原始域而不是整形域中生成调色板表。

f.可替代地,可以分配两个缓冲区,其中的一个存储预测信号和残差信号(又名重构信号)的和;另一个存储整形后的和,即预测信号和残差信号的和需要首先从原始域被映射到整形域,并且可以进一步用于对后续块进行编解码。

i.可替代地,仅存储原始域中的重构信号。当后续块需要时,可以从原始域中的重构信号转换整形域中的重构信号。

g.上述方法可以适用于依赖于当前片/条带/片组/图片内的参考样点的其他编解码方法。

i.在一个示例中,可以对从当前片/条带/片组/图片内的参考样点生成的预测信号应用逆整形过程(即,从整形域到原始域的转换)。

ii.此外,可替代地,不允许对从不同图片中(诸如参考图片中)的参考样点生成的预测信号应用正整形过程(即,从原始域到整形域的转换)。

h.在一个示例中,可以对用不应用变换的方法(例如,TS模式)编解码的块禁用亮度整形和/或色度缩放。

i.此外,可替代地,上述要求(例如,项目符号7a-7g)可以通过用不同的编解码模式(例如,TS)替换TransQuantBypass模式来应用。

8.可以在信令通知一个或多个变换矩阵相关编解码工具之前信令通知TransQuantBypass模式的指示。

a.在一个示例中,变换矩阵相关编解码工具可以是以下工具中的一个

或多个(相关语法元素被包括在括号中):

i.变换跳过模式(例如,transform_skip_flag)

ii.显式MTS(例如,tu_mts_idx)

iii.RST(例如,st_idx)

iv.SBT(例如,cu_sbt_flag、cu_sbt_quad_flag、cu_sbt_pos_flag)

v.QR-BDPCM(例如,bdpcm_flag、bdpcm_dir_flag)

b.如何对残差进行编解码可以依赖于对TransQuantBypass模式的使用。i.在一个示例中,是对residual_coding还是residual_coding_ts进行编解码可以依赖于对TransQuantBypass模式的使用。

ii.在一个示例中,当TransQuantBypass被禁用并且transform_skip_flag被禁用时,针对应用了变换的块而设计的残差编解码方法(例如,residual_coding)可以用于残差编解码。

iii.在一个示例中,当TransQuantBypass被启用或者transform_skip_flag被启用时,针对没有应用变换的块而设计的残差编解码方法(例如,residual_coding_ts)可以用于残差编解码。

c.可替代地,在使用TransQuantBypass模式的情况下,可以信令通知其他种类的变换矩阵相关编解码工具的边信息。

i.当应用了TransQuantBypass模式时,可以进一步信令通知对变换跳过模式、QR-BDPCM、BDPCM的使用的边信息。

ii.当应用了TransQuantBypass模式时,可以不信令通知对SBT、RST、MTS的使用的边信息。

9.可以在信令通知一个或多个变换矩阵相关编解码工具之后信令通知TransQuantBypass模式的指示。

a.可替代地,当应用了特定编解码工具(诸如变换跳过模式、QR-BDPCM、BDPCM)时,可以对TransQuantBypass模式的指示进行编解码。

b.可替代地,当应用了特定编解码工具(诸如SBT、RST、MTS)时,可以不对TransQuantBypass模式的指示进行编解码。

10.可以在信令通知量化参数的指示之后有条件地信令通知TransQuantBypass模式的指示。

a.可替代地,可以在信令通知TransQuantBypass模式的指示之后有条件地信令通知量化参数的指示。

b.在一个示例中,当TransQuantBypass被应用于一个块时,可以跳过对量化参数和/或量化参数的增量(delta)(例如,cu_qp_delta_abs、cu_qp_delta_sign_flag)的信令通知。

i.例如,cu_qp_delta_abs可以被推断为0。

c.可替代地,当量化参数的增量(例如,cu_qp_delta_abs、cu_qp_delta_sign_flag)不等于0时,可以跳过对TransQuantBypass模式的信令通知,并且TransQuantBypass被推断为禁用。

i.在一个示例中,仅对于特定色彩分量(诸如亮度分量),对TransQuantBypass的信令通知可以依赖于量化参数的指示。

11.当对一个块启用了TransQuantBypass模式时,对该块中的样点禁用ALF或非线性ALF。

12.当对一个块启用了TransQuantBypass模式时,可以对该块中的样点禁用双边滤波器或/和扩散滤波器和/或可以修改重构块的其他种类的后重构滤波器。

13.当对一个块启用了TransQuantBypass模式时,可以禁用PDPC。

14.如果块是以TransQuantBypass模式编解码的,则隐式MTS中的变换选择方法不适用。

15.如果块是以TransQuantBypass模式编解码的,则不应用LMCS中的色度样点的缩放方法。

16.可以对允许TransQuantBypass的CU/CTU/条带/片/片组/图片/序列禁用LMCS。

a.在一个示例中,当SPS/VPS/PPS/条带级别标志指示变换和量化旁路模式可以被应用于序列/视图/图片/条带内的一个块时,可以禁用LMCS。

b.可替代地,可以跳过对LMCS相关语法元素的信令通知。

c.在序列/图片/条带/片组/片/图块(brick)级别,当启用了LMCS时,可以禁用TransQuantBypass模式。

i.例如,对启用/禁用TransQuantBypass的信令通知可以依赖于对LMCS的使用。

1)在一个示例中,如果应用了LMCS,则不信令通知TransQuantBypass的指示。例如,TransQuantBypass被推断为不使用。

2)可替代地,对LMCS的使用的信令通知可以依赖于对TransQuantBypass的启用/禁用。

d.在一个示例中,一致性比特流应当满足不应当对同一个条带/片/图块/片组/图片启用TransQuantBypass和LMCS。

17.可以在对TS模式的信令通知(例如,transform_skip_flag)之后信令通知QR-BDPCM的边信息。

a.在一个示例中,QR-BDPCM被视为TS模式的特殊情况。

i.可替代地,当对于一个块允许QR-BCPCM时,也应当启用TS模式,也就是说,信令通知的/推导的transform_skip_flag应当等于1。

ii.可替代地,当信令通知的/推导的transform_skip_flag应当等于1时,可以进一步信令通知QR-BDPCM的边信息。

iii.可替代地,当信令通知的/推导的transform_skip_flag应当等于0时,可以不信令通知QR-BDPCM的边信息。

b.在一个示例中,QR-BDPCM被视为不同于TS模式的模式。

i.可替代地,当信令通知的/推导的transform_skip_flag等于0时,可以进一步信令通知QR-BDPCM的边信息。

ii.可替代地,当信令通知的/推导的transform_skip_flag等于1时,可以不进一步信令通知QR-BDPCM的边信息。

18.可以在子块级别而不是整个块(例如,CU/PU)中启用TransQuantBypass模式和/或TS模式和/或不应用变换的其他编解码方法(例如,调色板模式)。

a.在一个示例中,对于双树情况,色度块可以被划分为多个子块,每个块可以根据对应亮度块的编解码信息来确定对TransQuantBypass模式和/或TS模式和/或不应用变换的其他编解码方法的使用。

19.在环路滤波过程之前是否对重构块应用逆整形过程(即,从整形域到原始域的转换)可以逐块改变。

a.在一个示例中,可以不对以TransQuantBypass模式编解码的块应用逆整形过程,但是对以非TransQuantBypass模式编解码的其他块应用逆整形过程。

上述示例可以结合在下面描述的方法的上下文中,例如方法1500至1560和2100至2500,其可以在视频解码器或视频编码器处实现。

图15A示出了用于视频处理的示例性方法的流程图。方法1500包括,在步骤1502,为包括多个色彩分量的当前视频块配置当前视频块的比特流表示,其中,对于多个色彩分量中的至少两个色彩分量,在比特流表示中分开信令通知跳过变换和量化过程的指示。

方法1500包括,在步骤1504,基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。在一些实施例中,当前视频块包括亮度分量和多个色度分量,并且其中,多个色度分量中的至少一个色度分量的指示基于亮度分量的指示。

在一些实施例中,跳过变换和量化过程的指示被表示为cu_transquant_bypass_flag。在示例中,对当前视频块启用双树分割过程,并且其中,针对当前视频块的亮度分量和至少一个色度分量单独地对cu_transquant_bypass_flag进行编解码。在另一示例中,基于上下文对由cu_transquant_bypass_flag表示的跳过变换和量化过程的使用进行编解码。在又一示例中,基于多个色彩分量中的至少一个色彩分量来选择上下文。

在一些实施例中,针对至少两个色彩分量单独地信令通知指示是基于当前视频块的色彩格式、色彩分量编解码方法或编解码模式中的至少一个。

图15B示出了用于视频处理的另一示例性方法的流程图。方法1510包括,在步骤1512,基于当前视频块的特性,做出关于启用跳过对当前视频块应用变换和量化过程的模式的决定。

方法1510包括,在步骤1514,基于该决定,执行当前视频块和当前视频块的比特流表示之间的转换。

在一些实施例中,特性是当前视频块的尺寸,其中,模式被启用,并且其中,当前视频块的尺寸大于虚拟流水线数据单元(Virtual Pipelining Data Unit,VPDU)的尺寸。在示例中,当前视频块的高度或宽度分别大于VPDU的高度或宽度。

在一些实施例中,对当前视频块启用不应用变换的编解码模式。在示例中,编解码模式是变换跳过模式、差分脉冲码调制(Differential Pulse-Code Modulation,DPCM)模式或量化残差DPCM模式。

图15C示出了用于视频处理的示例性方法的流程图。方法1520包括,在步骤1522,基于当前视频块的至少一个维度,做出关于启用跳过对当前视频块应用变换和量化过程的第一模式和不对当前视频块应用变换的第二模式的决定。

方法1520包括,在步骤1524,基于该决定,执行当前视频块和当前视频块的比特流表示之间的转换。在一些实施例中,第二模式是变换跳过(TS)模式。在其他实施例中,第二模式是量化残差块差分脉冲码调制(Quantized Residual Block Differential Pulse-Code Modulation,QR-BDPCM)模式。

在一些实施例中,在序列参数集(SPS)、视频参数集(VPS)、图片参数集(PPS)、条带头、片组头或片头中信令通知当前视频块的至少一个维度的最大值或最小值。

在一些实施例中,至少一个维度的允许值对于第一模式和第二模式是相同的。在示例中,第二模式是变换跳过模式、块差分脉冲码调制(BDPCM)模式或量化残差BDPCM模式之一。

图15D示出了用于视频处理的示例性方法的流程图。方法1530包括,在步骤1532,确定使用跳过对当前视频块应用变换和量化过程的第一模式和第二模式对当前视频块进行编解码。

方法1530包括,在步骤1534,基于该确定,执行当前视频块和当前视频块的比特流表示之间的转换。在一些实施例中,当前视频块包括亮度分量和色度分量,并且其中,对亮度分量的整形或对色度分量的缩放中的至少一个被禁用。

在一些实施例中,第一模式是帧内预测模式。在其他实施例中,第一模式是帧内块复制(IBC)模式。在其他实施例中,第一模式是组合帧间-帧内预测(CIIP)模式。在示例中,在第一模式下使用的参考样点从整形域被映射到原始域。

在一些实施例中,当前视频块包括亮度分量和色度分量,其中,第一模式不对当前视频块应用变换,并且其中,对当前视频块禁用对亮度映射与色度缩放(LMCS)过程的应用。

图15E示出了用于视频处理的示例性方法的流程图。方法1540包括,在步骤1542,为当前视频块配置当前视频块的比特流表示,其中,在信令通知与一个或多个多重变换相关编解码工具有关的语法元素之前,在比特流表示中信令通知跳过变换和量化过程的指示。

方法1540包括,在步骤1544,基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。在一些实施例中,一个或多个多重变换相关编解码工具包括变换跳过模式、显式多重变换集(MTS)方案、简化二次变换(RST)模式、子块变换(SBT)模式或量化残差块差分脉冲码调制(QR-BDPCM)模式中的至少一个。

图15F示出了用于视频处理的示例性方法的流程图。方法1550包括,在步骤1552,确定使用跳过对当前视频块应用变换和量化过程的模式对当前视频块进行编解码。

方法1550包括,在步骤1554,基于该确定并作为执行当前视频块和当前视频块的比特流表示之间的转换的一部分,禁用滤波方法。

在一些实施例中,滤波方法包括自适应环路滤波(Adaptive Loop Filtering,ALF)方法或非线性ALF方法。

在一些实施例中,滤波方法使用双边滤波器、扩散滤波器或修改当前视频块的重构版本的后重构滤波器中的至少一个。

在一些实施例中,滤波方法包括位置依赖帧内预测组合(PDPC)方法。

在一些实施例中,滤波方法包括环路滤波方法,并且方法1550还包括在应用滤波方法之前,做出关于对当前视频块的重构版本选择性地应用逆整形过程的决定的步骤。

图15G示出了用于视频处理的示例性方法的流程图。方法1560包括,在步骤1562,确定使用跳过对当前视频块应用变换和量化过程的模式对当前视频块进行编解码。

方法1560包括,在步骤1564,基于该确定并作为执行当前视频块和当前视频块的比特流表示之间的转换的一部分,对(i)包括当前视频块的当前图片或(ii)当前图片的一部分禁用环路整形(ILR)过程。

在一些实施例中,当前图片的一部分是编解码单元(CU)、编解码树单元(CTU)、条带、片或片组。

在一些实施例中,在序列参数集(SPS)、视频参数集(VPS)、图片参数集(PPS)或条带头中信令通知禁用的指示。

在一些实施例中,当前视频块的比特流表示排除对与ILR过程有关的语法元素的信令通知。

又一种用于视频处理的方法包括:为当前视频块配置当前视频块的比特流表示,其中,在信令通知量化参数的一个或多个指示之后,在比特流表示中选择性地信令通知跳过变换和量化过程的指示;以及基于该配置,执行当前视频块和当前视频块的比特流表示之间的转换。

在一些实施例中,当量化参数的增量不等于零时,从比特流表示中排除跳过变换和量化过程的指示。

在一些实施例中,选择性地信令通知跳过变换和量化过程的指示是基于当前视频块的亮度分量的量化参数。

5所公开的技术的示例实现方式

图16是视频处理装置1600的框图。装置1600可以用于实现本文所述的一种或多种方法。装置1600可以实施为智能手机、平板、计算机、物联网(IoT)接收器等中。装置1600可以包括一个或多个处理器1602、一个或多个存储器1604和视频处理硬件1606。(多个)处理器1602可以被配置为实现本文档中所描述的一种或多种方法(包括但不限于方法1500至1560和2100至2500)。(多个)存储器1604可以用于存储用于实现本文所描述的方法和技术的数据和代码。视频处理硬件1606可以用于在硬件电路中实现本文档中所描述的一些技术。

在一些实施例中,视频编解码方法可以使用如参考图16所述的、在硬件平台上实现的装置来实现。

所公开的技术的一些实施例包括做出启用视频处理工具或模式的决定或确定。在示例中,当视频处理工具或模式被启用时,编码器将在对视频块的处理中使用或实现该工具或模式,但是不一定基于对该工具或模式的使用来修改得到的比特流。也就是说,当基于决定或确定启用视频处理工具或模式时,从视频块到视频的比特流表示的转换将使用该视频处理工具或模式。在另一示例中,当视频处理工具或模式被启用时,解码器将在知道已经基于该视频处理工具或模式修改了比特流的情况下处理比特流。也就是说,从视频的比特流表示到视频块的转换将使用基于决定或确定而启用的视频处理工具或模式来执行。

所公开的技术的一些实施例包括做出禁用视频处理工具或模式的决定或确定。在示例中,当视频处理工具或模式被禁用时,编码器将不会在视频块到视频的比特流表示的转换中使用该工具或模式。在另一示例中,当视频处理工具或模式被禁用时,解码器将在知道没有使用基于决定或确定而被禁用比特流的视频处理工具或模式修改比特流的情况下处理比特流。

图17是示出可以利用本公开的技术的示例视频编解码系统100的框图。如图17所示,视频编解码系统100可以包括源设备110和目的地设备120。源设备110生成经编码的视频数据,该源设备110可以被称为视频编码设备。目的地设备120可以解码由源设备110生成的经编码的视频数据,该目的地设备120可以被称为视频解码设备。源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。

视频源112可以包括源,诸如视频捕获设备、从视频内容提供商接收视频数据的接口、和/或用于生成视频数据的计算机图形系统、或者这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括经编解码的图片和相关联的数据。经编解码的图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发送器。经编码的视频数据可以通过网络130a经由I/O接口116直接传输到目的地设备120。经编码的视频数据还可以存储在存储介质/服务器130b上,以供目的地设备120访问。

目的地设备120可以包括I/O接口126、视频解码器124和显示设备122。

I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获取经编码的视频数据。视频解码器124可以解码经编码的视频数据。显示设备122可以向用户显示解码后的视频数据。显示设备122可以与目的地设备120相集成、或者可以在目的地设备120的外部,该目的地设备120被配置为与外部显示设备接口。

视频编码器114和视频解码器124可以根据视频压缩标准(诸如高效视频编解码(HEVC)标准、多功能视频编解码(VVM)标准和其他当前和/或进一步的标准)进行操作。

图18是示出视频编码器200的示例的框图,该视频编码器200可以是图17所示的系统100中的视频编码器114。

视频编码器200可以被配置为执行本公开的任何或所有技术。在图18的示例中,视频编码器200包括多个功能组件。可以在视频编码器200的各种组件之间共享本公开中描述的技术。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。

视频编码器200的功能组件可以包括分割单元201、可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206的预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲区213和熵编码单元214。

在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以以IBC模式执行预测,在IBC模式下,至少一个参考图片是当前视频块所处的图片。

此外,诸如运动估计单元204和运动补偿单元205的一些组件可以高度集成,但是出于解释的目的,在图18的示例中单独表示。

分割单元201可以将图片分割为一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。

模式选择单元203可以例如基于错误结果来选择编解码模式(帧内的或帧间的)之一,并将得到的经帧内或帧间编解码的块提供给残差生成单元207以生成残差块数据,并提供给重构单元212以重构经编码的块用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,在该帧内和帧间预测(CIIP)模式下,预测是基于帧间预测信号和帧内预测信号的。在帧间预测的情况下,模式选择单元203还可以选择块的运动矢量的分辨率(例如,子像素或整数像素精度)。

为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲区213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于除了与当前视频块相关联的图片之外的、来自缓冲区213的图片的运动信息和解码后的样点来确定当前视频块的预测视频块。

运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,依赖于当前视频块是在I条带、P条带还是B条带中。

在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以在列表0或列表1的参考图片中搜索当前视频块的参考视频块。然后,运动估计单元204可以生成指示列表0或列表1中包含参考视频块的参考图片的参考索引和指示当前视频块和参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。

在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可以在列表1中的参考图片中搜索当前视频块的另一个参考视频块。然后,运动估计单元204可以生成指示列表0和列表1中包含参考视频块的参考图片的参考索引和指示参考视频块和当前视频块之间的空域位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。

在一些示例中,运动估计单元204可以输出完整的运动信息集,以用于解码器的解码处理。

在一些示例中,运动估计单元204可以不输出当前视频的完整的运动信息集。相反,运动估计单元204可以参考另一个视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够相似。

在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示向视频解码器300指示当前视频块具有与另一个视频块相同的运动信息的值。

在另一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别另一个视频块和运动矢量差(Motion Vector Difference,MVD)。运动矢量差指示当前视频块的运动矢量和所指示的视频块的运动矢量之间的差。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。

如上所述,视频编码器200可以预测性地信令通知运动矢量。可以由视频编码器200实现的预测性信令技术的两个示例包括高级运动矢量预测(Advanced Motion VectorPredication,AMVP)和Merge模式信令。

帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一个图片中其他视频块的解码后的样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。

残差生成单元207可以通过从当前视频块中减去(例如,由减号指示)当前视频块的预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括与当前视频块中样点的不同样点分量相对应的残差视频块。

在其他示例中,对于当前视频块,可能不存在当前视频块的残差数据,例如在跳过模式下,并且残差生成单元207可以不执行减法操作。

变换处理单元208可以通过对与当前视频块相关联的残差视频块应用一个或多个变换来为当前视频块生成一个或多个变换系数视频块。

在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。

逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可以将重构的残差视频块添加到来自预测单元202生成的一个或多个预测视频块的相应样点,以产生与当前块相关联的重构视频块,用于存储在缓冲区213中。

在重构单元212重构视频块之后,可以执行环路滤波操作来减少视频块中的视频块伪影。

熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作以生成经熵编码的数据并输出包括经熵编码的数据的比特流。

图19是示出视频解码器300的示例的框图,该视频解码器300可以是图17所示的系统100中的视频解码器124。

视频解码器300可以被配置为执行本公开的任何或所有技术。在图19的示例中,视频解码器300包括多个功能组件。可以在视频解码器300的各种组件之间共享本公开中描述的技术。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。

在图19的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305以及重构单元306和缓冲区307。在一些示例中,视频解码器300可以执行一般与相对于视频编码器200(图18)描述的编码通道相反的解码通道。

熵解码单元301可以检索经编码的比特流。经编码的比特流可以包括经熵编码的视频数据(例如,经编码的视频数据块)。熵解码单元301可以解码经熵编码的视频数据,并且根据熵解码后的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行AMVP和Merge模式来确定这样的信息。

运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。要以子像素精度使用的插值滤波器的标识符可以包括在语法元素中。

运动补偿单元302可以使用视频编码器20在对视频块的编码期间使用的插值滤波器来计算参考块的子整数像素的插值后的值。运动补偿单元302可以根据接收到的语法信息来确定视频编码器200使用的插值滤波器,并使用该插值滤波器来产生预测性块。

运动补偿单元302可以使用语法信息中的一些来确定用于对经编码的视频序列的(多个)帧和/或(多个)条带进行编码的块的尺寸、描述经编码的视频序列的图片的每个宏块如何被分割的分割信息、指示每个分割如何被编码的模式、每个经帧间编码的块的一个或多个参考帧(和参考帧列表)以及对经编码的视频序列进行解码的其他信息。

帧内预测单元303可以使用例如在比特流中接收到的帧内预测模式来根据空域相邻块形成预测块。逆量化单元303进行逆量化,即去量化在比特流中提供并由熵解码单元301解码的量化后的视频块系数。逆变换单元303应用逆变换。

重构单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的相应预测块相加,以形成解码后的块。如果需要,还可以应用去块滤波器来对解码后的块进行滤波,以便移除块效应(blockiness)伪影。然后,解码后的视频块被存储在缓冲区307中,缓冲区307为后续的运动补偿/帧内预测提供参考块,并且还产生解码后的视频以呈现在显示设备上。

在本文件中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,可以在从视频的像素表示到相应的比特流表示的转换期间应用视频压缩算法,反之亦然。例如,当前视频块的比特流表示或编解码表示可以对应于比特流内并置或分布在不同位置的比特,如语法所定义的。例如,视频块可以根据变换和经编解码的错误残差值并且还使用比特流中的头和其他字段中的比特来编码。此外,在转换期间,解码器可以基于该确定,在知道一些字段可能存在或不存在的情况下解析比特流,如以上解决方案中所述的。类似地,编码器可以确定是否包括特定语法字段,并通过在编解码表示中包括或排除这些语法字段来相应地生成编解码表示。

图20是示出其中可以实现本文所公开的各种技术的示例视频处理系统2000的框图。各种实现方式可以包括系统2000的一些或所有组件。系统2000可以包括用于接收视频内容的输入2002。视频内容可以是以原始的或未压缩格式(例如8或10比特多分量像素值)接收到的,或者可以是经压缩的或经编码的格式的。输入2002可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口(诸如以太网、无源光网络(PON)等)和无线接口(诸如Wi-Fi或蜂窝接口)。

系统2000可以包括可以实现本文档中描述的各种编解码或编码方法的编解码组件2004。编解码组件2004可以降低从输入2002到编解码组件2004的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件2004的输出可以被存储、或者经由连接的通信(如组件2006所表示的)来传输。组件2008可以使用在输入2002接收到的、所存储或传送的视频的比特流(或编解码)表示来生成被发送到显示接口2010的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,尽管特定视频处理操作被称为“编解码”操作或工具,但是应当理解,在编码器处使用编解码工具或操作,并且将由解码器执行反转编解码结果的相应解码工具或操作。

外围总线接口或显示接口的示例可以包括通用串行总线(USB)或高清晰度多媒体接口(HDMI)或显示端口等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本文档中描述的技术可以实施为各种电子设备,诸如移动电话、膝上型计算机、智能手机或能够执行数字数据处理和/或视频显示的其他设备。

图21示出了用于视频处理的另一示例性方法的流程图。方法2100包括,在包括多个子块的当前视频块的子块级别,确定2102是否启用编解码模式来在比特流表示中表示对应的子块,其中,对于启用了编解码模式的给定子块,在不应用正变换的情况下,在编解码表示中表示给定子块,或者在不应用逆变换的情况下,从编解码表示重构给定子块;以及基于该确定,执行2104视频的当前视频块和视频的比特流表示之间的转换。

在方法2100的一些实施例中,其中,编解码模式包括transquant旁路模式或变换跳过(TS)模式。在方法2100的一些实施例中,其中,当前视频块包括编解码单元(CU)、变换单元(TU)或预测单元(PU),其中,多个子块在尺寸上小于CU、TU或PU。在方法2100的一些实施例中,其中,当前视频块与色度分量相关联,其中,当前视频块被划分为多个子块,并且其中,针对每个子块执行对编解码模式被启用的确定。在方法2100的一些实施例中,其中,确定编解码模式是否被启用是基于与色度分量的当前视频块相对应的亮度分量的视频块的编解码信息。在方法2100的一些实施例中,其中,基于当前视频块的尺寸和对于变换过程允许的最大尺寸,多个子块从当前视频块划分。在方法2100的一些实施例中,其中,编解码模式至少基于当前视频块的尺寸和对于编解码模式允许的最大尺寸来确定。在方法2100的一些实施例中,其中,确定编解码模式是否被应用于子块是基于被包括在比特流表示中的语法元素,并且其中,语法元素与给定子块相关联。在方法2100的一些实施例中,其中,语法元素指示对子块启用TS模式还是transquant旁路模式。

图22示出了用于视频处理的另一示例性方法的流程图。方法2200包括,确定2202视频的当前视频块和视频的编解码表示之间的转换基于第一编解码模式,其中在该第一编解码模式下,无损编解码技术用于在编解码表示中表示当前视频块;以及至少基于该确定,通过禁用亮度映射与色度缩放(LMCS)过程来执行2204转换,其中,禁用LMCS过程在当前视频块来自亮度分量的情况下禁用对当前视频块的整形域和原始域中的样点之间的切换的执行,或者在当前视频块来自色度分量的情况下禁用对当前视频块的色度残差的缩放。

在方法2200的一些实施例中,其中,使用无损编解码技术的第一编解码模式包括不对当前视频块使用变换和量化过程的transquant旁路模式。在方法2200的一些实施例中,其中,当前视频块的残差在原始域中被编解码,而不管比特流表示中的语法元素是否指示整形和/或缩放被启用或禁用。在方法2200的一些实施例中,其中,语法元素在当前视频块的条带或序列级别被指示。在方法2200的一些实施例中,该方法还包括,对当前视频块的预测信号应用逆整形过程,以将预测信号从整形域转换到原始域,其中,预测信号是从当前视频块的片、条带、片组或图片内的参考样点生成的。在方法2200的一些实施例中,其中,响应于参考样点在不同于当前视频块的图片的图片内,在正整形过程中,当前视频块的预测信号不从原始域转换到整形域。在方法2200的一些实施例中,其中,图片是参考图片。

在方法2200的一些实施例中,其中,第一编解码模式的无损编解码技术不对当前视频块应用变换操作。在方法2200的一些实施例中,其中,第一编解码模式包括变换跳过(TS)模式。在方法2200的一些实施例中,其中,当前视频块的残差在原始域中被编解码,而不管比特流表示中的语法元素是否指示整形和/或缩放被启用或禁用。在方法2200的一些实施例中,其中,帧内预测模式被应用于当前视频块,并且其中,当前视频块在帧内预测模式下使用的预测信号或参考样点从整形域被映射到原始域。

在方法2200的一些实施例中,其中,帧内块复制(IBC)模式被应用于当前视频块,并且其中,当前视频块在IBC模式下使用的预测信号或参考样点从整形域被映射到原始域。在方法2200的一些实施例中,其中,组合帧间-帧内预测(CIIP)模式被应用于当前视频块,并且其中,当前视频块在CIIP模式下使用的预测信号或参考样点从整形域被映射到原始域。在方法2200的一些实施例中,其中,组合帧间-帧内预测(CIIP)模式被应用于当前视频块,并且其中,当前视频块在CIIP模式下使用的预测信号从原始域到整形域的映射被跳过。在方法2200的一些实施例中,该方法还包括,在调色板模式下并且在原始域中,为当前视频块生成调色板表。在方法2200的一些实施例中,该方法还包括,将第一缓冲区和第二缓冲区分配给当前视频块,其中,第一缓冲区被配置为存储预测信号和残差信号的和,并且其中,第二缓冲区被配置为存储通过将预测信号和残差信号的和从原始域映射到整形域而获得的整形后的和。

在方法2200的一些实施例中,该方法还包括,向当前视频块分配被配置为存储原始域中的预测信号和残差信号的和的缓冲区,其中,整形后的和通过将预测信号和残差信号的和从原始域映射到整形域来推导。在方法2200的一些实施例中,该方法还包括,对当前视频块应用使用当前视频块的当前片、条带、片组或图片内的参考样点的编解码模式。

图23示出了用于视频处理的另一示例性方法的流程图。方法2300包括,执行2302视频的当前视频块和视频的比特流表示之间的转换,其中,比特流表示符合第一格式规则,其中该第一格式规则指定transquant旁路模式的第一语法元素和量化参数的一个或多个语法元素的出现顺序,其中,比特流表示符合第二格式规则,其中该第二格式规则指定第一语法元素和一个或多个语法元素是否被包括在编解码表示中,并且其中,在transquant旁路模式下,在编码期间不对当前视频块应用变换和量化过程,或者在对当前视频块的编解码表示的解码期间不使用逆变换和逆量化。

在方法2300的一些实施例中,其中,第二格式规则指示transquant旁路模式的第一语法元素被包括在比特流表示中,并且其中,第二格式规则指示在信令通知量化参数的一个或多个语法元素之后,transquant旁路模式的第一语法元素被包括在比特流表示中。在方法2300的一些实施例中,其中,第二格式规则指示transquant旁路模式的第一语法元素被包括在比特流表示中,并且其中,第一格式规则指示在信令通知量化参数的一个或多个语法元素之前,transquant旁路模式的第一语法元素被包括在比特流表示中。在方法2300的一些实施例中,其中,第二格式规则指示响应于不对当前视频块使用变换和量化过程,比特流表示排除对量化参数的一个或多个语法元素和/或量化参数的增量的第二语法元素的信令通知。

在方法2300的一些实施例中,其中,量化参数的增量被推断为零。在方法2300的一些实施例中,其中,第二格式规则指示当量化参数的增量不等于零时,transquant旁路模式的第一语法元素从比特流表示中排除。在方法2300的一些实施例中,其中,对当前视频块使用变换和量化过程。在方法2300的一些实施例中,其中,第二格式规则指示基于与当前视频块相关联的色彩分量的量化参数,transquant旁路模式的第一语法元素被包括在比特流表示中。在方法2300的一些实施例中,其中,色彩分量是亮度分量。

图24示出了用于视频处理的另一示例性方法的流程图。方法2400包括,执行2402视频的视频片段的当前视频块和视频的比特流表示之间的转换,其中,该转换符合格式规则,其中该格式规则指定transquant旁路模式和亮度映射的色度缩放(LMCS)模式对当前视频块的转换的应用性之间的应用性关系,其中,该格式规则还指定指示应用性关系的视频片段级别的语法结构,其中,在transquant旁路模式下,不对当前视频块使用变换和量化过程,并且其中,LMCS模式包括,在当前视频块来自亮度分量的情况下对当前视频块的整形域和原始域中的样点之间的切换的执行,或者在当前视频块来自色度分量的情况下对当前视频块的色度残差的缩放。

在方法2400的一些实施例中,其中,比特流表示中指示transquant旁路模式被启用还是被禁用的语法元素基于对LMCS的使用。在方法2400的一些实施例中,其中,响应于LMCS被应用于当前视频块,transquant旁路模式的语法元素不包括在比特流表示中。在方法2400的一些实施例中,其中,比特流表示中对LMCS的使用的语法元素基于transquant旁路模式被启用还是被禁用。

图25示出了用于视频处理的另一示例性方法的流程图。方法2500包括,根据第一规则和第二规则,执行2502视频的当前视频块和视频的比特流表示之间的转换,其中,第一规则指定是否在转换期间使用逆整形过程用于通过从整形域转换到原始域来生成当前视频块的解码像素值,并且其中,第二规则指定应用逆整形过程和环路滤波过程以用于当前视频块的重构的顺序。

在方法2500的一些实施例中,其中,第二规则指定在环路滤波过程之前应用逆整形过程。在方法2500的一些实施例中,其中,当transquant旁路模式被应用于当前视频块时,不对当前视频块应用逆整形过程,并且其中,在transquant旁路模式下,不对当前视频块使用变换和量化过程。在方法2500的一些实施例中,其中,当除了transquant旁路模式之外的编解码模式被应用于当前视频块时,逆整形过程被应用于当前视频块,并且其中,在transquant旁路模式下,不对当前视频块使用变换和量化过程。

根据前述内容,将会理解,出于说明的目的,本文已经描述了当前公开的技术的具体实施例,但是在不脱离本发明的范围的情况下,可以做出各种修改。因此,当前公开的技术在由所附权利要求限定之外不受限制。

本专利文档中描述的主题和功能操作的实现方式可以在各种系统、数字电子电路或计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等同物、或者它们中的一个或多个的组合。本说明书中描述的主题的实现方式可以被实现为一个或多个计算机程序产品,即编码在有形和非暂时性计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基底、存储器设备、实现机器可读传播信号的物质组合物、或者它们中的一个或多个的组合。术语“数据处理单元”或“数据处理装置”包含用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。

计算机程序(也被称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译或解释语言)来编写,并且其可以以任何形式(包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元)来部署。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本)、存储在专用于所讨论的程序的单个文件中、或者存储在多个协同文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署为在一个计算机上或位于一个站点或分布在多个站点并通过通信网络互连的多个计算机上执行。

本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器执行,一个或多个可编程处理器执行一个或多个计算机程序,以通过对输入数据进行操作并生成输出来执行功能。这些过程和逻辑流程也可以由专用逻辑电路来执行,并且装置也可以被实现为专用逻辑电路,例如,现场可编程门阵列(FPGA)或专用集成电路(ASIC)。

适于执行计算机程序的处理器包括,例如,通用和专用微处理器两者,以及任何类型的数字计算机的任何一个或多个处理器。一般地,处理器将从只读存储器或随机访问存储器或者两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。一般地,计算机还将包括或可操作地耦合到用于存储数据的一个或多个大容量存储设备(例如磁盘、磁光盘或光盘),以从其接收数据或向其发送数据、或者两者兼有。然而,计算机不需要有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路来补充或结合到其中。

本说明书和附图仅被认为是示例性的,其中示例性意味着示例。本文所使用的“或”旨在包括“和/或”,除非上下文另有明确指示。

尽管本专利文档包含多个细节,但这些细节不应被解释为对任何发明或所要求保护的范围的限制,而是对特定发明的特定实施例特有的特征的描述。本专利文档中在单独实施例的上下文中描述的特定特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独实现或者在任何合适的子组合中实现。此外,尽管在上面特征可以被描述为在特定组合中起作用,并且甚至最初是这样要求保护的,但是在一些情况下,可以从这样的组合中删除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以指向子组合或子组合的变体。

类似地,尽管在附图中以特定顺序描述了操作,但是这不应该理解为要求以所示的特定顺序或依次执行这些操作、或者要求执行所有示出的操作,以获得期望的结果。此外,本专利文档中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这样的分离。

仅描述了几个实现方式和示例,并且可以基于本专利文档中描述和示出的内容进行其他实现、增强和变化。

78页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:色度残差缩放的延迟降低方法和装置

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!

技术分类