CN112514393A - 子块变换 - Google Patents

子块变换 Download PDF

Info

Publication number
CN112514393A
CN112514393A CN201980021350.7A CN201980021350A CN112514393A CN 112514393 A CN112514393 A CN 112514393A CN 201980021350 A CN201980021350 A CN 201980021350A CN 112514393 A CN112514393 A CN 112514393A
Authority
CN
China
Prior art keywords
sub
blocks
block
coding unit
width
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980021350.7A
Other languages
English (en)
Other versions
CN112514393B (zh
Inventor
赵欣
李翔
刘杉
赵亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent America LLC
Original Assignee
Tencent America LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent America LLC filed Critical Tencent America LLC
Publication of CN112514393A publication Critical patent/CN112514393A/zh
Application granted granted Critical
Publication of CN112514393B publication Critical patent/CN112514393B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

提供一种用于控制帧内和/或帧间预测以解码视频序列的方法和装置。该方法包括:确定编码单元的宽度或高度是否是2的幂,以及基于确定编码单元的宽度或高度不是2的幂,将编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得子块的数量被最小化。该方法进一步包括对编码单元划分成的子块应用帧内和/或帧间预测。

Description

子块变换
通过引用并入本文
本申请要求于2018年4月26日提交的、申请号为62/663,179的美国临时申请的优先权,其全部内容通过引用并入本文中。
背景技术
1.技术领域
与实施例一致的方法和装置涉及视频处理,更具体地,涉及子块变换。
2.相关技术描述
在高效视频编码(HEVC)中,利用表示为编码树的四叉树结构将编码树单元(CTU)划分成多个编码单元(CU),以适应各种局部特性。使用帧间图片(时间)预测还是帧内图片(空间)预测来编码图片区域是在CU级别决定的。根据预测单元(PU)划分类型,每个CU可以进一步划分成一个、两个或四个PU。在一个PU内,应用相同的预测处理,并基于PU将相关信息发送给解码器。通过应用基于PU划分类型的预测处理而获得残差块之后,可以根据与CU的编码树类似的另一种四叉树结构将CU划分为多个变换单元(TU)。HEVC结构的一个特征是它具有多个分区概念,包括CU、PU和TU。在HEVC中,CU或TU只能是正方形,而PU可以为用于帧间预测块的正方形或矩形。在HEVC的后期阶段,有人提出允许矩形PU用于帧内预测与变换。这些建议未被HEVC采用,但是却被扩展用于联合开发模型(JEM)。
在图片边界处,HEVC采用隐式四叉树划分,使得块保持四叉树划分,直到尺寸符合图片边界。
四叉树加二叉树(QTBT)结构消除了多个分区类型的概念,即,消除了CU、PU和TU概念的分离,并且支持更灵活的CU分区形状。在QTBT结构中,CU可以具有正方形或矩形形状。
图1A是QTBT结构的示意图。
参考图1A,首先采用四叉树结构对CTU进行分区。进一步采用二叉树结构对四叉树叶节点进行分区。在二叉树划分中,有对称水平划分和对称垂直划分两种划分类型。二叉树叶节点被称为CU,并且该划分用于预测和变换处理而无需任何进一步的分区。这意味着,CU、PU和TU在QTBT编码块结构中具有相同的块尺寸。在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亮度样本。
图1A的部分(a)示出了利用QTBT进行块分区的示例,图1A的部分(b)示出了相应的树表示。实线表示四叉树划分,虚线表示二叉树划分。在二叉树的每个划分(即,非叶)节点中,用信号通知一个标志以指示使用哪种划分类型(即,水平或垂直),其中0表示水平划分,1表示垂直划分。对于四叉树划分,不需要指示划分类型,因为四叉树划分总是水平和垂直地划分块以产生具有相等尺寸的4个子块。
此外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。当前,对于P条带和B条带,一个CTU中的亮度和色度CTB共用相同的QTBT结构。然而,对于I条带,亮度CTB通过QTBT结构划分为CU,色度CTB通过另一个QTBT结构划分为色度CU。这意味着,I条带中的CU由亮度分量的编码块或两个色度分量的编码块组成,而P条带或B条带中的CU由所有三个颜色分量的编码块组成。
在HEVC中,小块的帧间预测受到限制以减少运动补偿的存储器访问,这使得4×8块和8×4块不支持双向预测,而4×4块不支持帧间预测。在JEM中实施的QTBT中,这些限制被删除了。
块分区结构可以使用三叉树(TT)。具体地,多类型树(MTT)是比QTBT更灵活的树结构。在MTT中,除了四叉树和二叉树之外,还引入了水平和垂直中心-侧(center-side)三叉树,如图1B的部分(a)和(b)所示。
图1B是垂直中心-侧三叉树分区和水平中心-侧三叉树分区的示意图。
参考图1B,部分(a)示出了垂直中心-侧三叉树分区,部分(b)示出了水平中心-侧三叉树分区。
三叉树分区的主要优点如下:
-三叉树分区是对四叉树和二叉树分区的补充,并且能够捕获位于块中心的对象,而四叉树和二叉树始终沿着块中心进行划分。
-建议的三叉树的分区的宽度和高度始终是2的幂,因此不需要附加变换。
两级树的设计主要是通过降低复杂度来促成的。理论上,遍历树的复杂度为TD,其中,T表示划分类型的数量,D是树的深度。
图1C和1D是对于表示2的整数幂的块尺寸所支持的划分的示意图。
已经提出了广义二进制划分或带有移位的二叉树(BTS)。每个块不被划分,或者被划分成两个矩形块(在水平方向或垂直方向上)。得到的CU的宽度和高度(在亮度样本中)都必须表示4的整数倍。dim表示待划分块在亮度样本中的宽度(对于垂直划分)或高度(对于水平划分)。对于两个划分方向,支持以下划分(请参见图1C和1D中所示):
1/2划分(图1C中的第1行):如果
Figure GDA0002895551000000031
则支持该划分。其类似于JEM中的QTBT的二进制划分。
1/4划分和3/4划分(图1C中的第2行):如果dim表示2的整数幂
Figure GDA0002895551000000032
Figure GDA0002895551000000033
并且dim≥16,则支持这些划分。
3/8划分和5/8划分(图1C中的第3行):如果dim表示2的整数幂
Figure GDA0002895551000000034
Figure GDA0002895551000000035
并且dim≥32,则支持这些划分。
1/3划分和2/3划分(图1D中的第1行):如果dim表示2的整数幂
Figure GDA0002895551000000036
Figure GDA0002895551000000037
并且dim≥12,则支持这些划分。
1/5划分、2/5划分、3/5划分和2/3划分(图1D中的第2行和第3行):如果dim=5·2n,
Figure GDA0002895551000000041
并且dim≥20,则支持这些划分。
在此,使用以下惯例。n/m水平划分指定一个划分,对于该划分,第一结果块(顶部块)的高度与待划分块的高度之比等于n/m。类似地,n/m垂直划分指定一个划分,对于该划分,第一结果块(左
块)的宽度与待划分块的宽度之比等于n/m。如果待划分边的尺寸不等于2n
Figure GDA0002895551000000042
Figure GDA0002895551000000043
则其等于3·2n
Figure GDA0002895551000000044
或5·2n
Figure GDA0002895551000000045
二进制划分通过其划分方向和划分比例唯一确定。二进制划分的方向是根据先前的划分进行编码的,即,不是用信号通知为水平或垂直划分,而是用信号通知为竖直或平行划分,然而,竖直或平行划分总是可以被转换为水平或垂直划分。在根级别上,不用信号通知先前的划分,并且第一竖直划分是水平划分,第一平行划分是垂直划分。二进制标志perpend_split_flag区分两个可能的方向(竖直和平行)。然后,划分比例描述划分的位置(请参见图1C和1D)。它使用二进制决策树进行编码。图1D示出了没有任何限制的带有移位的二进制划分的完整信令树。使用基于上下文的自适应算术编码(CABAC)对划分方向以及划分比例进行编码。二叉树深度的计数从不是竖直1/2划分的第一次划分开始。
图1E是不对称二叉树(ABT)块分区结构中的划分模式(树类型)的示意图。
ABT块分区结构也已经被提出了。如图1E所示,使用1:3或3:1分区对块进行分区,例如,水平_上(HOR_UP)、水平_下(HOR_DOWN)、垂直_左(VER_LEFT)、垂直_右(VER_RIGHT)。对于BTS和ABT,分区的宽度和高度可以是非2的幂。
除了已经在HEVC中使用的离散余弦变换(DCT)-II和4×4离散正弦变换(DST)-VII之外,自适应多变换(AMT)方案或增强多变换(EMT)方案被用于帧间和帧内编码块的残差编码。AMT方案使用从DCT/DST族中选定的、除HEVC中的当前变换之外的多个变换。新近引入的变换矩阵是DST-VII、DCT-VIII、DST-I和DCT-V。表1示出了所选定的DST/DCT的基函数。
表1:用于N点输入的DCT-II/V/VIII和DST-I/VII的变换基函数
Figure GDA0002895551000000051
为了保持变换矩阵的正交性,使用10位表示而不是HEVC中的8位表示,可以比HEVC中的变换矩阵更精确地量化该变换矩阵。为了将变换系数的中间值保持在16位的范围内,在水平变换和垂直变换之后,与当前HEVC变换中使用的右移相比,所有系数再右移2位。
AMT应用于宽度和高度都小于或等于64的CU,并且可通过CU级别标志来控制是否应用AMT。当CU级别标志等于0时,在CU中应用DCT-II以对残差进行编码。对于启用AMT的CU内的亮度编码块,发信号通知两个附加标志以识别要使用的水平和垂直变换。与在HEVC中一样,可以在JEM中使用变换跳过模式对块的残差进行编码。为了避免语法编码的冗余,当CU级别AMT标志不等于零时,不发信号通知变换跳过标志。
对于帧内残差编码,由于不同的帧内预测模式具有不同的残差统计,因此可使用依赖于模式的变换候选选择过程。如表2所示定义了三个变换子集,并且如表2所规定的,基于帧内预测模式选择变换子集。
表2:三个预定义的变换候选集
变换集 变换候选
0 DST-VII、DCT-VIII
1 DST-VII、DST-I
2 DST-VII、DCT-VIII
通过子集的概念,首先基于表2并使用CU的帧内预测模式来识别变换子集,其中CU级别AMT标志等于1。然后,对于水平变换和垂直变换中的每一个,根据表3并基于明确地用标志发出信号通知,从识别出的变换子集中选择两个变换候选中的一个。
表3:为每个帧内预测模式选择的(H)水平和(V)垂直变换集
帧内模式 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
V 2 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0
H 2 1 0 1 0 1 0 1 0 1 0 1 0 1 2 2 2 2
帧内模式 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
V 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 0
H 2 2 2 2 2 1 0 1 0 1 0 1 0 1 0 1 0
帧内模式 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
V 1 0 1 0 1 0 1 0 1 0 1 2 2 2 2 2 2 2
H 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0
帧内模式 53 54 55 56 57 58 59 60 61 62 63 64 65 66
V 2 2 1 0 1 0 1 0 1 0 1 0 1 0
H 0 0 1 0 1 0 1 0 1 0 1 0 1 0
然而,对于帧间预测残差,只有一个由DST-VII和DCT-VIII构成的变换集用于所有帧间模式以及水平和垂直变换。
AMT的复杂度在编码器侧相对较高,这是因为当使用暴力搜索时,需要针对每个残差块使用速率失真成本评估总共五个不同的变换候选(DCT-II和四个多变换候选)。为了减轻编码器的这种复杂度问题,为JEM中的算法加速设计了几种优化方法。
对于BTS和ABT,分区的宽度和高度可以是非2的幂,例如,6、12、20、24。这不可避免地引入了非2次幂变换的使用。非2次幂变换增加了变换核,需要单独的功能/模块来处理非2次幂变换。此外,当分区的宽度或高度可以是非2的幂时,可能会有更多的分区操作的情况,例如,平面模式、DC模式以及强帧内平滑。
发明内容
根据实施例,一种用于控制帧内和/或帧间预测以解码视频序列的方法由至少一个处理器执行并且包括:确定编码单元的宽度和高度是否是2的幂;基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化。该方法进一步包括对所述编码单元划分成的所述子块应用帧内和/或帧间预测。
根据实施例,一种用于控制帧内和/或帧间预测以解码视频序列的装置包括:至少一个存储器,配置为存储计算机程序代码;以及至少一个处理器,配置为访问所述至少一个存储器并且根据所述计算机程序代码进行操作。所述计算机程序代码包括:第一确定代码,配置为使所述至少一个处理器确定编码单元的宽度或高度是否是2的幂;划分代码,配置为使所述至少一个处理器基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化。所述计算机程序代码进一步包括第一应用代码,配置为使所述至少一个处理器对所述编码单元划分成的所述子块应用帧内和/或帧间预测。
根据实施例,一种非易失性计算机可读存储介质,用于存储指令,所述指令使处理器确定编码单元的宽度或高度是否是2的幂;基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化。所述指令进一步使处理器对所述编码单元划分成的所述子块应用帧内和/或帧间预测以解码视频序列。
附图简要说明
图1A是QTBT结构的示意图。
图1B是垂直中心-侧三叉树分区和水平中心-侧三叉树分区的示意图。
图1C和1D是对于表示2的整数幂的块尺寸所支持的划分的示意图。
图1E是ABT块分区结构中的划分模式(树类型)的示意图。
图2是根据一实施例的通信系统的简化框图。
图3是根据一实施例的视频编码器和视频解码器在流式传输环境中的放置的示意图。
图4是根据一实施例的视频解码器的功能框图。
图5是根据一实施例的视频编码器的功能框图。
图6是根据一实施例的非2的幂的块的划分的示意图。
图7是根据另一实施例的非2的幂的块的划分的示意图。
图8是根据一实施例的用于控制帧内和/或帧间预测以解码视频序列的方法的流程图。
图9是根据一实施例的用于控制帧内和/或帧间预测以解码视频序列的装置的简化框图。
图10是适于实现实施例的计算机系统的示意图。
具体实施方式
实施例涉及超越HEVC的下一代视频编码技术,例如,通用视频编码(VVC)。更具体地,描述了用于宽度或高度为非2的幂的块的变换方案,并且还描述了用于小于编码块的变换块的变换方案。
本文描述的方法可以单独使用或以任何顺序组合。此外,该方法可以通过处理电路(例如,一个或多个处理器或者一个或多个集成电路)来实现。在示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
在本说明书中,非2的幂的块表示宽度和/或高度不是2的幂的块。
图2是根据一实施例的通信系统(200)的简化框图。通信系统(200)可以包括至少两个通过网络(250)互连的终端(210-220)。对于单向数据传输,第一终端(210)可以在本地位置对视频数据进行编码以通过网络(250)传输到另一终端(220)。第二终端(220)可从网络(250)接收另一终端的已编码视频数据,对已编码视频数据进行解码,并显示恢复的视频数据。单向数据传输在媒体服务等应用中是较常见的。
图2示出了第二对终端(230和240),其被提供来支持已编码视频数据的双向传输,所述双向传输可例如在视频会议期间发生。对于双向数据传输,每个终端(230和240)可对在本地位置采集的视频数据进行编码,以通过网络(250)传输到另一终端。每个终端(230和240)还可接收另一终端传输的已编码视频数据,且可对所述已编码视频数据进行解码,并可在本地显示设备上显示恢复的视频数据。
在图2中,终端(210-240)可为服务器、个人计算机和智能电话,但实施例的原理不限于此。实施例适用于膝上型计算机、平板电脑、媒体播放器和/或专用视频会议设备。网络(250)表示在终端(210-240)之间传送已编码视频数据的任何数目的网络,包括例如有线和/或无线通信网络。通信网络(250)可在电路交换和/或分组交换信道中交换数据。该网络可包括电信网络、局域网、广域网和/或互联网。出于本公开的目的,除非在下文中有所解释,否则网络(250)的架构和拓扑对于实施例的操作来说可能是无关紧要的。
图3是根据一实施例的视频编码器和视频解码器在流式传输环境中的放置的示意图。所公开主题可同等地适用于其它支持视频的应用,包括例如视频会议、数字TV、在包括CD、DVD、存储棒等的数字介质上存储压缩视频等等。
流式传输系统可包括采集子系统(313),所述采集子系统可包括数码相机等视频源(301),所述视频源创建例如未压缩的视频样本流(302)。相较于已编码的视频码流,该样本流(302)被描绘为粗线以强调高数据量,其可由耦合至相机(301)的编码器(303)处理。编码器(303)可包括硬件、软件或软硬件组合以实现或实施如下文更详细地描述的所公开主题的各方面。相较于该样本流,已编码的视频码流(304)被描绘为细线以强调较低数据量,其可存储在流式传输服务器(305)上以供将来使用。一个或多个流式传输客户端(306和308)可访问流式传输服务器(305)以检索已编码的视频码流(304)的副本(307和309)。客户端(306)可包括视频解码器(310)。视频解码器(310)对已编码的视频码流的传入副本(307)进行解码,且产生可在显示器(312)或另一呈现装置(未描绘)上呈现的输出视频样本流(311)。在一些流式传输系统中,可根据某些视频编码/压缩标准对视频码流(304、307和309)进行编码。该些标准的实施例包括ITU-T H.265。正在开发的视频编码标准非正式地称为VVC,所公开的主题可用于VVC标准的上下文中。
图4是根据一实施例的视频解码器(310)的功能框图。
接收器(410)可接收将由解码器(310)解码的一个或多个已编码视频序列;在同一实施例或一实施例中,一次接收一个已编码视频序列,其中每个已编码视频序列的解码独立于其它已编码视频序列。可从信道(412)接收已编码视频序列,所述信道可以是通向存储已编码的视频数据的存储装置的硬件/软件链路。接收器(410)可接收已编码的视频数据以及其它数据,例如,可转发到它们各自的使用实体(未标示)的已编码音频数据和/或辅助数据流。接收器(410)可将已编码视频序列与其它数据分开。为了防止网络抖动,缓冲存储器(415)可耦接在接收器(410)与熵解码器/解析器(420)(此后称为“解析器”)之间。而当接收器(410)从具有足够带宽和可控性的存储/转发装置或从等时同步网络接收数据时,也可能不需要配置缓冲存储器(415),或可以将所述缓冲存储器做得较小。当然,为了在互联网等业务分组网络上使用,也可能需要缓冲存储器(415),所述缓冲存储器可相对较大且可具有自适应性大小。
视频解码器(310)可包括解析器(420)以根据熵编码的视频序列重建符号(421)。这些符号的类别包括用于管理视频解码器(310)的操作的信息,以及用以控制诸如显示屏(312)等显示装置的潜在信息,所述显示装置不是解码器的组成部分,但可耦接到解码器,如图4中所示。用于显示装置的控制信息可以是辅助增强信息(Supplemental EnhancementInformation,SEI消息)或视频可用性信息(Video Usability Information,VUI)的参数集片段(未标示)。解析器(420)可对接收到的已编码视频序列进行解析/熵解码。已编码视频序列的编码可根据视频编码技术或标准进行,且可遵循本领域技术人员公知的原理,包括可变长度编码、霍夫曼编码(Huffman coding)、具有或不具有上下文灵敏度的算术编码等等。解析器(420)可基于对应于群组的至少一个参数,从已编码视频序列提取用于视频解码器中的像素的子群中的至少一个子群的子群参数集。子群可包括图片群组(Group ofPictures,GOP)、图片、图块、条带、宏块、CU、块、TU、PU等等。熵解码器/解析器还可从已编码视频序列提取信息,例如变换系数、量化器参数(QP)值、运动矢量等等。
解析器(420)可对从缓冲存储器(415)接收的视频序列执行熵解码/解析操作,从而创建符号(421)。解析器(420)可以接收编码的数据,并且选择性地解码特定符号(421)。此外,解析器(420)可以确定是否将特定符号(421)提供给运动补偿预测单元(453)、缩放器/逆变换单元(451)、帧内预测单元(452)或环路滤波器单元(454)。
取决于已编码视频图片或一部分已编码视频图片(例如:帧间图片和帧内图片、帧间块和帧内块)的类型以及其它因素,符号(421)的重建可涉及多个不同单元。涉及哪些单元以及涉及方式可由解析器(420)从已编码视频序列解析的子群控制信息控制。为了简洁起见,未描述解析器(420)与下文的多个单元之间的此类子群控制信息流。
除已经提及的功能块以外,解码器(310)可在概念上细分成如下文所描述的数个功能单元。在商业约束下运行的实际实施例中,这些单元中的许多单元彼此紧密交互并且可以彼此集成。然而,出于描述所公开主题的目的,概念上细分成下文的功能单元是适当的。
第一单元是缩放器/逆变换单元(451)。缩放器/逆变换单元(451)从解析器(420)接收作为符号(421)的量化变换系数以及控制信息,包括使用哪种变换方式、块大小、量化因子、量化缩放矩阵等。缩放器/逆变换单元(451)可输出包括样本值的块,所述样本值可输入到聚合器(455)中。
在一些情况下,缩放器/逆变换单元(451)的输出样本可属于帧内编码块;即:不使用来自先前重建的图片的预测性信息,但可使用来自当前图片的先前重建部分的预测性信息的块。此类预测性信息可由帧内图片预测单元(452)提供。在一些情况下,帧内图片预测单元(452)采用从当前(部分重建)图片(456)提取的已重建信息生成大小和形状与正在重建的块相同的周围块。在一些情况下,聚合器(455)基于每个样本,将帧内预测单元(452)生成的预测信息添加到由缩放器/逆变换单元(451)提供的输出样本信息中。
在其它情况下,缩放器/逆变换单元(451)的输出样本可属于帧间编码和潜在运动补偿块。在此情况下,运动补偿预测单元(453)可访问参考图片存储器(457)以提取用于预测的样本。在根据符号(421)对提取的样本进行运动补偿之后,这些样本可由聚合器(455)添加到缩放器/逆变换单元的输出(在这种情况下被称作残差样本或残差信号),从而生成输出样本信息。运动补偿预测单元从参考图片存储器内的地址获取预测样本可受到运动矢量控制,且所述运动矢量以所述符号(421)的形式而供运动补偿预测单元使用,所述符号(421)例如是包括X、Y和参考图片分量。运动补偿还可包括在使用子样本精确运动矢量时,从参考图片存储器提取的样本值的内插、运动矢量预测机制等等。
聚合器(455)的输出样本可在环路滤波器单元(454)中被各种环路滤波技术采用。视频压缩技术可包括环路内滤波器技术,所述环路内滤波器技术受控于包括在已编码视频码流中的参数,且所述参数作为来自解析器(420)的符号(421)可用于环路滤波器单元(454)。然而,在其他实施例中,视频压缩技术还可响应于在解码已编码图片或已编码视频序列的先前(按解码次序)部分期间获得的元信息,以及响应于先前重建且经过环路滤波的样本值。
环路滤波器单元(454)的输出可以是样本流,所述样本流可输出到显示装置(312)以及存储在参考图片存储器(456),以用于后续的帧间图片预测。
一旦完全重建,某些已编码图片就可用作参考图片以用于将来预测。一旦已编码图片被完全重建,且已编码图片(通过例如解析器(420))被识别为参考图片,则当前参考图片(456)可变为参考图片存储器(457)的一部分,且可在开始重建后续已编码图片之前重新分配新的当前图片存储器。
视频解码器(310)可根据记录在例如ITU-T H.265标准中的预定视频压缩技术执行解码操作。在已编码视频序列遵循视频压缩技术或标准的语法的意义上,已编码视频序列可符合所使用的视频压缩技术或标准指定的语法,如在视频压缩技术文献或标准中,特别是在其中的配置文件中所指定的语法。对于合规性,还要求已编码视频序列的复杂度处于视频压缩技术或标准的层级所限定的范围内。在一些情况下,层级限制最大图片大小、最大帧率、最大重建取样率(以例如每秒兆(mega)个样本为单位进行测量)、最大参考图片大小等。在一些情况下,由层级设定的限制可通过假想参考解码器(Hypothetical ReferenceDecoder,HRD)规范和在已编码视频序列中用信号表示的HRD缓冲器管理的元数据来进一步限定。
在实施例中,接收器(410)可连同已编码视频一起接收附加(冗余)数据。所述附加数据可以是已编码视频序列的一部分。所述附加数据可由视频解码器(310)用以对数据进行适当解码和/或较准确地重建原始视频数据。附加数据可呈例如时间、空间或信噪比(signal noise ratio,SNR)增强层、冗余条带、冗余图片、前向纠错码等形式。
图5是根据一实施例的视频编码器(303)的功能框图。
编码器(303)可从视频源(301)(并非编码器的一部分)接收视频样本,所述视频源可采集将由编码器(303)编码的视频图像。
视频源(301)可提供将由编码器(303)编码的呈数字视频样本流形式的源视频序列,所述数字视频样本流可具有任何合适位深度(例如:8位、10位、12位……)、任何色彩空间(例如BT.601Y CrCB、RGB……)和任何合适取样结构(例如Y CrCb 4:2:0、Y CrCb 4:4:4)。在媒体服务系统中,视频源(301)可以是存储先前已准备的视频的存储装置。在视频会议系统中,视频源(301)可以是采集本地图像信息作为视频序列的相机。可将视频数据提供为多个单独的图片,当按顺序观看时,这些图片被赋予运动。图片自身可构建为空间像素阵列,其中取决于所用的取样结构、色彩空间等,每个像素可包括一个或多个样本。所属领域的技术人员可以很容易理解像素与样本之间的关系。下文侧重于描述样本。
根据实施例,编码器(303)可实时或在由应用所要求的任何其它时间约束下,将源视频序列的图片编码且压缩成已编码视频序列(543)。施行适当的编码速度是控制器(550)的一个功能。控制器控制如下文所描述的其它功能单元且在功能上耦接到这些单元。为了简洁起见,图中未标示耦接。由控制器设置的参数可包括速率控制相关参数(图片跳过、量化器、率失真优化技术的λ值等)、图片大小、图片群组(group of pictures,GOP)布局,最大运动矢量搜索范围等。本领域技术人员可以容易地识别控制器(550)的其他功能,因为这些功能可能涉及针对某一系统设计优化的视频编码器(303)。
一些视频编码器以本领域技术人员容易理解为“编码环路”的方式进行操作。作为简单的描述,编码环路可以由编码器(530)的编码部分(以下称为“源编码器”,负责基于待编码的输入图片和参考图片创建符号)和嵌入于编码器(303)中的(本地)解码器(533)组成。解码器(533)以(远程)解码器创建样本数据的方式重建符号以创建样本数据(因为在公开的主题中所考虑的视频压缩技术中,符号与已编码视频码流之间的任何压缩是无损的)。将重建的样本流输入到参考图片存储器(534)。由于符号流的解码产生与解码器位置(本地或远程)无关的位精确结果,因此参考图片存储器中的内容在本地编码器与远程编码器之间也是按比特位精确对应的。换句话说,编码器的预测部分“看到”的参考图片样本与解码器将在解码期间使用预测时所“看到”的样本值完全相同。这种参考图片同步性基本原理(以及在例如因信道误差而无法维持同步性的情况下产生的漂移)是本领域技术人员公知的。
“本地”解码器(533)的操作可与例如已在上文结合图4详细描述视频解码器(310)的“远程”解码器相同。然而,另外简要参考图4,当符号可用且熵编码器(545)和解析器(420)能够无损地将符号编码/解码为已编码视频序列时,包括信道(412)、接收器(410)、缓冲存储器(415)和解析器(420)在内的解码器(310)的熵解码部分,可能无法完全在本地解码器(533)中实施。
此时可以观察到,除存在于解码器中的解析/熵解码之外的任何解码器技术,也必定以基本上相同的功能形式存在于对应的编码器中。可简化编码器技术的描述,因为编码器技术与全面地描述的解码器技术互逆。仅在某些区域中需要更详细的描述,并且在下文提供。
作为操作的一部分,源编码器(530)可执行运动补偿预测编码。参考来自视频序列中被指定为“参考帧”的一个或多个先前已编码帧,所述运动补偿预测编码对输入帧进行预测性编码。以此方式,编码引擎(532)对输入帧的像素块与参考帧的像素块之间的差异进行编码,所述参考帧可被选作所述输入帧的预测参考。
本地视频解码器(533)可基于源编码器(530)创建的符号,对可指定为参考帧的已编码视频数据进行解码。编码引擎(532)的操作可为有损过程。当已编码视频数据可在视频解码器(图4中未示)处被解码时,重建的视频序列通常可以是带有一些误差的源视频序列的副本。本地视频解码器(533)复制解码过程,所述解码过程可由视频解码器对参考帧执行,且可使重建的参考帧存储在参考图片存储器(534)中。以此方式,编码器(303)可在本地存储重建的参考帧的副本,所述副本与将由远端视频解码器获得的重建参考帧具有共同内容(不存在传输误差)。
预测器(535)可针对编码引擎(532)执行预测搜索。即,对于将要编码的新帧,预测器(535)可在参考图片存储器(534)中搜索可作为所述新图片的适当预测参考的样本数据(作为候选参考像素块)或某些元数据,例如参考图片运动矢量、块形状等。预测器(535)可基于样本块逐像素块操作,以找到合适的预测参考。在一些情况下,根据预测器(535)获得的搜索结果,可确定输入图片可具有从参考图片存储器(534)中存储的多个参考图片取得的预测参考。
控制器(550)可管理视频编码器(530)的编码操作,包括例如设置用于对视频数据进行编码的参数和子群参数。
可在熵编码器(545)中对所有上述功能单元的输出进行熵编码。熵编码器根据本领域技术人员已知的,例如霍夫曼编码、可变长度编码、算术编码等技术对各种功能单元生成的符号进行无损压缩,从而将所述符号转换成已编码视频序列。
传输器(540)可缓冲由熵编码器(545)创建的已编码视频序列,从而为通过通信信道(560)进行传输做准备,所述通信信道可以是通向可存储已编码的视频数据的存储装置的硬件/软件链路。传输器(540)可将来自视频编码器(303)的已编码视频数据与要传输的其它数据合并,所述其它数据例如是已编码音频数据和/或辅助数据流(未示出来源)。
控制器(550)可管理编码器(303)的操作。在编码期间,控制器(550)可以为每个已编码图片分配某一已编码图片类型,但这可能影响可应用于相应的图片的编码技术。例如,通常可将图片分配为以下任一种帧类型:
帧内图片(I图片),其可以是不将序列中的任何其它帧用作预测源就可被编码和解码的图片。一些视频编解码器容许不同类型的帧内图片,包括例如独立解码器刷新(Independent Decoder Refresh)图片。所属领域的技术人员了解I图片的变体及其相应的应用和特征。
预测性图片(P图片),其可以是可使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多一个运动矢量和参考索引来预测每个块的样本值。
双向预测性图片(B图片),其可以是可使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多两个运动矢量和参考索引来预测每个块的样本值。类似地,多个预测性图片可使用多于两个参考图片和相关联元数据以用于重建单个块。
源图片通常可在空间上细分成多个样本块(例如,4×4、8×8、4×8或16×16个样本的块),且逐块进行编码。这些块可参考其它(已编码)块进行预测编码,根据应用于块的相应图片的编码分配来确定所述其它块。举例来说,I图片的块可进行非预测编码,或所述块可参考同一图片的已经编码的块来进行预测编码(空间预测或帧内预测)。P图片的像素块可参考一个先前编码的参考图片通过空间预测或通过时域预测进行非预测编码。B图片的块可参考一个或两个先前编码的参考图片通过空间预测或通过时域预测进行非预测编码。
视频编码器(303)可根据例如ITU-T H.265建议书的预定视频编码技术或标准执行编码操作。在操作中,视频编码器(303)可执行各种压缩操作,包括利用输入视频序列中的时间和空间冗余的预测编码操作。因此,已编码视频数据可符合所用视频编码技术或标准指定的语法。
在实施例中,传输器(540)可在传输已编码的视频时传输附加数据。视频编码器(530)可将此类数据作为已编码视频序列的一部分。附加数据可包括时间/空间/SNR增强层、冗余图片和条带等其它形式的冗余数据、补充增强信息(SEI)消息、视觉可用性信息(VUI)参数集片段等。
图6是根据一实施例的非2的幂的块的划分的示意图。
对于非2的幂的块,将该块水平或垂直地划分为宽度或高度为2的幂的多个子块,并且对每个子块执行主变换。
在实施例中,将具有宽度或高度值的块划分为多个子块,每个子块的宽度或高度为2的幂,并且以最小化子块的数量或者最大化每个子块的宽度或高度的方式来进行划分。
在示例中,对于宽度或高度为6、12、20、24、28、36、40、44、48、52、56,或60,可以分别将块水平或垂直地划分为4+2、8+4、16+4、16+8、16+8+4、32+4、32+8、32+8+4、32+16、32+16+4、32+16+8和32+16+8+4个子块,其中M+N+K+J表示水平或垂直地将块划分为4个子块,其宽度或高度分别为M、N、K和J。
参考图6的部分(a)和(b),可以将宽度为12(其不是2的幂)的块610划分为宽度分别为8和4的子块620和630。
在实施例中,可以将具有宽度或高度值的块划分为多个子块,每个子块的宽度或高度为2的幂,并且关于如何排列这些子块的空间顺序可以用信号通知或隐式地导出。空间顺序指定这些子块的相对位置。例如,可以将12x8块从左到右划分为一个8x8块和一个4x8块,或者可以从左到右划分为一个4x8块和一个8x8块。
参考图6的部分(a)和(c),基于信号或已解码的信息(包括但不限于相邻块分区尺寸、CTU内的相对位置、父块(即,上一个四叉树级别)分区类型、亮度或色度分量、以及每个子块分区的尺寸),可以将块宽度为12(其不是2的幂)的块610划分为宽度分别为8和4的两个子块620和630,或者可以划分为宽度分别为4和8的两个子块640和650。
图7是根据另一实施例的非2的幂的块的划分的示意图。
在实施例中,将具有宽度或高度值的块划分为多个子块,每个子块的宽度或高度为2的幂,并且可以用信号通知或隐式地导出这些子块的数量和空间顺序。在示例中,对于宽度或高度为12的块,可以将该块划分为两个8+4子块、两个4+8子块,或三个4+4+4子块。
参考图7的部分(a)和(b),可以将块宽度为12(不是2的幂)的块710划分为三个子块720、730和740,每个子块的宽度为4。
在示例中,为每个块尺寸预定义了所有子块划分模式的使用。
在实施例中,将具有宽度或高度值的块划分为多个子块,每个子块的宽度或高度为2的幂,并且可以用信号通知或基于上述解码信息隐式地导出这些子块的编码顺序。
在实施例中,对于某些块尺寸,不是对每个子块进行变换,而是仅对选择的块执行变换,并且通过对相邻块的重构样本进行内插来导出剩余块的重建样本。
在示例中,对于块50x64,将该块水平地划分为32x64、4x64和16x64三个子块。首先对32x64和16x64子块进行编码,然后通过对左32x64块和右16x64块的重建样本进行内插导出中间4x64块的重建样本。
在实施例中,对于整个块用信号通知一个编码块标志(CBF),并且可以进一步为每个子块用信号通知子块CBF以指示对于相关联的子块是否存在至少一个非零系数。
如果整个块的CBF是1,并且按照编码顺序,最后一个子块的所有在前子块的子块CBF都是0,则最后一个子块的CBF不用信号通知,而是推导为1。
在实施例中,对于某些块尺寸,不是对每个子块进行变换,而是仅对选择的块执行变换,并且对剩余块应用变换跳过。
在示例中,如果将块划分为多个子块,对于大于一个尺寸的子块应用变换,否则应用变换跳过。块尺寸通过块宽度、块高度、块区域尺寸或者块宽度与高度比来测量。
在实施例中,子块共用相同类型的主变换和/或二次变换,如通过信号通知的主变换索引(例如,AMT索引)和/或二次变换索引所指示的。
在另一个实施例中,子块使用不同类型的主变换和/或二次变换,并且选择取决于子块在当前块内的的相对位置。
对于非2的幂的块宽度值M或高度值N,在水平或垂直方向上对块进行填充以达到最接近但大于非2的幂的值的块宽度或高度。
在实施例中,对于宽度或高度为N的块,将块宽度或高度填充为
Figure GDA0002895551000000171
例如,当N是6、12、20、24、28、36、40、44、48、52、56或60时,将块宽度或高度分别填充为8、16、32、32、32、64、64、64、64、64、64或64。
在实施例中,在哪里填充样本(即,左或右、顶部或底部)可以用信号通知,或者是固定的,或者隐式地导出。
在实施例中,填充的值可以是固定值,例如,0或1<<(bitDepth-1),其中bitDepth是图片样本的位深度。
在实施例中,可以使用残差样本来导出填充的值。
在示例中,填充的值是所有残差样本的平均值。
在另一个示例中,填充的值是位于同一行或列中的残差样本的平均值。
在另一个示例中,通过对残差样本(例如,位于同一行或列中的残差样本)进行外插来生成填充的值。
在另一个示例中,通过对位于变换域中的变换系数的左上MxN区域之外的变换能量最小化来导出填充的值。
在实施例中,在填充之后,执行2的幂的变换,其大于填充之前的块宽度或高度,用信号通知所有变换系数,并且基于填充样本的方法进一步调整重建的残差样本或去量化的变换系数。
在示例中,如果导出填充的残差样本值为每一行(列)的平均值,则在去量化后,在变换域中,在一个量化步长内调整去量化的变换系数值,从而使填充位置处的重建残差样本与当前块的重建样本的每一行(列)的平均值之间的绝对差最小化。
在示例中,仅调整左上的低频系数,并且低频系数可以是左上MxN个系数,其中M和N是每个块宽度和高度的预定义的整数。可替代地,低频系数可以仅是DC系数,仅是左上的AC系数,或大于预定阈值的系数。
在实施例中,在填充之后,执行2的幂的变换,其大于填充之前的块宽度或高度,并且执行归零处理以去除位于左上MxN之外的所有变换系数,其中M和N是填充之前的块宽度和块高度。
在实施例中,限制了只能对非2的幂的块进行帧间编码,而不进行帧内编码。
当对由A表示的块进行划分时,如果该块A(其高度和宽度均是2的幂)被进一步划分为多个子块(由a0、a1…表示),并且至少一个分区a0、a1…不是2的幂,则限制对整个块A执行重叠变换,这意味着,该变换与多个子块(即,a0、a1…)重叠。以这种方式,对整个块A进行一次变换,从而总是基于2的幂进行变换。在这里,重叠变换是指覆盖多个子块分区的单个变换,尽管这些子块分区没有重叠区域。
在实施例中,限制非2的幂的块必须与零CBF或仅与DC值相关联。
支持用于多个N×2M的尺寸的变换,其中M和N是整数,并且N不是2的幂。
在示例中,N是3,从而支持3点、6点、12点…变换。
在实施例中,因为支持N×2M变换,所以支持更多的变换尺寸,并且可以应用N×2M,从而进一步减少子块的数量。例如,当支持3×2M变换时,对于宽度或高度是6、12、20、24、28、36、40、44、48、52、56或60的块,水平地或垂直地将该块划分为6、12、16+4、16+8、16+12、32+4、32+8、32+12、32+16、48+4、48+8和48+12个子块。
约束变换尺寸的数量,使得其小于有效CU宽度或高度的数量,其中CU宽度小于或等于最大变换尺寸,并且CU高度小于或等于最大变换尺寸。
在实施例中,不允许某个变换尺寸。
在示例中,如果变换尺寸不能表示为两个数字(每个都是2的幂)的和,则不允许该变换尺寸,例如受此约束不允许28。在这种情况下,具有这种宽度或高度的块必须使用多个子变换。
在另一个示例中,需要尺寸为N×2M的变换,其中M和N是整数,并且N不是2的幂。为了减少变换的次数,仅允许奇数M,例如变换尺寸6、24或48。当一个变换尺寸被需要但又不被允许时,例如12,则将变换划分为较小的允许的变换。
图8是根据一实施例的用于控制帧内和/或帧间预测以解码视频序列的方法(800)的流程图。在一些实施方式中,图8的一个或多个处理框可由解码器(310)执行。在一些实施方式中,图8的一个或多个处理框可由另一个设备或者与解码器(310)分离的或包括解码器(310)的一组设备(例如编码器(303))执行。
参考图8,在第一框(810)中,方法(800)包括确定编码单元的宽度或高度是否是2的幂。
在第二框(820)中,方法(800)包括,基于确定编码单元的宽度或高度不是2的幂,将编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得子块的数量被最小化。
所述划分可以包括,基于确定编码单元的宽度或高度为6、12、20、24、28、36、40、44、48、52、56或60,将编码单元划分成子块,其分别具有4+2、8+4、16+4、16+8、16+8+4、32+4、32+8、32+8+4、32+16、32+16+4、32+16+8,或32+16+8+4的宽度或高度,其中M+N+K+J分别表示子块的宽度或高度。
该方法(800)还可包括,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定编码单元划分成的子块的空间顺序。
所述划分可以包括:基于确定编码单元的宽度或高度不是2的幂,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、每个子块的宽度或高度、以及分别用于编码单元的划分尺寸的预定模式中的任何一个或任意组合,确定编码单元将被划分成的子块的数量,并进一步基于确定的子块的数量将编码单元划分成子块。
在第三框(830)中,方法(800)包括对编码单元划分成的子块应用帧内和/或帧间预测。
该方法(800)还可包括,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合、确定子块被编码的顺序。
该方法(800)还可包括:为编码单元设置第一CBF,第一CBF指示对于编码单元是否存在非零系数,以及为每个子块设置第二CBF,第二CBF指示对于子块中的各个子块是否存在非零系数)。
该方法(800)还可包括,基于将编码单元的第一CBF设置为1,以及按编码顺序将子块中的最后一个子块之前的子块中的先前子块的第二CBF设置为0,将子块中的最后一个子块的第二CBF设置为1。
该方法(800)还可包括,基于子块中的一个子块的尺寸,对子块中的该一个子块应用变换。子块中的该一个子块的尺寸可以包括子块中的该一个子块的宽度、高度、面积、以及宽度与高度比中的任何一个或任意组合。
该方法(800)还可包括:基于编码单元中的子块中的一个子块的位置,选择多个变换中的一个变换,并对子块中的该一个子块应用所选择的多个变换中的一个变换。
该方法(800)还可包括:基于确定编码单元的宽度或高度不是2的幂,对编码单元仅应用帧间预测。
该方法(800)还可包括:基于确定编码单元的宽度和高度中的每一个为2的幂,将编码单元划分成多个分区,确定分区中的任何一个或任意组合的宽度或高度是否是2的幂,并且基于确定分区中的任何一个或任意组合的宽度或高度不是2的幂,对编码单元应用变换。
该方法(800)还可包括:基于确定编码单元的宽度或高度不是2的幂,将编码单元的CBF设置为0,第一CBF指示对于编码单元是否存在非零系数,或将编码单元与指示预测块的预测值的DC值相关联。
尽管图8示出了方法(800)的示例框,但在一些实施方式中,方法(800)可以包括比图8中所描绘的更多的框、更少的框、不同的框或不同排列的框。另外或可替代地,方法(800)的两个或更多个框可以被并行地执行。
此外,所提出的方法可以由处理电路(例如,一个或多个处理器或者一个或多个集成电路)来实现。在示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序以执行所提出的方法中一个或多个。
图9是根据一实施例的用于控制帧内和/或帧间预测以解码视频序列的装置(900)的简化框图。
参考图9,装置(900)包括确定代码(910)(第一确定代码)、划分代码(920)以及应用代码(930)(第一应用代码)。
确定代码(910)被配置为,确定编码单元的宽度或高度是否是2的幂。
划分代码(920)被配置为,基于确定编码单元的宽度或高度不是2的幂,将编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得子块的数量被最小化。
划分代码(920)被进一步配置为,基于确定编码单元的宽度或高度为6、12、20、24、28、36、40、44、48、52、56或60,将编码单元划分成子块,其分别具有4+2、8+4、16+4、16+8、16+8+4、32+4、32+8、32+8+4、32+16、32+16+4、32+16+8,或32+16+8+4的宽度或高度,其中M+N+K+J分别表示子块的宽度或高度。
划分代码(920)被进一步配置为,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定编码单元划分成的子块的空间顺序。
划分代码(920)被进一步配置为:基于确定编码单元的宽度或高度不是2的幂,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、每个子块的宽度或高度、以及分别用于编码单元的划分尺寸的预定模式中的任何一个或任意组合,确定编码单元将被划分成的子块的数量,并进一步基于所确定的子块的数量将编码单元划分成子块。
应用代码(930)被配置为,对编码单元划分成的子块应用帧内和/或帧间预测。
该装置可以进一步包括第二确定代码,其被配置为,基于信号、子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定子块被编码的顺序。
该装置可以进一步包括设置代码,其被配置为,为编码单元设置第一CBF,第一CBF指示对于编码单元是否存在非零系数,以及为每个子块设置第二CBF,第二CBF指示对于子块中的各个子块是否存在非零系数。
设置代码可以被进一步配置为,基于将编码单元的第一CBF设置为1,以及按编码顺序将子块中的最后一个子块之前的子块中的先前子块的第二CBF设置为0,将子块中的最后一个子块的第二CBF设置为1。
该装置可以进一步包括第二应用代码,其被配置为,使至少一个处理器基于子块中的一个子块的尺寸对子块中的该一个子块应用变换。子块中的该一个子块的尺寸可以包括子块中的该一个子块的宽度、高度、面积、以及宽度与高度比中的任何一个或任意组合。
该装置可以进一步包括第二应用代码,其被配置为,基于编码单元中的子块中的一个子块的位置,选择多个变换中的一个变换,并对子块中的该一个子块应用所选择的多个变换中的一个变换。
应用代码(930)可以被进一步配置为,基于确定编码单元的宽度或高度不是2的幂,对编码单元仅应用帧间预测。
划分代码(920)可以被进一步配置为,基于确定编码单元的宽度和高度中的每一个为2的幂,将编码单元划分成多个分区。确定代码(910)可以被进一步配置为,确定分区中的任何一个或任意组合的宽度或高度是否是2的幂。该装置可以进一步包括第二应用代码,其被配置为,基于确定分区中的任何一个或任意组合的宽度或高度不是2的幂,对编码单元应用变换。
该装置可以进一步包括设置代码,其被配置为,基于确定编码单元的宽度或高度不是2的幂,将编码单元的CBF设置为0,第一CBF指示对于编码单元是否存在非零系数,或将编码单元与指示预测块的预测值的DC值相关联。
上述技术可以通过计算机可读指令实现为计算机软件,并且物理地存储在一个或多个计算机可读介质中。
图10是适于实现实施例的计算机系统(1000)的示意图。
所述计算机软件可通过任何合适的机器代码或计算机语言进行编码,通过汇编、编译、链接等机制创建包括指令的代码,所述指令可由多个计算机中央处理单元(CPU),图形处理单元(GPU)等直接执行或通过译码、微代码等方式执行。
所述指令可以在各种类型的计算机或其组件上执行,包括例如个人计算机、平板电脑、服务器、智能手机、游戏设备、物联网设备等。
图10所示的用于计算机系统(1000)的组件本质上是示例性的,并不用于对实现实施例的计算机软件的使用范围或功能进行任何限制。也不应将组件的配置解释为与计算机系统(1000)的示例性实施例中所示的任一组件或其组合具有任何依赖性或要求。
计算机系统(1000)可以包括某些人机界面输入设备。这种人机界面输入设备可以通过触觉输入(如:键盘输入、滑动、数据手套移动)、音频输入(如:声音、掌声)、视觉输入(如:手势)、嗅觉输入(未示出),对一个或多个人类用户的输入做出响应。所述人机界面设备还可用于捕获某些媒体,气与人类有意识的输入不必直接相关,如音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静止影像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
人机界面输入设备可包括以下中的一个或多个(仅绘出其中一个):键盘(1001)、鼠标(1002)、触控板(1003)、触摸屏(1010)、数据手套(1004)、操纵杆(1005)、麦克风(1006)、扫描仪(1007)、照相机(1008)。
计算机系统(1000)还可以包括某些人机界面输出设备。这种人机界面输出设备可以通过例如触觉输出、声音、光和嗅觉/味觉来刺激一个或多个人类用户的感觉。这样的人机界面输出设备可包括触觉输出设备(例如通过触摸屏(1010)、数据手套(1004)或操纵杆(1005)的触觉反馈,但也可以有不用作输入设备的触觉反馈设备)、音频输出设备(例如,扬声器(1009)、耳机(未示出))、视觉输出设备(例如,包括阴极射线管屏幕、液晶屏幕、等离子屏幕、有机发光二极管屏的屏幕(1010),其中每一个都具有或没有触摸屏输入功能、每一个都具有或没有触觉反馈功能——其中一些可通过诸如立体画面输出的手段输出二维视觉输出或三维以上的输出;虚拟现实眼镜(未示出)、全息显示器和放烟箱(未示出))以及打印机(未示出)。
计算机系统(1000)还可以包括人可访问的存储设备及其相关介质,如包括具有CD/DVD的高密度只读/可重写式光盘(CD/DVD ROM/RW)(1020)或类似介质(1021)的光学介质、拇指驱动器(1022)、可移动硬盘驱动器或固体状态驱动器(1023),诸如磁带和软盘(未示出)的传统磁介质,诸如安全软件保护器(未示出)等的基于ROM/ASIC/PLD的专用设备,等等。
本领域技术人员还应当理解,结合所公开的主题使用的术语“计算机可读介质”不包括传输介质、载波或其它瞬时信号。
计算机系统(1000)还可以包括通往一个或多个通信网络的接口。例如,网络可以是无线的、有线的、光学的。网络还可为局域网、广域网、城域网、车载网络和工业网络、实时网络、延迟容忍网络等等。网络的示例包括以太网、无线局域网、蜂窝网络(全球移动通信系统(GSM)、第三代(3G)、第四代(4G)、第五代(5G)、长期演进(LTE)等)等局域网、电视有线或无线广域数字网络(包括有线电视、卫星电视、和地面广播电视)、车载和工业网络(包括CANBus)等等。某些网络通常需要外部网络接口适配器,用于连接到某些通用数据端口或外围总线(1049)(例如,计算机系统(1000)的通用串行总线(USB)端口);其它系统通常通过连接到如下所述的系统总线集成到计算机系统(1000)的核心(例如,以太网接口集成到PC计算机系统或蜂窝网络接口集成到智能电话计算机系统)。通过使用这些网络中的任何一个,计算机系统(1000)可以与其它实体进行通信。所述通信可以是单向的,仅用于接收(例如,无线电视),单向的仅用于发送(例如CAN总线到某些CAN总线设备),或双向的,例如通过局域或广域数字网络到其它计算机系统。上述的每个网络和网络接口可使用某些协议和协议栈。
上述的人机界面设备、人可访问的存储设备以及网络接口可以连接到计算机系统(1000)的核心(1040)。
核心(1040)可包括一个或多个中央处理单元(CPU)(1041)、图形处理单元(GPU)(1042)、以现场可编程门阵列(FPGA)(1043)形式的专用可编程处理单元、用于特定任务的硬件加速器(1044)等。这些设备以及只读存储器(ROM)(1045)、随机存取存储器(1046)、内部大容量存储器(例如内部非用户可存取硬盘驱动器、固态驱动器(SSD)等)(1047)等可通过系统总线(1048)进行连接。在某些计算机系统中,可以以一个或多个物理插头的形式访问系统总线(1048),以便可通过额外的中央处理单元、图形处理单元等进行扩展。外围装置可直接附接到核心的系统总线(1048),或通过外围总线(1049)进行连接。外围总线的体系结构包括外围组件互联(PCI)、通用串行总线USB等。
CPU(1041)、GPU(1042)、FPGA(1043)和加速器(1044)可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在ROM(1045)或RAM(1046)中。过渡数据也可以存储在RAM(1046)中,而永久数据可以存储在例如内部大容量存储器(1047)中。通过使用高速缓冲存储器可实现对任何存储器设备的快速存储和检索,高速缓冲存储器可与一个或多个CPU(1041)、GPU(1042)、大容量存储器(1047)、ROM(1045)、RAM(1046)等紧密关联。
所述计算机可读介质上可具有计算机代码,用于执行各种计算机实现的操作。介质和计算机代码可以是为实施例的目的而特别设计和构造的,也可以是计算机软件领域的技术人员所熟知和可用的介质和代码。
作为实施例而非限制,具有体系结构(1000)的计算机系统,特别是核心(1040),可以作为处理器(包括CPU、GPU、FPGA、加速器等)提供执行包含在一个或多个有形的计算机可读介质中的软件的功能。这种计算机可读介质可以是与上述的用户可访问的大容量存储器相关联的介质,以及具有非易失性的核心(1040)的特定存储器,例如核心内部大容量存储器(1047)或ROM(1045)。实现各种实施例的软件可以存储在这种设备中并且由核心(1040)执行。根据特定需要,计算机可读介质可包括一个或一个以上存储设备或芯片。该软件可以使得核心(1040)特别是其中的处理器(包括CPU、GPU、FPGA等)执行本文所述的特定过程或特定过程的特定部分,包括定义存储在RAM(1046)中的数据结构以及根据软件定义的过程来修改这种数据结构。另外或作为替代,计算机系统可以提供逻辑硬连线或以其它方式包含在电路(例如,加速器(1044))中的功能,该电路可以代替软件或与软件一起运行以执行本文所述的特定过程或特定过程的特定部分。在适当的情况下,对软件的引用可以包括逻辑,反之亦然。在适当的情况下,对计算机可读介质的引用可包括存储执行软件的电路(如集成电路(IC)),包含执行逻辑的电路,或两者兼备。实施例包括任何合适的硬件和软件组合。
虽然本公开已对多个示例性实施例进行了描述,但实施例的各种变更、排列和各种等同替换均属于本公开的范围内。因此应理解,本领域技术人员可以设计多种系统和方法,所述系统和方法虽然未在本文中明确示出或描述,但其体现了本公开的原则,因此属于本公开的精神和范围之内。

Claims (20)

1.一种控制帧内和/或帧间预测以解码视频序列的方法,其特征在于,该方法由至少一个处理器执行,并且该方法包括:
确定编码单元的宽度或高度是否是2的幂;
基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化;以及
对所述编码单元划分成的所述子块应用帧内和/或帧间预测。
2.根据权利要求1所述的方法,其特征在于,基于确定所述编码单元的宽度或高度为6、12、20、24、28、36、40、44、48、52、56或60,所述划分包括:将所述编码单元划分成所述子块,所述子块分别具有4+2、8+4、16+4、16+8、16+8+4、32+4、32+8、32+8+4、32+16、32+16+4、32+16+8,或32+16+8+4的宽度或高度,其中M+N+K+J分别表示所述子块的宽度或高度。
3.根据权利要求1所述的方法,其特征在于,进一步包括,基于信号、所述子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每一个子块的宽度或高度中的任何一个或任意组合,确定所述编码单元被划分成的所述子块的空间顺序。
4.根据权利要求1所述的方法,其特征在于,基于确定所述编码单元的宽度或高度不是2的幂,所述划分包括:
基于信号、所述子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、每个子块的宽度或高度、以及分别用于所述编码单元的划分尺寸的预定模式中的任何一个或任意组合,确定所述编码单元将被划分成的所述子块的数量;以及
进一步基于确定的所述子块的数量,将所述编码单元划分成所述子块。
5.根据权利要求1所述的方法,其特征在于,进一步包括:基于信号、所述子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定所述子块被编码的顺序。
6.根据权利要求1所述的方法,其特征在于,进一步包括:
为所述编码单元设置第一编码块标志CBF,所述第一CBF指示对于编码单元是否存在非零系数;以及
为每个子块设置第二CBF,所述第二CBF指示对于所述子块中的各个子块是否存在非零系数。
7.根据权利要求6所述的方法,其特征在于,进一步包括,基于将所述编码单元的第一CBF设置为1,按编码顺序将所述子块中的最后一个子块之前的子块中的先前子块的第二CBF设置为0,将所述子块中的最后一个子块的第二CBF设置为1。
8.根据权利要求1所述的方法,其特征在于,进一步包括,基于所述子块中的一个子块的尺寸,对所述子块中的该一个子块应用变换,
其中,所述子块中的该一个子块的尺寸包括所述子块中该一个子块的宽度、高度、面积、以及宽度与高度比中的任何一个或任意组合。
9.根据权利要求1所述的方法,其特征在于,进一步包括:
基于所述编码单元中的所述子块中的一个子块的位置,选择多个变换中的一个变换;以及
对所述子块中的该一个子块应用所述选择的多个变换中的一个变换。
10.根据权利要求1所述的方法,其特征在于,进一步包括,基于确定所述编码单元的宽度或高度不是2的幂,对所述编码单元仅应用帧间预测。
11.根据权利要求1所述的方法,其特征在于,进一步包括,基于确定所述编码单元的宽度和高度中的每一个为2的幂,
将所述编码单元划分成多个分区;
确定所述分区中的任何一个或任意组合的宽度或高度是否是2的幂;以及
基于确定所述分区中的任何一个或任意组合的宽度或高度不是2的幂,对所述编码单元应用变换。
12.根据权利要求1所述的方法,其特征在于,进一步包括,基于确定所述编码单元的宽度或高度不是2的幂,
将所述编码单元的第一编码块标志CBF设置为0,所述第一CBF指示对于所述编码单元是否存在非零系数;或
将所述编码单元与指示预测块的预测值的DC值相关联。
13.一种用于控制帧内和/或帧间预测以解码视频序列的装置,其特征在于,所述装置包括:
至少一个存储器,配置为存储计算机程序代码;以及
至少一个处理器,配置为访问所述至少一个存储器并且根据所述计算机程序代码进行操作,所述计算机程序代码包括:
第一确定代码,配置为使所述至少一个处理器确定编码单元的宽度或高度是否是2的幂;
划分代码,配置为使所述至少一个处理器基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化;以及
第一应用代码,配置为使所述至少一个处理器对所述编码单元划分成的所述子块应用帧内和/或帧间预测。
14.根据权利要求13所述的装置,其特征在于,所述划分代码进一步配置为使所述至少一个处理器基于确定所述编码单元的宽度或高度为6、12、20、24、28、36、40、44、48、52、56或60,将所述编码单元划分成所述子块,所述子块分别具有4+2、8+4、16+4、16+8、16+8+4、32+4、32+8、32+8+4、32+16、32+16+4、32+16+8,或32+16+8+4的宽度或高度,其中M+N+K+J分别表示所述子块的宽度或高度。
15.根据权利要求13所述的装置,其特征在于,所述划分代码进一步配置为使所述至少一个处理器基于信号、所述子块的一个或多个相邻近块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定所述编码单元划分成的所述子块的空间顺序。
16.根据权利要求13所述的装置,其特征在于,所述划分代码进一步配置为使所述至少一个处理器基于确定所述编码单元的宽度或高度不是2的幂,
基于信号、所述子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、每个子块的宽度或高度、以及分别用于所述编码单元的划分尺寸的预定模式中的任何一个或任意组合,确定所述编码单元将被划分成的所述子块的空间顺序;以及
进一步基于所确定的所述子块的数量,将所述编码单元划分成所述子块。
17.根据权利要求13所述的装置,其特征在于,进一步包括第二确定代码,配置为使所述至少一个处理器基于信号、所述子块的一个或多个相邻块的尺寸、编码树单元中的每个子块的位置、所述子块的一个或多个父块的分区类型、每个子块的亮度或色度分量、以及每个子块的宽度或高度中的任何一个或任意组合,确定所述子块被编码的顺序。
18.根据权利要求13所述的装置,其特征在于,进一步包括设置代码,配置为使所述至少一个处理器
为所述编码单元设置第一编码块标志CBF,所述第一CBF指示对于所述编码单元是否存在非零系数;以及
为每个子块设置第二CBF,所述第二CBF指示对于所述子块中的各个子块是否存在非零系数。
19.根据权利要求13所述的装置,其特征在于,进一步包括第二应用代码,配置为使所述至少一个处理器基于所述子块中的一个子块的尺寸对所述子块中的该一个子块应用变换,
其中,所述子块中的一个子块的尺寸包括所述子块中的该一个子块的宽度、高度、面积、以及宽度与高度比中的任何一个或任意组合。
20.一种非易失性计算机可读存储介质,其特征在于,用于存储指令,所述指令使处理器:
确定编码单元的宽度或高度是否是2的幂;
基于确定所述编码单元的宽度或高度不是2的幂,将所述编码单元划分成多个子块,每个子块的宽度或高度为2的幂并且被最大化,使得所述子块的数量被最小化;以及
对所述编码单元划分成的所述子块应用帧内和/或帧间预测以解码视频序列。
CN201980021350.7A 2018-04-26 2019-04-15 解码视频序列的方法、装置和存储介质 Active CN112514393B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862663179P 2018-04-26 2018-04-26
US62/663,179 2018-04-26
US16/212,094 2018-12-06
US16/212,094 US10798382B2 (en) 2018-04-26 2018-12-06 Sub-block transform
PCT/US2019/027465 WO2019209563A1 (en) 2018-04-26 2019-04-15 Sub-block transform

Publications (2)

Publication Number Publication Date
CN112514393A true CN112514393A (zh) 2021-03-16
CN112514393B CN112514393B (zh) 2022-07-01

Family

ID=68293113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980021350.7A Active CN112514393B (zh) 2018-04-26 2019-04-15 解码视频序列的方法、装置和存储介质

Country Status (6)

Country Link
US (1) US10798382B2 (zh)
EP (1) EP3785435A1 (zh)
JP (1) JP7053947B2 (zh)
KR (1) KR102410293B1 (zh)
CN (1) CN112514393B (zh)
WO (1) WO2019209563A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210015810A (ko) * 2018-05-29 2021-02-10 인터디지털 브이씨 홀딩스 인코포레이티드 부분적으로 공유된 루마 및 크로마 코딩 트리들을 이용한 비디오 인코딩 및 디코딩을 위한 방법 및 장치
US10893286B2 (en) * 2018-10-09 2021-01-12 Tencent America LLC Methods and apparatus for low-complexity MTS
WO2020164633A1 (en) 2019-02-15 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Transform parameter derivation based on block partition
US11159795B2 (en) * 2019-03-04 2021-10-26 Tencent America LLC Max transform size control
WO2020182207A1 (en) * 2019-03-13 2020-09-17 Beijing Bytedance Network Technology Co., Ltd. Partitions on sub-block transform mode
US11616966B2 (en) * 2019-04-03 2023-03-28 Mediatek Inc. Interaction between core transform and secondary transform
US11206417B2 (en) * 2019-05-30 2021-12-21 Tencent America LLC Method and apparatus for video coding
US20230082092A1 (en) * 2019-10-11 2023-03-16 Electronics And Telecommunications Research Institute Transform information encoding/decoding method and device, and bitstream storage medium
US11259055B2 (en) * 2020-07-10 2022-02-22 Tencent America LLC Extended maximum coding unit size
CN114615497A (zh) * 2020-12-03 2022-06-10 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机可读介质及电子设备
WO2022177317A1 (ko) * 2021-02-18 2022-08-25 현대자동차주식회사 서브블록 분할 기반 인트라 예측을 이용하는 비디오 코딩방법 및 장치
CN117157978A (zh) * 2021-03-30 2023-12-01 抖音视界有限公司 非二元块上的帧内预测

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130107950A1 (en) * 2011-10-27 2013-05-02 Qualcomm Incorporated Non-square transforms in intra-prediction video coding
US20150030067A1 (en) * 2012-01-19 2015-01-29 Mediatek Singapore Pte. Ltd. Method and apparatus for coded block flag coding in high efficiency video coding
US9674530B1 (en) * 2013-04-30 2017-06-06 Google Inc. Hybrid transforms in video coding
US20170280162A1 (en) * 2016-03-22 2017-09-28 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
EP3306924A1 (en) * 2016-10-05 2018-04-11 Thomson Licensing Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to picture data
US20180109812A1 (en) * 2016-10-14 2018-04-19 Media Tek Inc. Block partitioning using tree structures

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101379188B1 (ko) * 2010-05-17 2014-04-18 에스케이 텔레콤주식회사 인트라 블록 및 인터 블록이 혼합된 코딩블록을 이용하는 영상 부호화/복호화 장치 및 그 방법
US10091515B2 (en) * 2012-03-21 2018-10-02 Mediatek Singapore Pte. Ltd Method and apparatus for intra mode derivation and coding in scalable video coding
US9749645B2 (en) * 2012-06-22 2017-08-29 Microsoft Technology Licensing, Llc Coded-block-flag coding and derivation
JP2014045434A (ja) 2012-08-28 2014-03-13 Nippon Hoso Kyokai <Nhk> 画像符号化装置、画像復号装置及びそれらのプログラム
AU2012232992A1 (en) * 2012-09-28 2014-04-17 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the transform units of a coding unit
WO2014120367A1 (en) * 2013-01-30 2014-08-07 Intel Corporation Content adaptive parametric transforms for coding for next generation video
WO2015051011A1 (en) * 2013-10-02 2015-04-09 Arris Enterprises, Inc. Modified hevc transform tree syntax
CN104602017B (zh) * 2014-06-10 2017-12-26 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
US20170150176A1 (en) * 2015-11-25 2017-05-25 Qualcomm Incorporated Linear-model prediction with non-square prediction units in video coding
CN108702504A (zh) 2016-02-17 2018-10-23 日本放送协会 编码装置、解码装置以及程序
EP3528498A4 (en) 2016-11-21 2019-08-21 Panasonic Intellectual Property Corporation of America CODING DEVICE, DECODING DEVICE, CODING METHOD AND DECODING METHOD
US10779007B2 (en) * 2017-03-23 2020-09-15 Mediatek Inc. Transform coding of video data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130107950A1 (en) * 2011-10-27 2013-05-02 Qualcomm Incorporated Non-square transforms in intra-prediction video coding
US20150030067A1 (en) * 2012-01-19 2015-01-29 Mediatek Singapore Pte. Ltd. Method and apparatus for coded block flag coding in high efficiency video coding
US9674530B1 (en) * 2013-04-30 2017-06-06 Google Inc. Hybrid transforms in video coding
US20170280162A1 (en) * 2016-03-22 2017-09-28 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
EP3306924A1 (en) * 2016-10-05 2018-04-11 Thomson Licensing Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to picture data
US20180109812A1 (en) * 2016-10-14 2018-04-19 Media Tek Inc. Block partitioning using tree structures

Also Published As

Publication number Publication date
KR20200128160A (ko) 2020-11-11
CN112514393B (zh) 2022-07-01
KR102410293B1 (ko) 2022-06-22
US20190335172A1 (en) 2019-10-31
WO2019209563A1 (en) 2019-10-31
EP3785435A4 (en) 2021-03-03
US10798382B2 (en) 2020-10-06
JP2021519050A (ja) 2021-08-05
JP7053947B2 (ja) 2022-04-12
EP3785435A1 (en) 2021-03-03

Similar Documents

Publication Publication Date Title
CN112514393B (zh) 解码视频序列的方法、装置和存储介质
CN111869218B (zh) 视频编解码的方法和装置
CN110324619B (zh) 变换信息预测
CN111630864B (zh) 编解码方法、装置和媒介
CN110881127B (zh) 控制残差编码的方法、装置、计算机设备和存储介质
CN113557718A (zh) 视频编解码的方法和装置
CN113614736A (zh) 视频编解码的方法和装置
CN113039795A (zh) 多变换选择中恒等变换的方法和装置
CN113545091B (zh) 对视频序列执行最大变换大小控制的解码方法和装置
CN111869209B (zh) 对块进行划分的方法、装置、介质和编解码器
CN110708558B (zh) 变换类型的表示方法和设备
CN113228659A (zh) 帧内模式编码的方法和装置
CN113273199B (zh) 用于视频解码的方法和装置
CN113615187A (zh) 用于改进的隐式变换选择的方法和装置
CN113892270A (zh) 在变换跳过模式和多变换选择之间进行协调的方法和装置
CN113424546A (zh) 用于预测模式和已编码块标志(cbf)的进一步改进的上下文设计的方法和装置
CN113875256B (zh) 进行视频解码的方法、装置及存储介质
CN111836056A (zh) 视频解码的方法和装置、计算机设备和存储介质
CN113475067B (zh) 视频解码方法、装置、计算机设备及存储介质
CN112235573A (zh) 视频编解码的方法、装置、电子设备、存储介质
CN111988631A (zh) 视频编码、解码的方法、装置以及存储介质
CN113841390B (zh) 用于视频编解码的方法和设备
CN112135151B (zh) 视频解码方法、系统、计算机设备和存储介质
CN113545055A (zh) 视频编解码的方法和装置
CN115516856A (zh) 多参考行帧内预测与变换分区之间的协调设计

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40043139

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant