视频编解码中的复合三叉树

文档序号:157541 发布日期:2021-10-26 浏览:25次 >En<

阅读说明:本技术 视频编解码中的复合三叉树 (Composite ternary tree in video coding and decoding ) 是由 朱维佳 张莉 许继征 张凯 刘鸿彬 王悦 于 2020-03-12 设计创作,主要内容包括:描述了视频编解码中的复合三叉树。在示例性方面,用于视频处理的方法包括针对视频的第一块与视频的第一块的比特流表示之间的转换确定启用或禁用复合三叉树(CTT)分割,其中CTT分割包括将第一块划分成第一块的九个更小尺寸的子块;以及基于确定执行转换。(Composite ternary trees in video coding and decoding are described. In an exemplary aspect, a method for video processing includes determining to enable or disable Composite Ternary Tree (CTT) partitioning for a transition between a first block of a video and a bitstream representation of the first block of the video, wherein the CTT partitioning includes dividing the first block into nine smaller-sized sub-blocks of the first block; and performing a conversion based on the determination.)

视频编解码中的复合三叉树

相关申请的交叉引用

根据适用的《专利法》和/或《巴黎公约》的规定,本申请及时要求于2019年3月12日提交的国际专利申请号PCT/CN2019/077810的优先权和利益。将国际专利申请号PCT/CN2019/077810的全部公开以引用方式并入本文,作为本申请公开的一部分。

技术领域

本申请文件涉及视频编解码技术、设备和系统。

背景技术

尽管视频压缩有了进展,但是数字视频仍然占用了因特网和其他数字通信网络上的最大带宽使用。随着所连接的能够接收和显示视频的用户设备数量的增加,预期对数字视频使用的带宽需求将持续增长。

发明内容

本文描述了用于将视频图片分割成三叉树以方便视频编解码的各种实施例和技术。

在一个示例方面,公开了一种视频处理方法。该方法包括使用复合三叉树分割将当前视频块划分成9个子块,以及基于划分执行当前视频块与当前视频块的比特流表示之间的转换。

在另一个示例方面,公开了另一种视频处理方法。该方法包括:由于当前视频块满足尺寸标准,使用复合三叉树分割(CTT)将当前视频块划分成9个子块,以及基于划分执行当前视频块与当前视频块的比特流表示之间的转换。

在另一个示例方面,公开了另一种视频处理方法。该方法包括:针对视频的第一块与视频的第一块的比特流表示之间的转换,确定启用或禁用复合三叉树(CTT)分割,其中CTT分割包括将第一块划分成第一块的九个更小尺寸的子块;以及基于确定执行转换。

在又一个示例方面,公开了一种被配置成实现上述方法之一的视频编码装置。

在又一个示例方面,公开了一种被配置成实现上述方法之一的视频解码装置。

在又一个方面,公开了一种计算机可读介质。计算机可读介质上存储了用于实现上述方法之一的处理器可执行代码。

本文中描述了这些和其他方面。

附图说明

图1示出了类似H.264的视频编解码器的示例。

图2示出了H.264/AVC中宏块(MB)分割的示例。

图3示出了宏块分割的示例。

图4示出了以编解码单元细分编解码树单元(CTU)的示例。

图5示出了示例四叉树二叉树(QTBT)结构。

图6示出了如下各种分割方案:(a)四叉树分割(b)垂直二叉树分割(c)水平二叉树分割(d)垂直中心侧三叉树分割(e)水平中心侧三叉树分割。

图7A-图7K示出了扩展四叉树(EQT)分割的示例。

图8A-图8D示出了灵活树(FT)分割的示例。

图9示出了广义三叉树(GTT)分割的示例。

图10示出了多功能边界分割的不变语法和变化语义的示例。

图11示出了复合三叉树(CTT)分割的示例。

图12示出了用于实现本文中描述的技术的示例装置。

图13是视频处理的示例方法的流程图。

图14是视频处理的示例方法的流程图。

具体实施方式

本文提供可由图像或视频比特流的解码器使用的各种技术,以提高解压缩或解码的数字视频或图像的质量。为了简洁起见,本文使用术语“视频”以包括图片的序列(传统称为视频)和单独的图像。此外,视频编码器也可以在编码过程期间实现这些技术,以便重建用于进一步编码的解码帧。

本文中使用了章节标题以使理解容易,并且不将实施例和技术限制到对应章节。这样一来,可以将来自一个章节的实施例与来自其他章节的实施例组合。

1.简要介绍

本专利文献涉及视频编解码技术。具体而言,本文涉及视频编解码中的候选列表构建。其可应用于现有的视频编解码标准,如HEVC、或待定案的标准(多功能视频编解码)。其也可能适用于未来的视频编解码标准或视频编解码器。

2.初步论述

视频编解码标准主要是通过开发公知的ITU-T和ISO/IEC标准而发展起来的。ITU-T制作了H.261和H.263,ISO/IEC制作了MPEG-1和MPEG-4视觉,并且两个组织联合制作了H.262/MPEG-2视频、H.264/MPEG-4高级视频编解码(AVC)和H.265/HEVC标准。自H.262以来,视频编解码标准基于混合视频编解码结构,其中利用了时域预测加变换编解码。为探索HEVC之外的未来视频编解码技术,VCEG和MPEG于2015年共同成立了联合视频探索团队(JVET)。从那时起,JVET采用了许多新的方法,并将其应用到了名为联合探索模型(JEM)的参考软件中。2018年4月,创建了VCEG(Q6/16)与ISO/IEC JTC1 SC29/WG11(MPEG)之间的联合视频专家小组(JVET),以针对VVC标准展开工作,目标是与HEVC相比降低50%的比特率。

2.1H.264/AVC中的分割树结构

先前标准中编解码层的核心是宏块,包含16×16的亮度样点块,并且在常规的4:2:0颜色采样情况下,包含两个对应的8×8的色度样点块。

帧内编解码的块使用空域预测来探索像素之间的空域相关性。定义了两种分割:16×16和4×4。

帧间编解码的块通过估计图片之间的运动来使用时域预测,而不是空域预测。可以单独估计16×16宏块或任何其子宏块分割(16×8、8×16、8×8、8×4、4×8、4×4(参见图5))的运动。每个子宏块划分只允许一个运动矢量(MV)。

图2示出了H.264/AVC中MB分割的示例。

2.2HEVC中的分割树结构

在HEVC中,通过使用四叉树结构(表示为编解码树)将CTU划分成CU来适应各种局部特性。在CU级别做出是使用图片间(时域)预测还是图片内(空域)预测来对图片区域进行编解码的决定。根据PU划分类型,每个CU可以进一步被划分成一个、两个或四个PU。在一个PU内,应用相同的预测过程,并且相关信息以PU为基础被发送到解码器。在基于PU划分类型通过应用预测过程获得残差块后,可以根据与CU的编解码树相似的另一个四叉树结构将CU分割成变换单元(TU)。HEVC结构的一个重要特征是它具有多个分割概念,包括CU、PU以及TU。

在下文中,如下突出显示了使用HEVC的混合视频编解码中涉及的各种特征。

1)编解码树单元和编解码树块(CTB)结构:HEVC中的类似结构是编解码树单元(CTU),其具有由编解码器选择并且可以大于传统的宏块的尺寸。CTU由亮度CTB和对应的色度CTB以及语法元素组成。亮度CTB的尺寸L×L可以被选择为L=16、32或64个样点,较大的尺寸通常能够实现更好的压缩。然后,HEVC支持使用树结构和类似四叉树的信令将CTB分割为更小的块。

2)编解码单元(CU)和编解码块(CB):CTU的四叉树语法规定了其亮度和色度CB的尺寸和位置。四叉树的根与CTU相关联。因此,亮度CTB的尺寸是亮度CB的最大支持尺寸。CTU到亮度和色度CB的划分是被联合信令通知的。一个亮度CB和通常两个色度CB以及相关的语法一起形成编解码单元(CU)。CTB可以只包含一个CU,也可以被划分以形成多个CU,并且每个CU都有相关的划分,划分成预测单元(PU)和变换单元(TU)树。

3)预测单元和预测块(PB):在CU级别做出是使用图片间预测还是图片内预测来对图片区域进行编解码的决定。PU分割结构的根位于CU级别。取决于基本的预测类型决定,可以在尺寸上进一步划分亮度和色度CB,并从亮度和色度预测块(PB)中预测亮度和色度CB。HEVC支持从64×64到4×4个样点的可变PB尺寸。

4)TU和变换块:使用块变换对预测残差进行编解码。TU树结构的根位于CU级别。亮度CB残差可能与亮度变换块(TB)相同,或者也可能被进一步划分成更小的亮度TB。同样适用于色度TB。对于方形TB尺寸4×4、8×8、16×16和32×32,定义了与离散余弦变换(DCT)相似的整数基函数。对于亮度图片内预测残差的4×4变换,也可以替代地规定从离散正弦变换(DST)形式推导的整数变换。

2.3JEM中具有较大CTU的四叉树加二叉树块结构

为探索HEVC之外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索团队(JVET)。从那时起,JVET采用了许多新的方法,并将其应用到了名为联合探索模型(JEM)的参考软件中。

2.3.1QTBT块分割结构

与HEVC不同,QTBT结构移除了多个分割类型的概念。即,其移除了CU、PU和TU概念的分离,并支持CU分割形状的更多灵活性。在QTBT块结构中,CU可以具有方形或矩形形状。如图5所示,首先通过四叉树结构对编解码树单元(CTU)进行分割。四叉树叶节点进一步被二叉树结构分割。在二叉树划分中有两种划分类型:对称的水平划分和对称的垂直划分。二叉树叶节点被称为编解码单元(CU),该分割用于预测和变换处理,而无需进一步分割。这意味着在QTBT编解码块结构中CU、PU和TU具有相同的块尺寸。在JEM中,CU有时由不同颜色分量的编解码块(CB)组成,例如,在4:2:0色度格式的P条带和B条带的情况下,一个CU包含一个亮度CB和两个色度CB,并且CU有时由单个分量的CB组成,例如,在I条带的情况下,一个CU仅包含一个亮度CB或仅包含两个色度CB。

针对QTBT分割方案定义了以下参数。

–CTU尺寸:四叉树的根节点尺寸,与HEVC中的概念相同。

–MinQTSize:最小允许的四叉树叶节点尺寸

–MaxBTSize:最大允许的二叉树根节点尺寸

–MaxBTDepth:最大允许的二叉树深度

–MinBTSize:最小允许的二叉树叶节点尺寸

在QTBT分割结构的一个示例中,CTU尺寸被设置为具有两个对应的64×64色度样点块的128×128个亮度样点,MinQTSize被设置为16×16,MaxBTSize被设置为64×64,MinBTSize(对于宽度和高度两者)被设置为4×4,MaxBTDepth被设置为4。四叉树分割首先应用于CTU,以生成四叉树叶节点。四叉树叶节点的尺寸可以具有从16×16(即MinQTSize)到128×128(即CTU尺寸)的尺寸。如果叶四叉树节点是128×128,则其不会被二叉树进一步划分,因为其尺寸超过了MaxBTSize(即64×64)。否则,叶四叉树节点可以被二叉树进一步分割。因此,四叉树叶节点也是二叉树的根节点,并且其二叉树深度为0。当二叉树深度达到MaxBTDepth(即4)时,不考虑进一步划分。当二叉树节点的宽度等于MinBTSize(即4)时,不考虑进一步的水平划分。类似地,当二叉树节点的高度等于MinBTSize时,不考虑进一步的垂直划分。通过预测和变换处理进一步处理二叉树的叶节点,而不需要进一步的分割。在JEM中,最大CTU尺寸为256×256个亮度样点。

图5(左)示出了使用QTBT进行块分割的示例,图5(右)示出了对应的树表示。实线指示四叉树划分,虚线指示二叉树划分。在二叉树的每个划分(即非叶)节点中,会信令通知一个标志来指示使用哪种划分类型(即水平或垂直),其中0指示水平划分,1指示垂直划分。对于四叉树划分,不需要指示划分类型,因为四叉树划分总是水平并且垂直地划分块,以生成尺寸相同的4个子块。

此外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。目前,对于P条带和B条带,一个CTU中的亮度和色度CTB共享相同的QTBT结构。然而,对于I条带,用QTBT结构将亮度CTB分割为CU,用另一个QTBT结构将色度CTB分割为色度CU。这意味着I条带中的CU由亮度分量的编解码块或两个色度分量的编解码块组成,P条带或B条带中的CU由所有三种颜色分量的编解码块组成。

在HEVC中,为了减少运动补偿的存储器访问,限制小块的帧间预测,使得4×8和8×4块不支持双向预测,并且4×4块不支持帧间预测。在JEM的QTBT中,这些限制被移除。

2.4VVC的三叉树

据提议,支持四叉树和二叉树以外的树类型。在实现方式中,如图6的插图(d)和(e)所示,引入了另外两种三叉树(TT)分割,即水平和垂直的中心侧三叉树。

图6示出了以下分割。(a)四叉树分割(b)垂直二叉树分割(c)水平二叉树分割(d)垂直中心侧三叉树分割(e)水平中心侧三叉树分割。

有两个级别的树:区域树(四叉树)和预测树(二叉树或三叉树)。首先用区域树(RT)对CTU进行分割。可以进一步用预测树(PT)划分RT叶。也可以用PT进一步划分PT叶,直到达到最大PT深度。PT叶是基本的编解码单元。为了方便起见,它仍然被称为CU。CU不能被进一步划分。预测和变换都以与JEM相同的方式应用于CU。整个分割结构被称为“多类型树”。

2.5扩展四叉树

1.与块分割过程相对应的扩展四叉树(EQT)分割结构包括:视频数据块的扩展四叉树分割过程,其中扩展四叉树分割结构表示将视频数据块分割为最终子块,并且当扩展四叉树分割过程决定将扩展四叉树分割应用于一个给定块时,所述的一个给定块总是被划分为四个子块;基于视频比特流对最终子块进行解码;以及基于根据导出的EQT结构解码的最终子块对视频数据块进行解码。提出了EQT。

a.EQT分割过程可以递归地应用于给定块以生成EQT叶节点。替代地,当EQT应用于某个块时,对于由于EQT导致的每个子块,它可以进一步被划分为BT、和/或QT、和/或TT、和/或EQT、和/或其他类型的分割树。

b.在一个示例中,EQT和QT可以共享相同的深度增量过程和相同的叶节点尺寸限制。在这种情况下,当节点的尺寸达到最小允许的四叉树叶节点尺寸或当与节点相关联的EQT深度达到最大允许的四叉树深度时,可以隐式地终止一个节点的分割。

c.替代地,EQT和QT可以共享不同的深度增量过程和/或叶节点尺寸限制。当节点的尺寸达到最小允许的EQT叶节点尺寸或与该节点相关联的EQT深度达到最大允许的EQT深度时,隐式地终止EQT对一个节点的分割。此外,在一个示例中,可以在序列参数集(SPS)、和/或图片参数集(PPS)、和/或条带标头、和/或CTU、和/或区域、和/或片、和/或CU中信令通知EQT深度和/或最小允许的EQT叶节点尺寸。

d.对于尺寸为M×N(M和N是非零正整数值,相等或不相等)的块,替代使用应用于正方形块的当前四叉树分割,在EQT中,一个块可以被等分为四个分割,例如M/4×N或M×N/4(示例在图7A和7B示出),或者等分为四个分割,且分割尺寸取决于M和N的最大和最小值。在一个示例中,一个4×32块可以被划分为四个4×8子块,而一个32×4块可以被划分为四个8×4子块。

e.对于尺寸为M×N(M和N是非零正整数值,相等或不相等)的块,替代使用应用于正方形块的当前四叉树分割,在EQT中,一个块可以被不等地分为四个分割,例如两个分割的尺寸等于(M*w0/w)×(N*h0/h),并且另外两个分割的尺寸等于(M*(w-w0)/w)×(N*(h-h0)/h)。

例如,w0和w可以分别等于1和2,即宽度减少一半,而高度可以使用不是2:1的其他比例来获得子块。图7C和7E描述了这种情况的示例。替代地,h0和h可以分别等于1和2,即高度减少一半,宽度可以使用不是2:1的其他比例。图7D和图7F描述了这种情况的示例。

图7G和图7H示出了四叉树分割的两个替代示例。

图7I示出了具有不同分割形状的四叉树分割的更一般的情况。

图7J和图7K示出了图7A-图7B的一般示例。

图7A-图7K如下示出了分割:M×N/4;M/4×N;子块宽度固定为M/2,高度等于N/4或3N/4,顶部两个分割较小;子块高度固定为N/2,宽度等于M/4或3M/4,左侧两个分割较小;子块宽度固定为M/2,高度等于3N/4或N/4,底部两个分割较小;子块高度固定为N/2,宽度等于3M/4或M/4,右侧两个分割较小;M×N/4和M/2×N/2;N×M/4和N/2×M/2;M1×N1、(M-M1)×N1、M1×(N-N1)和(M-M1)×(N-N1);M×N1、M×N2、M×N3和M×N4,其中N1+N2+N3+N4=N;M1×N、M2×N、M3×N和M4×N,其中M1+M2+M3+M4=M。

2.与块分割过程相对应的灵活树(FT)分割结构包括:视频数据块的FT分割过程,其中FT分割结构表示将视频数据块分割为最终子块,并且当FT分割过程决定将FT分割应用于一个给定块时,所述的一个给定块被划分为K个子块,其中K可以大于4;基于视频比特流对最终子块进行解码;以及基于根据导出的FT结构解码的最终子块对视频数据块进行解码。

a.FT分割过程可以递归地应用于给定块以生成FT叶节点。当节点达到最小允许的FT叶节点尺寸或当与节点相关联的FT深度达到最大允许的FT深度时,可以隐式地终止一个节点的分割。

b.替代地,当FT应用于某个块时,对于由于FT导致的每个子块,它可以进一步被划分为BT、和/或QT、和/或EQT、和/或TT、和/或其他类型的分割树。

c.替代地,此外,可以在序列参数集(SPS)、和/或图片参数集(PPS)、和/或条带标头、和/或CTU、和/或区域、和/或片、和/或CU中信令通知FT深度和/或最小允许的FT叶节点尺寸。

d.与提出的EQT类似,由于FT分割导致的所有子块的尺寸可以相同;替代地,不同子块的尺寸可以不同。

e.在一个示例中,K等于6或8。图8A-8D中示出了一些示例。图8A示出了K=8,M/4*N/2。图8B示出了K=8,M/2*N/4。图8B示出了K=6,M/2*N/2和M/4*N/2。图8D示出了K=6,M/2*N/2和M/2*N/4。

f.对于TT,可以移除沿水平或垂直方向划分的限制。

g.在一个示例中,广义TT(GTT)分割模式可以被定义为水平和垂直划分。图9中示出了示例。

3.提出的方法可在某些条件下应用。换句话说,当不满足(多个)条件时,不需要信令通知分割类型。

a.替代地,可以使用提出的方法替换现有的分割树类型。另外,提出的方法只能在某些条件下用作替换方法。

b.在一个示例中,条件可以包括图片和/或条带类型;和/或块尺寸;和/或编解码的模式;和/或一个块是否位于图片边界/条带边界/片边界处。

c.在一个示例中,可以用与QT相同的方式处理所提出的EQT。在这种情况下,当指示分割树类型为QT时,可能会进一步信令通知详细的四叉树分割模式的更多标志/指示。替代地,可以将EQT视为附加的分割模式。

d.在一个示例中,EQT或FT或GTT的分割方法的信令可以是有条件的,即在某些情况下,可以不使用一个或一些EQT/FT/GTT分割方法,并且不信令通知与信令通知这些分割方法对应的比特。

2.6边界处理

对多功能视频编解码(VVC)提出了一种边界处理方法。AVS-3.0也采用了类似的方法。

由于VVC中的强制四叉树边界分割方案没有得到优化。提出了使用规则块分割语法的边界分割方法,以保持连续性CABAC引擎并保持匹配图片边界。

多功能边界分割获得以下规则(编码器和解码器):

·对于边界定位块,使用与普通块(非边界)完全相同的分割语法(例如,类似图10中的VTM-1.0),不需要改变语法。

·如果对于边界CU未解析划分模式,则使用强制边界分割(FBP)来匹配图片边界。

·强制边界分割(非单一边界分割)后,不再进行分割。

强制边界分割描述如下:

·如果块的尺寸大于最大允许的BT尺寸,则使用强制QT以在当前强制分割级别执行FBP;

·否则,如果当前CU的右下方样点低于底部图片边界,并且不扩展右边界,则使用强制水平BT以在当前强制分割级别执行FBP;

·否则,如果当前CU的右下方样点位于右图片边界的右侧,并且不低于底部图片边界,则使用强制垂直BT以在当前强制分割级别执行FBP;

·否则,如果当前CU的右下方样点位于右图片边界的右侧,并且低于底部图片边界,则使用强制QT以在当前强制分割级别执行FBP。

3.问题

尽管VVC中的QT/BT/TT编解码树结构相当灵活,但它仅将块分割成最多4个子块。此外,屏幕内容通常需要允许一个块到更多子块的更精细的分割。

4.技术和实施例的示例

为了解决这个问题,提出了几种方法来处理跨划分树的情形。

以下以详细列出的技术应被视为解释一般概念的示例。不应狭义地解释这些实施例。此外,这些实施例可以以任何方式组合。

在以下论述中,QT、BT、TT或CTT分别可以指“QT划分”、“BT划分”、“TT划分”和“复合TT划分”。

在以下论述中,“划分”和“分割”具有相同含义。

1.提出了复合三叉树(CTT)分割,其中可以直接将一个块划分成9个子块(子女块)。

a.在一个示例中,尺度为W×H的块被划分成9个分割,尺度为W1×H1、W2×H2、W3×H3、W4×H4、W5×H5、W6×H7、W7×H7、W8×H8和W9×H9,其中W1、W2、W3、W4、W5、W6、W7、W8、W9、H1、H2、H3、H4、H5、H6、H7、H8和H9全为整数。

b.在一个示例中,分割中的至少一个具有与其他分割不同的块尺寸。

c.在一个示例中,4种不同的块尺寸可以在九个分割中。

(a)在一个示例中,两个具有不同块尺寸的块被定义为w1!=w2||h1!=h2,其中,w1和h1是块1的宽度和高度,w2和h2是块2的宽度和高度。

d.在一个示例中,所有参数都是2的幂的形式。例如,W1=2N1、W2=2N2、W3=2N3、W4=2N4、W5=2N5、W6=2N6、W7=2N7、W8=2N8、W9=2N9、H1=2M1、H2=2M2、H3=2M3、H4=2M4、H5=2M5、H6=2M6、H7=2M7、H8=2M8、H9=2M9

e.在一个示例中,CTT分割中的九个子块可以具有正方形块和矩形块。

(a)在图11(a)所示的一个示例中,W1=W/4,H1=H/4,W2=W/2,H2=H/4,W3=W/4,H3=H/4,W4=W/4,H4=H/2,W5=W/2,H5=H/2,W6=W/4,H6=H/2,W7=W/4,H7=H/4,W8=W/2,H8=H/4,W9=W/4,H9=H/4。

图11示出了CTT的分割示例。

f.在一个示例中,通过一起应用两个现有的TT分割来生成9个子块。

(a)在一个示例中,将水平TT和垂直TT一起应用于一个块,以得到CTT分割树。

(b)图11示出了CTT的示例。

2.被CTT划分成子女块的块可以通过QT或BT或TT或CTT,被从父块划分出来。

a.可以允许CTT分割的块可以是通过QT或BT或TT或CTT分割产生的块。

b.例如,允许CTT分割的最大块可以是最大编解码块(编解码树块或编解码树单元)。

c.例如,允许CTT分割的最大块可以是虚拟管线数据单元(VPDU)。

d.例如,允许CTT分割的块可以通过一种或多种特定种类的划分方法将被从父块划分出来。例如,被CTT划分成子女块的块仅可以被QT从父块划分出来。

e.在一个示例中,可以在SPS/PPS/VPS/APS/序列标头/图片标头/条带标头/片组标头/CTU行/区域等中信令通知可以允许CTT分割的最大/最小块尺寸和/或可以允许CTT分割的最大比特深度。

f.在一个示例中,可以允许CTT分割的最大/最小块尺寸和/或可以允许CTT分割的最大比特深度可以取决于标准的简档(profile)/水平(level)/等级(tier)。

g.在一个示例中,可以允许CTT分割的最大/最小块尺寸和/或可以允许CTT分割的最大比特深度可以被推导为,例如与允许QT分割的相同。

3.通过CTT从父块划分出来的块可以通过QT和/或BT和/或TT和/或CTT被进一步划分成子女块。

a.例如,通过CTT从父块划分出来的块可以通过BT被进一步划分成子女块。

b.例如,通过CTT从父块划分出来的块可以通过TT被进一步划分成子女块。

c.例如,通过CTT从父块划分出来的块可以通过CTT和/或QT被进一步划分成子女块。

d.例如,通过CTT从父块划分出来的块不能通过QT被进一步划分成子女块。

4.在通过CTT将父块划分成子女块时,可以从父块的划分深度导出子女块的划分深度。

a.在一个示例中,由于CTT导致的划分可以用于更新QT/BT/TT/CTT/MTT深度。

(a)在一个示例中,子女块中的一个或所有子女块的QT深度等于父块的QT深度加1。

(b)在一个示例中,子女块中的一个或所有子女块的BT深度等于父块的BT深度加1。

(c)在一个示例中,子女块中的一个或所有子女块的TT深度等于父块的TT深度加1。

(d)在一个示例中,子女块中的一个或所有子女块的CTT深度等于父块的CTT深度加1。

(e)在一个示例中,子女块中的一个或所有子女块的MTT深度等于父块的MTT深度加1。

1.例如,如果父块被划分BT划分成子女块,则子女块的MTT深度等于父块的MTT深度加1。

2.例如,如果父块被划分TT划分成子女块,则子女的MTT深度等于父块的MTT深度加1。

3.替代地,子女块中的一个或所有子女块的MTT深度等于父块的MTT深度加K,K>1。例如,K=2。

a.在一个示例中,K可以对于不同子女块是不同的。

i.在一个示例中,K=log2(父块的尺寸/子女块的尺寸)。

b.在一个示例中,对于不同的子女块,CTT/BT/TT/QT/MTT深度增加可以不同。

(a)深度增加取决于子女块与父块的比例。

5.是否使用以及如何使用CTT可以取决于颜色格式(例如,4:4:4或4:2:0)和/或颜色分量。

a.是否使用以及如何使用CTT可以取决于亮度和色度编解码树是否是分离的。

b.在一个示例中,在亮度和色度编解码树分离时,仅可以在亮度分量上应用CTT。

6.可以从编码器向解码器信令通知是否应用CTT和/或应用哪种CTT。

a.在一个示例中,在屏幕内容视频/图片/片组的指示为真(例如片组标头表明当前片组为屏幕内容而不是相机捕获内容)时,可以启用CTT。

b.在一个示例中,可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中进行信令通知,以指示是否可以应用CTT。

c.在一个示例中,可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中进行信令通知,以指示可以应用那些种类的CTT。

d.在一个示例中,可以在块中进行信令通知,以指示是否使用CTT划分该块。

e.在一个示例中,可以在块中进行信令通知,以指示使用哪种CTT划分该块。

f.在一个示例中,可以在块中信令通知分割类型的索引以指示块通过QT还是CTT被划分,还是被不划分。

g.在一个示例中,可以在块中信令通知分割类型的索引以指示块通过BT、TT还是CTT被划分。

(a)例如,可以有条件地信令通知这个索引,例如,仅在BT、TT和CTT中的至少一种对这个块有效时。

(b)替代地,此外,可以进一步信令通知划分方向(水平/垂直)和/或划分模式。

(c)在一个示例中,可以不信令通知CTT的划分方向。

h.在一个示例中,在块中信令通知二值化代码,以指示使用哪种划分(BT、TT或CTT)。在以下示例中,X表示0或1,Y=~X(如果X=0,则Y=1;如果X=1,则Y=0)。

(a)在一个示例中,信令通知第一标志以指示是否使用CTT。例如,表示BT、TT、CTT的二值化码字按顺序为XX、XY、Y。

7.在一个示例中,如何在块中信令通知使用哪种划分可以取决于哪些种类的划分对块有效。在以下示例中,X表示0或1,Y=~X(如果X=0,则Y=1;如果X=1,则Y=0)。

a.在一个示例中,要被信令通知的候选BT、TT或CTT取决于先前信令通知或导出的信息。

b.例如,不能从编码器向解码器信令通知不允许的或无效的划分,即,没有码字表示不允许或无效的划分。

c.在一个示例中,如果来自BT、TT和CTT中的划分仅有一种划分有效,那么不信令通知要指示使用哪种划分(BT、TT或CTT)的二值化代码。

d.在一个示例中,如果来自BT、TT和CTT的划分中仅有两种划分有效,则信令通知标志以指示使用两种有效划分中的哪一种。

e.在一个示例中,将指示哪种划分(BT、TT或CTT)的代码二值化为截断一元代码。

(a)例如,截断一元代码的最大值为N-1,其中N是有效划分(BT、TT和CTT)的数量。

(b)例如,没有码字表示无效划分。换言之,在构建码字表时跳过无效划分。

f.在一个示例中,如果CTT无效,则指示是否使用CTT的标志不被信令通知,并且被推断为假。例如,表示BT和TT的二值化码字按顺序为X和Y。

g.在一个示例中,如果仅CTT有效,则不信令通知任何信息。隐式地使用该CTT。

h.在一个示例中,不根据块中哪些种类的划分有效来改变二值化和/或信令通知方法。不能在一致性比特流中选择无效划分。

8.可以通过具有一种或多种上下文的算术编解码来对用于指示划分类型的二进制字符串的二进制位(比特)进行编解码。

a.在一个示例中,可以用上下文对二进制字符串仅部分二进制位进行编解码,可以用旁路模式(即,不利用上下文)对其余二进制位进行编解码。

b.替代地,可以用上下文对二进制字符串的所有二进制位进行编解码。

c.替代地,可以用旁路模式对二进制字符串的所有二进制位进行编解码。

d.对于用上下文编解码的二进制位,可以使用一种或多种上下文。

e.上下文可以取决于:

(a)二进制位的位置或索引。

(b)空域/时域临近块的分割。

(c)当前块的当前分割深度(例如,QT深度/BT深度/TT深度/CTT深度/MTT深度)。

(d)空域/时域临近块和/或空域/时域不相邻块的分割深度(例如,QT深度/BT深度/TT深度/CTT深度/MTT深度)。

(e)空域/时域临近块的编解码模式。

(f)空域/时域临近块的宽度/高度。

(g)当前块的宽度/高度。

(h)条带类型/图片类型/片组类型。

(i)颜色分量

(j)来自先前编解码的块的分割类型的统计结果

9.如果划分子女块跨越超过一个虚拟管线数据单元(VPDU),则不可以允许CTT。

10.如果当前块的宽度/高度满足一些条件,则不可以允许CTT。(假设当前块的宽和高度为W和H,T1、T2和T是一些整数)

a.如果W>=T1且H>=T2,则不可以允许CTT;

b.如果W>=T1或H>=T2,则不可以允许CTT;

c.如果W<=T1且H<=T2,则不可以允许CTT;

d.如果W<=T1或H<=T2,则不可以允许CTT;

e.如果W×H<=T,则不可以允许CTT;

f.如果W×H>=T,则不可以允许CTT;

g.可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中将T1、T2和T从编码器信令通知给解码器。

h.T1、T2和T可以取决于颜色分量。例如,T1、T2和T可以对于亮度和色度分量是不同的。

i.T1、T2和T可以取决于亮度编解码树和色度编解码树是否是分离的。例如,如果亮度编解码树和色度编解码树是分离的,则T1、T2和T可以对于亮度和色度分量是不同的。

j.替代地,在针对由于CTT导致的至少一个子女块不支持变换时,CTT划分不可以是无效的。

k.替代地,在一个块的深度超过CTT划分允许的深度时,CTT划分不可以是无效的。

l.替代地,在由于CTT划分导致的任一子女块尺寸超过允许块尺寸时,CTT划分是无效的。

m.替代地,在不允许水平或垂直TT时,CTT不可以是无效的。

11.如果当前块的宽度/高度满足一些条件,则允许CTT。(假设当前块的宽和高度为W和H,T1、T2和T是一些整数)

a.如果W>=T1且H>=T2,则允许CTT;

b.如果W>=T1或H>=T2,则允许CTT;

c.如果W<=T1且H<=T2,则允许CTT;

d.如果W<=T1或H<=T2,则允许CTT;

e.如果W×H<=T,则允许CTT;

f.如果W×H>=T,则允许CTT;

g.可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中将T1、T2和T从编码器信令通知给解码器。

h.T1、T2和T可以取决于颜色分量。例如,T1、T2和T可以对于亮度和色度分量是不同的。

i.T1、T2和T可以取决于亮度编解码树和色度编解码树是否是分离的。例如,如果亮度编解码树和色度编解码树是分离的,则T1、T2和T可以对于亮度和色度分量是不同的。

12.如果当前块的深度满足一些条件,则不允许CTT。当前块的深度可以指QT深度、BT深度、TT深度、CTT深度或MTT深度。

a.如果划分深度<=T,则不允许CTT;

b.如果划分深度>=T,则不允许CTT;

c.如果QT划分深度<=T,则不允许CTT;

d.如果QT划分深度>=T,则不允许CTT;

e.如果BT划分深度>=T,则不允许CTT;

f.如果BT划分深度<=T,则不允许CTT;

g.如果TT划分深度>=T,则不允许CTT;

h.如果TT划分深度>=T,则不允许CTT;

i.如果CTT划分深度<=T,则不允许CTT;

j.如果CTT划分深度>=T,则不允许CTT;

k.如果MTT划分深度<=T,则不允许CTT;

l.如果MTT划分深度>=T,则不允许CTT;

m.可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中将T从编码器信令通知给解码器。

n.T可以取决于颜色分量。例如,T1、T2和T可以对于亮度和色度分量是不同的。

o.T可以取决于亮度编解码树和色度编解码树是否是分离的。例如,如果亮度编解码树和色度编解码树是分离的,则T1、T2和T可以对于亮度和色度分量是不同的。

13.如果当前块的深度满足一些条件,则可以允许CTT。当前块的深度可以指QT深度、BT深度、TT深度、CTT深度或MTT深度。

a.如果划分深度<=T,则允许CTT;

b.如果划分深度>=T,则允许CTT;

c.如果QT划分深度<=T,则允许CTT;

d.如果QT划分深度>=T,则允许CTT;

e.如果BT划分深度>=T,则允许CTT;

f.如果BT划分深度<=T,则允许CTT;

g.如果TT划分深度>=T,则允许CTT;

h.如果TT划分深度>=T,则允许CTT;

i.如果CTT划分深度<=T,则允许CTT;

j.如果CTT划分深度>=T,则允许CTT;

k.如果MTT划分深度<=T,则允许CTT;

l.如果MTT划分深度>=T,则允许CTT;

m.可以在VPS/SPS/PPS/图片标头/条带标头/片组标头/片标头中将T从编码器信令通知给解码器。

n.T可以取决于颜色分量。例如,T1、T2和T可以对于亮度和色度分量是不同的。

o.T可以取决于亮度编解码树和色度编解码树是否是分离的。例如,如果亮度编解码树和色度编解码树是分离的,则T1、T2和T可以对于亮度和色度分量是不同的。

14.在一个示例中,可以在从CTT分割获得的CU中不允许一些编解码工具。

a.替代地,此外,在一个示例中,可以在从QT/BT/TT/CTT/MTT分割获得的CU中不允许帧内模式。可以跳过对应的信令。

b.替代地,此外,在一个示例中,可以在从QT/BT/TT/CTT/MTT分割获得的CU中不允许帧间模式。可以跳过对应的信令。

c.替代地,此外,在一个示例中,可以在从QT/BT/TT/CTT/MTT分割获得的CU中不允许帧内块复制模式。可以跳过对应的信令。

15.在一个实施例中,是否使用以及如何使用CTT可以取决于当前块的位置。例如,是否使用以及如何使用CTT可以取决于当前块是否跨越图片边界/片边界/片组边界。

a.在一个示例中,如果当前块跨越图片右边界/片右边界/片组右边界,则不可以允许CTT。

b.在一个示例中,如果通过CTT划分的子女块完全在图片/片/片组之外,则可以在编码/解码过程中省略子女块。

c.在一个示例中,如果通过CTT划分的子女块部分在图片/片/片组之外,则以下情况适用。

(a)可以在编码/解码过程中省略在图片之外的部分。

(b)可以进一步划分在图片内的部分。

(c)可以将图片内的部分编解码为CU。

1.是否将图片内的部分编解码为CU可以取决于该部分的宽度(w)和高度(h)。

a.在一个示例中,如果w=2nw,h=2nh,则可以将图片内的部分编解码为CU,其中nw和nh为整数。

d.在一个示例中,如果通过CTT划分的任何子女块部分/完全在图片/片/片组之外,则可以不允许CTT。

e.在一个示例中,在不允许CTT时,也跳过信令,该信令指示模式的使用。

图12是视频处理装置1000的框图。装置1000可以用于实现本文描述的一种或多种方法。装置1000可以实施为智能电话、平板计算机、计算机、物联网(IoT)接收机等。装置1000可以包括一个或多个处理器1002、一个或多个存储器1004和视频处理硬件1006。(多个)处理器1002可以被配置为实现本文中描述的一种或多种方法。存储器(多个存储器)1004可以用于存储用于实现本文描述的方法和技术的数据和代码。视频处理硬件1006可以用于在硬件电路系统中实现本文中描述的一些技术。

图13是视频处理的示例方法1300的流程图。方法1300包括使用复合三叉树分割将当前视频块划分(1302)成9个子块,以及基于划分执行(1304)当前视频块与当前视频块的比特流表示之间的转换。

额外的实施例和技术可以如以下示例中所述,并且可以进一步基于第4节中列出的实施例。

示例1。一种视频处理的方法,包括:

使用复合三叉树分割将当前视频块划分成9个子块;以及

基于划分执行当前视频块与当前视频块的比特流表示之间的转换。

示例2。根据示例1所述的方法,其中,当前视频块为W个像素乘以H个像素,且其中9个子块包括尺度为W1×H1、W2×H2、W3×H3、W4×H4、W5×H5、W6×H7、W7×H7、W8×H8和W9×H9的子块,其中W1、W2、W3、W4、W5、W6、W7、W8、W9、H1、H2、H3、H4、H5、H6、H7、H8和H9全为整数。

示例3。根据示例2所述的方法,其中,9个子块中的至少一个子块具有与其余子块不同的尺度。

示例4。根据示例1-3的任一项所述的方法,其中,9个子块具有对应四个不同的子块尺寸。

示例5。根据示例1所述的方法,其中,当前视频块是通过四叉树或二叉树或三叉树或复合三叉树分割获得的父块的子女块。

示例6。根据示例1-5的任一项所述的方法,其中,使用四叉树或二叉树或三叉树或复合三叉树示例分割进一步分割9个子块的至少一个子块。

示例7。根据示例1至6的任一项所述的方法,其中,仅针对当前视频块的某个颜色格式选择性地执行划分操作。

示例8。根据示例1至7的任一项所述的方法,其中,比特流表示包括指示用于当前视频块的复合三叉树分割类型的字段。

示例9。根据示例1-8的任一项所述的方法,其中,比特流表示使用具有基于用于分割当前视频块的分割的划分类型的一种或多种上下文的编解码。

示例10。一种视频处理的方法,包括:

由于当前视频块满足尺寸标准,使用复合三叉树分割(CTT)将当前视频块划分成9个子块;以及

基于划分执行当前视频块与当前视频块的比特流表示之间的转换。

示例11。根据示例10所述的方法,其中,当前视频块为W×H个像素,且由于W>=T1且H>=T2,允许CTT,其中T1和T2是整数。

示例12。根据示例1-11的任一项所述的方法,其中,转换包括从当前视频块生成比特流表示,或者从比特流表示生成当前视频块的像素值。

示例13。一种视频编码器装置,包括处理器,该处理器被配置为实现示例1至12中任一项或多项中所述的方法。

示例14。一种视频解码器装置,包括处理器,该处理器被配置为实现示例1至12中任一项或多项中所述的方法。

示例15。一种其上存储有代码的计算机可读介质,该代码在被执行时,令处理器实现示例1至12中任一项或多项所述的方法。

图14是视频处理的示例方法1400的流程图。方法1400包括针对视频的第一块与视频的第一块的比特流表示之间的转换,确定(1402)启用或禁用复合三叉树(CTT)分割,其中CTT分割包括将第一块划分成第一块的九个更小尺寸的子块;以及基于确定执行(1404)转换。

在一些示例中,第一块的尺度为宽度W×高度H,且九个子块的尺度分别为W1×H1、W2×H2、W3×H3、W4×H4、W5×H5、W6×H7、W7×H7、W8×H8和W9×H9,其中W、W1、W2、W3、W4、W5、W6、W7、W8、W9、H、H1、H2、H3、H4、H5、H6、H7、H8和H9全部为整数。

在一些示例中,九个子块中的至少一个子块具有与其他子块的尺度不同的尺度。

在一些示例中,九个子块具有四种不同尺度。

在一些示例中,九个子块中的第一子块具有尺度W1×H1,九个子块中的第二子块具有不同尺度W2×H2,其中W1与W2不同且/或H1与H2不同。

在一些示例中,九个子块的尺度的所有参数都是2的幂的形式。

在一些示例中,W1=2N1、W2=2N2、W3=2N3、W4=2N4、W5=2N5、W6=2N6、W7=2N7、W8=2N8、W9=2N9、H1=2M1、H2=2M2、H3=2M3、H4=2M4、H5=2M5、H6=2M6、H7=2M7、H8=2M8、H9=2M9,其中N1-N9和M1-M9为整数。

在一些示例中,CTT分割中的九个子块具有正方形块和矩形块。

在一些示例中,W1=W/4、H1=H/4、W2=W/2、H2=H/4、W3=W/4、H3=H/4、W4=W/4、H4=H/2、W5=W/2、H5=H/2、W6=W/4、H6=H/2、W7=W/4、H7=H/4、W8=W/2、H8=H/4、W9=W/4、H9=H/4。

在一些示例中,通过一起应用两个现有的三叉树(TT)分割来生成CTT分割中的九个子块。

在一些示例中,通过应用水平TT分割和垂直TT分割来生成CTT分割中的九个子块。

在一些示例中,被CTT分割划分成子块的第一块通过一种或多种特定分割类型,包括四叉树(QT)或二叉树(BT)或三叉树(TT)和CTT分割,被从父块划分出来,其中QT分割水平地且垂直地划分块以产生四个具有相等尺寸的子块,BT分割水平地或垂直地划分块以产生两个具有相等尺寸的子块,以及TT分割水平地或垂直地划分块以产生三个子块,且一个子块的高度或宽度等于该块的高度或宽度的一半。

在一些示例中,允许CTT分割的第一块是通过QT或BT或TT和CTT分割中的一种或多种分割生成的块。

在一些示例中,允许CTT分割的最大块是最大编解码块,其是编解码树块或编解码树单元。

在一些示例中,允许CTT分割的最大块是虚拟管线数据单元(VPDU)。

在一些示例中,允许CTT分割的第一块通过四叉树(QT)或二叉树(BT)或三叉树(TT)和CTT分割中的一种或多种分割被从父块划分出来。

在一些示例中,在第一块被CTT分割划分成子块时,第一块仅能够通过QT分割被从父块划分出来。

在一些示例中,允许CTT分割的最大和/或最小块尺寸和/或允许CTT分割的最大比特深度和/或最大深度在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)、序列标头、图片标头、条带标头、片组标头、片标头、编解码树单元(CTU)行和区域中的至少一者中被信令通知或解析。

在一些示例中,允许CTT分割的最大和/或最小块尺寸和/或允许CTT分割的最大深度取决于标准的简档、水平或等级中的至少一者。

在一些示例中,允许CTT分割的最大和/或最小块尺寸,和/或允许CTT分割的最大比特深度被推导为与允许QT分割的相同。

在一些示例中,可以通过一种或多种特定分割类型,包括QT、BT、TT和CTT分割,将通过CTT分割生成的子块进一步划分成子女块。

在一些示例中,可以通过BT将子块进一步划分成子女块。

在一些示例中,可以通过TT将子块进一步划分成子女块。

在一些示例中,可以通过CTT和/或QT将子块进一步划分成子女块。

在一些示例中,不能通过QT将子块进一步划分成子女块。

在一些示例中,在通过CTT分割将第一块划分成子块时,从第一块的划分深度导出子块的划分深度。

在一些示例中,由于CTT分割导致的划分用于更新QT、BT、TT、CTT或多类型树(MTT)深度中的至少一个。

在一些示例中,子块中的一个或所有子块的QT深度等于第一块的QT深度加1。

在一些示例中,子块中的一个或所有子块的BT深度等于第一块的BT深度加1。

在一些示例中,子块中的一个或所有子块的TT深度等于第一块的TT深度加1。

在一些示例中,子块中的一个或所有子块的CTT深度等于第一块的CTT深度加1。

在一些示例中,子块中的一个或所有子块的MTT深度等于第一块的MTT深度加1。

在一些示例中,如果第一块被BT划分成子块,则子块的MTT深度等于第一块的MTT深度加1。

在一些示例中,如果第一块被TT划分成子块,则子块的MTT深度等于第一块的MTT深度加1。

在一些示例中,子块中的一个或所有子块的MTT深度等于第一块的MTT深度加K,K为大于1的整数。

在一些示例中,其中K=2。

在一些示例中,K对于不同子块是不同的。

在一些示例中,K=log2(第一块的尺寸/子块的尺寸)。

在一些示例中,对于不同的子块,CTT或BT或TT或QT或MTT深度增加是不同的。

在一些示例中,深度增加取决于子块与第一块的比例。

在一些示例中,是否应用和/或如何应用CTT分割取决于颜色格式和/或颜色分量。

在一些示例中,颜色格式包括4:4:4或4:2:0。

在一些示例中,在亮度和色度编解码树分离时,仅可以在亮度分量上应用CTT分割。

在一些示例中,基于从编解码器向解码器信令通知的信息确定是否应用CTT分割和/或应用哪种CTT分割。

在一些示例中,信息包括屏幕内容视频、图片和片组的至少一种的指示,当屏幕内容视频、图片和片组中的至少一种的指示为真时,启用CTT分割。

在一些示例中,片组标头中的指示表明当前片组是屏幕内容而不是相机捕获内容。

在一些示例中,在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、序列标头、图片标头、条带标头、片组标头、片标头中的至少一个中信令通知该信息,以指示是否可以应用CTT分割。

在一些示例中,在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、序列标头、图片标头、条带标头、片组标头、片标头的至少一个中信令通知该信息,以指示可以应用哪些种类的CTT分割。

在一些示例中,在块中信令通知该信息以指示是否可以应用CTT分割。

在一些示例中,在块中信令通知该信息以指示可以应用哪些种类的CTT分割。

在一些示例中,在块中信令通知分割类型的索引以指示块通过QT还是CTT被划分,还是不被划分。

在一些示例中,在块中信令通知分割类型的索引以指示块通过BT、TT还是CTT被划分。

在一些示例中,仅在BT、TT和CTT中的至少一种对该块有效时,才有条件地信令通知该索引。

在一些示例中,进一步信令通知划分方向和/或划分模式,划分方向包括水平方向和垂直方向中的至少一种。

在一些示例中,不信令通知CTT分割的划分方向。

在一些示例中,在块中信令通知二值化代码以指示使用哪种分割,该分割选自BT、TT和CTT的组。

在一些示例中,信令通知第一标志以指示是否使用CTT。

在一些示例中,如何在块中信令通知使用哪种分割取决于哪些种类的分割对该块有效。

在一些示例中,要被信令通知的来自BT、TT和CTT的组的分割候选取决于先前信令通知或导出的信息。

在一些示例中,不能从编码器向解码器信令通知不允许或无效的分割。

在一些示例中,如果来自BT、TT和CTT的组的分割中仅有一种分割有效,不信令通知要指示使用哪种分割的二值化代码。

在一些示例中,如果来自BT、TT和CTT的组的分割仅有两种分割有效,则信令通知标志以指示使用两种有效分割中的哪一种。

在一些示例中,将指示来自BT、TT和CTT的组的哪种分割的代码二值化为截断的一元代码。

在一些示例中,截断一元代码的最大值为N-1,其中N是来自BT、TT和CTT的组的有效分割的数量。

在一些示例中,在构建码字表时跳过无效分割。

在一些示例中,如果没有CTT分割有效,则指示是否使用CTT的标志不被信令通知,并且被推断为假。

在一些示例中,如果仅CTT分割有效,则不信令通知任何信息,并隐式地使用有效的CTT分割。

在一些示例中,不根据块中哪些种类的分割有效来改变二值化和/或信令通知方法。

在一些示例中,通过具有一种或多种上下文的算术编解码来编解码用于指示分割类型的二进制字符串的一个或多个二进制位。

在一些示例中,用上下文对对二进制字符串仅部分二进制位进行编解码,用旁路模式对其余二进制位进行编解码。

在一些示例中,用上下文对二进制字符串的所有二进制位都进行编解码。

在一些示例中,用旁路模式对二进制字符串的所有二进制位都进行编解码。

在一些示例中,对于用上下文编解码的二进制位,使用一种或多种上下文。

在一些示例中,上下文取决于如下至少一项:

(a)二进制位的位置或索引;

(b)空域/时域临近块的分割;

(c)当前分割深度,包括第一块的QT深度、BT深度、TT深度、CTT深度和MTT深度中的至少一个;

(d)第一块的空域/时域临近块和/或空域/时域不相邻块的分割深度,包括QT深度、BT深度、TT深度、CTT深度和MTT深度中的至少一个;

(e)第一块的空域/时域临近块的编解码模式;

(f)第一块的空域/时域临近块的宽度/高度;

(g)第一块的宽度/高度;

(h)条带类型/图片类型/片组类型;

(i)颜色分量;

(j)来自先前编解码块的分割类型的统计结果。

在一些示例中,如果子块之一跨越超过一个虚拟管线数据单元(VPDU),则禁用CTT分割。

在一些示例中,如果第一块的宽度W和/或高度H满足预定条件,则禁用CTT分割。

在一些示例中,如果W>=T1且H>=T2,则禁用CTT分割,T1和T2为整数。

在一些示例中,如果W>=T1或H>=T2,则禁用CTT分割,T1和T2为整数。

在一些示例中,如果W<=T1且H<=T2,则禁用CTT分割,T1和T2为整数。

在一些示例中,如果W<=T1或H<=T2,则禁用CTT分割,T1和T2为整数。

在一些示例中,如果W×H<=T,则禁用CTT分割,T为整数。

在一些示例中,如果W×H>=T,则禁用CTT分割,T为整数。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头中的至少一个中信令通知或解析T1和T2。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头中的至少一个中信令通知或解析T。

在一些示例中,T1和T2取决于颜色分量。

在一些示例中,T取决于颜色分量。

在一些示例中,T1和T2对于亮度和色度分量是不同的。

在一些示例中,T对于亮度和色度分量是不同的。

在一些示例中,T1和T2取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,T取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,T1和T2对于亮度和色度分量是不同的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,T对于亮度和色度分量是不同的。

在一些示例中,在针对通过CTT分割生成的子块中的至少一个子块不支持变换时,禁用CTT分割。

在一些示例中,在第一块的深度超过CTT分割的允许深度时,禁用CTT分割。

在一些示例中,在由于CTT分割导致的任一子块尺寸超过允许块尺寸时,禁用CTT分割。

在一些示例中,在不允许水平或垂直TT时,禁用CTT分割。

在一些示例中,如果第一块的宽度W和/或高度H满足预定条件,则启用CTT分割。

在一些示例中,如果W>=T1且H>=T2,则启用CTT分割,T1和T2为整数。

在一些示例中,如果W>=T1或H>=T2,则启用CTT分割,T1和T2为整数。

在一些示例中,如果W<=T1且H<=T2,则启用CTT分割,T1和T2为整数。

在一些示例中,如果W<=T1或H<=T2,则启用CTT分割,T1和T2为整数。

在一些示例中,如果W×H<=T,则启用CTT分割,T为整数。

在一些示例中,如果W×H>=T,则启用CTT分割,T为整数。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头中的至少一个中信令通知或解析T1和T2。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头的中至少一个中信令通知或解析T。

在一些示例中,T1和T2取决于颜色分量。

在一些示例中,T取决于颜色分量。

在一些示例中,T1和T2对于亮度和色度分量是不同的。

在一些示例中,T对于亮度和色度分量是不同的。

在一些示例中,T1和T2取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,T取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,则T1和T2对于亮度和色度分量是不同的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,则T对于亮度和色度分量是不同的。

在一些示例中,如果第一块的分割深度满足预定条件,则禁用CTT分割,第一块的分割深度包括第一块的QT分割深度、BT分割深度、TT分割深度、CTT分割深度和MTT分割深度中的至少一种。

在一些示例中,如果分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,如果QT分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果QT分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,如果BT分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果BT分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,如果TT分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果TT分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,如果CTT分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果CTT分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,如果MTT分割深度<=T,则禁用CTT分割,T为整数。

在一些示例中,如果MTT分割深度>=T,则禁用CTT分割,T为整数。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头中的至少一个中信令通知或解析T。

在一些示例中,T取决于颜色分量。

在一些示例中,T对于亮度和色度分量是不同的。

在一些示例中,T取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,则T对于亮度和色度分量是不同的。

在一些示例中,如果第一块的分割深度满足预定条件,则启用CTT分割,第一块的分割深度包括第一块的QT分割深度、BT分割深度、TT分割深度、CTT分割深度和MTT分割深度的至少一种。

在一些示例中,如果分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,如果QT分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果QT分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,如果BT分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果BT分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,如果TT分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果TT分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,如果CTT分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果CTT分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,如果MTT分割深度<=T,则启用CTT分割,T为整数。

在一些示例中,如果MTT分割深度>=T,则启用CTT分割,T为整数。

在一些示例中,在VPS、SPS、PPS、图片标头、条带标头、片组标头和片标头中的至少一个中信令通知或解析T。

在一些示例中,T取决于颜色分量。

在一些示例中,T对于亮度和色度分量是不同的。

在一些示例中,T取决于亮度编解码树和色度编解码树是否是分离的。

在一些示例中,如果亮度编解码树和色度编解码树是分离的,则T对于亮度和色度分量是不同的。

在一些示例中,在通过CTT分割生成的编解码单元(CU)中禁用一种或多种编解码工具。

在一些示例中,在通过QT、BT、TT、CTT和MTT分割中的至少一种生成的编解码单元(CU)中禁用帧内模式。

在一些示例中,在通过QT、BT、TT、CTT和MTT分割中的至少一种生成的编解码单元(CU)中禁用帧间模式。

在一些示例中,在通过QT、BT、TT、CTT和MTT分割中的至少一种生成的编解码单元(CU)中禁用帧内块复制模式。

在一些示例中,跳过与一种或多种编解码工具相关联的信令。

在一些示例中,是否使用和/或如何使用CTT分割取决于第一块的位置。

在一些示例中,是否使用以及如何使用CTT分割取决于第一块是否跨越图片边界或片边界或片组边界。

在一些示例中,如果第一块跨越图片右边界或片右边界或片组右边界,则禁用CTT分割。

在一些示例中,如果通过CTT分割划分的子块完全在图片、或片、或片组之外,则可以在转换期间省略子块。

在一些示例中,如果通过CTT分割划分的子块部分在图片、或片、或片组之外,则可以在转换期间省略图片之外的部分。

在一些示例中,如果通过CTT分割划分的子块部分在图片、或片、或片组之外,则进一步划分图片内的部分。

在一些示例中,如果通过CTT分割划分的子块部分在图片、或片、或片组之外,则将图片内的部分编解码为编解码单元(CU)。

在一些示例中,是否将图片内的部分编解码为CU取决于该部分的宽度(w)和高度(h)。

在一些示例中,如果w=2nw,h=2nh,则将图片内的部分编解码为CU,其中nw和nh为整数。

在一些示例中,如果通过CTT分割划分的任何子块部分或全部在图片、或片、或片组之外,则禁用CTT分割。

在一些示例中,在禁用CTT分割时,跳过信令,所述信令指示CTT模式的使用。

在一些示例中,转换从比特流表示生成视频的第一块。

在一些示例中,转换从视频的第一块生成比特流表示。

将要认识到,可以在视频编码器或解码器中实现公开的技术,以使用本文描述的额外分割技术来改善压缩效率。

所公开的和本文中描述的其他方案、示例、实施例、模块和功能操作可以在数字电子电路系统、或计算机软件、固件或硬件,包括本文中所公开的结构及其结构等效体,或其中一个或多个的组合中实现。公开的实施例和其他实施例可以实现为一个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质组成或其中一个或其中多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机。除硬件外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或其中一个或多个的组合。传播的信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其被生成以编码信息以供传输到合适的接收器设备。

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

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

例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或被操作性地耦接以从一个或多个大容量存储设备接收数据或向其传输数据,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移动硬盘;磁光盘;以及CD ROM和DVD ROM盘。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。

虽然本专利文件包含许多细节,但不应将其解释为对任何主题或权利要求的范围的限制,而应解释为对特定技术的特定实施例专有的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实施。相反地,在单个实施例的上下文中描述的各种特征也可单独地或者以任何合适的子组合的形式在多个实施例中实现。此外,虽然某些特征可能在上面被描述为以某些组合来起作用并且甚至最初也这样地来要求保护,但是来自要求保护的组合的一个或多个特征在某些情况下可从该组合中去除,并且要求保护的组合可针对子组合或子组合的变体。

同样,尽管附图中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或先后顺序执行此类操作,或执行所有说明的操作。此外,本专利文件所述实施例中各种系统组件的分离不应理解为在所有实施例中都需要这样的分离。

仅描述了一些实现方式和示例,其他实现方式、增强和变体可以基于本专利文件中描述和说明的内容做出。

52页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:使用动态网络接口的可互操作的基于云的媒体处理

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!

技术分类