扩展四叉树分割的边界处理转让专利

申请号 : CN201910765163.1

文献号 : CN110839161A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张凯张莉刘鸿彬王悦

申请人 : 北京字节跳动网络技术有限公司字节跳动有限公司

摘要 :

本公开涉及扩展四叉树分割的边界处理。一种用于视频比特流处理的方法,包括:确定所述视频比特流的数据单元的第一部分超出所述视频比特流的所述数据单元的第二部分的一个或多个边界;以及基于所述第一部分超出所述边界的所述确定,执行所述数据单元的所述第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。

权利要求 :

1.一种用于视频比特流处理的方法,包括:

确定所述视频比特流的数据单元的第一部分超出所述视频比特流的所述数据单元的第二部分的一个或多个边界;以及基于所述第一部分超出所述边界的所述确定,执行所述数据单元的所述第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。

2.一种视频比特流处理的方法,包括:

确定所述视频比特流的数据单元的第一部分超出所述视频比特流的所述数据单元的第二部分的一个或多个边界;以及基于所述第一部分超出所述边界的所述确定,使用分割技术分割所述数据单元的所述第一部分,所述分割技术不包括扩展四叉树(EQT)分割、灵活树(FT)分割、以及广义三叉树(GTT)分割中的至少一个。

3.根据权利要求1或2所述的方法,其中响应于所述第一部分超出所述边界的确定,用相同的处理对所述EQT、FT、或GTT的使用指示发信令通知。

4.根据权利要求1或2所述的方法,还包括:

响应于所述第一部分位于所述边界处的确定,不对所述EQT、FT、或GTT的至少一个的使用指示发信令通知。

5.一种视频比特流处理的方法,包括:

确定与所述视频比特流的数据单元的第一部分如何超出所述视频比特流的所述数据单元的第二部分的一个或多个边界有关的特性;以及基于图像的所述第一部分如何超出所述边界的所述特性,执行所述图像的所述第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。

6.根据权利要求1至5中任一项所述的方法,其中所述数据单元是图像、条带或片。

7.根据权利要求1至6中任一项所述的方法,其中所述数据单元的第二部分是整个数据单元。

8.根据权利要求1至7中任一项所述的方法,其中所述第一部分是编码树单元(CTU)或编码单元(CU)。

9.根据权利要求5至8中任一项所述的方法,还包括:

取决于与所述数据单元的所述第一部分如何超出所述边界有关的特性,确定是否对所述EQT、FT、或GTT的使用指示发信令通知。

10.根据权利要求9所述的方法,其中,响应于所述第一部分的右下部分超出所述第二部分的底部边界并且所述右下部分未超出所述第二部分的右边界的确定,对所述EQT、FT、或GTT的至少一个的使用指示发信令通知。

11.根据权利要求9所述的方法,其中,响应于所述第一部分的右下部分超出所述第二部分的右边界并且所述右下部分未超出所述第二部分的底部边界的确定,对所述EQT、FT、或GTT的至少一个的使用指示发信令通知。

12.根据权利要求9所述的方法,其中,响应于所述第一部分的右下部分超出所述第二部分的底部边界并且所述右下部分超出所述第二部分的右边界的确定,不对所述EQT、FT、或GTT的至少一个的使用指示发信令通知。

13.根据权利要求1至12中任一项所述的方法,其中所述EQT分割代表将所述数据单元的块相等地或不等地划分成四个子块。

14.根据权利要求1至12中任一项所述的方法,其中所述FT分割代表将所述数据单元的块相等地或不等地划分成K个子单元,K大于4。

15.根据权利要求1至12中任一项所述的方法,其中所述GTT分割代表将所述数据单元的块划分为三个子单元而没有划分方向上的限制。

16.一种视频解码装置,包括处理器,其被配置为实现权利要求1至15的一项或多项中所述的方法。

17.一种视频编码装置,包括处理器,其被配置为实现权利要求1至15的一项或多项中所述的方法。

18.一种其上存储了代码的计算机可读程序介质,所述代码包括指令,当处理器执行所述指令时,使所述处理器实现权利要求1至15的一项或多项中所述的方法。

说明书 :

扩展四叉树分割的边界处理

[0001] 相关申请的交叉引用
[0002] 根据适用的《专利法》和/或《巴黎公约》的规定,本申请及时要求于2018年8月19日提交的国际专利申请号PCT/CN2018/101222的优先权和利益。将国际专利申请号PCT/CN2018/101222的全部公开以引用方式并入本文,作为本申请公开的一部分。

技术领域

[0003] 本文涉及视频编码技术。

背景技术

[0004] 数字视频在互联网和其他数字通信网络上的带宽使用量最大。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。

发明内容

[0005] 所公开的技术可由视频解码器或编码器实施例使用,其中在边界处改进了分割。
[0006] 在一个示例方面,公开了一种视频比特流处理的方法。该方法包括:确定图像的第一部分超出图像的第二部分的边界;以及基于第一部分超出边界的确定,执行图像的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。
[0007] 在另一个示例方面,一种视频比特流处理的方法包括:确定图像的第一部分超出图像的第二部分的边界;以及基于第一部分超出边界的确定,使用分割技术对图像的第一部分进行分割,以对第一部分进行编码,分割技术不包括:扩展四叉树(EQT)划分、灵活树(FT)分割和广义三叉树(GTT)分割。
[0008] 在另一方面,一种视频比特流处理的方法包括:确定与图像的第一部分如何超出图像的第二部分的边界有关的特性;以及基于图像的第一部分如何超出边界的特性,执行图像的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个,以对第一部分进行编码。
[0009] 在另一个示例方面,一种视频比特流处理的方法,包括:确定视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的一个或多个边界;以及基于第一部分超出边界的确定,执行数据单元的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。
[0010] 在另一个示例方面,一种视频比特流处理的方法,包括:确定视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的一个或多个边界;以及基于第一部分超出边界的确定,使用分割技术分割数据单元的第一部分,以对第一部分进行编码,分割技术不包括扩展四叉树(EQT)分割、灵活树(FT)分割、以及广义三叉树(GTT)分割中的至少一个。
[0011] 在另一个示例方面,一种视频比特流处理的方法,包括:确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的一个或多个边界有关的特性;以及基于图像的第一部分如何超出边界的特性,执行图像的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个,以对第一部分进行编码。
[0012] 在另一个示例方面,一种视频比特流处理的方法,包括:确定所述视频比特流的数据单元的第一部分超出所述视频比特流的所述数据单元的第二部分的边界;以及基于所述第一部分超出所述边界的所述确定,执行所述数据单元的所述第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个作为强制边界分割(FBP)。
[0013] 在另一个示例方面,上述方法可由包含处理器的视频解码器装置实现。
[0014] 在另一个示例方面,上述方法可由包含处理器的视频编码器装置实现。
[0015] 在另一个示例方面,这些方法可以以处理器可执行指令的形式实施,并存储在计算机可读程序介质上。
[0016] 本文进一步描述了这些方面以及其他方面。

附图说明

[0017] 图1是H.264/高级视频编码(AVC)中MB分割的示意图。
[0018] 图2示出了将编码块(CB)划分为预测块(PB)的模式的示例。
[0019] 图3示出了将编码树块(CTB)细分为CB的示例。
[0020] 图4示出了四叉树加二叉树(QTBT)结构的示例。
[0021] 图5示出了分割的示例。
[0022] 图6A至图6K示出了扩展四叉树(EQT)分割的示例。
[0023] 图7A至图7D示出了灵活树(FT)分割的示例。
[0024] 图8示出了广义三叉树(GTT)分割的示例。
[0025] 图9示出了多功能边界分割的示例。
[0026] 图10是视频处理装置示例的框图。
[0027] 图11示出了视频编码器的示例实现的框图。
[0028] 图12是视频比特流处理方法示例的流程图。
[0029] 图13是视频比特流处理方法示例的流程图。
[0030] 图14是视频比特流处理方法示例的流程图。
[0031] 图15是视频比特流处理方法示例的流程图。
[0032] 图16是视频比特流处理方法示例的流程图。
[0033] 图17是视频比特流处理方法示例的流程图。
[0034] 图18是视频比特流处理方法示例的流程图。

具体实施方式

[0035] 本文提供了视频比特流解码器可以使用的各种技术,以提高解压缩或解码数字视频的质量。此外,视频编码器还可以在编码处理中实现这些技术,以便重建用于进一步编码的解码帧。
[0036] 为了便于理解,本文中使用了章节标题,并且不将实施例和技术限制在相应章节中。因此,来自一个章节的实施例可以与来自其他章节的实施例结合。
[0037] 1.概述
[0038] 本发明涉及图像/视频编码,特别是在分割结构上,即如何在图片/条带边界处将一个编码树单元(CTU)分割成多个编码单元(CU)。它可以应用于现有的视频编码标准,如HEVC,或待定案的标准(多功能视频编码)。它也可能适用于未来的视频编码标准或视频编解码器。
[0039] 2.背景
[0040] 视频编码标准主要是通过开发著名的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以来,视频编码标准基于混合视频编码结构,其中采用了时域预测加变换编码。
[0041] 图11是视频编码器实施示例的框图。
[0042] 2.1 H.264/AVC中的分割树结构
[0043] 先前标准中编码层的核心是宏块,包含亮度样本的16×16块,在通常4:2:0颜色采样的情况下,包含色度样本的两个对应的8×8块。
[0044] 帧内编码块使用空间预测来开发像素之间的空间相关性。定义了两种分割:16x16和4x4。
[0045] 帧间编码块通过估计图片间的运动来使用时域预测而不是空间预测。可以针对16x16宏块或其任何子宏块分割:16x8、8x16、8x8、8x4、4x8、4x4(见图5)单独估计运动。每个子宏块分割只允许一个运动矢量(MV)。
[0046] 图1是H.264/高级视频编码(AVC)中MB分割的示意图。
[0047] 2.2 HEVC中的分割树结构
[0048] 在HEVC中,通过使用四叉树结构(表示为编码树)将CTU划分成CU以适应各种局部特性。在CU级别做出是使用帧间(时域)还是帧内(空间)预测对图像区域进行编码的决定。根据PU的划分类型,每个CU可以进一步分成一个、两个或四个PU。在一个PU中,采用相同的预测处理,并且以PU为基础将相关信息传输到解码器。在通过应用基于PU划分类型的预测处理获得残差块后,可以根据与CU的编码树相似的另一种四叉树结构将CU分割成变换单元(TU)。HEVC结构的一个重要特点是它具有包括CU、PU、和TU的多个分割概念。
[0049] 在下文中,使用HEVC的混合视频编码中涉及的各种特征突出表示如下。
[0050] 1)编码树单元和编码树块(CTB)结构:HEVC中的类似结构是编码树单元(CTU),其尺寸由编码器选择,并且可以大于传统的宏块。CTU由亮度CTB和相应的色度CTB和语法元素组成。亮度CTB的尺寸L×L可以选择为L=16、32或64个样本,其中较大的尺寸通常能够实现更好的压缩。然后,HEVC支持使用树结构和四叉树式信令将CTB分割为更小的块。
[0051] 2)编码单元(CU)和编码块(CB):CTU的四叉树语法规定了其亮度和色度CB的尺寸和位置。四叉树的根与CTU相关联。因此,亮度CTB的尺寸是亮度CB支持的最大尺寸。将CTU划分为亮度和色度CB是联合信令通知的。一个亮度CB和通常两个色度CB以及相关联的语法一起形成编码单元(CU)。CTB可以只包含一个CU,也可以划分成多个CU,并且每个CU都有分割成预测单元(PU)和转换单元树(TU)的相关联的分割。
[0052] 3)预测单元和预测块(PB):在CU级别做出是使用帧间还是帧内预测对图像区域进行编码的决定。PU分割结构的根位于CU层。取决于基本的预测类型决定,可以在尺寸上进一步划分亮度和色度CB,并且可以从亮度和色度预测块(PB)中预测亮度和色度CB。HEVC支持从64×64到4×4个样本的可变PB尺寸。
[0053] 图2示出了将编码块(CB)划分为预测块(PB)的模式的示例。
[0054] 4)TU和变换块:使用变换块对预测残差进行编码。TU树结构的根位于CU层。亮度CB残差可能与亮度变换块(TB)相同,也可能进一步划分为更小的亮度TB。其同样适用于色度TB。对于4×4、8×8、16×16和32×32的方形TB,定义了与离散余弦变换(DCT)相似的整数基函数。对于亮度帧内预测残差的4×4变换,也可以指定从离散正弦变换(DST)形式导出的整数变换。
[0055] 图3示出了将编码树块(CTB)细分为CB的示例。
[0056] 2.3 JEM中具有较大CTU的四叉树加二叉树块结构
[0057] 为了探索HEVC之外的未来视频编码技术,VCEG和MPEG于2015年共同成立了联合视频探索小组(JVET)。此后,JVET采用了许多新的方法,并将其应用于名为联合探索模型(JEM)的参考软件。
[0058] 2.3.1 QTBT块分割结构
[0059] 与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。
[0060] 为QTBT分割方案定义了以下参数。
[0061] –CTU尺寸:四叉树的根节点尺寸,与HEVC中的概念相同。
[0062] –MinQTSize:最小允许的四叉树叶节点尺寸
[0063] –MaxBTSize:最大允许的二叉树根节点尺寸
[0064] –MaxBTDepth:最大允许的二叉树深度
[0065] –MinBTSize:最小允许的二叉树叶节点尺寸
[0066] 在QTBT划分结构的一个示例中,CTU尺寸被设置为具有两个对应的64×64色度样本块的128×128个亮度样本,MinQTSize被设置为16×16,MaxBTSize被设置为64×64,MinBTSize(宽度和高度)被设置为4×4,MaxBTSize被设置为4。四叉树划分首先应用于CTU,以生成四叉树叶节点。四叉树叶节点的尺寸可以具有从16×16(即MinQTSize)到128×128(即CTU尺寸)的尺寸。如果叶四叉树节点是128×128,则其不会被二叉树进一步划分,因为其尺寸超过了MaxBTSize(即64×64)。否则,叶四叉树节点可以被二叉树进一步划分。因此,四叉树叶节点也是二叉树的根节点,并且其二叉树深度为0。当二叉树深度达到MaxBTDePTh(即4)时,不考虑进一步划分。当二叉树节点的宽度等于MinBTSize(即4)时,不考虑进一步的水平划分。同样,当二叉树节点的高度等于MinBTSize时,不考虑进一步的垂直划分。通过预测和变换处理进一步处理二叉树的叶节点,而不需要进一步的划分。在JEM中,最大CTU尺寸为256×256个亮度样本。
[0067] 图4(左侧)说明了通过使用QTBT进行块分割的示例,图4(右侧)说明了相应的树表示。实线表示四叉树划分,并且虚线表示二叉树划分。在二叉树的每个划分(即非叶)节点中,信令通知一个标志来指示使用哪种划分类型(即水平或垂直),其中0表示水平划分,1表示垂直划分。对于四叉树划分,不需要指明划分类型,因为四叉树划分总是水平和垂直划分一个块,以生成尺寸相同的4个子块。
[0068] 此外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。目前,对于P条带和B条带,一个CTU中的亮度和色度CTB共享相同的QTBT结构。然而,对于I条带,用QTBT结构将亮度CTB划分为CU,用另一个QTBT结构将色度CTB划分为色度CU。这意味着I条带中的CU由亮度分量的编码块或两个色度分量的编码块组成,P条带或B条带中的CU由所有三种颜色分量的编码块组成。
[0069] 在HEVC中,为了减少运动补偿的存储器访问,限制小块的帧间预测,使得4×8和8×4块不支持双向预测,并且4×4块不支持帧间预测。在JEM的QTBT中,这些限制被移除。
[0070] 2.4 VVC的三叉树
[0071] 如JVET-D0117中提出的,支持除四叉树和二叉树以外的树类型。在实现中,引入了另外两个三叉树(TT)分割,即水平和垂直的中心侧三叉树,如图5的(d)和(e)所示。
[0072] 在JVET-D0117中,有两个层次的树:区域树(四叉树)和预测树(二叉树或三叉树)。首先用区域树(RT)对CTU进行分割。可以进一步用预测树(PT)划分RT叶。也可以用PT进一步划分PT叶,直到达到最大PT深度。PT叶是基本的编码单元。为了方便起见,它仍然被称为CU。
CU不能进一步划分。预测和变换都以与JEM相同的方式应用于CU。整个分割结构被称为“多类型树”。
[0073] 2.5 PCT/CN2018/089918中的扩展四叉树
[0074] 与块分割处理相对应的扩展四叉树(EQT)分割结构包括视频数据块的扩展四叉树分割处理,其中扩展四叉树分割结构表示将视频数据块分割为最终子块,并且当扩展四叉树分割处理决定将扩展四叉树分割应用于一个给定块时,所述一个给定块总是被划分为四个子块;基于视频比特流对最终子块进行解码;以及基于根据导出的EQT结构解码的最终子块对视频数据块进行解码。在PCT/CN2018/089918中介绍了EQT。
[0075] EQT分割处理可以递归地应用于给定块以生成EQT叶节点。可替代地,当EQT应用于特定块时,对于由于EQT而产生的每个子块,它可以进一步划分为BT、和/或QT、和/或TT、和/或EQT、和/或其他类型的分割树。
[0076] 在一个示例中,EQT和QT可以共享相同的深度增量处理和相同的叶节点尺寸限制。在这种情况下,当节点的尺寸达到最小允许的四叉树叶节点尺寸或当节点的EQT深度达到最大允许的四叉树深度时,可以隐式地终止一个节点的分割。
[0077] 可替代地,EQT和QT可以共享不同的深度增量处理和/或叶节点尺寸限制。当节点的尺寸达到最小允许的EQT叶节点尺寸或与该节点相关联的EQT深度达到最大允许的EQT深度时,隐式地终止EQT对一个节点的分割。此外,在一个示例中,可以在序列参数集(SPS)、和/或图片参数集(PPS)、和/或条带报头、和/或CTU、和/或区域、和/或片、和/或CU中对EQT深度和/或最小允许的EQT叶节点尺寸发信令通知。
[0078] 对于尺寸为M x N(M和N是非零正整数值,相等或不相等)的块,替代使用应用于正方形块的当前四叉树分割,在EQT中,一个块可以等分为四个分区,例如M/4x N或M x N/4(示例如图6A和图6B所示),或者等分为四个分区且分割尺寸取决于M和N的最大和最小值。在一个示例中,一个4x32块可以划分为四个4x8子块,而一个32x4块可以划分为四个8x4子块。
[0079] 对于尺寸为M x N(M和N是非零正整数值,相等或不相等)的块,替代使用应用于正方形块的当前四叉树分割,在EQT中,一个块可以不等地分为四个分区,例如两个分区的尺寸等于(M*w0/w)x(N*h0/h),并且另外两个分区的尺寸等于(M*(w-w0)/w)x(N*(h-h0)/h)。
[0080] 例如,w0和w可以分别等于1和2,即宽度减少一半,而高度可以使用不是2:1的其他比率来获得子块。图6C和图6E描述了这种情况的示例。或者,h0和h可以分别等于1和2,即高度减少一半,宽度可以使用不是2:1的其他比例。图6D和图6F中描述了这种情况的示例。
[0081] 图6G和图6H示出了四叉树分割的两个可选示例。
[0082] 图6I示出了具有不同分区形状的四叉树分割的更一般的情况。
[0083] 图6J和图6K示出了图6A和图6B的一般示例。
[0084] 图6A示出了M x N/4。
[0085] 图6B显示M/4x N。
[0086] 图6C示出了宽度固定为M/2、高度等于N/4或3N/4、顶部两个分区较小的子块。
[0087] 图6D示出了高度固定为N/2、宽度等于M/4或3M/4、左侧两个分区的较小的子块。
[0088] 图6E示出了宽度固定为M/2、高度等于3N/4或N/4、底部两个分区的较小的子块。
[0089] 图6F示出了高度固定为N/2、宽度等于3M/4或M/4、右侧两个分区的较小的子块。
[0090] 图6G示出了M x N/4和M/2x N/2。
[0091] 图6H示出了N x M/4和N/2x M/2。
[0092] 图6I示出了M1xN1、(M-M1xN1、M1x(N-N1)和(M-M1)x(N-N1)。
[0093] 图6J示出了MxN1、MxN2、MxN3和M x N4,其中N1+N2+N3+N4=N。
[0094] 图6K示出了M1xN、M2xN、M3xN和M4xN,其中M1+M2+M3+M4=M。
[0095] 与块分割处理相对应的灵活树(FT)划分结构包括:视频数据块的FT分割处理,其中FT分割结构表示将视频数据块分割为最终子块,并且当FT分割处理决定将FT分割应用于一个给定块时,所述一个给定块被划分为K个子块,其中K可以大于4;基于视频比特流对最终子块进行解码;以及基于根据导出的FT结构解码的最终子块对视频数据块进行解码。
[0096] FT分割处理可以递归地应用于给定块以生成FT叶节点。当节点达到最小允许的FT叶节点尺寸或当与节点相关联的FT深度达到最大允许的FT深度时,可以隐式地终止一个节点的分割。
[0097] 可替代地,当FT应用于某个块时,对于由于FT而产生的每个子块,它可以进一步划分为BT、和/或QT、和/或EQT、和/或TT、和/或其他类型的分割树。
[0098] 可替代地,此外,可以在序列参数集(SPS)、和/或图片参数集(PPS)、和/或条带报头、和/或CTU、和/或区域、和/或片、和/或CU中对FT深度和/或最小允许的FT叶节点尺寸发信令通知。
[0099] 与提出的EQT类似,由于FT分割获得的所有子块的尺寸可能相同;或者,不同子块的尺寸可能不同。
[0100] 在一个示例中,K等于6或8。图7A到图7D描绘了一些示例。
[0101] 图7A示出K=8,M/4*N/2。
[0102] 图7B示出K=8,M/2*N/4。
[0103] 图7C示出K=6,M/2*N/2和M/4*N/2。
[0104] 图7D示出K=6,M/2*N/2和M/2*N/4。
[0105] 对于TT,可以取消沿水平或垂直方向划分的限制。
[0106] 在一个示例中,广义TT(GTT)分割模式可以定义为水平和垂直划分。图8示出了一个示例。
[0107] 提出的方法可在某些条件下应用。换句话说,当条件不满足时,不需要对分割类型发信令通知。
[0108] 可替代地,可以使用提出的方法替换现有的分割树类型。另外,提出的方法只能在某些条件下用作替代方法。
[0109] 在一个示例中,条件可以包括图片和/或条带类型;和/或块尺寸;和/或编码模式;和/或一个块是否位于图片/条带/片边界处。
[0110] 在一个示例中,所提出的EQT可以用与QT相同的方式处理。在这种情况下,当指示分割树类型为QT时,可能会进一步对详细的四叉树分割模式的更多标志/指示发信令通知。可替代地,可以将EQT视为附加的分割模式。
[0111] 在一个示例中,EQT或FT或GTT的分割方法的信令通知可能是有条件的,即在某些情况下,可能不使用一个或一些EQT/FT/GTT分割方法,并且不对与这些分割方法对应的位发信令通知。
[0112] 2.6JVET-K0287中的边界处理
[0113] 在JVET-K0287中,提出了一种关于多功能视频编码(VVC)的边界处理方法。AVS-3.0也采用了类似的方法。
[0114] 由于VVC中的强制四叉树边界分割方案没有得到优化。JVET-K0287提出了使用规则块划分语法的边界划分方法,以保持连续性CABAC引擎并匹配图片边界。
[0115] 多功能边界分割获得以下规则(编码器和解码器二者):
[0116] 对于边界定位块,使用与普通块(非边界)完全相同的分割语法(例如,图9中的VTM-1.0),不需要改变语法。
[0117] 如果未解析出边界CU的划分模式,则使用强制边界分割(FBP)来匹配图片边界。
[0118] 在强制边界分割(非信令通知边界分割)后,不再进行分割。
[0119] 强制边界分割描述如下:
[0120] 如果块的尺寸大于最大允许的BT尺寸,则在当前强制分割级别使用强制QT以执行FBP;
[0121] 否则,如果当前CU的右下方样本低于底部图片边界,并且不超出右边界,则在当前强制分割级别使用强制水平BT以执行FBP;
[0122] 否则,如果当前CU的右下方样本位于右图片边界的右侧,并且不低于底部图片边界,则在当前强制分割级别使用强制垂直BT以执行FBP;
[0123] 否则,如果当前CU的右下方样本位于右图片边界的右侧,并且低于底部图片边界,则在当前强制分割级别使用强制QT以执行FBP。
[0124] 3.实施例解决的问题的示例
[0125] PCT/CN2018/089918中提出的EQT(通过引用将其全部并入本文中)不考虑CTU/CU穿过图片/条带/片边界的情况。
[0126] 在JVET-K0287中,只考虑QT和BT,不考虑EQT。
[0127] 4.实施例的示例
[0128] 为了解决这个问题,本文提出了几种方法来处理当CTU/CU穿过图片/片/条带/片或包含多个CTU/CU的其他类型单元的边界时的EQT的情况。
[0129] 下面的详细发明应被作为解释一般概念的示例。这些实施例不应狭义解释。此外,这些实施例可以任何方式组合。
[0130] 在一个实施例中,穿过边界的CTU/CU可以被EQT、FT或GTT分割。当CTU/CU穿过或不穿过边界时,EQT、FT或GTT的信令处理相同。
[0131] 在一个实施例中,穿过边界的CTU/CU不能被EQT、FT或GTT分割。当CTU/CU穿过或不穿过边界时,EQT、FT或GTT的信令处理不同。
[0132] a.在一个示例中,如果CTU/CU位于边界处,则不会对EQT、FT或GTT的使用指示发信令通知。
[0133] 在一个实施例中,是否对用EQT、FT或GTT的使用指示发信令通知取决于CTU/CU如何穿过边界。
[0134] a).在一个示例中,如果当前CU的右下方样本低于底部图片边界,并且不超出右边界,或者如果当前CU的右下方样本位于右图片边界的右侧,且不低于底部边界,则可以对EQT、FT或GTT的使用指示发信令通知。
[0135] b).在一个示例中,如果当前CU的右下方样本位于右图像边界的右侧并且低于底部边界,则可能不对EQT、FT或GTT的使用指示发信令通知。
[0136] 在一个实施例中,EQT可作为JVET-K0287中提出的方法中的强制边界划分(FBP)。
[0137] a).在一个示例中,图6A中的划分被作为FBP。
[0138] b).在一个示例中,图6B中的分割被作为FBP。
[0139] c).在一个示例中,图6C中的分割被作为FBP。
[0140] d).在一个示例中,图6D中的分割被作为FBP。
[0141] e).在一个示例中,图6E中的分割被作为FBP。
[0142] f).在一个示例中,图6F中的分割被作为FBP。
[0143] g).在一个示例中,图6G中的分割被作为FBP。
[0144] h).在一个示例中,图6H中的分割被作为FBP。
[0145] i).在一个示例中,图6I中的分割被作为FBP。
[0146] j).在一个示例中,图6J中的分割被作为FBP。
[0147] k).在一个示例中,图6K中的分割被作为FBP。
[0148] 在一个实施例中,在JVET-K0287中提出的方法中,FT可被作为强制边界分割(FBP)。
[0149] a).在一个示例中,图7A中的分割被作为FBP。
[0150] b).在一个示例中,图7B中的分割被作为FBP。
[0151] c).在一个示例中,图7C中的分割被作为FBP。
[0152] d).在一个示例中,图7D中的分割被作为FBP。
[0153] 在一个实施例中,在JVET-K0287中提出的方法中,GTT可被作为强制边界分割(FBP)。
[0154] a).在一个示例中,图8(a)中的分割被作为FBP。
[0155] b).在一个示例中,图8(b)中的分割被作为FBP。
[0156] 在一个示例中,是否以及如何将EQT设置为FBP取决于CTU/CU如何穿过边界。
[0157] a).在一个示例中,如果当前CU的右下方样本低于底部图片边界,并且不超出右边界,则使用图6A或图6G或图6J在当前强制分割级别中执行FBP;
[0158] b).在一个示例中,如果当前CU的右下方样本位于右图像边界的右侧,并且不低于底部边界,则使用图6B或图6H或图6K在当前强制分割级别中执行FBP;
[0159] c).在一个示例中,如果当前CU的右下方样本位于右图像边界的右侧,并且低于底部边界,则使用图6C或图6D或图6E或图6F或图6I在当前强制分割级别中执行FBP;
[0160] 在一个示例中,是否以及如何将FT设置为FBP取决于CTU/CU如何穿过边界。
[0161] a).在一个示例中,如果当前CU的右下方样本低于底部图片边界,并且不超出右边界,则使用图7B或图7D在当前强制分割级别中执行FBP;
[0162] b).在一个示例中,如果当前CU的右下方样本位于右图像边界的右侧,并且不低于底部边界,则使用图7A或图7C在当前强制分割级别中执行FBP;
[0163] 在一个示例中,是否以及如何将GTT设置为FBP取决于CTU/CU如何跨越边界。
[0164] a).在一个示例中,如果当前CU的右下方样本低于底部图片边界,并且不超出右边界,则使用图8(b)在当前强制分割级别中执行FBP;
[0165] b).在一个示例中,如果当前CU的右下方样本位于右图片边界的右侧,并且不低于底部边界,则使用图8(a)在当前强制分割级别中执行FBP;
[0166] 图10是视频处理装置1000的框图。装置1000可用于实施本文的一种或多种方法。装置1000可以实施在智能手机、平板电脑、计算机、物联网(IoT)接收器等中。装置1000可包括一个或多个处理器1002、一个或多个存储器1004和视频处理硬件1006。处理器1002可以配置为实现本文中描述的一个或多个方法。存储器1004可用于存储用于实现本文方法和技术的数据和代码。视频处理硬件1006可用于在硬件电路中实现本文的一些技术。
[0167] 图12是视频比特流处理方法1200的流程图。方法1200包括确定(1205)图像的第一部分超出图像的第二部分的边界;以及基于第一部分超出边界的确定对图像的第一部分进行分割(1210)。在一些实施例中,操作1210包括执行EQT分割。在一些实施例中,操作1210执行FT分割。在一些实施例中,操作1210包括执行GTT分割。在一些实施例中,操作1210可以包括执行EQT分割。
[0168] 图13是视频比特流处理方法1300的流程图。方法1300包括确定(1305)图像的第一部分超出图像的第二部分的边界;以及基于图像的第一部分超出边界的确定对第一部分进行分割(1310),分割不包括:EQT分割、FT分割和GTT分割。
[0169] 图14是视频比特流处理方法1400的流程图。方法1400包括确定(1405)与图像的第一部分如何超出图像的第二部分的边界有关的特征;以及基于特征对图像的第一部分进行(1410)分割。在一些实施例中,分割包括EQT分割。在一些实施例中,分割包括FT分割。在一些实施例中,分割包括GTT分割。
[0170] 参考方法1200、1300和1400,本文第4节描述了分割及其使用的一些示例。例如,如第4节中所述,基于图像的第一部分如何超出图像第二部分的边界,可以执行EQT分割、FT分割或GTT分割,也可以不执行EQT分割、FT分割或GTT分割。
[0171] 参考方法1200、1300和1400,第一部分可以编码在视频比特流中,其中可以通过使用与第一部分如何超出图像第二部分边界相关的比特流生成规则实现比特效率。
[0172] 该方法可以包括:由处理器确定图像的第三部分与边界相邻;以及由处理器基于第三部分与边界相邻的确定,使用另一种分割技术对图像的第三部分进行分割,以对第三部分进行编码。另一种技术不包括:EQT、FT和GTT。
[0173] 该方法可以包括:其中确定与图像的第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分超出第二部分的底部边界,并且右下部分不超出第二部分的右边界,或者第一部分的右下部分与第二部分的右边界相邻且不超出第二部分的右边界,并且第一部分的右下部分不超出第二部分的底部边界。
[0174] 该方法可以包括:确定与图像的第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分超出第二部分的底部边界,并且右下部分不超出第二部分的右边界。
[0175] 该方法可以包括:其中EQT依照强制边界分割(FBP)。
[0176] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M的子部分,并且每个子部分的高度为N/4。
[0177] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/4的子部分,并且每个子部分的高度为N。
[0178] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的第一子部分和第二子部分,第一子部分的高度为N/4,并且第二子部分的高度为3N/4,第一子部分位于第二子部分的上方。
[0179] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个高度为N/2的第一子部分和第二子部分,第一子部分的宽度为M/4,并且第二子部分的宽度为3M/4,第一子部分位于第二子部分的左侧。
[0180] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的第一子部分和第二子部分,第一子部分的高度为3N/4,并且第二子部分的高度为N/4,第二子部分位于第一子部分的下方。
[0181] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个高度为N/2的第一子部分和第二子部分,第一子部分的宽度为3M/4,并且第二子部分的宽度为M/4,第二子部分位于第一子部分的右侧。
[0182] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成第一子部分和第二子部分,第一子部分的宽度为M且高度为N/4,并且第二子部分的宽度为M/2且高度为N/2。
[0183] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成第一子部分和第二子部分,第一子部分的宽度为N且高度为M/4,并且第二子部分的宽度为N/2且高度为M/2。
[0184] 该方法可以包括:其中第一部分宽度为M且高度为N,尺寸M1小于M,尺寸N1小于N,并且其中FBP包括将第一部分分割成宽度为M1且高度为N1的第一子部分、宽度为M-M1且高度为N1的第二子部分、宽度为M1且高度为N-N1的第三子部分以及宽度为M-M1且高度为N-N1的第四子部分。
[0185] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成宽度为M且高度为N1的第一部分、宽度为M且高度为N2的第二部分、宽度为M且高度为N3的第三部分、宽度为M且高度为N4的第四部分,其中N1+N2+N3+N4=N。
[0186] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成宽度为M1且高度为N的第一部分、宽度为M2且高度为N的第二部分、宽度为M3且高度为N的第三部分、宽度为M4且高度为N的第四部分,其中M1+M2+M3+M4=M。
[0187] 该方法可以包括:其中FT依照强制边界分割(FBP)。
[0188] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/4且高度为N/2。
[0189] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/2且高度为N/4。
[0190] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/4且高度为N/2。
[0191] 该方法可以包括:其中第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/2且高度为N/4。
[0192] 该方法可以包括:其中GTT依照强制边界分割(FBP)。
[0193] 该方法可以包括:其中FBP包括将第一部分分割成子部分而在水平或垂直划分上没有限制。
[0194] 该方法可以包括:其中基于特性执行EQT,并且EQT依照强制边界分割(FBP)。
[0195] 该方法可以包括:确定与第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M且高度为N/4的子部分,分割成宽度为M且高度为N/4的子部分和宽度为M/2且高度为N/2的子部分,或者分割成包括宽度为M且高度为N1的第一子部分、宽度为M且高度为N2的第二子部分、宽度为M且高度为N3的第三子部分、宽度为M且高度为N4的第四子部分的子部分,其中N1+N2+N3+N4=N。
[0196] 该方法可以包括:确定与第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分未超出第二部分的底部边界并且右下部分与第二部分的右边界相邻,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/4的子部分,并且每个子部分的高度为N,分割成第一子部分和第二子部分,第一子部分的宽度为N且高度为M/4,第二子部分的宽度为N/2且高度为M/2,或者分割成宽度为M1且高度为N的第一部分、宽度为M2且高度为N的第二部分、宽度为M3且高度为N的第三部分、宽度为M4且高度为N的第四部分,其中M1+M2+M3+M4=M。
[0197] 该方法可以包括:确定与第一部分如何超出边界有关的特性包括:确定第一部分的右下部分未超出第二部分的底部边界并且右下部分与第二部分的右边界相邻,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的第一子部分和第二子部分,第一子部分的高度为N/4,并且第二子部分的高度为3N/4,第一子部分位于第二子部分的上方,或者分割成每个高度为N/2的第一子部分和第二子部分,第一子部分的宽度为M/4,第二子部分的宽度为3M/4,第一子部分位于第二子部分的左侧,或者分割成每个宽度为M/2的第一子部分和第二子部分,第一子部分的高度为3N/4,第二子部分的高度为N/4,第二子部分位于第一子部分的下方,或者分割成每个高度为N/2的第一子部分和第二子部分,第一子部分的宽度为3M/4,第二子部分的宽度为M/4,第二子部分位于第一子部分的右侧,或者分割成宽度为M1且高度为N1的第一子部分、宽度为M-M1且高度为N1的第二子部分、宽度为M1且高度为N-N1的第三子部分以及宽度为M-M1且高度为N-N1的第四子部分。
[0198] 该方法可以包括:其中基于特性执行EQT,并且EQT依照强制边界分割(FBP)。
[0199] 该方法可以包括:确定与第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/2且高度为N/4,或者分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/2且高度为N/4。
[0200] 该方法可以包括:确定与第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分未超出第二部分的底部边界并且右下部分与第二部分的右边界相邻,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/4且高度为N/2,或者分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/4且高度为N/2。
[0201] 该方法可以包括:其中基于特性执行GTT,并且GTT依照强制边界分割(FBP)。
[0202] 该方法可以包括:其中确定与第一部分如何超出边界有关的特性包括:由处理器确定第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界,其中FBP包括将第一部分分割成子部分而在水平或垂直划分上没有限制。
[0203] 图15是视频比特流处理方法1500的流程图。方法1500包括确定(1505)视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的边界;以及基于第一部分超出边界的确定,执行(1510)数据单元的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个作为强制边界分割(FBP)。
[0204] 在一些实施例中,数据单元是图像、条带或片。
[0205] 在一些实施例中,数据单元的第二部分是整个数据单元。
[0206] 在一些实施例中,第一部分是编码树单元(CTU)或编码单元(CU)。
[0207] 在一些实施例中,EQT依照强制边界分割(FBP)。
[0208] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M的四个子部分,并且每个子部分的高度为N/4。
[0209] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/4的四个子部分,并且每个子部分的高度为N。
[0210] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成四个子部分,其中至少一个子部分与其他子部分的维度不同。
[0211] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的两个第一子部分和两个第二子部分,第一子部分的高度为N/4,并且第二子部分的高度为3N/4,第一子部分位于第二子部分的上方。
[0212] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个高度为N/2的两个第一子部分和两个第二子部分,第一子部分的宽度为M/4,并且第二子部分的宽度为3M/4,第一子部分位于第二子部分的左侧。
[0213] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的两个第一子部分和两个第二子部分,第一子部分的高度为3N/4,并且第二子部分的高度为N/4,第二子部分位于第一子部分的下方。
[0214] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个高度为N/2的两个第一子部分和两个第二子部分,第一子部分的宽度为3M/4,并且第二子部分的宽度为M/4,第二子部分位于第一子部分的右侧。
[0215] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成两个第一子部分和两个第二子部分,第一子部分的宽度为M且高度为N/4,并且第二子部分的宽度为M/2且高度为N/2。
[0216] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成两个第一子部分和两个第二子部分,第一子部分的高度为N且宽度为M/4,并且第二子部分的高度为N/2且宽度为M/2。
[0217] 在一些实施例中,第一部分宽度为M且高度为N,尺寸M1小于M,尺寸N1小于N,并且其中FBP包括将第一部分分割成宽度为M1且高度为N1的第一子部分、宽度为M-M1且高度为N1的第二子部分、宽度为M1且高度为N-N1的第三子部分以及宽度为M-M1且高度为N-N1的第四子部分。
[0218] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成宽度为M且高度为N1的第一部分、宽度为M且高度为N2的第二部分、宽度为M且高度为N3的第三部分、宽度为M且高度为N4的第四部分,其中N1+N2+N3+N4=N。
[0219] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成宽度为M1且高度为N的第一部分、宽度为M2且高度为N的第二部分、宽度为M3且高度为N的第三部分、宽度为M4且高度为N的第四部分,其中M1+M2+M3+M4=M。
[0220] 在一些实施例中,FT依照强制边界分割(FBP)。
[0221] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成超过4个子部分。
[0222] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/4且高度为N/2。
[0223] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/2且高度为N/4。
[0224] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/4且高度为N/2。
[0225] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/2且高度为N/4。
[0226] 在一些实施例中,GTT依照强制边界分割(FBP)。
[0227] 在一些实施例中,FBP包括将第一部分分割成子部分而在水平或垂直划分上没有限制。
[0228] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成3个子部分,第一子部分的宽度为M/4且高度为N,并且两个第二子部分每个的宽度为3M/4且高度为N/2。
[0229] 在一些实施例中,第一部分宽度为M且高度为N,并且其中FBP包括将第一部分分割成3个子部分,第一子部分的宽度为M且高度为N/4,并且两个第二子部分每个的宽度为M/2且高度为3N/4。
[0230] 在一些实施例中,确定视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的边界包括:
[0231] 确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性。
[0232] 在一些实施例中,基于特性执行EQT,并且EQT依照强制边界分割(FBP)。
[0233] 在一些实施例中,确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性包括:确定第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M且高度为N/4的四个子部分,分割成两个宽度为M且高度为N/4的子部分和两个宽度为M/2且高度为N/2的子部分,或者分割成包括宽度为M且高度为N1的第一子部分、宽度为M且高度为N2的第二子部分、宽度为M且高度为N3的第三子部分、宽度为M且高度为N4的第四子部分的子部分,其中N1+N2+N3+N4=N。
[0234] 在一些实施例中,确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性包括:确定第一部分的右下部分未超出第二部分的底部边界并且右下部分超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/4且高度为N的四个子部分,分割成两个第一子部分和两个第二子部分,第一子部分的宽度为N且高度为M/4,第二子部分的宽度为N/2且高度为M/2,或者分割成宽度为M1且高度为N的第一部分、宽度为M2且高度为N的第二部分、宽度为M3且高度为N的第三部分、宽度为M4且高度为N的第四部分,其中M1+M2+M3+M4=M。
[0235] 在一些实施例中,确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性包括:确定第一部分的右下部分超出第二部分的底部边界并且右下部分超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成每个宽度为M/2的两个第一子部分和两个第二子部分,第一子部分的高度为N/4,并且第二子部分的高度为3N/4,第一子部分位于第二子部分的上方,或者分割成每个高度为N/2的两个第一子部分和两个第二子部分,第一子部分的宽度为M/4,第二子部分的宽度为3M/4,第一子部分位于第二子部分的左侧,或者分割成每个宽度为M/2的两个第一子部分和两个第二子部分,第一子部分的高度为3N/4,第二子部分的高度为N/4,第二子部分位于第一子部分的下方,或者分割成每个高度为N/2的两个第一子部分和两个第二子部分,第一子部分的宽度为3M/4,第二子部分的宽度为M/4,第二子部分位于第一子部分的右侧,或者分割成宽度为M1且高度为N1的第一子部分、宽度为M-M1且高度为N1的第二子部分、宽度为M1且高度为N-N1的第三子部分以及宽度为M-M1且高度为N-N1的第四子部分。
[0236] 在一些实施例中,基于特性执行FT,并且FT依照强制边界分割(FBP)。
[0237] 在一些实施例中,确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性包括:确定第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/2且高度为N/4,或者分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/2且高度为N/4。
[0238] 在一些实施例中,确定与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的边界有关的特性包括:确定第一部分的右下部分未超出第二部分的底部边界并且右下部分超出第二部分的右边界,其中第一部分的宽度为M且高度为N,并且其中FBP包括将第一部分分割成8个子部分,8个子部分中的每一个的宽度为M/4且高度为N/2,或者分割成6个子部分,子部分的第一子集的宽度为M/2且高度为N/2,并且子部分的第二子集的宽度为M/4且高度为N/2。
[0239] 在一些实施例中,基于特性执行GTT,并且GTT依照强制边界分割(FBP)。
[0240] 在一些实施例中,确定与所述视频比特流的所述数据单元的所述第一部分如何超出所述视频比特流的所述数据单元的所述第二部分的所述边界有关的特性包括:
[0241] 确定所述第一部分的右下部分超出所述第二部分的底部边界并且所述右下部分未超出所述第二部分的右边界,其中所述FBP包括将所述第一部分分割成在水平或垂直划分上没有限制的子部分。
[0242] 在一些实施例中,所述第一部分的宽度为M且高度为N,并且其中所述FBP包括将所述第一部分分割成3个子部分,第一子部分的宽度为M且高度为N/4,并且两个第二子部分每个的宽度为M/2且高度为3N/4。
[0243] 在一些实施例中,确定与所述视频比特流的所述数据单元的所述第一部分如何超出所述视频比特流的所述数据单元的所述第二部分的所述边界有关的特性包括:
[0244] 确定所述第一部分的右下部分未超出所述第二部分的底部边界并且所述右下部分超出所述第二部分的右边界,其中所述FBP包括将所述第一部分分割成在水平或垂直划分上没有限制的子部分。
[0245] 在一些实施例中,所述第一部分的宽度为M且高度为N,并且其中所述FBP包括将所述第一部分分割成3个子部分,第一子部分的宽度为M/4且高度为N,并且两个第二子部分每个的宽度为3M/4且高度为N/2。
[0246] 图16是视频比特流处理方法1600的流程图。方法1600包括确定(1605)视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的一个或多个边界;以及基于第一部分超出边界的确定,执行(1610)数据单元的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。
[0247] 在一些实施例中,数据单元是图像、条带或片。
[0248] 在一些实施例中,数据单元的第二部分是整个数据单元。
[0249] 在一些实施例中,第一部分是编码树单元(CTU)或编码单元(CU)。
[0250] 在一些实施例中,该方法还包括:响应于第一部分超出边界的确定,用同样的处理对EQT、FT、或GTT的使用指示发信令通知。
[0251] 在一些实施例中,该方法还包括:响应于第一部分位于边界处的确定,不对EQT、FT、或GTT的使用指示发信令通知。
[0252] 图17是视频比特流处理方法1700的流程图。方法1700包括确定(1705)视频比特流的数据单元的第一部分超出视频比特流的数据单元的第二部分的一个或多个边界;以及基于第一部分超出边界的确定,使用分割技术分割(1710)数据单元的第一部分,分割技术不包括扩展四叉树(EQT)分割、灵活树(FT)分割、和广义三叉树(GTT)分割中的至少一个。
[0253] 在一些实施例中,数据单元是图像、条带或片。
[0254] 在一些实施例中,数据单元的第二部分是整个数据单元。
[0255] 在一些实施例中,第一部分是编码树单元(CTU)或编码单元(CU)。
[0256] 在一些实施例中,该方法还包括:响应于第一部分超出边界的确定,用同样的处理对EQT、FT、或GTT的使用指示发信令通知。
[0257] 在一些实施例中,该方法还包括:响应于第一部分位于边界处的确定,不对EQT、FT、或GTT的使用指示发信令通知。
[0258] 图18是视频比特流处理方法1800的流程图。方法1800包括:确定(1805)与视频比特流的数据单元的第一部分如何超出视频比特流的数据单元的第二部分的一个或多个边界有关的特性;以及基于图像的第一部分如何超出边界的特性,执行(1810)图像的第一部分的扩展四叉树(EQT)分割、灵活树(FT)分割、或者广义三叉树(GTT)分割中的至少一个。
[0259] 在一些实施例中,数据单元是图像、条带或片。
[0260] 在一些实施例中,数据单元的第二部分是整个数据单元。
[0261] 在一些实施例中,第一部分是编码树单元(CTU)或编码单元(CU)。
[0262] 在一些实施例中,该方法还包括:取决于与数据单元的第一部分如何超出边界有关的特性,确定是否对EQT、FT、或GTT的使用指示发信令通知。
[0263] 在一些实施例中,响应于第一部分的右下部分超出第二部分的底部边界并且右下部分未超出第二部分的右边界的确定,对EQT、FT、或GTT的至少一个的使用指示发信令通知。
[0264] 在一些实施例中,响应于第一部分的右下部分超出第二部分的右边界并且右下部分未超出第二部分的底部边界的确定,对EQT、FT、或GTT的至少一个的使用指示发信令通知。
[0265] 在一些实施例中,响应于第一部分的右下部分超出第二部分的底部边界并且右下部分超出第二部分的右边界的确定,不对EQT、FT、或GTT的至少一个的使用指示发信令通知。
[0266] 在一些实施例中,EQT分割表示数据单元的块被相等地或不等地划分为四个子块。
[0267] 在一些实施例中,FT分割表示数据单元的块被相等地或不等地划分为K个子块,K大于4。
[0268] 在一些实施例中,GTT分割表示数据单元的块被划分为三个子单元而对划分方向没有限制。
[0269] 应当理解的是,当被压缩的编码单元具有明显不同于传统方形块或半方形的矩形块的形状时,所公开的技术可以实施在视频编码器或解码器中,以提高压缩效率。例如,使用长或高编码单元(诸如4x32或32x4尺寸的单元)的新编码工具可能受益于所公开的技术。
[0270] 本文中公开的和其他描述的解决方案、示例、实施例、模块和功能操作可以在数字电子电路、或计算机软件、固件或硬件中实现,包括本文中所公开的结构及其结构等效体,或其中一个或多个的组合。公开的实施例和其他实施例可以实现为一个或多个计算机程序产品,即一个或多个编码在计算机可读介质上的计算机程序指令的模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机组。除硬件外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或其中一个或多个的组合。传播信号是人为产生的信号,例如机器产生的电信号、光学信号或电磁信号,生成这些信号以对信息进行编码,以便传输到适当的接收装置。
[0271] 计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于该程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台或多台计算机上来执行,这些计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。
[0272] 本文中描述的处理和逻辑流可以通过一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
[0273] 例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或通过操作耦合到一个或多个大容量存储设备来从其接收数据或将数据传输到一个或多个大容量存储设备,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光磁盘;以及CDROM和DVD-ROM光盘。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。
[0274] 虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的一些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种功能也可以在多个实施例中单独实施,或在任何合适的子组合中实施。此外,尽管上述特征可以描述为在一些组合中起作用,甚至最初要求是这样,但在一些情况下,可以从组合中移除权利要求组合中的一个或多个特征,并且权利要求的组合可以指向子组合或子组合的变体。
[0275] 同样,尽管图纸中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或顺序执行此类操作,或执行所有说明的操作。此外,本专利文件实施例中各种系统组件的分离不应理解为在所有实施例中都需要这样的分离。
[0276] 仅描述了一些实现和示例,其他实现、增强和变体可以基于本专利文件中描述和说明的内容做出。