CN103636215B - 对视频数据应用非正方形变换 - Google Patents

对视频数据应用非正方形变换 Download PDF

Info

Publication number
CN103636215B
CN103636215B CN201280032876.3A CN201280032876A CN103636215B CN 103636215 B CN103636215 B CN 103636215B CN 201280032876 A CN201280032876 A CN 201280032876A CN 103636215 B CN103636215 B CN 103636215B
Authority
CN
China
Prior art keywords
square
converter unit
unit
decoding
row decoding
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.)
Active
Application number
CN201280032876.3A
Other languages
English (en)
Other versions
CN103636215A (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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN103636215A publication Critical patent/CN103636215A/zh
Application granted granted Critical
Publication of CN103636215B publication Critical patent/CN103636215B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • 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/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
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

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

在一个实例中,一种用于对视频数据进行译码的装置包含视频译码器,例如视频编码器或视频解码器,其经配置以对指示所述视频数据的变换单元是正方形还是非正方形的信息进行译码,和至少部分基于所述变换单元是正方形还是非正方形对所述变换单元的数据进行译码。以此方式,所述视频译码器可以利用非正方形变换单元。所述视频译码器可经配置以针对某些情形使用非正方形变换单元,例如仅针对色度或明度分量或仅当对应预测单元是非正方形时。所述视频译码器可以进一步经配置以基于所述变换单元是正方形还是非正方形执行选择用于对所述变换单元的数据进行译码的上下文的熵译码过程。

Description

对视频数据应用非正方形变换
本申请案主张2011年7月1日申请的第61/503,726号美国临时申请案和2011年11月2日申请的第61/554,837号美国临时申请案的权益,这些临时申请案中的每一者的整个内容以引用的方式并入本文中。
技术领域
本发明涉及视频译码,且更明确地说涉及变换视频数据。
背景技术
数字视频能力可以并入到多种多样的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型计算机或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置和类似装置。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)界定的标准和所述标准的扩展部分中所描述的那些视频压缩技术,以更有效地发射和接收数字视频信息。
视频压缩技术执行空间预测和/或时间预测以减少或移除视频序列中固有的冗余。对于基于块的视频译码,可以将视频帧或切片分割成块,例如宏块或译码单元(CU)。每一块可被进一步分割。使用相对于相邻块的空间预测来对经帧内译码(I)帧或切片中的块进行编码。经帧间译码(P或B)帧或切片中的块可以使用相对于相同帧或切片中的相邻块的空间预测或相对于其它参考帧的时间预测。
发明内容
总的来说,本发明描述用于对视频数据块(例如残余视频数据)应用非正方形变换或用于再生残余视频数据的逆非正方形变换的技术。所述技术并非将变换大小限制为仅正方形变换,而是可以使得视频译码器(可以指代视频编码器、视频解码器或视频编码器与视频解码器两者的组合)还评估并且潜在地选择对视频数据应用非正方形变换。通过对视频数据应用非正方形变换,视频译码器可以减少在跨越预测边界(其是通过两个相异的预测单元(PU)识别的两个相异的视频数据块之间的边界,对这两个相异的预测单元分别地执行运动估计)应用正方形变换时引入的假影和失真。
在一些情况下,并非跨越邻接PU的两个非正方形块(其当组合时常常形成正方形预测块)应用单个正方形变换,所述技术可以让视频译码器能够应用匹配的非正方形变换(因为非正方形变换中的每一者与PU识别的对应块的大小和形状匹配)以单独地对所述PU的非正方形块中的每一者进行变换,结果是与跨越PU的两个块应用单个正方形变换相比潜在地减少了非零系数的数目。在减少非零系数的数目时,所述技术可以减少表示残余视频数据所需要的数据量,从而与不能够应用非正方形变换的技术相比产生残余视频数据的更加压缩的版本。
在一个实例中,一种对视频数据进行译码的方法包含对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,以及至少部分基于所述变换单元是正方形还是非正方形对变换单元的数据进行译码。
在另一实例中,一种用于对视频数据进行译码的装置包含视频译码器,其经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,以及至少部分基于所述变换单元是正方形还是非正方形对变换单元的数据进行译码。
在另一实例中,一种用于对视频数据进行译码的装置包含:用于对指示视频数据的变换单元是正方形还是非正方形的信息进行译码的装置,以及用于至少部分基于所述变换单元是正方形还是非正方形对变换单元的数据进行译码的装置。
在另一实例中,一种计算机程序产品包含上面存储有指令的计算机可读媒体,所述指令当执行时致使处理器:对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,以及至少部分基于所述变换单元是正方形还是非正方形对变换单元的数据进行译码。
附图和以下描述中陈述一个或一个以上实例的细节。其它特征、目标和优势将从描述和附图和从权利要求书中显而易见。
附图说明
图1是图解说明实例视频编码和解码系统的框图。
图2是图解说明实例视频编码器的框图。
图3是图解说明实例视频解码器的框图。
图4是各自具有不同大小的预测单元(PU)的概念图。
图5是图解说明实例递归四叉树变换结构的概念图。
图6A和6B是图解说明根据本发明中描述的技术的一个方面的波前扫描的图式。
图7A是图解说明用于将块(例如,译码单元)分割成一个或一个以上预测性块(例如,PU)的概念图。
图7B是图解说明被分割成不对称分区的块的各种实例的概念图。
图8是图解说明用于表示非正方形变换单元的实例分割结构的概念图。
图9是图解说明用于表示非正方形变换单元的另一实例分割结构的概念图。
图10A是图解说明用于用信号表示CU是包含正方形还是非正方形变换单元的实例信令数据的概念图。
图10B是图解说明用于用信号表示CU是包含正方形还是非正方形TU的替代实例信令数据的概念图。
图11是图解说明用于使用正方形或非正方形变换单元对视频数据进行编码的实例方法的流程图。
图12是图解说明用于使用正方形或非正方形变换单元对视频数据进行解码的实例方法的流程图。
具体实施方式
总的来说,视频数据包含一连串帧,这些帧可以用帧内预测模式或帧间预测模式译码。帧可以划分成视频数据块并且可以针对每一块选择一种编码模式。在帧间预测模式中,可以相对于一个或一个以上经先前译码帧的数据预测块。在帧内预测模式中,可以相对于相同帧的一个或一个以上空间上相邻的经先前译码块预测块。
根据高效率视频译码(HEVC),帧可以划分成最大译码单元(LCU),其可举例来说包括32x32个像素块或64x64个像素块。总的来说,LCU可以分割成子译码单元(子CU),子CU中的每一者可以进一步分割(递归地)。总的来说,术语译码单元(CU)可以指LCU或其任何子CU(例如,LCU的子CU或另一子CU的子CU)。CU可以分割成四个正方形的非重叠子CU。
LCU可以对应于四叉树数据结构,其包含一个或一个以上节点,其中四叉树的根节点对应于LCU本身并且其它节点对应于LCU的子CU。未分割的CU总体上对应于四叉树的叶节点(也就是说,四叉树的不具有任何子节点的节点)。所以,未分割的CU可被称为叶节点CU。叶节点CU总体上包含:一个或一个以上预测单元(PU),其描述如何预测CU的数据(即,数据是经帧内译码还是经帧间译码);以及一个或一个以上变换单元(TU),其对应于残余数据,也就是说,CU的经预测数据与CU的原始数据之间的逐像素差。
HEVC测试模型(常常简称为“HM”)定义用于通常称为“HEVC”的下一代视频译码标准的视频译码器参考软件。在HEVC中,叶CU可以分裂成不同PU,每一PU定义叶CU的一部分的运动信息。在帧间预测模式中,针对每一PU,执行运动补偿以在参考帧中定位时间参考块。这个时间参考块通常表示一个块,这个块当与PU相比时(在此上下文中这常常意味着用PU减去这个块)会产生低于所定义阈值的残余数据量。残余数据包含指示PU和参考块的对应像素之间的差异的像素差值。如果低于这个阈值,视频编码器就会产生运动信息,其识别时间参考块相对于PU的位置。视频编码器接着存储通过比较时间参考块与PU而产生的残余数据,并且存储举例来说定义一个运动向量的运动信息,这个运动向量识别时间参考块相对于PU的位置。可以针对TU存储残余数据,并且可以针对PU存储运动向量。
HM进一步定义基于四叉树的残余四叉树变换(RQT)结构,其包含用于CU的一个或一个以上TU的数据。RQT可以描述为“递归”,是因为四叉树的根节点可以具有四个子节点,并且总体上树的节点可以具有四个子节点,其中每一节点可以用类似方式格式化。因而,LCU可包含对应于两个相异的类型的四叉树的数据:一个定义将LCU分割成叶节点CU的CU四叉树,以及对于每一叶节点CU,包含用于TU的数据的RQT。
HM首先定义RQT的根等级(其也可被称作“等级0”),其中根等级有效地表示应用于CU的变换(其中CU的形状和大小通常由符号2Nx2N表示,其中N通常是指对应于CU的视频数据块中的像素的数目,它是二的幂)。当叶节点CU的变换系数对应于RQT的等级0时,实施HM的视频编码器可以在根等级应用变换。换句话说,实施HM的视频编码器可以对CU的残余数据应用一个与CU的形状和大小匹配的变换。
HM进一步指示CU(具有2Nx2N的大小)可以划分成四个同样大小的变换系数数据子部分(其中每一部分的大小是NxN)并且可以对这些NxN残余数据子部分中的每一者应用大小为NxN的变换。在这种意义上讲,是对RQT的所谓的“等级1”应用变换,因为根等级表示等级0并且根等级划分成四个NxN子部分表示这个结构的等级1。
为了选择变换大小,视频编码器可以比较在根等级(或等级0)与等级1上应用变换的结果。应用变换的所谓的“结果”总体上是指对经变换残余数据进行编码的结果。为了产生这个结果,如上文所指示的视频编码器对残余数据应用变换以将残余数据从空间域变换成频域,从而引起产生变换系数,所述变换系数用充当基函数的权重的变换系数的形式表示残余数据,例如不同频率的指定正弦或余弦波形。视频编码器可以接着将这些变换系数(其也可被称作经变换残余数据)量化以对变换系数进行舍入。这个量化步骤通常涉及将较小变换系数中的一者或一者以上舍入成零。视频编码器可以进一步对变换系数进行译码。量化和译码因而表示压缩的有损形式。视频编码器可以接着对视频数据进行解码、执行逆量化并且应用逆变换以重建视频块。
在此背景下,这个经重建视频块可以表示应用变换的结果。可以接着将经重建视频块与原始CU比较,并且可以确定原始CU与经重建视频块之间的误差。视频编码器可以接着将在等级0上应用变换时确定的误差与在等级1上应用变换时以此方式确定的误差比较。
在一些例子中,可以执行更加复杂的被称作速率失真分析或速率失真优化的过程,其除了误差之外还考虑速率(就消耗的带宽或存储空间而言)。通过用位成本乘以拉各朗日算符(这个值表示位成本与特定质量等级的质量之间的关系)在数学上测量用于表达经编码视频数据的速率或位。从源的偏差(在本发明中被称作误差或失真)通常测量为均方误差,以便使峰值信噪比(PSNR)视频质量度量最大化。
如果在等级1上应用变换的结果(就确定的误差或速率失真度量而言)比在等级0上应用变换好,则视频编码器可以继续相对于子部分中的每一者重复这个过程,将每一子部分划分成四个同样大小的二级子部分(大小为N/2xN/2),由此产生递归四叉树变换结构的等级2。视频编码器可以接着针对每一一级子部分将在等级2上应用变换的结果与在等级1上应用变换的结果比较,如果在等级2上应用变换的结果比在等级1上应用变换好(就确定的误差而言)就选择等级2变换。这个过程可以用这种递归方式继续,连续将每一子部分分裂成四个大小相等的子部分,直到在等级M上应用的变换比在等级M+1上应用的好,或者达到某一最大变换等级为止。在一些实施方案中,视频编码器可以在最大变换等级上开始,应用最小大小的变换块并且如果较大大小的变换执行地更好(就确定的误差而言)则合并较小大小的变换。为此原因,变换结构可被称为递归四叉树变换结构。
在上文对HM的整个描述中,仅将变换的大小描述成正方形(例如,2Nx2N,NxN和N/2xN/2)。所提议的HM目前将变换的大小限制为正方形,但提供非正方形、矩形PU大小,例如图4的实例中展示的那些(下文更详细地描述)。非正方形PU可以起因于PU的多种分割模式。作为一个实例,视频译码器可以使用不对称运动分割(AMP)将CU分割成PU。作为另一实例,视频译码器可以使用短距离帧内预测(SDIP)或不对称SDIP将CU分割成PU。视频译码器可经配置以避免使用越过PU边界的TU。因此,根据本发明的技术提供非正方形TU(例如,为了匹配对应非正方形PU的大小)可以提供某些优点。
举例来说,仅允许正方形变换或变换单元(TU)的一个结果是视频编码器可以跨越运动边界(其是指邻接PU之间的边界)应用变换。跨越运动边界应用变换通常会降低变换效率,因为运动边界常常表示运动不连续性,其中在色彩或明度中可能存在硬边缘或大型变化,这需要更多得多的变换系数才能充分捕获这些类型的边界。仅提供正方形TU而不提供非正方形PU的另一结果是视频编码器可以应用小于相关联PU的变换。相对于PU应用较小大小的变换也可降低变换效率,因为所述变换可能不能够完全利用相邻像素之间的相关。
根据本发明中描述的技术,视频编码器可以对视频数据应用非正方形变换。所述技术并非将变换大小限制为仅正方形变换,而是可以使得视频译码器(可以指代视频编码器、视频解码器或视频编码器与视频解码器两者的组合)还评估并且潜在地选择对视频数据应用非正方形变换。通过对视频数据应用非正方形变换,视频译码器可以减少在跨越预测边界(其是通过两个相异的预测单元(PU)识别的两个相异的视频数据块之间的边界,对这两个相异的预测单元分别执行运动估计)应用正方形变换时引入的假影和失真。此外,所述技术可以改善变换效率,因为通过避免对较大大小的PU应用较小大小的变换,非正方形变换可以更完全地利用相邻像素之间的相关。
在一些例子中,这些技术并非对两个(或更多个)非正方形邻接PU(其当组合时可以形成一个正方形预测块)产生的残余数据应用单个正方形变换,而是可以使得视频译码器能够应用匹配的非正方形变换(因为非正方形变换中的每一者可以与PU识别的块的大小匹配)以单独地对残余数据(由非正方形PU中的每一者产生)进行变换,其结果是可能与跨越PU的两个块应用单个正方形变换相比减少了非零系数的数目。通过减少非零系数的数目,所述技术可以减少表示视频数据所需要的数据量,从而与不能够应用非正方形变换的技术相比产生视频数据的更加压缩的形式。
作为说明,视频编码器可以对残余数据应用对应于非正方形PU的非正方形变换。作为一个实例,针对NxM的PU大小(其中N和M表示像素的不同数目,常常是二的幂),视频编码器可以在产生变换结构时另外应用大小为NxM的变换。作为另一实例,针对大小为2NxN的PU,视频编码器可以应用大小为2Nx2N、2NxN和NxN的变换,基于结果的确定的误差选择这些应用的变换中的所述一者,如上文所描述。以此方式,视频编码器可以选择非正方形变换大小。
本发明中描述的技术可以另外修改变换信令结构(也称为变换选择结构,也就是说,指示选择了哪种变换大小的结构)。变换信令结构可以对应于残余四叉树变换结构。具体来说,可以根据这些技术修改变换信令结构以适应非正方形变换。当存在2NxN大小的PU(变换大小为2Nx2N,并且根等级(或等级0)上为2NxN)时,实施这些技术的视频编码器可以适用于针对一组残余数据确定选择哪个变换大小的过程。
变换信令结构可以因而指明当存在大小为2NxN的与这个CU相关联的PU时,视频编码器将应用这两个变换。视频编码器可以接着比较应用这个变换的结果(其同样是指用上文所描述的方式确定的误差),基于这个比较选择这些大小为2Nx2N或2NxN的变换中的一者。视频编码器可以继续所述残余四叉树过程,比较应用一阶或等级0的变换中的选定一者的结果与应用四个二级或等级1的NxN变换的结果。在这种意义上讲,所述技术可以使得能够基于非正方形PU是否与当前CU相关联来应用非正方形变换。同样,实际上,可以用自下而上的方式执行这个变换选择过程,从最小大小的变换块开始,并且如果较大大小的变换的执行较好(例如,就速率对失真而言)则合并这些较小的变换块。
在本发明中描述的技术的一些实施方案中,视频编码器可以用稍微不同的方式执行这个变换选择过程,其中应用单个大小为2Nx2N的根等级的变换,并且等级1的变换的大小是2NxN。可以接着将接下来的等级或等级二的变换指定为上文描述成是等级1变换的四个NxN变换。因而,在这些实施方案中,可以将非正方形变换指定为其自身的等级一的变换,而不是将非正方形变换与根等级的变换合并。这些实施方案可以更好地匹配上文所描述的选择过程,其中比较应用不同等级的变换的结果而不是比较应用来自相同等级的变换的结果。
另外,所述技术可以限制如何选择变换。举例来说,可以修改变换选择过程以仅允许视频编码器在根等级上选择与PU大小相同大小的变换。在这个实例中,对于大小为Nx2N的PU,视频编码器可经配置以在根等级上选择Nx2N变换。对于大小为2Nx2N的PU,视频编码器可经配置以在根等级上选择大小为2Nx2N的变换。
在一些例子中,所述技术可以限制应用哪些变换。也就是说,在所述技术的一些实施方案中,视频编码器可以基于PU的形状应用非正方形变换。作为一个实例,对于形状为2NxN的PU,视频编码器作为一个实例可以在选择过程期间仅应用大小为2NxN的变换,而不应用大小为Nx2N的变换。通过在选择过程期间仅应用可能的非正方形变换的子集,可以改进视频编码性能,因为放弃应用一些变换会消耗较少的处理器循环和时间。减少处理循环可以减少功率消耗,这当在移动装置(例如所谓的智能手机,或其它特别注重电力的装置)中实施视频编码器时可能是有益的。
此外,所述技术可以让视频译码器能够仅准许对一些色彩分量(例如仅对明度或仅对色度分量,而不是明度和色度分量两者)应用非正方形变换。在另外其它例子中,所述技术可以让视频译码器能够基于某些PU和/或CU大小来选择性应用非正方形变换。
在用上文所描述的方式选择变换之后,视频编码器通常使用语法元素用信号表示选定变换。引入非正方形变换可能需要视频编码器用信号表示额外语法元素。当在根等级上有两个或两个以上可供使用的变换时(参看上文所描述的示范性实施方案,其中根等级变换包含一个2Nx2N变换和一个2NxN变换),视频编码器可以用信号表示变换选择(TS)旗标以指示视频编码器选择了两个或两个以上根等级变换中的哪一个。视频编码器可以在指示根等级是否分裂成四个NxN部分的所谓的“分裂旗标”之后用信号表示这个TS旗标。举例来说,视频编码器可以在选择了2NxN变换后即刻将TS旗标设置成一,并且否则在选择了大小为2Nx2N的变换后即刻将这个TS旗标设置成零。
在所述技术的一些实施方案中,视频编码器可以使用其它语法元素用信号表示所述TS旗标,将TS旗标与分裂旗标中的一者或一者以上组合,经译码块旗标用于明度(CbfY)变换块和色度变换块(U、V是所述两个色度色彩分量,其中用于U和V中的每一者的这些语法元素表示为“CbfU”和“CbfV”)。为了说明,假设对明度分量块应用非正方形变换。接着对于明度,将2Nx2N和Nx2N变换两者放置在变换树根等级(等级0)中,并且在等级1上指定NxN。对于大小为NxN的色度变换块(考虑在4∶2∶0的常用YUV视频格式中,色度块大小是明度块大小的1/2×1/2),根等级(等级0)变换的大小为NxN并且等级1变换是大小为N/2xN/2的变换。在这些假设下,向视频解码器发送以下信息作为语法:
1.分裂旗标;用以指示是采用根等级变换还是使用较小变换(分裂情况)。
2.变换选择旗标TS。如果选择了根等级变换(分裂=1),则发射TS以用信号表示2Nx2N(TS=0)与2NxN(TS=1)之间的选择。
3.明度的Cbf。如果分裂=1或(分裂=0,TS=0),则发射旗标CbfY以用信号表示CU中是否存在非零明度系数(CbfY=0,所有明度系数是0;CbfY=1,至少一个明度系数不是零)。如果TS=1,则分别发射CbfY0和CbfY1以用信号表示第一2NxN变换块和第二块中是否存在非零系数。
4.色度的Cbf(U,V)。发射旗标CbfU以用信号表示CU中是否存在非零U分量系数。发射旗标CbfV以用信号表示CU中是否存在非零V分量系数。
分别发射这些语法元素中的每一者可能并未完全利用不同旗标当中的相关性。其结果是,所述技术可以让视频编码器能够采用如下文所描述的联合译码方案。
1.视频编码器首先使用可变长度译码(VLC)发射分裂旗标、CbfYY旗标和CbfUV旗标,其中CbfYY和CbfUV旗标是如下所述。
2.如果分裂=0,则发送TS旗标以指示视频编码器是否选择了非正方形变换。
3.如果TS=1,则将CbfYY解释为CbfY011CbfY1(也就是说,CbfY0是指用于被应用变换的第一2NxN或Nx2N部分的CbfY旗标,并且CbfY1是指用于被应用变换的第二2NxN或Nx2N部分的CbfY旗标)。在这种情况下,如果CbfYY=1,则发射进一步的信息以用信号表示CbfY0、CbfY1或这两者是否为1。如果CbfYY=0,则CBFY0=CBFY1=0。
4.如果分裂=1或TS=0,则将CbfYY解释为CbfY,这在上文已描述。
5.将CbfUV定义为(CbfU||CbfV),其中当CbfUV=1时,CbfU和CbfV中的至少一者不是零。如果CbfUV=1,则发射进一步的信息以用信号表示CbfU、CbfV或这两者是否为1。如果CbfUV=0,则CBFU=CBFV=0。
在上述联合译码方案中,CbfYY旗标联合地用信号表示CbfY0和CbfY1,并且CbfUV旗标联合地用信号表示CbfU和CbfY,从而在那些其中CbfYY等于零和/或CbfUV等于零的例子中提供更高效的信令(因为在这些例子中用信号表示CbfYY在将需要两个位以分别用信号表示CbfY0和CbfY1的情况下需要一个位,并且在这些例子中用信号表示CbfUV在将需要两个位以分别用信号表示CbfU和CbfV的情况下需要一个位)。
同时,视频编码器还将因为应用非正方形变换而产生的变换系数量化。将这些非正方形变换系数量化,其中本发明的技术可以根据变换系数是正方形还是非正方形而提供不同量化步长。通常,通过量化参数来控制量化强度/步长。所述技术可以让视频编码器能够在确定这个量化步长时使用新的量化参数,其中这个新的量化参数可以指示是通过应用正方形变换还是非正方形变换产生了所述变换系数。换句话说,量化参数可能对于不同变换步长是不同的并且可能在正方形变换与非正方形变换之间是不同的。在一个实例中,假设量化参数零(QP0)是用于当前帧的基础QP。作为一个实例,实施所述技术的这个方面的视频编码器可以对大小为2NxN和Nx2N的非正方形变换使用量化参数QP0+3,并且对所有其它变换使用基础QP0。视频编码器和解码器两者都可以利用所述技术的这个方面。
在执行量化之后,视频编码器通常扫描所述系数(其通常是用二维阵列表达)以产生这些系数的一维排序。通常,所述变换会产生系数,从而使得非零系数位于二维阵列的左上角。视频编码器可以扫描这些系数,其扫描方式使得非零系数用一维排序靠近彼此安置,以便于对零值变换系数的游程长度译码,由此提供至少某一量的压缩(因为游程长度译码通常涉及使用单个数字表达多个零值变换系数)。
本发明中描述的技术的一个方面可能指明视频编码器将扫描非正方形变换系数的方式。实施所述技术的这个方面的视频编码器可以基于二维变换系数块的形状执行这个一维扫描。在一个实例中,视频编码器可以执行一种被称作波前扫描(从左下方到右上方或从右上方到左下方)的扫描形式,其中扫描始终从较短边缘开始。
视频编码器接着执行一种形式的统计无损译码(其常常被误称为“熵译码”)以对经游程长度编码的变换系数的一维排序进行编码。这个熵编码器可以执行上文所描述的语法元素的联合或复合编码以及经游程长度编码的变换系数的编码。常常采用被称作上下文自适应二进制算术译码(CABAC)的形式的熵编码来对从正方形变换系数块产生的变换系数的一维排序进行编码。本发明中描述的技术的各种方面可以让视频编码器能够相对于从非正方形变换系数块产生的变换系数的一维排序执行CABAC。
实施所述技术的这些熵编码方面的视频编码器可以执行一种形式的CABAC,这种CABAC已经用三种方式经过修改以适应非正方形变换系数块。第一修改可能涉及用信号表示最后有效系数。第二修改可能涉及修改所谓的“有效性映射”,而第三修改可能涉及修改所谓的“系数等级”。
对于非正方形块,在用信号表示最后有效系数时,视频编码器可以实施第一修改,从而使得用于执行CABAC的上下文模型取决于被译码的坐标的大小的长度。换句话说,水平坐标(最后系数的X分量)具有取决于块的宽度(以及经译码的x的二进制数)的上下文。同理,垂直坐标(Y分量)具有取决于块的高度而指派的上下文集合。
对于非正方形块的有效性映射,本发明提出大小为2NxN和Nx2N的变换共用相同的一个或一个以上上下文进行CABAC译码。通过共用上下文,视频编码器可以减少上下文的总数。为了提高性能,视频编码器可以不直接导出和共用上下文,而是在转置矩形形状中的一者的坐标和值之后进行。举例来说,可以直接对2NxN变换的系数进行编码,但在译码之前转置经过Nx2N变换的系数,这意味着在译码之前先交换坐标X与Y以及宽度与高度。本发明中描述的技术的这个方面利用一个事实,即2NxN块的统计数据在被转置之后类似于Nx2N块的统计数据。
作为一实例,当使用CABAC译码时,视频译码装置可以应用系数的逆对角线扫描以对包含指示系数的重要性、等级和正负号的语法元素在内的语法元素进行译码。对于等级译码,可以在16个系数的子集中扫描系数。可以基于上下文邻域(或根据本发明的技术基于系数的X和Y坐标)针对每一子集对上下文进行重新初始化。为了对等级信息进行译码,可以使用CABAC对对应二进制化符号的头两个二进制数进行译码,并且使用例如指数哥伦布译码等另一旁通译码引擎对其余的二进制数进行译码。当通过CABAC引擎对二进制数进行译码时,对上下文状态进行更新(其中上下文具有通过概率模型定义的多个状态)。CABAC引擎基于概率模型和被译码的实际值转变成上下文的不同状态(值)。
对于8x4和4x8的变换系数块,视频编码器可以实施所述技术的这个方面以基于系数的位置使用用于有效性映射的上下文(类似于HEVC中的4x4和8x8块)。在这个实施方案中,可以对CABAC使用十六个上下文,沿较长边的两个相邻系数共用这些上下文。以下是说明可以如何导出这些共用上下文的一个实例:
假设X和Y是二维变换系数块内的变换系数的坐标,并且假设>>是右移位运算并且CtxNum是为所述块指派的上下文。可以如下导出用于8x4块的上下文:
CtxNum=Y+(X>>1)
如上所述,对于4x8块,可以如下导出上下文:
Swap(X,Y);并且
CtxNum=Y+(X>>1)
其中Swap(X,Y)可以实施为:
换句话说,Swap(X,Y)可以转置X和Y的值。
对于较大块(16x4、4x16和更大),视频编码器可以实施所述技术的这些有效映射方面以使用类似于用于HEVC的方法的方法,其中上下文是基于相邻系数的有效性。可以对所述两个形状中的一者应用恰当的转置(或交换)操作。
对于系数等级译码,一种HEVC提议是依赖于将块分割成4x4的子块并且依次在每一子块内执行译码。当块大小无法配合在4x4子块中时(即,当矩形的边中的至少一者小于4时),无法进行这种类型的处理。为了克服所述问题,本发明中描述的技术可以让视频编码器能够用扫描次序执行译码过程,其中块被分割成n(例如,n=十六)个连续系数的子集。这可以应用于所有非正方形块大小或仅应用于那些不能含有4x4子块的块大小。
另外,视频编码器可以实施本发明中描述的技术的一些方面以对非正方形块的四叉树Cbf使用不同的概率上下文集合,因为这些非正方形块具有不同于正方形块的统计数据。
虽然本发明中总体上是相对于视频编码器(例如图4和5的实例中展示的视频编码器20)描述所述技术,但是所述技术的许多方面可以通过视频解码器(例如图4和6的实例中展示的视频解码器30)实施。举例来说,视频解码器可以实施上文所描述的CABAC技术的逆版本以便对从视频编码器的熵编码器输出的经编码视频数据进行熵解码。视频解码器还可实施上文所描述的技术的扫描和量化方面两者的逆版本的形式以重建非正方形变换系数块。此外,视频编码器可以应用逆非正方形变换以将变换系数从频域变换回到空间域。视频解码器还可执行上文所描述的技术的语法译码方面的逆版本以剖析来自位流的语法元素并且接着对经剖析的语法元素进行解码。但是,考虑到视频编码器经由语法元素用信号表示选择了哪个变换,视频解码器通常不实施所述技术的选择方面。因而,虽然上文是相对于视频编码器描述的,但所述技术的许多方面如下文更详细描述可以通过视频解码器执行。
在操作中,视频解码器可以实施所述技术以基于与经编码视频数据的一部分相关联的变换信息来确定有待应用于表示经编码视频数据的所述部分的变换系数的逆变换是否为非正方形,基于对所述变换单元是否为非正方形的确定将变换系数形成为变换系数块,以及对变换系数块应用逆变换以将变换系数块变换成残余视频数据块。
图1是图解说明可经配置以利用本发明中描述的技术使用非正方形变换对视频数据进行译码的实例视频编码和解码系统10的框图。如图1中所示,系统10包含经由通信信道16向目的地装置14发射经编码视频的源装置12。经编码视频数据也可存储在存储媒体34或文件服务器36上,并且可以由目的地装置14按照期望存取。当存储到存储媒体或文件服务器时,视频编码器20可将经译码视频数据提供到另一装置,例如网络接口、压缩光盘(CD)、蓝光或数字视频光盘(DVD)烧录机或烫印设施装置,或用于将经译码视频数据存储到存储媒体的其它装置。同样,与视频解码器30分离的装置(例如网络接口、CD或DVD读取器,或类似装置)可从存储媒体检索经译码视频数据,且将所检索数据提供到视频解码器30。
源装置12和目的地装置14可包括广泛多种装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的智能电话)、电视、相机、显示装置、数字媒体播放器、视频游戏控制台或类似装置。在许多情况下,此些装置可经装备以用于无线通信。因此,所述通信信道16可包括适合于发射经编码视频数据的无线信道、有线信道或无线和有线信道的组合。类似地,文件服务器36可以由目的地装置14通过任何标准数据连接(包含因特网连接)来存取。这可包含适合于存取存储在文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。
根据本发明的实例的用于应用非正方形变换的技术可以应用于支持多种多媒体应用中的任一者的视频译码,所述多媒体应用例如是空中电视广播、有线电视发射、卫星电视发射、串流视频发射(例如,经由因特网)、对用于存储在数据存储媒体上的数字视频的编码、对存储在数据存储媒体上的数字视频的解码或其它应用。在一些实例中,所述系统10可经配置以支持单向或双向视频发射,以支持例如视频串流、视频回放、视频广播和/或视频电话等应用。
在图1的实例中,源装置12包含视频源18、视频编码器20、调制器/解调器22和发射器24。在源装置12中,视频源18可包含来源,例如视频俘获装置,例如摄像机,包含先前俘获的视频的视频存档,用于从视频内容提供者接收视频的视频馈入接口和/或用于产生计算机图形数据作为源视频的计算机图形系统,或此类来源的组合。作为一个实例,如果视频源18是摄像机,那么源装置12和目的地装置14可能形成所谓的相机电话或视频电话。但是,本发明中描述的技术可以总体上适用于视频译码,并且可以应用于无线和/或有线应用,或其中经编码视频数据存储在本地磁盘上的应用。
可由视频编码器20对所俘获、预俘获或计算机产生的视频进行编码。调制解调器22可以根据例如无线通信协议等通信标准对经编码视频信息进行调制,并且经由发射器24将经编码视频信息发射到目的地装置14。调制解调器22可包含各种混频器、滤波器、放大器或其它经设计用于信号调制的组件。发射器24可包含经设计以用于发射数据的电路,包含放大器、滤波器和一个或一个以上天线。
被视频编码器20编码的所俘获、预先俘获或计算机产生的视频还可存储到存储媒体34或文件服务器36上以用于日后消耗。存储媒体34可包含蓝光光盘、DVD、CD-ROM、快闪存储器或用于存储经编码视频的任何其它合适的数字存储媒体。目的地装置14可接着存取存储于存储媒体34上的经编码视频以用于解码和回放。
文件服务器36可为能够存储经编码视频并且将经编码视频发射到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置、本机磁盘驱动器或任何其它类型的能够存储经编码视频数据并且将经编码视频数据发射到目的地装置的装置。经编码视频数据从文件服务器36的发射可为流式发射、下载发射或两者的组合。目的地装置14可以通过任何标准数据连接(包含因特网连接)来存取文件服务器36。此可包含适合于存取存储在文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器、以太网、USB等)或两者的组合。
在图1的实例中,目的地装置14包含接收器26、调制解调器28、视频解码器30和显示装置32。目的地装置14的接收器26经由信道16接收信息,并且调制解调器28对所述信息进行解调以产生用于视频解码器30的经解调位流。经由信道16传送的信息可包含由视频编码器20产生用于视频解码器30在对视频数据进行解码时使用的多种语法信息。包含上文所描述的切片标头语法的此语法还可包含在存储于存储媒体34或文件服务器36上的经编码视频数据中。视频编码器20和视频解码器30中的每一者可以形成能够对视频数据进行编码或解码的相应编码器-解码器(编解码器)的一部分。
显示装置32可以与目的地装置14集成或者在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,并且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可能是显示装置。总的来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,通信信道16可包括任一无线或有线通信媒体,例如,射频(RF)频谱或一个或一个以上物理传输线、或无线和有线媒体的任一组合。通信信道16可形成例如局域网、广域网或例如因特网的全球网络的基于包的网络的一部分。通信信道16总体上表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包含有线或无线媒体的任何合适的组合。通信信道16可包含路由器、交换器、基站或任何其它可以用于促进从源装置12到目的地装置14的通信的设备。
视频编码器20和视频解码器30可以根据视频压缩标准(例如目前正在研发的即将来临的高效率视频译码(HEVC)标准)操作,并且可以符合HEVC测试模型(HM)。替代地,视频编码器20和视频解码器30可以根据其它专有或业界标准来操作,所述标准例如是ITU-TH.264标准,也被称为MPEG-4第10部分高级视频译码(AVC),或此类标准的扩展。然而,本发明的技术不限于任何特定译码标准。其它实例包含MPEG-2和ITU-TH.263。
根据本发明的技术,视频编码器20和视频解码器30可经配置以使用非正方形变换块对视频数据进行译码。视频编码器20和视频解码器30可以用任何组合实施与本发明中描述的非正方形变换块有关的任何或所有技术。总的来说,视频编码器20和视频解码器30表示视频译码器的实例,其经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,并且至少部分基于所述变换单元是正方形还是非正方形对变换单元的数据进行译码。
举例来说,视频编码器20和视频解码器30可以经配置以使得用于2Nx2N的CU的残余四叉树(RQT)数据结构的根等级(等级0)对应于一个2Nx2N的TU或两个Nx2N(或2NxN)的TU,并且使得RQT数据结构的等级1对应于NxN的TU。或者,视频编码器20和视频解码器30可以经配置以使得RQT数据结构的根等级(等级0)对应于2Nx2N的TU,等级1对应于2NxN(或Nx2N)的TU,并且等级2对应于NxN的TU。对指示变换单元所对应的RQT数据结构的等级的信息进行译码可以因而表示对指示变换单元是正方形还是非正方形的信息进行译码的实例。
作为另一替代方案,视频编码器20和视频解码器30可以经配置以使得TU始终具有与RQT数据结构的根等级(等级0)上的对应PU的大小相同的大小,或使得非正方形TU仅与某些形状的PU(例如,非正方形PU)一起使用。因而,对指示变换单元是正方形还是非正方形的信息进行译码可以至少部分基于对应于变换单元的预测单元是正方形还是非正方形。在一些实例中,对指示对应于变换单元的预测单元是正方形还是非正方形的信息进行译码本身可以对应于指示变换单元是正方形还是非正方形的经译码信息。
此外,或在替代方案中,视频编码器20和视频解码器30可经配置以对表示一个或一个以上变换单元的大小的数据进行译码。举例来说,视频编码器20可以选择变换单元的大小和对指示选定大小的值进行译码,而视频解码器30可以对接收到的数据进行解码和解释以确定经译码变换单元的大小。以此方式,视频编码器20和视频解码器30可以对CU的TU应用相同变换单元大小。总的来说,对指示变换单元大小的信息进行译码可以指代视频编码器20对此信息进行编码或视频解码器30对此信息进行解码。
在一些实例中,对指示变换单元大小的信息进行译码可包含对指示TU对应于RQT的等级0还是RQT的等级1(或RQT的更高等级)的分裂旗标进行译码。对此信息进行译码可以进一步包含对指示每一等级上的TU的大小的信息进行译码。在一些实例中,等级0对应于对应的2Nx2N的CU的大小为2Nx2N的TU。在其它实例中,等级0可以对应于大小为2Nx2N或2NxN(或Nx2N)的TU,并且当选择等级0时可以对进一步的信息进行译码以指示选择了等级0上的哪个大小。因而,对指示RQT中变换单元所对应的等级的信息进行译码、对指示分裂旗标(也就是说,父代变换单元是否分裂以形成子代变换单元)的信息进行译码和/或对变换选择旗标进行译码表示对指示视频数据的变换单元是正方形还是非正方形的信息进行译码的实例。
可以与指示TU的大小的信息联合地对额外信息(例如,举例来说,TU是否包含非零变换系数,也就是说,TU是否经译码)进行译码。此信息可包含用于明度和/或色度TU的经译码块旗标。因而,视频编码器20和视频解码器30可经配置以至少部分基于变换单元对应于色度分量还是明度分量对指示变换单元是正方形还是非正方形的信息进行译码。
此外,另外或在替代方案中,视频编码器20和视频解码器30可经配置以对表示用于各种TU的量化参数的数据进行译码。具体来说,视频编码器20和视频解码器30可经配置以基于TU是正方形还是非正方形而对TU应用不同量化参数。举例来说,视频编码器20和视频解码器30可以对表示用于当前图片的基础量化参数QP0的值进行译码。此外,视频编码器20和视频解码器30可经配置以确定将应用于QP0值的偏移值,其中偏移值可以对于正方形对非正方形TU而不同。举例来说,对于非正方形TU,所述偏移值可以是3(对于QP0+3),并且对于正方形TU,所述偏移值可以是0(对于等于QP0的QP)。对于正方形和非正方形TU使用不同QP值可以提供更多灵活性,这可以允许实现更好的译码性能。偏移值可以是固定的,或者在例如序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)、切片标头、图片标头或其它数据结构中用信号表示。以此方式,视频编码器20和视频解码器30可经配置以基于变换单元是正方形还是非正方形来确定用于变换单元的量化参数。
此外,视频编码器20和视频解码器30可以另外或或者经配置以对非正方形TU执行特定的扫描模式。举例来说,当TU是非正方形时,TU可以总体上被视为矩形和非正方形。因此,TU的一条边可以大于另一条边。举例来说,对于Nx2N的TU,长度为2N的边(例如,顶部和底部)大于长度为N的边(例如,左边和右边)。同样,对于2NxN的TU,长度为2N的边(例如,左边和右边)比长度为N的边(例如,顶部和底部)长。根据本发明的技术,视频编码器20和视频解码器30可经配置以基于非正方形TU的哪条边较长来执行扫描。举例来说,对于Nx2N的TU,视频编码器20和视频解码器30可经配置以使用波前扫描,其中次序总体上是左下方到右上方,并且可以始终从较短边缘(例如,左边缘)开始。以此方式,视频编码器20和视频解码器30可经配置以在变换单元是非正方形时对变换单元的变换系数应用一种在变换单元的较短边缘上开始的扫描模式。
此外,视频编码器20和视频解码器30可以另外或或者经配置以执行经过修改的CABAC熵译码技术以支持非正方形变换单元。具体来说,支持非正方形变换单元的熵译码技术可包含用信号表示指示最后有效系数(按照扫描次序)、有效性映射和系数等级的信息并且对这些信息进行译码。对于非正方形块,在用信号表示最后有效系数时,视频编码器20和视频解码器30可以经配置以使得上下文模型(例如,对于CABAC)取决于正被译码的坐标的边的长度。举例来说,水平坐标(最后有效系数的x分量)可以具有取决于块的宽度和正被译码的x的二进制数的CABAC上下文。同样,垂直坐标(y分量)可以具有取决于块的高度的所指派的上下文集合。
同样,当对非正方形块的有效性映射进行译码时,2NxN和Nx2N可以共用相同上下文,这与对于Nx2N和2NxN具有不同上下文相比可以减少上下文的总数。垂直定向和水平定向的非正方形TU可以使用相同上下文和相同的一组规则来选择上下文。但是,用于一个TU定向的系数的X和Y坐标可以用于上下文选择,而用于另一定向的系数的X和Y坐标可以被转置以便使用相同的上下文选择准则。具体来说,为了增强性能,视频编码器20和视频解码器30可以转置矩形形状的坐标和值,而不是直接执行共用。举例来说,当对2NxN的变换单元进行译码时,视频编码器20和视频解码器30可以直接应用上下文,但当对Nx2N的变换单元进行译码时,视频编码器20和视频解码器30可以转置X和Y坐标以及块的宽度和高度,目的仅在于选择上下文。以此方式,视频编码器20和视频解码器30可经配置以利用2NxN块和经转置的Nx2N块的统计数据的相似性。
作为一实例,视频编码器20和视频解码器30可经配置以用类似于HEVC中的4x4和8x8块的方式使用上下文基于用于4x8和8x4块的系数的位置对有效性映射进行译码。可以使用十六个上下文,沿较长边的两个相邻系数共用这些上下文。举例来说,假设X和Y是系数的坐标,假设“>>”表示右移位运算,并且CtxNum是针对当前块指派的上下文。用于8x4块的上下文可以如下导出:
CtxNum-Y+(X>>1) (1)
对于4x8块,同样可以使用公式(1)导出上下文,但是在交换X和Y之后。对于较大块,例如,16x4、4x16和更大,视频编码器20和视频解码器30可经配置以使用类似于HEVC中描述的方法,其中上下文是基于相邻系数的有效性。可以对所述两个形状中的一者应用恰当的转置(或交换)操作。
对于系数等级译码,当前HEVC依赖于在4x4的子块中分割所述块,并且依次在每一子块内执行译码。但是,这种类型的处理不与无法配合在4x4子块中的块大小相容(例如当矩形的边中的至少一者小于4时)。因而,视频编码器20和视频解码器30可以执行译码过程,其中所述块分割成依照扫描次序的n(例如,n=16)个连续系数。在各种实例中,这可以应用于所有非矩形块大小或仅应用于那些不能含有4x4子块的块大小。视频编码器20和视频解码器30可以进一步经配置以对非正方形块的经四叉树译码的块旗标(CBF)使用与用于正方形块的四叉树CBF的概率上下文相比不同的概率上下文集合,因为非正方形块可能具有与正方形块不同的统计数据。
以此方式,视频编码器20和视频解码器30可经配置以至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。也就是说,视频编码器20和视频解码器30可经配置以当变换单元是非正方形时基于变换单元的较短边缘的位置来选择用于对数据进行译码的上下文。
虽然图1中未图示,但在一些方面中,视频编码器20和视频解码器30可以各自与音频编码器和解码器集成,并且可包含适当的多路复用器-多路分用器单元,或其它硬件和软件,以便在共用数据流或分开数据流中处理音频和视频两者的编码。在一些实例中,如果适用的话,多路复用器-多路分用器单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
以此方式,视频编码器20和视频解码器30表示视频译码器的实例,其经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,和至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。举例来说,为了对变换单元的数据进行译码,视频编码器20可经配置以计算用于译码单元的至少一部分的残余数据,变换残余数据以产生变换系数,将变换系数量化,和基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行编码。此外,为了对指示变换单元是正方形还是非正方形的信息进行译码,视频编码器20可经配置以对指示变换单元是正方形还是非正方形的信息进行编码。
同样,为了对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,视频解码器30可经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行解码。此外,为了对变换单元的数据进行译码,视频解码器30可经配置以基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行解码,对经量化变换系数进行逆量化,和对变换系数进行逆变换以产生用于对应于变换单元的译码单元的至少一部分的残余数据。
视频编码器20和视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地用软件实施所述技术时,装置可将用于所述软件的指令存储于合适的非暂时性计算机可读媒体中且使用一个或一个以上处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可包含在一个或一个以上编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(编解码器)的一部分。
视频编码器20可以实施任何或所有本发明的技术以使用非正方形变换对视频数据进行译码。同样,视频解码器30可以实施任何或所有这些技术以使用非正方形变换对视频数据进行译码。如本发明中所描述,视频译码器可以指视频编码器或视频解码器。类似地,视频译码单元可指视频编码器或视频解码器。同样,视频译码可以指视频编码或视频解码。
图2是图解说明可以使用如本发明中所描述用于在运动向量预测过程中选择合并候选物的技术的视频编码器20的实例的框图。出于说明的目的将在HEVC译码的上下文中描述视频编码器20,但关于其它译码标准或方法并不限制本发明。视频编码器20可以对视频帧内的CU执行帧内和帧间译码。帧内译码依赖于空间预测来减少或移除给定视频帧内的视频数据中的空间冗余。帧间译码依赖于时间预测来减少或移除当前帧与视频序列的经先前译码帧之间的时间冗余。帧内模式(I模式)可指若干基于空间的视频压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可指若干基于时间的视频压缩模式中的任一者。
如图2中所示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的实例中,视频编码器20包含运动补偿单元44、运动估计单元42、帧内预测单元46、参考帧缓冲器64、求和器50、变换处理单元52、量化单元54和熵编码单元56。图2中图解说明的变换处理单元52是对残余数据块应用实际变换或变换组合的单元,并且不应与变换系数块混淆,变换系数块也可被称为CU的变换单元(TU)。变换处理单元52可以根据本发明中描述的技术应用非正方形变换。为了进行视频块重建,视频编码器20还包含逆量化单元58、逆变换单元60和求和器62。还可包含解块滤波器(图1中未展示)以将块边界滤波,以从经重建的视频移除成块假影。必要时,所述解块滤波器通常将对求和器62的输出进行滤波。
在编码过程期间,视频编码器20接收待译码的视频帧或切片。所述帧或切片可分割成多个视频块,例如,最大译码单元(LCU)。运动估计单元42和运动补偿单元44相对于一个或一个以上参考帧中的一个或一个以上块执行对接收到的视频块的帧间预测译码以提供时间压缩。帧内预测单元46可相对于与待译码块相同的帧或切片中的一个或一个以上相邻块执行对接收到的视频块的帧内预测性译码以提供空间压缩。
模式选择单元40可以例如基于每一模式的误差(其可以指失真)结果选择所述译码模式中的一者(帧内或帧间),并且将所得的经帧内或帧间预测的块(例如,预测单元(PU))提供到求和器50以产生残余块数据,并且提供到求和器62以重建经编码块以用于参考帧。模式选择单元40还可实施上文所描述的本发明的技术的变换选择方面。求和器62组合经预测块与来自逆变换单元60的用于所述块的经逆量化、经逆变换的数据以便如下文更详细描述重建经编码块。一些视频帧可以被指定为I帧,其中I帧中的所有块都在帧内预测模式下编码。在一些情况下,帧内预测单元46可以在例如运动估计单元42执行的运动搜索未产生对块的足够预测的情况下执行P或B帧中的块的帧内预测编码。此外,模式选择单元40可以选择用于将叶节点译码单元分割成一个或一个以上PU(其可以是非正方形)的方式。举例来说,模式选择单元40可以在SDIP的情况下针对2Nx2N的CU、N/2x2N或2NxN/2的PU选择Nx2N或2NxN的PU,或者针对不对称运动分割或不对称SDIP选择2NxnU、2NxnD、nLx2N或nRx2N的PU。
运动估计单元42和运动补偿单元44可以高度集成,但出于概念目的分开加以图解说明。运动估计(或运动搜索)为产生运动向量的过程,其估计视频块的运动。举例来说,运动向量可以指示当前帧中的预测单元相对于参考帧的参考样本(即,参考块)的位移。运动估计单元42通过比较经帧间译码帧的预测单元与参考帧缓冲器64中存储的参考帧的参考样本来计算用于所述预测单元的运动向量。参考样本可为被发现紧密匹配CU的包含PU的部分的块(其依据像素差进行译码),像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异量度来确定。参考样本可出现在参考帧或参考切片内的任何地方,而未必出现在参考帧或切片的块(例如,译码单元)边界处。在一些实例中,参考样本可以在分数像素位置(其可以被内插)上发生。
运动估计单元42将计算出来的运动向量发送到熵编码单元56和运动补偿单元44。具体来说,运动估计单元42可以利用上述合并候选物根据合并模式用信号表示运动向量(即,用信号表示将从其复制运动向量的相邻块的索引)。参考帧的通过运动向量识别的部分可被称为参考样本。运动补偿单元44可以例如通过检索通过用于PU的运动向量识别的参考样本来计算用于当前CU的预测单元的预测值。
作为运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可以对接收到的块进行帧内预测。帧内预测单元46可以相对于空间上相邻的经先前译码块(例如,在当前块上方的块、右上方的块、左上方的块或左侧的块)预测接收到的块,假设块的编码次序是从左到右、从上到下。帧内预测单元46可以配置有多种不同帧内预测模式。举例来说,基于正被编码的CU的大小,帧内预测单元46可以配置有某一数目的方向预测模式,例如,三十五种方向预测模式。
帧内预测单元46可以举例来说通过计算各种帧内预测模式的误差值和选择一种得出最低误差值的模式来选择帧内预测模式。方向预测模式可包含用于组合空间相邻像素的值和向PU中的一个或一个以上像素位置应用所述组合值的功能。一旦已经计算了PU中的所有像素位置的值,帧内预测单元46便可以基于PU与待编码的接收到的块之间的像素差来计算所述预测模式的误差值。帧内预测单元46可以继续测试帧内预测模式,直到发现得出可接受误差值的帧内预测模式为止。帧内预测单元46可以接着将PU发送到求和器50。
视频编码器20通过从正被译码的原始视频块减去运动补偿单元44或帧内预测单元46计算的预测数据来形成残余块。求和器50表示执行此减法运算的组件。残余块可以对应于像素差值的二维矩阵,其中残余块中的值的数目与对应于所述残余块的PU中的像素的数目相同。残余块中的值可对应于PU中的共置像素与待译码的原始块中的共置像素的值之间的差,即误差。所述差可以是色度或明度差,这取决于经译码的块的类型。
变换处理单元52可以从残余块形成一个或一个以上变换单元(TU)。变换处理单元52从多种变换中选择一种变换,这多种变换可包含根据上文所描述的技术的大小为2NxN、Nx2N、NxM或MxN的非正方形变换。变换处理单元52接着对TU应用选定变换,从而产生包括变换系数的二维阵列的视频块。以此方式,变换处理单元52可以使用具有与对应PU相同的大小的TU,或者具有比对应PU小的大小的TU。当然,变换处理单元52还可以使用具有大于PU的大小的TU,但总的来说,可能不需要使用大于对应PU的TU。
具体来说,根据本发明的技术,变换处理单元52可以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,并且至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。也就是说,在一些实例中,变换处理单元52(或在其它实例中是模式选择单元40)可以确定对于叶节点译码单元是形成正方形还是非正方形变换单元。或者,模式选择单元40可以基于各种译码遍次的译码结果来确定是形成正方形还是非正方形变换单元,从而使得变换处理单元52在每一遍次中使用正方形或非正方形变换,并且基于这些各种译码遍次的结果(在失真方面或在速率失真度量方面)选择变换单元的大小和形状。
在一些实例中,视频编码器20(例如,视频编码器20的模式选择单元40和/或变换处理单元52)可以在确定是使用正方形还是非正方形变换单元时分析额外或替代的准则。举例来说,视频编码器20可以经配置以使得基于当前叶节点CU的PU的形状、基于当前叶节点CU的大小或此些准则的组合在某些场景中(例如,针对某些分量(色度或明度分量))仅可使用正方形变换单元或仅可使用非正方形变换单元。
此外,在选择用于当前叶节点CU的TU的形状之后,视频编码器20可以对指示选定形状的数据进行译码。举例来说,视频编码器20可经配置以对表示当前叶节点CU的TU对应于的RQT等级的数据进行译码。在一些实例中,PU的形状可以规定对应TU的形状,并且因而,对指示PU的形状的信息进行译码还可指示对应TU的形状。同样,对指示TU是对应于色度还是明度分量的信息进行译码还可指示TU是(或可以是)正方形还是非正方形。举例来说,视频译码装置可经配置以对于明度分量在正方形或非正方形TU之间进行选择,但经配置以对色度分量仅使用正方形TU。
变换处理单元52可以形成选定大小的TU,以使得TU包含从求和器50接收到的残余数据,并且对残余数据应用变换以将数据从像素域变换到频域。此些经变换数据可被称为变换系数。变换处理单元52可以将所得变换系数发送到量化单元54。量化单元54可以接着将变换系数量化。在一些实例中,量化单元54可经配置以基于TU是正方形还是非正方形来确定量化参数。举例来说,量化单元54可以基于TU是正方形还是非正方形而使量化参数偏移某一量。如上文所论述,量化单元54可以对QP0值应用偏移值,其中QP0值是针对包含TU的当前帧或切片用信号表示的量化参数,并且偏移可以是基于TU是正方形还是非正方形。举例来说,对于正方形和非正方形TU可以使用对QP0值的不同偏移。在一些情况下,针对正方形TU可以不使用对QP0值的偏移,而针对非正方形TU可以使用对QP0值的选定偏移。
熵编码单元56可以根据一种扫描模式对矩阵中的经量化变换系数进行扫描和熵译码。在一些实例中,熵编码单元56可以例如根据HEVC的技术或其它相关译码标准执行常规扫描。在一些实例中,根据本发明的技术,熵编码单元56可以使用一种扫描模式扫描非正方形变换单元的经量化变换系数,所述扫描模式在扫描模式的方向上在变换单元的较短边缘上在将较短边缘连接到较长边缘的拐角中开始。举例来说,熵编码单元56可以在宽度大于高度的TU的左边缘上在左边缘与顶部边缘汇合的地方开始扫描。作为另一实例,熵编码单元56可以在高度大于宽度的TU的顶部边缘上在顶部边缘与左边缘汇合的地方开始扫描。
熵编码单元56还可经配置以基于TU是正方形还是非正方形对TU的经量化变换系数进行译码。总的来说,熵译码单元56可以针对每一系数对一些数据(也就是说,语法元素)进行编码,这些数据指示所述系数是否具有大于零的绝对值(也就是说,系数是否有效)、系数是否为扫描次序中的最后有效系数、系数是具有正值还是负值、系数的绝对值是否大于一、系数的绝对值是否大于二,以及系数的“等级”的值(也就是说,系数的绝对值,其可以被译码为系数减去三的绝对值)。熵编码单元56可以跳过对值可以推断出来的语法元素的编码,例如,当系数无效(也就是说,不具有大于零的绝对值)时跳过对指示系数是否具有大于二的绝对值的数据的编码。
在一些实例中,熵编码单元56可以使用上下文自适应二进制算术译码(CABAC)对所述系数进行编码。总的来说,当执行CABAC时,熵编码单元56选择一组上下文集合,以及所述集合的初始化值,和随着译码进展在状态之间的过渡。为了执行CABAC,熵编码单元56可以选择根据本发明中描述的技术的CABAC要应用于某一上下文以对要发射的符号进行编码的上下文模型。举例来说,上下文可以涉及相邻值是否为非零和上文相对于上文所描述的技术的CABAC方面所描述的其它准则和/或数据。熵编码单元56还可对语法元素(例如表示选定变换的信号)进行熵编码。在熵编码单元56进行的熵译码之后,可以将所得经编码视频发射到另一装置,例如视频解码器30,或将经编码视频存档以用于日后发射或检索。
TU可以被视为变换系数的二维矩阵,以使得在TU中可以使用成对的值(X,Y)来识别变换系数中的每一者,其中X对应于TU内的水平坐标,而Y对应于TU内的垂直坐标。当对用于最后有效系数的语法元素(X,Y)(也就是说,指示最后有效系数的X坐标和最后有效系数的Y坐标的语法元素)进行译码时,熵编码单元56可以基于正被译码的坐标的边的长度来选择上下文集合。也就是说,当对X分量进行译码时,熵编码单元56可以基于TU的宽度选择上下文,而当对Y分量进行译码时,熵编码单元56可以基于TU的高度选择上下文。
当对用于TU的有效性映射(也就是说,指示每一相应系数是否有效(非零)的一组值)进行译码时,熵编码单元56可以对于高度大于宽度和宽度大于高度的TU基本上使用相同上下文。为了进行此操作,熵编码单元56可以使用直接上下文确定对一些TU进行译码,并且可以通过转置TU的坐标并且接着确定上下文来对其它TU进行译码。举例来说,对于相对水平的TU(宽度大于高度),熵编码单元56可以应用直接上下文确定,其中基于一个系数的x坐标和y坐标为所述系数选择一个上下文,并且对于相对垂直的TU(高度大于宽度),熵编码单元56可以转置垂直TU并且接着确定上下文,其中基于经转置的x和y坐标为一个系数选择一个上下文。具体来说,相对垂直的TU中的每一系数的x和y坐标经过转置,以使得原始y坐标用作经转置的x坐标,而原始x坐标用作经转置的y坐标,以便用于上下文选择的目的。接着使用相对垂直的TU中的系数中的每一者的经转置的坐标[(x,y)->(y,x)]以x和y坐标用于相对水平的TU的相同方式为相应系数选择上下文。
作为一实例,熵编码单元56可以类似于如HEVC中所描述的4x4和8x8块基于8x4和4x8TU的系数的位置使用CABAC上下文进行有效性映射译码而对所述系数进行编码。熵编码单元56可经配置以如上文相对于公式(1)所描述来确定上下文。也就是说,熵编码单元56可以将用于8x4块的每一系数的上下文导出为CtxNum=Y+(X>>1),其中X和Y是针对其确定上下文的相应系数的水平和垂直坐标。也就是说,用于对系数的语法元素(例如有效系数旗标)进行译码的上下文的识别符可以基于系数的X坐标和Y坐标。同样,熵编码单元56可以通过首先交换4x8块的每一系数的X和Y坐标并且接着执行CtxNum=Y+(X>>1)来导出用于相应系数的上下文。对于系数等级译码,熵编码单元56可以用扫描次序将TU分割成16个连续系数。当对非正方形块的经译码块旗标进行译码时,熵编码单元56可以使用上下文的不同集合,例如具体来说对应于基于对应系数的X和Y坐标的经译码块旗标的上下文。
在一些情况下,熵编码单元56或视频编码器20的另一单元可经配置以除了执行熵译码之外还执行其它译码功能。举例来说,熵编码单元56可经配置以确定用于CU和PU的经译码块模式(CBP)值。并且,在一些情况下,熵编码单元56可以执行系数的游程长度译码。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换以在像素域中重建残余块,例如,以便以后用作参考块。运动补偿单元44可以通过将残余块加到参考帧缓冲器64的帧中的一者的预测性块来计算参考块。运动补偿单元44还可对经重建的残余块应用一个或一个以上内插滤波器以计算子整数像素值以便用于运动估计。求和器62将经重建残余块加到运动补偿单元44产生的经运动补偿的预测块以产生经重建视频块用于存储在参考帧缓冲器64中。
模式选择单元40可以接着分析应用变换的结果,并且选择应在位流中用信号表示哪个变换,常常执行速率失真分析或优化和根据上文描述的技术的变换选择方面将各种变换相互比较。模式选择单元40可以实施上文所描述的递归选择过程以产生残余四叉树变换结构,模式选择单元40可以用上述语法元素的形式将残余四叉树变换结构传递到熵编码单元56。
以此方式,视频编码器20表示视频译码器的实例,其经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,并且至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。具体来说,为了对变换单元的数据进行译码,视频编码器20可经配置以计算译码单元的至少一部分的残余数据,对残余数据进行变换以产生变换系数,将变换系数量化,和基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行编码,并且为了对指示变换单元是正方形还是非正方形的信息进行译码,视频编码器20可经配置以对指示变换单元是正方形还是非正方形的信息进行编码。此外,视频编码器20可以将使用正方形变换单元对译码单元进行译码的结果与使用非正方形变换单元对译码单元进行译码的结果比较,并且基于所述比较选择正方形变换单元或非正方形变换单元。
图3是图解说明对经编码视频序列进行解码的视频解码器30的实例的框图。在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74。逆量化单元76、逆变换单元78、参考帧缓冲器82和求和器80。在一些实例中,视频解码器30可以执行总体上与相对于视频编码器20(参见图2)描述的编码遍次相反的解码遍次。
熵解码单元70对经编码位流执行熵解码过程以检索变换系数的一维阵列。所使用的熵解码过程取决于由视频编码器20使用的熵译码(例如,CABAC、CAVLC等)。编码器所使用的熵译码过程可在经编码位流中发信号通知或可为预定过程。总体上,熵解码单元70用与上文相对于熵编码单元56所描述的技术相反的方式实施上文所描述的技术的熵解码方面。熵解码单元70还可实施总体上与上文所描述的技术的语法编码方面相反的技术的语法解码方面对位流(其在图2和3的实例中表示为“经编码视频”)中指定的语法元素进行解码。
在一些实例中,熵解码单元70(或逆量化单元76)可以使用与视频编码器20的熵编码单元56(或量化单元54)使用的扫描模式对称的扫描来扫描接收到的值。在这种意义上讲,熵解码单元70可以用与上文相对于熵编码单元56所描述的技术的扫描方面相反的方式实施所述技术的扫描方面。虽然可在逆量化单元76中执行系数的扫描,但出于说明的目的将把扫描描述成由熵解码单元70执行。另外,虽然为了便于图解说明展示为分开的功能单元,但是熵解码单元70、逆量化单元76和视频解码器30的其它单元的结构和功能性可以彼此高度集成。
逆量化单元76将在位流中提供且由熵解码单元70解码的经量化变换系数逆量化,即解量化。以此方式,逆量化单元76可以实施总体上与上文相对于量化单元54所描述的技术的量化方面相反的本文所述的技术的逆量化方面。此外,逆量化单元76可以实施与视频编码器20的逆量化单元58实施的基本上相同的所述技术的方面。逆量化过程可包含常规过程,例如,类似于针对HEVC所提议的过程或H.264解码标准所定义的过程。逆量化过程可包含使用视频编码器20针对CU计算的量化参数QP以确定量化程度,并且同样确定应应用的逆量化程度。逆量化单元76可在将变换系数从一维阵列转换为二维阵列之前或之后将所述系数逆量化。
逆变换单元78对经逆量化的变换系数应用逆变换。在一些实例中,逆变换单元78可以基于来自视频编码器20的信令来确定逆变换,或通过从例如块大小、译码模式或类似特性的一个或一个以上译码特性推断变换来确定逆变换。在一些实例中,逆变换单元78可以基于用于包含当前块的LCU的四叉树的根节点上的用信号表示的变换来确定适用于当前块的变换。或者,变换可在用于LCU四叉树中的叶节点CU的TU四叉树的根上发信号通知。在一些实例中,逆变换单元78可以应用级联逆变换,其中逆变换单元78对正被解码的当前块的变换系数应用两个或两个以上逆变换。逆变换单元78可以用与上文相对于变换处理单元52所描述的非正方形变换的应用总体上相反的方式应用一个或一个以上非正方形逆变换。
以此方式,逆变换单元78可以实施本文所述的技术的非正方形变换方面,其总体上与上文相对于变换处理单元52所描述的技术的非正方形变换方面相反。此外,逆变换单元78可以实施与视频编码器20的逆变换单元60基本上相同的所述技术的方面。
帧内预测单元74可以基于用信号表示的帧内预测模式和来自当前帧的先前经解码块的数据来产生用于当前帧的当前块的预测数据。
另一方面,运动补偿单元44可以接收指示运动信息(例如运动向量、参考帧索引和运动方向)的语法数据。基于检索到的运动预测方向、参考帧索引和计算出的当前运动向量(例如,根据合并模式从相邻块复制来的运动向量),运动补偿单元产生用于当前部分的经运动补偿块以进行帧间预测。这些经运动补偿块基本上重新产生用以产生残余数据的预测性块。
运动补偿单元72可产生经运动补偿块,可能基于内插滤波器执行内插。待用于具有子像素精度的运动估计的内插滤波器的识别符可包含在语法元素中。运动补偿单元72可使用由视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元72可根据接收的语法信息而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。
另外,在HEVC实例中,运动补偿单元72和帧内预测单元74可以使用一些语法信息(例如,通过四叉树提供)来确定用于对经编码视频序列的帧进行编码的LCU的大小。运动补偿单元72和帧内预测单元74还可使用语法信息来确定描述经编码视频序列的帧的每一CU如何分裂(以及同样,子CU如何分裂)的分裂信息。语法信息还可包含指示每一分裂如何经编码的模式(例如,帧内或帧间预测,且对于帧内预测为帧内预测编码模式),用于每一经帧间编码的PU的一个或一个以上参考帧(和/或包含用于参考帧的识别符的参考列表)和用于对经编码视频序列进行解码的其它信息。
求和器80组合残余块与运动补偿单元72或帧内预测单元74产生的对应预测块以形成经解码块。视频解码器30还可包含应用解块滤波器的解块单元。可以应用这个滤波器以对经解码块进行滤波以便移除成块效应假影。接着将经解码视频块存储在参考帧缓冲器82中,参考帧缓冲器提供参考块以用于后续运动补偿并且还产生经解码视频以用于在显示装置(例如图1的显示装置32)上呈现。
以此方式,视频解码器30表示视频译码器的实例,其经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,并且至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。具体来说,为了对指示视频数据的变换单元是正方形还是非正方形的信息进行译码,视频解码器30可经配置以对指示视频数据的变换单元是正方形还是非正方形的信息进行解码,并且为了对变换单元的数据进行译码,视频解码器30可经配置以基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行解码,将经量化变换系数逆量化,并且对变换系数进行逆变换以产生用于对应于变换单元的译码单元的至少一部分的残余数据。
图4是被分裂成具有不同大小的PU的译码单元(CU)100A-100D的概念图。大小为2Nx2N的CU可以根据CU100A-100D的分割策略中的一者分裂。CU100A包含大小为2Nx2N的PU,并且因而,CU100A的PU与CU100A的大小相同。CU100B分裂成大小为Nx2N的两个PU。CU100C分裂成大小为2NxN的两个PU。CU100D分裂成大小为NxN的四个PU。在这些实例中的每一者中,假设CU是叶节点CU。
根据本发明的技术,用于CU100A-100D的TU可以是正方形或非正方形的。在一些实例中,可以假设用于CU100B和100C的TU是非正方形的,而可以假设用于CU100A和100D的TU是正方形的,例如当视频编码器20和视频解码器30经配置以使用具有与对应PU相同大小的TU时。在其它实例中,视频编码器20和视频解码器30可经配置以仅对CU100A和100D使用正方形TU,但确定对CU100B和100C是使用正方形TU还是非正方形TU。
图5是图解说明实例残余四叉树变换结构110的概念图。在图5的实例中,结构110包含根等级,根等级是大小为2Nx2N的外框,其已划分成四个NxN子块112A、112B、112C和112D。结构110的子块112B已进一步细分成大小为N/2xN/2的四个子部分,这意味着大小为N/2xN/2的变换可能已被确定为产生比对子部分112B应用大小为NxN的变换获得的结果更好的结果。相对于子部分112A、112C和112D,将这些部分进一步细分成大小为N/2xN/2的四个子部分可能并未产生更好结果,因为当应用于部分112A、112C和112D的子部分时,视频编码器选择了大小为NxN的变换而不是大小为N/2xN/2的变换。此外,在图5的实例中,考虑到视频编码器选择了应用于子部分112A、112B、112C和112D的大小为NxN的变换,在根等级上应用的大小为2Nx2N的变换并未产生更好的结果。
虽然在图5的实例中RQT结构110的实例图解说明正方形的TU,但是根据本发明的技术,RQT结构还可包含非正方形的TU。下文相对于图8和9描述这些RQT结构的实例。
图6A和6B是图解说明根据某些本发明中描述的技术的波前扫描的概念图。在图6A的实例中,视频译码器在最短边缘开始从左下方到右上方扫描大小为2NxN的非正方形变换系数块120,最短边缘是非正方形变换系数块120的最左边缘。因为高度小于宽度,所以视频译码器从非正方形变换系数块120的最左边界扫描这些系数。举例来说,视频编码器20可以在熵编码期间根据非正方形变换单元的较短边缘的位置在左上角中开始用图6A或6B中展示的次序扫描非正方形变换单元的经量化变换系数。作为另一实例,视频解码器30可以对变换系数进行熵解码,并且接着将经解码变换系数放置在非正方形变换系数块120的对应位置中。
在图6B的实例中,视频译码器在最短边缘开始从右上方到左下方扫描非正方形变换系数块122,最短边缘是非正方形变换系数块122的最上边缘。因为宽度小于高度,所以视频译码器从非正方形变换系数块122的最上边界扫描这些系数。举例来说,视频编码器20可以在熵编码期间用所述次序扫描经量化变换系数。作为另一实例,视频解码器30可以对变换系数进行熵解码,并且接着将经解码变换系数放置在非正方形变换系数块122的对应位置中。
图7A是图解说明将块(例如,CU)分割成一个或一个以上预测性块(例如,PU)的各种分割模式的概念图。具体来说,块130图解说明预测性块与当前块的大小相同的实例。因而,块130可以表示与对应CU相同大小的PU。可以说块132具有2Nx2N个像素的大小,并且分割成NxN个预测性块。也就是说,块132分割成四个正方形非重叠块,其中的每一者具有恰好触碰父代块的对应角的一个拐角。
块134和136表示根据短距离帧内预测(SDIP)分割的块的实例。SDIP是引入两个新分区单元类型2NxhN和hNx2N的帧内译码技术。对于2NxhN分区(例如,块134),CU具有4个2NxhN的PU,并且对于hNx2N(例如,块136),CU具有4个hNx2N的PU。每一PU可以具有其自身的帧内预测模式(例如,图4中展示的35个模式中的一者)。图7A图解说明块134和136的SDIP分区是对称的。对于块134,SDIP分区围绕水平轴线对称,而对于块136,SDIP分区围绕垂直轴线对称。所以,块134和136表示包含非正方形PU的块的实例,其中非正方形TU可以根据本发明的技术提供。根据本发明的技术,例如视频编码器20和视频解码器30的视频译码器可经配置以对分割成SDIP PU的CU(例如CU134和136)应用非正方形变换。
图7B是图解说明分割成不对称分区的块140-146的各种实例的概念图。在图7B的实例中,每一块140-146分割成两个矩形,其中块140-146中的每一者原先是2Nx2N块。一个矩形具有N/2像素的尺寸(也就是说,长度或宽度),并且另一矩形具有相同的3N/2像素的尺寸。不对称分割可能是起因于用于帧间预测的不对称运动分割(AMP)或用于帧内预测的不对称短距离帧内预测(SDIP)。
在这个实例中,块140、142、144和146中的每一者是64x64像素块,但其它大小(例如,32x32、16x16、128x128或类似大小)的块也可用类似方式分割。块140通过垂直边缘150A水平地分成两个PU,一个(1/2N)*2N PU152A和一个(3/2N)*2N PU154A。块142通过垂直边缘150B水平地分成两个PU,一个(3/2N)*2N PU154B和一个(1/2N)*2N PU152B。块144通过水平边缘150C垂直地分成两个PU,一个2N*(3/2N)PU154C和一个2N*(1/2N)PU152C。块146通过水平边缘150D垂直地分成两个PU,一个2N*(1/2N)PU152D和一个2N*(3/2N)PU154D。以此方式,图7B的PU152、154可被称为不对称的。同样,在各种实例中,图7B的PU152、154可能是起因于不对称运动分割或不对称SDIP分割。根据本发明的技术,例如视频编码器20和视频解码器30等视频译码器可经配置以对分割成不对称PU的CU(例如CU140、142、144和146)应用非正方形变换。
图8是图解说明用于表示非正方形变换单元的实例分割结构的概念图。分割结构可以对应于残余四叉树(RQT)。总的来说,如上文所论述,RQT可以具有各种等级。在图8的实例中,对应于RQT的等级0的TU可以具有正方形形状(例如根节点160A)或非正方形形状(例如根节点160B),根节点160B划分成两个非正方形变换单元162A和162B。
在这个实例中,为了指示CU的TU具有2Nx2N的大小,视频译码器可以对指示TU对应于RQT的等级0的值进行译码,并且进一步对指示TU对应于类似于根节点160A的形状的形状的变换选择旗标进行译码。另一方面,为了指示CU包含非正方形TU,视频译码器可以对指示TU对应于RQT的等级0的值进行译码,并且对指示TU对应于类似于根节点160B的变换单元162A、162B的形状的形状的变换选择旗标进行译码。在一些实例中,视频译码器可以进一步基于用于对应CU的PU确定TU162A、162B的高度是否大于宽度,或者可以对指示长度是否大于宽度的数据进行译码。
对应于图8中展示的RQT的等级1(也称为子代变换单元)的节点166的TU164A-164D的大小为NxN,并且因而也具有正方形形状。所以,视频译码器可以对指示CU的TU对应于图8的RQT的等级1的值进行译码,以便指示TU的大小为NxN。因为仅NxN个TU是在等级1上,所以在这个实例中,不需要对进一步的信息进行译码以指示TU的大小和形状。举例来说,当TU对应于RQT的等级1时视频译码器不需要对变换选择旗标进行译码,因为在这个实例中等级1仅包含TU大小和形状的一个选项。
在一些实例中,视频编码器20可以在各种实例中使用大小对应于TU164A-164D的TU来执行CU(其可以分割成一个或一个以上正方形或非正方形PU)的第一译码遍次。视频编码器20可以分析由这个第一译码遍次产生的性能量度,并且可以随后使用对应于TU162A和162B的TU(或在相关实例中水平地定向的非正方形TU)执行CU的第二译码遍次。视频编码器20可以接着分析这个第二译码遍次产生的性能量度,并且将第一译码遍次产生的量度与第二译码遍次产生的量度比较。如果来自第一译码遍次的量度更好,则视频编码器20可以选择大小对应于TU164A-164D的TU。
另一方面,如果来自第二译码遍次的量度更好,则视频编码器20可以使用大小对应于根节点160A的TU执行第三译码遍次,并且分析这个第三译码遍次产生的量度。此外,视频编码器20可以将来自第三译码遍次的量度与来自第二译码遍次的量度比较。如果来自第二译码遍次的量度更好,则视频编码器20可以选择大小对应于TU162A、162B的TU。另一方面,如果来自第三译码遍次的量度更好,则视频编码器20可以选择大小对应于根节点160A的TU。
图9是图解说明用于表示非正方形变换单元的另一实例分割结构的概念图。在这个实例中,对应于RQT的等级0的根节点170的大小为2Nx2N。对应于RQT的等级1的节点172包含两个TU174A、174B(也称为子代变换单元),其大小为2NxN。对应于RQT的等级2的节点176包含四个TU178A-178D,其大小为NxN。
在这个实例中,视频译码器可以对指示CU的TU是对应于RQT的等级0、1还是2的信息进行译码。在这个实例中,当CU的TU对应于等级0或2时,TU是正方形,而当TU对应于等级1时,TU是非正方形。可以对额外信息进行译码以指示非正方形TU的高度是否大于宽度,或这可以基于其它信息(例如CU的PU的高度是否大于宽度)来确定。
视频编码器20可以用基本上遵照相对于图8描述的方式确定是使用对应于图9的实例RQT的等级0、1还是2的TU。举例来说,视频编码器20可以将在等级2上使用TU的结果与在等级1上使用TU的结果比较,并且如果在等级1上使用TU的结果更好,则将在等级0上使用TU的结果与在等级1上使用TU的结果比较。视频编码器20可以基于这些结果选择TU大小。视频编码器20可以对指示选定TU大小和形状的信息进行译码,并且视频解码器30可以对此信息进行解码以确定TU大小和形状。
图10A是图解说明用于用信号表示CU包含正方形还是非正方形TU的实例信令数据的概念图。在这个实例中,信令数据包含分裂旗标180、变换选择(TS)旗标182、明度经译码块旗标(明度CBF)184、蓝色色调色度CBF(色度u CBF)186和红色色调色度CBF(色度v CBF)188。分裂旗标180可以指示是否采用根等级变换或是否使用较小变换。举例来说,分裂旗标180可以具有第一值(例如,0)以指示使用根节点TU大小,或者具有第二值(例如,1)以指示根节点TU分裂成较小TU。因而,图10A的信令数据可以对应于例如图8中图解说明的RQT。
TS旗标182可以具有指示针对给定CU使用正方形还是非正方形变换单元的值。举例来说,当分裂旗标180指示使用根等级TU时,TS旗标182可以指示根等级TU是正方形(例如,2Nx2N)还是非正方形(例如,2NxN或Nx2N)。因而,相对于图8的实例,分裂旗标180可以设置成0值以指示叶节点CU在等级0上具有TU;TS旗标182的0值可以指示CU具有对应于根节点160A的TU,并且TS旗标182的1值可以指示CU具有对应于TU162A、162B的两个TU。在一些实例中,当分裂旗标180指示使用RQT的较高等级(例如,等级1)时,不需要对TS旗标182进行译码。
每一CU可包含用于三个不同分量的TU;一个指示亮度值的明度分量和两个指示色彩值(例如,蓝色和红色色调)的色度分量。用于各种分量的TU可以各自以相同方式分裂,并且因而可以全部是正方形或非正方形,如用于RQT的数据所指示。此外,明度CBF184可以具有一个指示用于明度分量的TU的用至少一个系数是否为非零(也就是说,有效)的值。当存在TU的至少一个非零系数时(也就是说,当存在至少一个有效系数时),说TU“经译码”。同样,色度U CBF186可以指示用于第一色度分量(例如,蓝色色调色度分量)的TU的至少一个系数是否为非零,而色度V CBF188可以指示用于第二色度分量(例如,蓝色色调色度分量)的TU的至少一个系数是否为非零。
在一些实例中,当TS旗标182指示TU具有非正方形形状时,可以针对每一分量对多个CBF进行译码。举例来说,对于非正方形TU162A、162B(图8),可以针对每一分量对两个CBF进行译码(CBF-Y0和CBF-Y1、CBF-U0和CBF-U1以及CBF-V0和CBF-V1)。
图10B是图解说明用于用信号表示CU是包含正方形还是非正方形TU的信令数据的替代实例的概念图。分裂旗标190可以基本上符合分裂旗标180(图10A)。TS旗标192可以基本上对应于变换选择旗标182(图10A)。但是,在这个实例中,只有当分裂旗标190指示根节点TU分裂时才需要对TS旗标192进行译码,以便使用RQT的更高等级。因而,图10B的信令数据可以对应于例如图9中图解说明的RQT。
此外,图10B的信令数据包含CBFYY旗标194。当对应TU是正方形时CBFYY旗标194可以表示单个CBF-Y旗标,或者CBFYY旗标194可以表示非正方形的对应明度TU的两个CBF-Y旗标。对于非正方形明度TU(被称作Y0和Y1),CBFYY旗标194可以具有表示CBF-Y0和CBF-Y1旗标的OR的值。因而,如果TU Y0和Y1中的任一者或两者具有非零系数,则CBFYY旗标194可以具有指示TU Y0和Y1中的至少一者具有非零系数的值。所以,为了指示TU Y0和Y1中的哪一者具有非零系数,可以针对CBFY0旗标196和CBFY1旗标198对值进行译码。CBFY0旗标196可以指示TU Y0是否具有非零系数,而CBFY1旗标198可以指示TU Y1是否具有非零系数。另一方面,如果TU Y0和Y1两者都具有全部零值系数,那么CBFY0旗标196和CBFY1旗标198不需要明确地经译码,而是可以从CBFYY旗标194推断出来以指示TU Y0和Y1各自具有全部零值系数。
同样,CBFUV旗标200可以表示用于对应TU的CBF-U和CBF-V旗标的OR。也就是说,CBFUV旗标200可以指示色度U TU和色度V TU中的至少一者是否具有非零值系数。当CBFUV旗标200指示色度U TU和色度V TU中的至少一者具有非零值系数时,可以对CBF-U旗标202进行译码以指示色度U TU是否具有非零系数,并且可以对CBF-V旗标204进行译码以指示色度V TU是否具有非零系数。当CBFUV旗标200指示色度U TU和色度V TU具有全部零值系数时,不需要对CBF-U旗标202和CBF-V旗标204进行译码。在一些实例中,当分裂旗标190指示TU分裂时可以针对色度分量提供额外旗标,例如,用于U1、U2、V1和V2的CBFU旗标。
在一些实例中,可以例如使用VLC、哥伦布译码、一元译码、游程长度译码或其它联合译码方法对分裂旗标190、CBFYY旗标194和CBF UV旗标进行联合译码。这种联合译码可以利用不同旗标之间的相关。
图11是图解说明用于使用正方形或非正方形变换单元对视频数据进行编码的实例方法的流程图。为了实例和解释的目的,相对于视频编码器20解释图11的方法。但是,应理解,其它视频译码装置可经配置以执行类似方法。所述方法的步骤未必需要用所展示的次序执行,并且某些步骤可以并行而非依次执行。
首先,视频编码器20可以确定用于当前译码单元的一个或一个以上预测单元(250)。举例来说,视频编码器20可以执行几个译码遍次以确定用于将译码单元分割成一个或一个以上预测单元(PU)的分割策略。PU可以是正方形或非正方形的。举例来说,对于2Nx2N CU,可以存在2Nx2N PU、2NxN PU、Nx2N PU、2NxN/2PU、N/2x2N PU、2NxnU PU、2NxnDPU、nLx2N PU、nRx2N PU或其它大小的PU,例如,因为常规分割、不对称运动分割、短距离帧内预测分割或不对称短距离帧内预测分割。
在任何情况下,视频编码器20都还可计算用于译码单元的残余数据(252)。也就是说,在形成PU之后,视频编码器20可以计算用于CU的原始像素值与PU的预测像素值之间的逐像素差以形成残余数据。视频编码器20可以进一步确定变换单元形状(254),例如,正方形或非正方形TU。在一些实例中,如上文所描述,视频编码器20可以至少部分基于PU形状来选择TU形状。同样,视频编码器20可以至少部分基于TU是对应于色度还是明度分量来选择TU形状。此外,如上文所描述,视频编码器20可以执行多个译码遍次以将使用正方形TU形状的译码结果与使用非正方形TU形状的译码结果比较。这多个译码遍次可以与用以确定PU形状的译码遍次同时执行,或者可以在选择PU形状之后执行。
在任何情况下,在确定TU形状之后,视频编码器20都可以形成确定形状的变换单元,包含残余数据(256)。视频编码器20可以接着对变换单元的残余数据应用变换(258)以用变换系数的形式将残余数据从像素域变换到变换域(例如,频域)。视频编码器20可以进一步将变换系数量化(260)。如上文所论述,将变换系数量化可以至少部分是基于TU是正方形还是非正方形。举例来说,视频编码器20可以将用于TU的量化参数偏移基于TU是正方形还是非正方形而确定的值。
视频编码器20可以接着对经量化变换系数进行扫描和熵译码(262)。同样,如上文所论述,扫描和熵译码可以基于TU是正方形还是非正方形。举例来说,扫描可以在非正方形TU的较短长度的边缘上开始,并且可以基于TU是否为非正方形来为系数的CABAC译码选择上下文。此外,视频编码器20可以对指示TU形状的数据进行译码(264)。在一些实例中,指示TU形状的数据可以对应于相对于图10A或10B描述的语法数据。
以此方式,图11的方法表示包含对指示视频数据的变换单元是正方形还是非正方形的信息进行译码的方法的实例,和至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码。具体来说,对变换单元的数据进行译码可包含计算用于译码单元的至少一部分的残余数据,对残余数据进行变换以产生变换系数,将变换系数量化,和基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行编码。同样,对指示变换单元是正方形还是非正方形的信息进行译码可包含对指示变换单元是正方形还是非正方形的信息对编码。此外,所述方法可以进一步包含将使用正方形变换单元对译码单元进行译码的结果与使用非正方形变换单元对译码单元进行译码的结果比较,以及基于所述比较选择正方形变换单元或非正方形变换单元。
图12是图解说明用于使用正方形或非正方形变换单元对视频数据进行解码的实例方法的流程图。出于实例和解释的目的相对于视频解码器20解释图12的方法。但是,应理解,其它视频译码装置可经配置以执行类似方法。同样,所述方法的步骤未必需要用所展示的次序执行,并且某些步骤可以并行而非依次执行。
在这个实例中,视频解码器30可以对指示变换单元形状的数据进行解码(280)。在一些实例中,这个数据还可表示对应预测单元形状。在其它实例中,在一些实例中,所述数据可以对应于相对于图10A或10B描述的语法数据。以此方式,视频解码器30可以确定用于当前CU的TU的形状。
视频解码器30可以接着对TU的经量化变换系数进行逆扫描和熵解码(282)。如上文所论述,扫描和熵解码(例如,用于CABAC的上下文选择)可以基于TU是正方形还是非正方形。视频解码器30可以对经解码的经量化变换系数进行逆扫描以用TU的形式再生一个二维矩阵,包含经量化变换系数,其中所述矩阵具有所确定的正方形或非正方形TU的形状。此外,视频解码器30可以对经量化变换系数进行逆量化(284),如上文所论述,这可以基于TU是正方形还是非正方形。视频解码器30可以进一步对TU的变换系数进行逆变换以在像素域中再生残余数据(286)。
视频解码器30还可计算用于对应于TU的PU的预测数据(288)。举例来说,视频解码器30可以对来自包含当前CU的当前图片或切片的相邻经先前译码像素的帧内预测数据,或来自使用用于当前CU的运动向量数据的经先前译码图片的帧间预测数据。在任何情况下,视频解码器30可以接着组合预测与残余数据以再生当前CU(290)。随后,视频解码器30可以存储经解码CU例如以用作后续解码的参考,并且在再生完整图片之后,可以输出经解码CU,由此存储和输出经组合的数据(292)。
以此方式,图12的方法表示包含对指示视频数据的变换单元是正方形还是非正方形的信息进行译码和至少部分基于变换单元是正方形还是非正方形对变换单元的数据进行译码的方法的实例。具体来说,对指示视频数据的变换单元是正方形还是非正方形的信息进行译码可包含对指示视频数据的变换单元是正方形还是非正方形的信息进行解码。同样,对变换单元的数据进行译码可包含基于变换单元是正方形还是非正方形对变换单元的经量化变换系数进行解码,将经量化变换系数逆量化,和对变换系数进行逆变换以产生用于对应于变换单元的译码单元的至少一部分的残余数据。
在一个或一个以上实例中,所描述的功能可以用硬件、软件、固件或其任何组合来实施。如果用软件实施,则所述功能可以作为一个或一个以上指令或代码在计算机可读媒体上存储或传输,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包含任何促进将计算机程序从一处传送到另一处的媒体(例如,根据一种通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)有形计算机可读存储媒体,其是非暂时的,或(2)通信媒体,例如信号或载波。数据存储媒体可以是可由一个或一个以上计算机或一个或一个以上处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用的媒体。计算机程序产品可包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或任何其它可用来存储指令或数据结构的形式的期望程序代码并且可由计算机存取的媒体。同样,可恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波的无线技术从网站、服务器或其它远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电和微波的无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它瞬时媒体,而是实际上针对于非瞬时有形存储媒体。如本文所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘用激光以光学方式再生数据。上述各项的组合也应包含在计算机可读媒体的范围内。
指令可以由一个或一个以上处理器执行,所述一个或一个以上处理器例如是一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文所述的功能性可在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示的技术的装置的功能方面,但未必需要通过不同硬件单元实现。确切地说,如上文所描述,各种单元可结合合适的软件和/或固件组合在一个编解码器硬件单元中,或由互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一个或一个以上处理器。
已描述各种实例。这些和其它实例在所附权利要求书的范围内。

Claims (41)

1.一种对视频数据进行译码的方法,所述方法包括:
对表示四叉树数据结构的信息进行译码,其中所述四叉树数据结构定义所述视频数据的译码单元的大小;
对表示残余四叉树变换RQT数据结构的信息进行译码,其中对表示所述RQT的所述信息进行译码包括对指示所述译码单元的变换单元是非正方形的信息进行译码;以及
至少部分基于所述变换单元是非正方形对所述变换单元的数据进行译码,其包含基于所述变换单元的较短边缘的位置选择用于对所述数据进行译码的上下文。
2.根据权利要求1所述的方法,其中对指示所述变换单元是非正方形的所述信息进行译码包括对变换选择旗标进行译码。
3.根据权利要求2所述的方法,其中所述变换单元包括子代变换单元,且其中对指示所述子代变换单元是非正方形的所述信息进行译码包括仅当所述子代变换单元的父代变换单元分裂时对指示所述子代变换单元是非正方形的所述信息进行译码。
4.根据权利要求1所述的方法,其中对指示所述变换单元是非正方形的所述信息进行译码包括对指示所述变换单元所对应的所述RQT数据结构的等级的信息进行译码。
5.根据权利要求1所述的方法,其中对指示所述变换单元是非正方形的所述信息进行译码包括至少部分基于所述变换单元是对应于明度分量对指示所述变换单元是非正方形的所述信息进行译码。
6.根据权利要求1所述的方法,其中对指示所述变换单元是非正方形的所述信息进行译码包括至少部分基于对应于所述变换单元的预测单元是非正方形对指示所述变换单元是非正方形的所述信息进行译码。
7.根据权利要求1所述的方法,其中对指示所述变换单元是非正方形的所述信息进行译码包括对指示对应于所述变换单元的预测单元是非正方形的信息进行译码。
8.根据权利要求1所述的方法,其进一步包括基于所述变换单元是非正方形来确定用于所述变换单元的量化参数。
9.根据权利要求1所述的方法,其进一步包括对所述变换单元的变换系数应用在所述变换单元的较短边缘上开始的扫描模式。
10.根据权利要求1所述的方法,
其中对指示所述视频数据的所述变换单元是非正方形的所述信息进行译码包括对指示所述视频数据的所述变换单元是非正方形的所述信息进行解码,并且
其中对所述变换单元的所述数据进行译码包括:
基于所述变换单元是非正方形对所述变换单元的经量化变换系数进行解码;
将所述经量化变换系数逆量化;以及
对所述变换系数进行逆变换以产生用于对应于所述变换单元的译码单元的至少一部分的残余数据。
11.根据权利要求1所述的方法,
其中对所述变换单元的所述数据进行译码包括:
计算用于译码单元的至少一部分的残余数据;
对所述残余数据进行变换以产生变换系数;
将所述变换系数量化;以及
基于所述变换单元是非正方形对所述变换单元的经量化变换系数进行编码,并且
其中对指示所述变换单元是非正方形的所述信息进行译码包括对指示所述变换单元是非正方形的所述信息进行编码。
12.根据权利要求11所述的方法,其进一步包括:
将使用正方形变换单元对所述译码单元进行译码的结果与使用非正方形变换单元对所述译码单元进行译码的结果比较;以及
基于所述比较来选择正方形变换单元或非正方形变换单元。
13.根据权利要求1所述的方法,其中所述四叉树数据结构为所述译码单元定义大于16x16个像素的大小。
14.根据权利要求1所述的方法,其进一步包括对指示对应于所述变换单元的所述译码单元的预测单元是非正方形的信息进行译码,其中对指示所述变换单元是非正方形的所述信息进行译码包括对指示所述变换单元是正方形且具有大于所述预测单元的所述大小的大小的信息进行译码。
15.一种用于对视频数据进行译码的装置,所述装置包括视频译码器,所述视频译码器经配置以对表示四叉树数据结构的信息进行译码,其中所述四叉树数据结构定义所述视频数据的译码单元的大小;对表示残余四叉树变换RQT数据结构的信息进行译码,其中表示所述RQT数据结构的所述信息包含指示所述译码单元的变换单元是非正方形的信息;和至少部分基于所述变换单元是非正方形对所述变换单元的的数据进行译码,其包含基于所述变换单元的较短边缘的位置选择用于对所述数据进行译码的上下文。
16.根据权利要求15所述的装置,其中为了对指示所述变换单元是非正方形的所述信息进行译码,所述视频译码器经配置以对变换选择旗标进行译码。
17.根据权利要求16所述的装置,其中所述变换单元包括子代变换单元,并且其中所述视频译码器经配置以仅当所述子代变换单元的父代变换单元分裂时才对指示所述子代变换单元是非正方形的所述信息进行译码。
18.根据权利要求15所述的装置,其中为了对指示所述变换单元是非正方形的所述信息进行译码,所述视频译码器经配置以对指示所述变换单元所对应的所述RQT数据结构的等级的信息进行译码。
19.根据权利要求15所述的装置,其中所述视频译码器经配置以至少部分基于所述变换单元是对应于明度分量对指示所述变换单元是非正方形的所述信息进行译码。
20.根据权利要求15所述的装置,其中所述视频译码器经配置以至少部分基于对应于所述变换单元的预测单元是非正方形对指示所述变换单元是非正方形的所述信息进行译码。
21.根据权利要求15所述的装置,其中为了对指示所述变换单元是非正方形的所述信息进行译码,所述视频译码器经配置以对指示对应于所述变换单元的预测单元是非正方形的信息进行译码。
22.根据权利要求15所述的装置,其中所述视频译码器进一步经配置以基于所述变换单元是非正方形来确定用于所述变换单元的量化参数。
23.根据权利要求15所述的装置,其中所述视频译码器经配置以对所述变换单元的变换系数应用在所述变换单元的较短边缘上开始的扫描模式。
24.根据权利要求15所述的装置,其中所述视频译码器包括视频解码器,其中为了对指示所述视频数据的所述变换单元是非正方形的所述信息进行译码,所述视频解码器经配置以对指示所述视频数据的所述变换单元是非正方形的所述信息进行解码,并且其中为了对所述变换单元的所述数据进行译码,所述视频解码器经配置以基于所述变换单元是非正方形对所述变换单元的经量化变换系数进行解码,将所述经量化变换系数逆量化,和对所述变换系数进行逆变换以产生用于对应于所述变换单元的译码单元的至少一部分的残余数据。
25.根据权利要求15所述的装置,其中所述视频译码器包括视频编码器,其中为了对所述变换单元的所述数据进行译码,所述视频编码器经配置以计算用于译码单元的至少一部分的残余数据,对所述残余数据进行变换以产生变换系数,将所述变换系数量化,和基于所述变换单元是非正方形对所述变换单元的经过量化的所述变换系数进行编码,并且其中为了对指示所述变换单元是非正方形的所述信息进行译码,所述视频编码器经配置以对指示所述变换单元是非正方形的所述信息进行编码。
26.根据权利要求15所述的装置,其中所述装置包括以下各项中的至少一者:
集成电路;
微处理器;以及
无线通信装置,其包含所述视频译码器。
27.根据权利要求15所述的装置,其中所述四叉树数据结构为所述译码单元定义大于16x16个像素的大小。
28.根据权利要求15所述的装置,其中所述视频译码器经配置以对指示对应于所述变换单元的所述译码单元的预测单元是非正方形的信息进行译码,和对指示所述变换单元是正方形且具有大于所述预测单元的所述大小的大小的信息进行译码。
29.一种用于对视频数据进行译码的装置,所述装置包括:
用于对表示四叉树数据结构的信息进行译码的装置,其中所述四叉树数据结构定义所述视频数据的译码单元的大小;
用于对表示残余四叉树变换RQT数据结构的信息进行译码的装置,其中所述用于对表示所述RQT的所述信息进行译码的装置包括用于对指示所述译码单元的变换单元是非正方形的信息进行译码的装置;以及
用于至少部分基于所述变换单元是非正方形对所述变换单元的数据进行译码的装置,其包含基于所述变换单元的较短边缘的位置选择用于对所述数据进行译码的上下文的装置。
30.根据权利要求29所述的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于对变换选择旗标进行译码的装置。
31.根据权利要求30所述的装置,其中所述变换单元包括子代变换单元,且其中所述用于对指示所述子代变换单元是非正方形的所述信息进行译码的装置包括用于仅当所述子代变换单元的父代变换单元分裂时才对指示所述子代变换单元是非正方形的所述信息进行译码的装置。
32.根据权利要求29所述的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于对指示所述变换单元所对应的所述RQT数据结构的等级的信息进行译码的装置。
33.根据权利要求29所述的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于至少部分基于所述变换单元是对应于明度分量对指示所述变换单元是非正方形的所述信息进行译码的装置。
34.根据权利要求29所述的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于至少部分基于对应于所述变换单元的预测单元是非正方形对指示所述变换单元是非正方形的所述信息进行译码的装置。
35.根据权利要求29所述的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于对指示对应于所述变换单元的预测单元是非正方形的信息进行译码的装置。
36.根据权利要求29所述的装置,其进一步包括用于基于所述变换单元是非正方形来确定用于所述变换单元的量化参数的装置。
37.根据权利要求29所述的装置,其进一步包括用于对所述变换单元的变换系数应用在所述变换单元的较短边缘上开始的扫描模式的装置。
38.根据权利要求29所述的装置,
其中所述用于对指示所述视频数据的所述变换单元是非正方形的所述信息进行译码的装置包括用于对指示所述视频数据的所述变换单元是非正方形的所述信息进行解码的装置,并且
其中所述用于对所述变换单元的所述数据进行译码的装置包括:
用于基于所述变换单元是非正方形对所述变换单元的经量化变换系数进行解码的装置;
用于将所述经量化变换系数逆量化的装置;以及
用于对所述变换系数进行逆变换以产生用于对应于所述变换单元的译码单元的至少一部分的残余数据的装置。
39.根据权利要求29所述的装置,
其中所述用于对所述变换单元的所述数据进行译码的装置包括:
用于计算用于译码单元的至少一部分的残余数据的装置;
用于对所述残余数据进行变换以产生变换系数的装置;
用于将所述变换系数量化的装置;以及
用于基于所述变换单元是非正方形对所述变换单元的经量化变换系数进行编码的装置,并且
其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于对指示所述变换单元是非正方形的所述信息进行编码的装置。
40.根据权利要求29所述的装置,其中所述四叉树数据结构为所述译码单元定义大于16x16个像素的大小。
41.根据权利要求29所述的装置,其进一步包括用于对指示对应于所述变换单元的所述译码单元的预测单元是非正方形的信息进行译码的装置,其中所述用于对指示所述变换单元是非正方形的所述信息进行译码的装置包括用于对指示所述变换单元是正方形且具有大于所述预测单元的所述大小的大小的信息进行译码的装置。
CN201280032876.3A 2011-07-01 2012-06-25 对视频数据应用非正方形变换 Active CN103636215B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161503726P 2011-07-01 2011-07-01
US61/503,726 2011-07-01
US201161554837P 2011-11-02 2011-11-02
US61/554,837 2011-11-02
US13/422,828 2012-03-16
US13/422,828 US9807426B2 (en) 2011-07-01 2012-03-16 Applying non-square transforms to video data
PCT/US2012/044043 WO2013006297A1 (en) 2011-07-01 2012-06-25 Applying non-square transforms to video data

Publications (2)

Publication Number Publication Date
CN103636215A CN103636215A (zh) 2014-03-12
CN103636215B true CN103636215B (zh) 2017-08-25

Family

ID=47390657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280032876.3A Active CN103636215B (zh) 2011-07-01 2012-06-25 对视频数据应用非正方形变换

Country Status (6)

Country Link
US (1) US9807426B2 (zh)
EP (1) EP2727348A1 (zh)
JP (2) JP5951765B2 (zh)
KR (1) KR101606295B1 (zh)
CN (1) CN103636215B (zh)
WO (1) WO2013006297A1 (zh)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2758104C (en) * 2009-04-07 2015-04-07 Lg Electronics Inc. Broadcast transmitter, broadcast receiver and 3d video data processing method thereof
EP2735154A1 (en) * 2011-07-22 2014-05-28 Motorola Mobility LLC Device and methods for scanning rectangular-shaped transforms in video coding
CN107465934B (zh) * 2011-10-31 2020-06-26 三星电子株式会社 确定上下文模型的方法
AU2015201780B2 (en) * 2011-10-31 2016-07-28 Samsung Electronics Co., Ltd. Method and apparatus for determining a context model for transform coefficient level entropy encoding and decoding
CN103096052B (zh) * 2011-11-04 2015-11-25 华为技术有限公司 一种图像编码、解码的方法和装置
WO2013096671A1 (en) 2011-12-20 2013-06-27 General Instrument Corporation Method and apparatus for efficient transform unit encoding
US9185405B2 (en) * 2012-03-23 2015-11-10 Qualcomm Incorporated Coded block flag inference in video coding
US9467701B2 (en) 2012-04-05 2016-10-11 Qualcomm Incorporated Coded block flag coding
EP4376413A1 (en) 2012-04-13 2024-05-29 JVCKenwood Corporation Picture decoding device, picture decoding method, picture decoding program, picture coding device, picture coding method, and picture coding program
US9912944B2 (en) * 2012-04-16 2018-03-06 Qualcomm Incorporated Simplified non-square quadtree transforms for video coding
KR102132917B1 (ko) 2012-05-25 2020-07-10 선 페이턴트 트러스트 동화상 부호화 방법, 동화상 복호 방법, 동화상 부호화 장치, 동화상 복호 장치, 및 동화상 부호화 복호 장치
CA3217710A1 (en) 2012-05-25 2013-11-28 Sun Patent Trust Image encoding and decoding using context adaptive binary arithmetic coding with a bypass mode
WO2013175736A1 (ja) * 2012-05-25 2013-11-28 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および、動画像符号化復号装置
TWI606719B (zh) * 2012-05-31 2017-11-21 Jvc Kenwood Corp Video encoding device, video encoding method, and video encoding program
WO2013183232A1 (ja) 2012-06-04 2013-12-12 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
WO2013181821A1 (en) * 2012-06-07 2013-12-12 Mediatek Singapore Pte. Ltd. Improved intra transform skip mode
US9749645B2 (en) * 2012-06-22 2017-08-29 Microsoft Technology Licensing, Llc Coded-block-flag coding and derivation
CN108712651A (zh) * 2012-06-29 2018-10-26 韩国电子通信研究院 视频解码方法、视频编码方法和计算机可读介质
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
US20140092956A1 (en) * 2012-09-29 2014-04-03 Motorola Mobility Llc Adaptive transform options for scalable extension
US9743091B2 (en) * 2012-12-17 2017-08-22 Lg Electronics Inc. Method for encoding/decoding image, and device using same
US9967559B1 (en) 2013-02-11 2018-05-08 Google Llc Motion vector dependent spatial transformation in video coding
US9544597B1 (en) 2013-02-11 2017-01-10 Google Inc. Hybrid transform in video encoding and decoding
US9674530B1 (en) 2013-04-30 2017-06-06 Google Inc. Hybrid transforms in video coding
JP6614472B2 (ja) 2013-09-30 2019-12-04 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
US9794575B2 (en) * 2013-12-18 2017-10-17 Magnum Semiconductor, Inc. Apparatuses and methods for optimizing rate-distortion costs in video encoding
DE202015009312U1 (de) * 2014-01-26 2017-02-03 Cable Television Laboratories, Inc. Datentransformation
AU2015231883B2 (en) * 2014-03-16 2019-05-16 Vid Scale, Inc. Method and apparatus for the signaling of lossless video coding
JP2015185897A (ja) * 2014-03-20 2015-10-22 パナソニックIpマネジメント株式会社 画像符号化方法及び画像符号化装置
CN104284188B (zh) 2014-10-11 2018-03-13 华为技术有限公司 预测块的划分方法、编码设备和解码设备
US9565451B1 (en) 2014-10-31 2017-02-07 Google Inc. Prediction dependent transform coding
US10462461B2 (en) 2015-02-27 2019-10-29 Kddi Corporation Coding device and decoding device which allow encoding of non-square blocks
WO2016154963A1 (en) * 2015-04-01 2016-10-06 Mediatek Inc. Methods for chroma coding in video codec
US9769499B2 (en) 2015-08-11 2017-09-19 Google Inc. Super-transform video coding
WO2017041271A1 (en) 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Efficient context modeling for coding a block of data
US10277905B2 (en) 2015-09-14 2019-04-30 Google Llc Transform selection for non-baseband signal coding
CN108028928B (zh) * 2015-09-18 2021-02-19 皇家飞利浦有限公司 用于快速和高效的图像压缩和解压缩的方法和装置
US9807423B1 (en) 2015-11-24 2017-10-31 Google Inc. Hybrid transform scheme for video coding
US20170150186A1 (en) * 2015-11-25 2017-05-25 Qualcomm Incorporated Flexible transform tree structure in video coding
CA3014259A1 (en) * 2016-02-12 2017-08-17 Thomson Licensing A method and device for intra-predictive encoding/decoding a coding unit comprising picture data, said intra-predictive encoding depending on a prediction tree and a transform tree
ES2935261T3 (es) * 2016-05-28 2023-03-03 Hfi Innovation Inc Método y aparato de codificación de modo de paleta para datos de video de color
CN114222137A (zh) * 2016-05-28 2022-03-22 世宗大学校产学协力团 构成预测运动矢量列表的方法
US11647228B2 (en) * 2016-07-15 2023-05-09 Lg Electronics Inc. Method and apparatus for encoding and decoding video signal using transform domain prediction for prediction unit partition
EP3270594A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for advanced cabac context adaptation for last coefficient coding
EP4138457A1 (en) 2016-08-10 2023-02-22 Nec Corporation Radio access network node, radio terminal, core network node, and method therefor
CN107734563B (zh) 2016-08-12 2020-02-07 电信科学技术研究院 切换场景下的QoS参数处理的方法及设备
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
CN110063058B (zh) * 2016-10-10 2022-12-27 三星电子株式会社 用于对图像进行编码/解码的方法和设备
CN110024399B (zh) * 2016-11-28 2024-05-17 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
AU2017397390B2 (en) 2017-01-31 2022-07-14 FG Innovation Company Limited Systems and methods for scaling transform coefficient level values
US11037330B2 (en) * 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
KR102257829B1 (ko) * 2017-04-13 2021-05-28 엘지전자 주식회사 영상의 부호화/복호화 방법 및 이를 위한 장치
MX2019015090A (es) * 2017-07-07 2020-02-13 Samsung Electronics Co Ltd Metodo y dispositivo de codificacion de video, metodo y dispositivo de descodificacion de video.
WO2019029951A1 (en) * 2017-08-08 2019-02-14 Thomson Licensing METHOD AND APPARATUS FOR VIDEO ENCODING AND DECODING
US10778971B2 (en) * 2018-06-01 2020-09-15 Tencent America LLC Method and apparatus for video coding
US10771783B2 (en) 2018-06-11 2020-09-08 Google Llc Transforms for large video and image blocks
CN112771864B (zh) * 2018-09-19 2023-08-29 寰发股份有限公司 视频编解码系统中变换系数量化缩放的方法及装置
US11303904B2 (en) * 2018-09-28 2022-04-12 Qualcomm Incorporated Rectangular block transform scaling
WO2020180214A1 (en) * 2019-03-01 2020-09-10 Huawei Technologies Co., Ltd. The method of efficient signalling of cbf flags
US11159795B2 (en) * 2019-03-04 2021-10-26 Tencent America LLC Max transform size control
WO2020189980A1 (ko) * 2019-03-15 2020-09-24 삼성전자주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
US11677969B2 (en) * 2019-03-22 2023-06-13 Tencent America LLC Method and apparatus for video coding
US11122297B2 (en) 2019-05-03 2021-09-14 Google Llc Using border-aligned block functions for image compression
WO2021071186A1 (ko) * 2019-10-07 2021-04-15 에스케이텔레콤 주식회사 픽처 분할 방법 및 복호화 장치
JP7469488B2 (ja) * 2020-02-14 2024-04-16 北京字節跳動網絡技術有限公司 インループフィルタリングと映像スライスとの間の相互作用
US11616983B2 (en) * 2020-05-05 2023-03-28 Tencent America LLC Joint component secondary transform
US11388401B2 (en) * 2020-06-26 2022-07-12 Google Llc Extended transform partitions for video compression
US20220109863A1 (en) * 2020-10-02 2022-04-07 Tencent America LLC Method and apparatus for video coding
US11575941B2 (en) * 2021-03-23 2023-02-07 Tencent America LLC Parallel processing in video coding
US20230099292A1 (en) * 2021-09-29 2023-03-30 Malini MANOCHA Detection and management of dysfunctions in subterranean operations

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1874521A (zh) * 2005-05-30 2006-12-06 三星电子株式会社 用于图像编码和解码的设备和方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8483285B2 (en) * 2008-10-03 2013-07-09 Qualcomm Incorporated Video coding using transforms bigger than 4×4 and 8×8
KR101474756B1 (ko) * 2009-08-13 2014-12-19 삼성전자주식회사 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치
KR101456498B1 (ko) * 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR101302660B1 (ko) * 2009-09-14 2013-09-03 에스케이텔레콤 주식회사 고해상도 동영상의 부호화/복호화 방법 및 장치
CN104768005B (zh) * 2009-12-01 2018-07-31 数码士有限公司 用于编码/解码高分辨率图像的方法和设备
US9253495B2 (en) * 2009-12-04 2016-02-02 Thomson Licensing Methods and apparatus for improved chroma transforms for inter frames in video encoding and decoding
US8344917B2 (en) * 2010-09-30 2013-01-01 Sharp Laboratories Of America, Inc. Methods and systems for context initialization in video coding and decoding
US8878861B2 (en) * 2011-03-01 2014-11-04 Sony Corporation Conversion between z-scanning indices, raster-scanning indices and 2-D coordinates using simple bit-operations in HEVC
US8494290B2 (en) * 2011-05-05 2013-07-23 Mitsubishi Electric Research Laboratories, Inc. Method for coding pictures using hierarchical transform units

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1874521A (zh) * 2005-05-30 2006-12-06 三星电子株式会社 用于图像编码和解码的设备和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Asymmetric motion partition with OBMC and Non-Square TU;Yuan Yuan, 等;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 5th Meeting》;20110323;1.3节,图2 *

Also Published As

Publication number Publication date
KR20140033499A (ko) 2014-03-18
JP5951765B2 (ja) 2016-07-13
WO2013006297A1 (en) 2013-01-10
KR101606295B1 (ko) 2016-04-01
JP6096353B2 (ja) 2017-03-15
CN103636215A (zh) 2014-03-12
US9807426B2 (en) 2017-10-31
US20130003824A1 (en) 2013-01-03
JP2016158280A (ja) 2016-09-01
JP2014523702A (ja) 2014-09-11
EP2727348A1 (en) 2014-05-07
WO2013006297A9 (en) 2013-03-07

Similar Documents

Publication Publication Date Title
CN103636215B (zh) 对视频数据应用非正方形变换
CN103636208B (zh) 在视频译码中用于非正方形块的上下文自适应熵译码
CN103703776B (zh) 在视频译码中的系数扫描
CN103190147B (zh) 用于视频译码的语法元素的联合译码方法及设备
CN103999465B (zh) 自适应性重叠块运动补偿
CN103959779B (zh) 在视频译码中用于自适应环路滤波和样本自适应偏移的基于最大译码单元(lcu)或分区的语法
CN103609121B (zh) 统一合并模式和自适应运动向量预测模式候选者选择
CN104081777B (zh) 对视频数据进行编码或解码的方法、装置、设备及非暂时计算机可读媒体
CN105264891B (zh) 一种对视频数据进行解码、编码的方法及装置
CN103797802B (zh) 用于视频译码中的短距离帧内预测的线缓冲器减少
CN106105203B (zh) 块自适应颜色空间转换译码
CN103931182B (zh) 帧内预测视频译码中的非正方形变换
CN103621095B (zh) 用于视频译码中的帧内预测的边界像素填补
CN103563389B (zh) 具有方向性分区的帧内预测模式译码
CN104685875B (zh) 用于视频译码的方法、设备、计算机可读存储媒体
CN104221377B (zh) 一种视频译码方法、装置和计算机可读存储媒体
CN103959785B (zh) 在视频译码中用于色度分量的变换单位分割
CN103609118B (zh) 用于视频译码的并行化友好合并候选者
CN105075259B (zh) 用于视频译码预测的存储器减少
CN103959775B (zh) 一种视频数据编解码的方法及设备
CN103181169B (zh) 使用联合上下文模型对系数进行熵译码
CN103404144B (zh) 视频译码中的经量化脉码调制
CN109076230A (zh) 二值化二次变换指数
CN103999460B (zh) 在变换跳过模式中译码有效系数信息的方法和装置
CN103931185B (zh) 确定视频译码的解块滤波的边界强度值

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant