用于视频译码的残余四叉树(rqt)译码的制作方法

文档序号:7791103阅读:344来源:国知局
用于视频译码的残余四叉树(rqt)译码的制作方法
【专利摘要】一种视频解码装置接收用于视频数据的色度分量的变换系数阵列。所述视频解码装置接收表示与所述色度分量相关联的分裂旗标的值的经熵编码数据。所述分裂旗标的所述值指示所述变换系数阵列是否划分成更小的变换块。所述视频解码装置确定用于表示所述分裂旗标的所述经熵编码数据的上下文。所述上下文是基于与视频数据的另一分量相关联的分裂旗标的值。所述视频解码装置使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对表示所述分裂旗标的所述值的所述数据进行熵解码。所述亮度和色度分量具有独立的残余四叉树RQT结构。
【专利说明】用于视频译码的残余四叉树(RQT)译码
[0001]相关申请案
[0002]本申请案主张以下申请案的权益:
[0003]2012年I月30日申请的第61/592,478号美国临时申请案,所述临时申请案特此以全文引用的方式并入本文中。

【技术领域】
[0004]本发明涉及视频译码和压缩,并且更具体来说涉及用于分割译码单元的残余四叉树(RQT)译码。

【背景技术】
[0005]数字视频能力可以并入到多种多样的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话(所谓的“智能电话”)、视频电话会议装置、视频流式传输装置和类似装置。数字视频装置可以实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)所定义的标准、目前正在开发的高效率视频译码(HEVC)标准和这些标准的扩展中所描述的视频压缩技术。视频装置通过实施这些视频压缩技术可以更高效地发射、接收、编码、解码和/或存储数字视频信息。
[0006]视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测来减少或移除视频序列中固有的冗余。空间或时间预测产生用于待译码块的预测性块。残余数据表示待译码原始块与预测性块之间的像素差。经帧间译码块是根据指向形成预测性块的参考样本块的运动向量和指示经译码块与预测性块之间的差的残余数据编码的。经帧内译码块是根据帧内译码模式和残余数据编码的。为了进一步压缩,可以将残余数据从像素域变换到变换域,从而产生残余变换系数,接着可以对残余变换系数进行量化。可以扫描起初用二维阵列布置的经量化变换系数,以便产生变换系数的一维向量,并且可以应用熵译码以实现更多的压缩。


【发明内容】

[0007]总的来说,本发明涉及视频译码和压缩,并且描述用于确定和用信号表示分割方案的技术,例如基于残余四叉树(RQT)的分割结构,用于使译码单元产生变换单元。具体来说,本发明描述用于用信号表示分裂旗标使得可以针对视频译码中的Y、U和V分量中的每一个确定RQT结构的技术。
[0008]在一个实例中,本发明描述一种用于对视频数据进行解码的方法,其包括;接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中第一分裂旗标的值指示用于第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于表示第一分裂旗标的经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对表示第一旗标的值的数据进行熵解码;以及基于第一分裂旗标的值重建视频数据。
[0009]在另一实例中,本发明描述一种包括一个或多个处理器的视频解码装置,所述一个或多个处理器经配置以;接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中第一分裂旗标的值指示用于第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于表示第一分裂旗标的经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对表示第一旗标的值的数据进行熵解码;以及基于第一分裂旗标的值重建视频数据。
[0010]在另一实例中,本发明描述一种非暂时计算机可读媒体,其包括存储在其上的指令,所述指令在被执行时致使一个或多个处理器:接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块;确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码;以及基于所述第一分裂旗标的所述值重建视频数据。
[0011]在另一实例中,本发明描述一种用于对视频数据进行解码的设备,其包括:用于接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据的装置,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块;用于确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文的装置,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;用于使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码的装置;以及用于基于所述第一分裂旗标的所述值重建视频数据的装置。
[0012]在一个实例中,本发明描述一种用于对视频数据进行编码的方法,其包括:产生第一分裂旗标,其中所述第一分裂旗标的所述值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
[0013]在另一实例中,本发明描述一种包括一个或多个处理器的视频编码装置,所述一个或多个处理器经配置以:产生第一分裂旗标,其中所述第一分裂旗标的所述值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
[0014]在另一实例中,本发明描述一种非暂时计算机可读媒体,其包括存储在其上的指令,所述指令在被执行时致使一个或多个处理器:产生第一分裂旗标,其中所述第一分裂旗标的所述值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
[0015]在另一实例中,本发明描述一种用于对视频数据进行编码的设备,其包括:用于产生第一分裂旗标的装置,其中所述第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块;用于确定用于所述第一分裂旗标的上下文的装置,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;用于使用上下文自适应二进制算术译码(CABAC)基于所述所确定的上下文对所述第一分裂旗标进行熵编码的装置;以及用于输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分的装置。
[0016]随附图式和以下描述中陈述一个或多个实例的细节。其它特征、目标和优点将从所述描述和图式以及从权利要求书显而易见。

【专利附图】

【附图说明】
[0017]图1是说明变换单元的四叉树分解结构的实例的概念图。
[0018]图2是说明四叉树分解级别的概念图。
[0019]图3A和3B是说明变换单元的四叉树分解结构的概念图。
[0020]图4是说明可利用本发明中描述的技术的实例视频编码和解码系统的实例的框图。
[0021]图5是说明可实施本发明中描述的技术的实例视频编码器的框图。
[0022]图6是说明用于变换单元的每一色彩分量的四叉树分解结构的实例的概念图。
[0023]图7是说明可实施本发明中描述的技术的熵编码器的实例的框图。
[0024]图8是说明用于根据本发明中描述的技术对视频数据进行编码的实例方法的流程图。
[0025]图9是说明可实施本发明中描述的技术的实例视频解码器的框图。
[0026]图10是说明可实施本发明中描述的技术的熵解码器的实例的框图。
[0027]图11是说明用于根据本发明中描述的技术对视频数据进行解码的实例方法的流程图。

【具体实施方式】
[0028]根据一些视频译码标准,视频块的亮度分量(Y)和色度分量(U,V)中的每一个共用相同的四叉树分解结构进行变换单元(TU)分割。虽然这允许每个变换块用信号表示仅仅一个变换分裂旗标(其中亮度和色度色彩分量之间共享旗标),但是色彩分量中的每一个可以具有不同特性。因而,每一色彩具有独立四叉树分解结构可以产生更优的变换单元分割。但是,独立四叉树分解结构可能需要用信号表示额外分裂旗标。根据本文所述的实例技术中的一些,用于针对一个色彩分量对分裂旗标进行熵编码的上下文可以是基于另一色彩分量的分裂旗标的值。以此方式,可以在经编码位流中高效地用信号表示任何额外分裂旗标。
[0029]数字视频装置实施视频压缩技术更高效地对数字视频信息进行编码和解码。可以根据视频译码标准来定义视频压缩技术。视频译码标准的实例包含ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262 或 IS0/IEC MPEG-2 Visual, ITU-T H.263、IS0/IECMPEG-4Visual和ITU-T H.264(也称为IS0/IEC MPEG-4 AVC),包含其可缩放视频译码(SVC)和多视图视频译码(MVC)扩展。此外,存在一种新的视频译码标准,即高效率视频译码(HEVC),其正由ITU-T视频译码专家组(VCEG)和IS0/IEC动画专家组(MPEG)的视频译码联合合作小组(JCT-VC)进行开发。
[0030]HEVC标准化努力是基于被称作HEVC测试模型(麗)的视频译码装置的进化的模型。HM假设相对于在开发其它先前视频译码标准(例如,ITU-T H.264/AVC)期间可用的视频译码装置的能力的改进。举例来说,尽管H.264提供9个帧内预测编码模式,但HEVC提供至多三十五个帧内预测编码模式。文档JCTVC-H1003,布洛斯等人的“高效率视频译码(HEVC)文本规范草案 6 (High-Efficiency Video Coding (HEVC) text specificat1n draft6)”(ITU-T SG16 WP3 和 IS0/IEC JTC1/SC29/WG11 视频译码联合合作小组(JCT-VC),第 7 届会议,瑞士,日内瓦,2011年11月)中描述了 HEVC的近来的工作草案(WD),被称作“HEVC工作草案6”或“WD6”。此外,文档JCTVC-K1003_v7,布洛斯等人的“高效率视频译码(HEVC)文本规范草案 9(High Efficiency Video Coding(HEVC)Text Specificat1n Draft 9,,(ITU_TSG16 WP3和IS 0/IEC JTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第11届会议,中国,上海,2012年10月)中描述了 HEVC的另一近来的工作草案,被称作“HEVC工作草案9”或“WD9”。HEVC标准也可被称作IS0/IEC 23008-HEVC,其希望是HEVC的已交付版本的标准号。在本申请案中出于说明的目的将描述根据正在开发的HEVC标准的目前所提议的方面中的一些的译码。但是,本发明中描述的技术也可以用于和应用于其它视频译码过程,例如根据ITU-T H.264或其它标准定义的视频译码过程或专有视频译码过程。
[0031]根据视频译码标准(例如HEVC WD6)操作的典型视频编码器将原始视频序列的每一帧(即,图片)分割成连续矩形区域,其可被称为视频块。可以通过应用空间(帧内)预测和/或时间(帧间)预测技术来减少或移除视频序列中固有的冗余而对这些块进行编码。空间预测可被称为“帧内模式”(I模式),并且时间预测可被称为“帧间模式”(P模式或B模式)。预测技术产生视频数据的预测性块,也可被称作参考样本块。将待译码的原始视频数据块与预测性块比较。原始视频数据块与预测性块之间的差可被称为残余数据。残余数据通常是差值的阵列,其指示预测性块的样本与原始视频数据块的像素值之间的差。
[0032]可以在译码过程期间向残余数据应用例如离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换等变换以产生对应一组变换系数。变换系数也可被称作权重。因而,通过对变换系数执行逆变换和将残余数据添加到预测性块而重建原始视频块。还可对变换系数进行量化。经量化变换系数可被称为变换系数级别。量化总体上是指其中变换系数经量化以可能减少表示系数所用的数据量的过程。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,η位值可在量化期间被舍去成m位值,其中η大于m。量化会引入信息的损耗。因而,经量化系数的精确度低于原始系数。除了变换系数之外,还可对例如运动向量等语法元素进行量化。这些加上一些控制信息形成视频序列的完整经译码表示。可以通过调整当对变换系数进行量化时使用的量化参数(QP)的值来控制压缩比(即用于表示原始视频序列和压缩视频序列的位数的比率)。
[0033]在量化之后,可以执行经量化数据的熵译码,由此进一步减少表示经量化数据所需的位数。熵译码是旨在通过利用所发射或存储的符号的分布属性(一些符号比其它符号出现得更频繁)使表示所发射或存储的符号所必需的位数最小化的无损操作。举例来说,可以根据内容自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、概率区间分割熵译码(PIPE)或另一熵译码方法来执行熵编码。还可执行语法元素(例如定义预测模式的语法元素)的熵译码。压缩比还取决于所采用的熵译码方法。
[0034]对于根据HEVC的视频译码,作为一个实例,可以将视频帧分割成译码单元。译码单元(CU)也可被称作树块或译码节点。总的来说,HM的工作模型描述视频帧或图片可以划分成一个或多个切片,其中一个切片包含按照译码次序的一序列连续树块。树块具有与H.264标准的宏块类似的用途,并且可以替代地被称作最大译码单元(LCU)。译码单元总体上是指充当基本单元的矩形图像区域,各种译码工具被应用于所述基本单元以进行视频压缩。CU通常具有一个亮度分量,指示为Y,和两个色度分量,指示为U和V。两个色度分量U和V还可分别通过Cb和(;指示。⑶可以视为视频样本值阵列。视频样本值也可被称作图片元素、像素(pixel或pel)。⑶的大小可以根据多个水平和垂直样本来定义,并且通常是根据水平和垂直亮度样本的数目来定义。因而,CU可以描述为NxN或NxM CU。
[0035]在本发明中,“NxN”与“N乘N”可互换使用来根据垂直和水平尺寸指代视频块的像素尺寸,例如,16x16像素或16乘16像素。总的来说,16x16块将在垂直方向上具有16个像素(y = 16),并且在水平方向上具有16个像素(X = 16)。同样,NxN块一股来说在垂直方向上具有N个像素,且在水平方向上具有N个像素,其中N表示非负整数值。块中的像素可布置成行和列。此外,块未必需要在水平方向与垂直方向上具有相同数目的像素。举例来说,块可包括NxM像素,其中M未必等于N。
[0036]为实现更好的译码效率,CU可取决于视频内容而具有可变大小。根据HEVC,位流内的语法数据可以定义LCU大小,LCU大小是在亮度样本数目方面对于帧或图片来说最大的⑶。在典型视频译码应用中,IXU可以是64x64、32x32或16x16个亮度样本。通过将IXU递归地分割成子⑶,可以产生其它尺寸的⑶。⑶的大小可以从8x8像素到具有最大64x64像素或更大的树块的大小变动。位流的语法数据可以定义LCU可以分裂的最大次数,这被称作⑶深度。所以,位流还可定义最小译码单元(S⑶)。通常,S⑶包含8x8个亮度样本。因而,在一个实例中,通过将64x64的IXU分割成四个子⑶,可以产生四个32x32的⑶,并且所述32x32的⑶中的每一个可以进一步分割成十六个8x8的⑶。
[0037]可以根据四叉树分割方案将每一树块分裂成CU。举例来说,作为四叉树的根节点的树块可分裂成四个子节点,且每一子节点又可为父节点且可分裂成另外四个子节点。最终的未分裂子节点(为四叉树的叶节点)包括译码节点,即经译码视频块。与经译码位流相关联的语法数据可定义树块可分裂的最大次数,且还可定义译码节点的最小大小。
[0038]⑶可以分割成较小单元以便用于预测或变换目的。根据HEVC WD6,⑶可包含一个或多个预测单元(PU)和/或一个或多个变换单元(TU)。本发明还使用术语“块”、“分区”或“部分”来指代CU、PU或TU中的任一者。总的来说,“部分”可指视频帧的任何子集。此外,本发明通常使用术语“视频块”来指⑶的译码节点。在一些特定情况下,本发明还可使用术语“视频块”来指包含译码节点、I3U和TU的树块,即LCU或CU。因而,视频块可以对应于CU内的译码节点,并且视频块可以具有固定或变化的大小,并且根据指定译码标准可以具有不同大小。
[0039]一股来说,包含与预测过程有关的数据。可以表示对应⑶的全部或一部分,并且可包含用于检索PU的参考样本的数据。可以具有正方形或矩形形状。举例来说,当PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含定义的运动向量的数据。举例来说,定义的运动向量的数据可以描述运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考图片和/或运动向量的参考图片列表(例如,列表O、列表1或列表C)。
[0040]HM支持使用多个大小的预测。与CU相关联的语法数据可描述将CU分割成一个或多个PU。举例来说,如果使用帧间预测对CU进行译码,那么可以将其划分成四个矩形PU,其中每一包含识别时间上的邻近帧中的一组参考样本的信息。所述组参考样本可以组合以形成预测性视频块。如上所述,可以从CU减去预测性视频块以形成残余数据。此外,假设特定CU的大小是2Nx2N,则HM支持2Nx2N或NxN的PU大小的帧内预测,和2Nx2N、2NxN、Nx2N或NxN的对称I3U大小的帧间预测。HM还支持用于2NxnU、2NxnD、nLx2N和nRx2N的PU大小的帧间预测的不对称分割。在不对称分割中,不分割CU的一个方向,但是另一方向分割成25%和75%。⑶的对应于25%分区的部分由“η”后面加上“上方”、“下方”、“左侦1或“右侧”指示来指示。因而,举例来说,“2NxnU”是指水平地分割的2Nx2N的CU,其中上方有2Nx0.5N的PU,而下方有2Nxl.5N的PU。
[0041]如上所述,可以向残余数据应用变换操作以将残余数据从像素域变换到变换域。TU表示用于执行变换和产生对应一组变换系数的目的的一组像素差值的大小。因而,变换块或TU可指被应用变换的一组残余数据,或一组变换系数值。TU的大小可以与CU的大小相同,或者CU可以分割成多个TU。举例来说,与CU相关联的语法数据还可描述CU根据四叉树分割成一个或多个TU。TU的大小可以基于针对经分割LCU而定义的给定CU内的PU的大小而确定,但是情况可能并不总是如此。TU的大小可以与PU相同或者小于PU,或可能大于ro。举例来说,可以基于不同大小的块(例如4x4、8x8或16x16和更大的块)执行变换。还可使用矩形形状的变换块,例如16x4、32x8等。举例来说,可以对与亮度样本的16x16阵列相关联的残余值执行一个变换,或者可以对亮度样本的四个8x8阵列中的每一个执行变换。较大TU —股来说提供在经重建图像中具有较容易察觉的“成块效应”的较多压缩,而较小TU —股来说提供具有较不容易察觉的“成块效应”的较少压缩。TU大小的选择可以基于速率失真优化分析。速率失真分析总地来说确定经重建块与原始(即,未经编码块)之间的失真(或误差)量以及用于对块进行编码的位速率(即,位的数目)。
[0042]类似于IXU,可以使用树状结构将TU递归地分割成较小TU。也就是说,可以使用残余四叉树(RQT)将对应于⑶的残余样本细分成较小单元,并且RQT的叶节点可被称为TU。因为将TU分割成较小TU而产生的TU结构或变换块结构可被称为变换树。
[0043]图1是说明其中TU以连续级别或深度分裂或不分裂成四个四分之一大小的块的四叉树分解结构的概念图。在图1中,具有实心线的整个块是原始TU,其可以对应于原始CU。虚线指示根据四叉树结构的变换块分解(即,RQT分解)的一个结果。应注意,图1中所说明的分解是几个可能分解结果中的一个。
[0044]在图1中所说明的四叉树分解结构中,做出块是不分裂成四个四分之一大小的块还是分裂成四个四分之一大小的块的决定。如图1中所说明,存在四个级别的变换分解。在第一级别(即,级别O分解深度O)(其对应于整个译码单元),译码单元分裂成四分之一大小的变换块。接着,在第二级别(即,级别I或深度I)处,第二(即,在光栅扫描中)四分之一大小的变换块进一步分裂成四个1/16大小的变换块。接着,在第三级别(即,级别2或深度2)处,第四1/16大小的变换块进一步分裂成甚至更小的变换块。在编码过程期间,视频编码器可以基于速率失真优化分析确定变换块是否应进一步分裂。
[0045]为了在经编码视频位流中用信号表示树分解结构,可以使用一系列变换分裂旗标。可以使用这个系列的分裂旗标来定义RQT结构。每一旗标可以对应于RQT中的一个级别(即,深度),其中旗标值O指示在当前块深度处不进一步分裂,并且I旗标值指示当前块深度有待分裂成四个额外的四分之一大小的块。对于每一块,可以通过视频编码器对变换分裂旗标进行译码,以指示块是否要进一步分裂。
[0046]图2是说明四叉树分解的级别图。图2说明可用于用信号表示图1中所说明的四叉树分解的级别图的一个实例。如图2中所说明,在不同分解级别处,可以如下用信号表示变换分裂旗标:
[0047]级别O:1
[0048]级别1:0,I,0,O
[0049]级别2:0,0,0,1
[0050]级别3:0,0,0,0
[0051]在级别0(其是译码单元级别)处,用信号表示旗标1,因为变换被进一步分裂。在级别I处,仅仅第二四分之一大小的块进一步分裂,因此视频编码器在经编码位流中发送旗标0,1,0,0。在级别2处,因为其它块不进一步分裂,所以仅仅需要视频编码器进一步用信号表示第二四分之一大小的块。在第二四分之一大小的块中,仅仅第4块有待进一步分裂,所以视频编码器在级别2处发送旗标0,0,0,I。在级别3处,没有块有待进一步分裂,所以发送旗标0,0,0,0。为了清楚起见,应提到在本发明中,较小级别或深度值意味着级别较接近分解结构中的根级别。如图1和图2中所说明,级别O是根级别。可以针对四叉树定义最大深度(即,级别)值,其中最大深度值指示分裂可以离根级别多远发生。以此方式,最大深度值可用于指示CU的最小的可能TU的大小。在图1中所说明的实例中,块仅仅分裂成正方形形状的子块。但是,在其它分解技术(例如HEVC WD6中描述的分解技术)中,块也可以分裂成矩形形状的子块。
[0052]图3A和3B是说明其中TU分裂或不分裂成四个非正方形块的四叉树分解结构的概念图。如图3A中所说明,TU可以分割成四个较小非正方形块以便用于变换目的。此外,如图3B中所说明,非正方形分解结构也可以是递归的。举例来说,如图3B中所说明,第一子块可以进一步分割成四个甚至更小的非正方形块,其具有原始块的1/16的大小。
[0053]如上所述,⑶可以具有三个分量,例如,举例来说,Y、U和V。应注意,也可以使用其它技术和色彩空间来表示色彩视频数据,例如RGB,但本文出于说明的目的描述了 YUV。根据HEVC WD6,对于CU来说,其亮度分量Y和其色度分量U和V共用相同的四叉树分解结构进行TU分割。因而,在当前HM参考软件中,所有三个分量共用相同RQT结构。也就是说,如果在RQT结构中分裂旗标=1,那么在这个级别处所有三个分量进一步划分成较小变换块。虽然这允许每个变换块仅仅用信号表示一个变换分裂旗标(其中Y、U和V分量之间共用旗标),但是Y、U和V中的每一个可以具有不同特性。举例来说,U和V—股比Y更平滑。因此,基于Y分量的特性的变换分解结构可能对于U和V不是最优的。
[0054]在一些情况下,用于U和V的最优变换可以在比Y更低的深度(对应于更大的变换大小)。换句话说,可能需要将Y分量块分裂成比U和V分量块更小的分区,或者在其它情况下可能反过来。应注意,一些技术(例如2012年3月7日申请的共同待决的第13/414,232号美国专利申请案(特此以全文引用的方式并入本文中)中描述的技术)包含对于RQT针对亮度分量定义第一大深度并且针对色度分量定义第二大深度的情况。对于亮度分量具有第一大深度并且对于色度分量具有第二大深度的确必然为Y、U和V分量中的每一个的分割提供独立性,即,对于Y、U和V共用低级别分裂旗标(例如,级别O和级别I)。
[0055]除了分裂旗标之外,HEVC WD6还包含经译码块旗标(CBF)语法元素,其指示变换系数块或变换是否包含任何非零变换系数。经译码块旗标信令与变换块结构密切地相关联,并且通过视频编码器用自上向下的层级式方式用信号表示。举例来说,当较低分解级别处的经译码块旗标是O时,那么对于所述视频分量在较高级别处没有对经译码块旗标的进一步信令(其中较低级别较接近根,而较高级别离根较远)。在这种情况下,对应较高级别经译码块旗标全被推断为O。换句话说,当经译码块旗标在某一分解级别处译码时,只有在当前分解级别处的经译码块旗标不是零时才需要较高级别处的经译码块旗标。
[0056]如上所述,视频译码标准可以根据CABAC技术对语法元素进行熵译码。为了向语法元素应用CABAC译码,视频译码器可以对语法元素执行二进制化。二进制化是指将语法值转换成一系列一个或多个位的过程。这些位可被称为“二进制数”。二进制化是无损过程,并且可包含以下译码技术中的一者或组合:固定长度译码、一元译码、截短一元译码、截短莱斯译码、哥伦布译码、指数哥伦布译码和哥伦布-莱斯译码。举例来说,二进制化可包含使用8位固定长度技术将整数值5表示成00000101,或者使用一元译码技术将整数值5表示成11110。
[0057]在二进制化之后,视频译码器可以识别译码上下文。译码上下文可以识别对具有特定值的二进制数进行译码的概率。举例来说,译码上下文可以指示对O值二进制数进行译码的概率为0.7,并且对I值二进制数进行译码的概率为0.3。在识别译码上下文之后,视频译码器可以基于上下文对二进制数进行算术译码。使用常规CABAC译码而被译码的二进制数可被称为“CABAC 二进制数”。
[0058]此外,视频译码器并非对所有语法元素执行常规CABAC编码,而是可以使用旁路CABAC译码对一些语法元素(例如,二进制数)进行译码。旁路译码是指不使用自适应上下文对二进制数进行算术编码的过程。也就是说,旁路译码引擎不选择上下文,并且可以假设两个符号(O和I)的概率都是0.5。虽然旁路译码的带宽效率可能没有CABAC译码那么高,但是在对二进制数执行旁路译码而非对二进制数执行常规CABAC译码可能在计算方面成本较低。此外,执行旁路译码可以允许较高的平行度和处理量。使用旁路译码来译码的二进制数可被称为“旁路二进制数”。语法元素的二进制化(无论特定二进制数是经CABAC译码还是经旁路译码)和/或用于对二进制数进行编码的上下文可以基于另一语法元素的值。
[0059]考虑到HEVC WD6中描述的TU分割技术的特性,本发明描述用于用信号表示视频数据的色彩分量的独立四叉树分解结构的技术。根据本文所述的实例技术中的一些,用于针对一个色彩分量对分裂旗标进行熵译码的上下文可以是基于另一色彩分量的分裂旗标的值。以此方式,可以在经编码位流中高效地用信号表示任何额外分裂旗标。
[0060]图4是说明可利用本发明中描述的技术的实例视频编码和解码系统10的框图。如图4中所示,系统10包含源装置12,其产生稍后将由目的地装置14解码的经编码视频数据。源装置12和目的地装置14可包括多种多样的装置中的任一种,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板电脑、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置或类似装置。在一些情况下,源装置12和目的地装置14可以经装备以用于无线通信。
[0061]目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,链路16可包括使得源装置12能够实时地将经编码视频数据直接发射到目的地装置14的通信媒体。经编码视频数据可以根据通信标准(例如无线通信协议)得到调制,并且被发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一个或多个物理发射线路。通信媒体可以形成分组网络(例如局域网、广域网或全球网络,例如因特网)的一部分。通信媒体可包含路由器、交换器、基站或任何其它可用于便于从源装置12到目的地装置14的通信的设备。
[0062]或者,可将经编码数据从输出接口 22输出到存储装置32。类似地,可通过输入接口 28从存储装置32存取经编码数据。存储装置32可包含多种分布式或本地存取的数据存储媒体中的任一种,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或任何其它用于存储经编码视频数据的合适的数字存储媒体。在另一实例中,存储装置32可对应于文件服务器或可保存源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流式传输或下载从存储装置32存取所存储的视频数据。文件服务器可以是任何类型的能够存储经编码视频数据并且将经编码视频数据发射到目的地装置14的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置或本地磁盘驱动器。目的地装置14可通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。这可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,W1-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。经编码视频数据从存储装置32的传输可为流式传输、下载传输或两者的组合。
[0063]本发明的技术不必限于无线应用或设置。所述技术可应用于视频译码以支持多种多媒体应用中的任一种,例如空中电视广播、有线电视发射、卫星电视发射、流式视频传输(例如,经由因特网)、编码视频数据以存储于数据存储媒体上、解码存储于数据存储媒体上的视频数据,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输,以支持例如视频流式传输、视频回放、视频广播和/或视频电话等应用。
[0064]在图4的实例中,源装置12包含视频源18、视频编码器20和输出接口 22。在一些情况下,输出接口 22可包含调制器/解调器(调制解调器)和/或发射器。在源装置12中,视频源18可包含例如视频俘获装置(例如摄像机)、包含先前俘获的视频的视频档案、用于从视频内容提供者接收视频的视频馈入接口和/或用于产生计算机图形数据作为源视频的计算机图形系统等源,或此类源的组合。作为一个实例,如果视频源18是摄像机,那么源装置12和目的地装置14可以形成所谓的相机电话或视频电话。但是,本发明中所描述的技术可大体上适用于视频译码,且可应用于无线和/或有线应用。可由视频编码器12对所俘获、预先俘获或计算机产生的视频进行编码。经编码视频数据可经由源装置20的输出接口 22直接发射到目的地装置14。经编码视频数据还可(或替代地)存储到存储装置32上以供稍后由目的地装置14或其它装置存取以用于解码和/或回放。
[0065]目的地装置14包含输入接口 28、视频解码器30和显示装置32。在一些情况下,输入接口 28可包含接收器和/或调制解调器。目的地装置14的输入接口 28经由链路16接收经编码视频数据。经由链路16传达或在存储装置32上提供的经编码视频数据可包含由视频编码器20产生的多种语法元素以供由例如视频解码器30等视频解码器用于对视频数据进行解码。此类语法元素可与在通信媒体上发射、存储在存储媒体上或存储在文件服务器中的经编码视频数据包含在一起。在一些实例中,此类语法元素可包含如本发明中所描述用信号表示帧内译码模式的语法元素。
[0066]显示装置32可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一股来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一种,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
[0067]视频编码器20和视频解码器30可根据视频压缩标准(例如目前正在开发的HEVC标准)来操作,且可符合HEVC测试模型(HM)。或者,视频编码器20和视频解码器30可根据其它专属或业界标准来操作,所述标准例如是ITU-T H.264标准,也被称为MPEG-4第10部分高级视频译码(AVC),或此类标准的扩展。但是,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含MPEG-2和ITU-T H.263。本发明中描述的技术可以在此译码过程内实施。
[0068]尽管图4中未展示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当多路复用器-多路分用器单元或其它硬件和软件以处置对共同数据流或单独数据流中的音频和视频两者的编码。在一些实例中,如果适用的话,多路复用器-多路分用器单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
[0069]视频编码器20和视频解码器30各自可实施为多种合适的编码器电路中的任一种,例如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地用软件实施所述技术时,装置可将用于所述软件的指令存储于合适的非暂时性计算机可读媒体中且使用一个或多个处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可包含在一个或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(编解码器)的一部分。
[0070]除了根据视频压缩标准操作之外,视频编码器20和视频解码器30还可以执行本文所述的用于分割译码单元的技术。例如视频编码器20等视频编码器可以确定分割方案和对分割方案进行编码,例如编码为包括用于变换单元的分裂旗标的残余四叉树结构。例如视频解码器30等视频解码器可以确定用于从视频解码器接收到和熵解码的经编码视频位流中解码的变换单元的分割方案。视频编码器20科根据分割方案将译码单元布置成TU分区。视频解码器30重建TU分区以便对视频数据进行解码。
[0071]如上所述,视频序列通常包含一系列视频帧或图片。图片群组(GOP)总体上包括一系列一个或多个视频图片。GOP可包含GOP的标头、图片中的一者或多者的标头或其它地方中的语法数据,其描述GOP中包含的图片的数目。图片的每一切片可包含切片语法数据,其描述用于相应切片的编码模式。视频编码器20通常对各个视频切片内的视频块进行操作以便对视频数据进行编码。视频块可以对应于CU内的译码节点。
[0072]图5是说明可实施本发明中描述的技术的实例视频编码器20的框图。视频编码器20可对视频切片内的视频块执行帧内和帧间译码。在图5的实例中,视频编码器20包含预测单元41、参考图片存储器64、求和器50、变换单元52、量化单元54和熵编码单元56。预测单元41包含分割单元35、运动估计单元42、运动补偿单元44和帧内预测单元46。为了视频块重建,视频编码器20还包含逆量化单元58、逆变换单元60和求和器62。还可包含解块滤波器(图5中未展示)以对块边界进行滤波以从重建的视频移除成块假影。必要时,解块滤波器将通常对求和器62的输出进行滤波。除了解块滤波器之外,还可使用额外环路滤波器滤波器(环路中或环路后)。
[0073]视频编码器20大体说明对待编码的视频切片内的视频块进行编码的组件。所述切片可划分成多个视频块(且可能划分成被称作图像块的视频块组)。预测单元41可基于误差结果(例如,译码速率和失真水平)针对当前视频块选择多种可能译码模式中的一者,例如多种帧内译码模式中的一者或多种帧间译码模式中的一者。预测单元41可将所得经帧内或帧间译码块提供到求和器50以产生残余块数据,且提供到求和器62以重建经编码块以用作参考图片。
[0074]预测单元41可以提供用于独立于其它视频分量定义用于所述多个视频分量中的一个的分割方案的多种技术,如本发明中所描述。在另一方面中,预测单元41可以基于视频块的一个或多个属性确定是否独立于其它视频分量定义用于视频块的所述多个视频分量中的至少一个的分割方案。在一些实例中,所述属性可包含块大小、图片类型、块分区或运动信息中的至少一个。
[0075]如图5中所说明,视频编码器20接收视频数据,且分割单元35可以将所述数据分割成视频块。这个分割还可包含将视频数据分割成切片、图像块或其它较大单元以及例如根据LCU和CU的残余四叉树结构的视频块分割以便产生I3U和TU。在一个实例中,分割单元35可以将例如LCU等视频数据块分割成例如CU、PU和TU等子块。举例来说,分割单元35可以基于先前的译码遍次中的先前分割方案的评估来分割视频数据块。举例来说,分割单元35可以首先将帧或切片分割成LCU,并且配合预测单元41基于速率失真分析(例如,速率失真优化)将LCU中的每一个分割成子CU。因此,虽然图5中出于说明的目的将分割单元35展示为单独的块,但是分割单元35执行的分割功能可以与预测单元41的模式选择和预测功能集成,尤其是在预测单元41执行的速率失真分析可用于至少部分地确定应用于LCU以产生CU、子CU、PU和TU的分割方面的情况下。总的来说,预测单元41配合分割单元35可以产生指示将LCU分割成子CU的四叉树数据结构。四叉树的叶节点CU可包含一个或多个I3U和一个或多个TU。
[0076]如上所述,可以使用一系列分裂旗标来定义RQT结构。因而,分割单元35和/或预测单元41可以将CU分割成一个或多个TU并且向熵编码单元56输出一系列分裂旗标。在一个实例中,分割单元35和/或预测单元41可以分割CU,使得每一视频分量可以具有独立于至少一个其它视频分量RQT结构确定的RQT结构。举例来说,可以独立于色度分量(即,U和V)的RQT分割结构来定义亮度分量(即,Y)的RQT分割结构。在一个实例中,Y分量可以具有其自身的RQT树,被定义为RQTl,并且U和V分量可以共用第二 RQT树,被定义为RQT2。所述两个树可以是独立的,这意味着Y分量中的分裂决策未必适用于U和V色度分量的对应分裂决策。
[0077]在这个实例中,如果RQT2在四叉树中的给定级别具有分裂旗标=1,那么U和V分量两者都在这个级别划分成更小的块。此外,在另一实例中,当对三个视频分量使用两个RQT树时,两个视频分量的任何数目的组合可以共用一个RQT树。在另一实例中,三个RQT树可以独立定义,Y、U和V中每一者各一个,例如定义为RQT1、RQT2和RQT3。因而,分割单元35和/或预测单元41可经配置以使用针对色彩分量中的每一个共用和独立定义的RQT的任何和所有组合来分割视频数据。
[0078]在一个实例中,RQT结构和使用RQT结构中的每一个的视频分量的数目可以通过分割单元35和/或预测单元41自适应地确定,并且通过视频编码器20显式地或隐式地用信号表示。举例来说,Y、U和V共用相同树(即,相同分割方案)或其中的一些共用树或其中的每一个具有其自身的独立定义的树的决策可以由视频编码器20在CU标头处或在一些高级别语法中显式地用信号表示。
[0079]在另一实例中,Y、U和V共用相同树或其中的一些共用树或其中的每一个具有其自身的独立定义的树的决策可以由分割单元35和/或预测单元41自适应地确定。这个自适应确定可以基于CU或其它视频块的任何属性,比如,例如块大小、图片类型、块分割类型(例如,2Nx2N、Nx2N)、运动信息等。举例来说,如果⑶的块大小等于最大块大小,那么这可以表明每一视频分量具有其自身的RQT结构。使用此类属性,例如视频编码器20等视频编码器可以决定并且例如视频解码器30等视频解码器可以推断在亮度和色度分量当中应用的RQT方案(即,相同RQT、两个独立RQT (—个用于亮度,并且一个由两个色度分量共用),或三个独立的RQT),使得可能不需要显式信令。
[0080]如上所述,可以针对四叉树定义最大深度(即,级别)值,其中最大深度值指示可以离根级别多远发生分裂。在一些实例中,分割单元35和/或预测单元41可经配置以便为每一 RQT结构独立地定义最大深度(级别)。举例来说,用于Y的RQT结构可以具有不同于用于U的RQT结构的最大深度或用于V的RQT结构的最大深度的最大深度。作为一实例,Y的RQT结构可以具有最大深度2,而U的RQT结构具有最大深度1,并且V的RQT结构具有最大深度I。并且,在一些实例中,U和V分量可以具有不同的最大深度。为每一 RQT结构提供最大深度可以允许例如视频解码器30等视频解码器在已达到最大深度的情况下停止剖析⑶的分裂旗标。在一个实例中,其中Y具有RQT结构RQTl,并且U和V具有相同RQT结构RQT2,用于RQTl的最大深度(级别)可以定义为MAX_RQT_DEPTH_LUMA,并且用于RQT2的最大深度(级别)可以定义为MAX_RQT_DEPTH_CHROMA。在一个实例中,视频编码器20可以在经编码位流中发射MAX_RQT_DEPTH_LUMA和MAX_RQT_DEPTH_CHROMA,以便由例如视频解码器30等视频解码器使用高级别语法来存取和解码。
[0081]应注意,如果RQT树的当前级别在预定义的最大级别(深度)处,那么不需要对分裂旗标进行编码或解码来指示当前块是否进一步分裂成更小的变换块。也就是说,例如视频编码器20等视频编码器不提供超出最大深度级别的任何更多的分裂旗标,并且例如视频解码器30等视频解码器不需要剖析超出最大深度级别的额外分裂旗标。为亮度和色度分量独立地定义最大级别可以提供另一种为亮度和色度分量独立地定义分割的方式。
[0082]图6是说明四叉树分解的实例的概念图,其中为每一视频分量提供独立的四叉树分解。如图6中所说明,在根节点处分割Y和U分量,并且在根节点处不分割V。Y和U中的每一个进一步分割,但并不共用超出根节点分区的共用分区。图6中所说明的分割可以使用三组分裂旗标以类似于上文相对于图2所述的分裂旗标的信号而用信号表示。出于简洁起见,不描述对于图6中用于Y、U和V中的每一个的分裂旗标的用信号表示的完整具体论述,而是参考上文相对于图1和2对于分裂旗标信令的论述。如下文详细描述,当使用一个以上RQT结构(例如RQTl (用于Y)和RQT2 (用于U和V)或RQTl (用于Y),RQT2 (用于U)和RQT3(用于V))时,RQT结构中的至少一个的编码可以基于已经编码的RQT结构(例如,另一色彩分量的RQT结构)。举例来说,如果RQ Tl用于Y并且RQT2用于U和V,那么可以至少部分基于RQTl对RQT2进行编码。
[0083]再次参看图5,预测单元41内的帧内预测单元46可相对于与有待译码的当前块在相同的帧或切片中的一个或多个相邻块执行当前视频块的帧内预测性译码,以提供空间压缩。预测单元41内的运动估计单元42和运动补偿单元44相对于一个或多个参考图片中的一个或多个预测性块执行当前视频块的帧间预测性译码以提供时间压缩。
[0084]如果对于当前视频块选择的是帧间预测而非帧内预测,那么运动估计单元42可经配置以根据用于视频序列的预定模式确定用于视频切片的帧间预测模式。预定模式可以将序列中的视频切片标明为P切片、B切片或一股化的P/B (GPB)切片。运动估计单元42与运动补偿单元44可高度集成,但出于概念目的分开加以说明。由运动估计单元42执行的运动估计是产生运动向量的过程,所述运动向量估计视频块的运动。举例来说,运动向量可以指示当前视频帧或图片内的视频块的PU相对于参考图片内的预测性块的位移。
[0085]在帧间译码中,预测性块是被发现在像素差方面与待译码视频块的密切匹配的块,像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差度量来确定。在一些实例中,视频编码器20可以计算存储在参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可内插四分之一像素位置、八分之一像素位置或参考图片的其它分数像素位置的值。因此,运动估计单元42可以相对于整数像素位置和分数像素位置执行运动搜索并且输出具有分数像素精确度的运动向量。
[0086]运动估计单元42通过比较PU的位置与参考图片的预测性块的位置来计算用于经帧间译码切片中的视频块的PU的运动向量。参考图片可以选自第一参考图片列表(列表O)或第二参考图片列表(列表I),其每一个识别存储在参考图片存储器64中的一个或多个参考图片。运动估计单元42向熵编码单元56和运动补偿单元44发送计算出的运动向量例如连同其它语法元素。
[0087]由运动补偿单元44执行的运动补偿可以涉及基于通过运动估计(可能执行对子像素精确度的内插)确定的运动向量取出或产生预测性块。在接收到当前视频块的PU的运动向量后,运动补偿单兀44即刻可以在参考图片列表中的一者中定位所述运动向量指向的预测性块。视频编码器20通过从正被译码的当前视频块的像素值中减去预测性块的像素值从而形成像素差值来形成残余视频块。像素差值形成用于所述块的残余数据,并且可包含亮度和色度差分量两者。求和器50表示可执行此减法运算的组件。运动补偿单元44还可产生与视频块和视频切片相关联的语法元素以供视频解码器30在对视频切片的视频块进行解码时使用。
[0088]作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可以对当前块进行帧内预测。明确地说,帧内预测单元46可以确定用来对当前块进行编码的帧内预测模式。在一些实例中,帧内预测单元46可以对当前块进行编码以使用多个帧内预测模式(例如,在分开的编码遍次期间)产生预测性块,并且帧内预测单元46 (或在一些实例中为模式选择单元40)可以从经测试的模式中选择适当的帧内预测模式来使用。举例来说,帧内预测单元46可以使用速率失真分析计算用于各种经测试帧内预测模式的速率失真值,并且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析总体上确定经编码块与经编码以产生所述经编码块的原始未编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测单元46可以根据用于各种经编码块的失真和速率计算比率,以确定哪个帧内预测模式对于所述块展现最佳速率失真值。
[0089]在任何情况下,在选择了用于一块的帧内预测模式之后,帧内预测单元46可将指示用于所述块的选定帧内预测模式的信息提供到熵译码单元56。举例来说,帧内预测单元46可以提供例如一个或多个语法元素等信令来指示所选的帧内模式。熵译码单元56可以对指示所选帧内预测模式的信息进行编码。视频编码器20在所发射的位流中可包含配置数据,其可包含多个帧内预测模式索引表和多个修改的帧内预测模式索引表(也称为码字映射表),对用于各种块的上下文进行编码的定义,和对最可能帧内预测模式、帧内预测模式索引表和修改的帧内预测模式索引表的指示以用于所述上下文中的每一者。
[0090]在预测单元41产生了用于当前视频块的预测性块之后,视频编码器20通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含在一个或多个TU中且应用于变换单元52。变换单元52使用例如离散余弦变换(DCT)或概念上类似的变换等变换将残余视频数据变换成残余变换系数。变换单元52可将残余视频数据从像素域转换到变换域,例如频域。
[0091]变换单元52可以将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步降低位速率。量化过程可减少与系数中的一些或全部相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可接着执行对包含经量化变换系数的矩阵的扫描。或者,熵编码单元56可以执行所述扫描。
[0092]如上所述,HEVC WD6包含经译码块旗标(CBF)语法元素,其指示变换系数或变换系数级别块是否包含任何非零变换系数。在一个实例中,在每一级别,视频编码器20可以对被称作经译码块旗标(cbf)的语法元素和分裂旗标进行编码。cbf可用于指示在当前级别是否存在用于变换的任何非零系数和/或进一步的分裂变换块。如果cbf = 0,那么这意味着不存在非零系数。在这种情况下,分裂或不分裂将产生相同结果。因此,不需要发射分裂旗标(即,默认值,通常对于分裂使用O),因为分裂旗标变成冗余了。因此,在这个实例中,如果对于RQT的一个级别Cbf = O,那么视频编码器20不发送并且例如视频解码器30等视频解码器不接收分裂旗标。实情为,可以根据cbf = O而推断分裂旗标=O。以此方式,可以减少所发射的分裂旗标的数目。这在每一色彩分量包含RQT的情况下可能尤其有用。因而,分割单元35和/或预测单元41可经配置以基于cbf的值向熵编码单元56产生和输出为色彩分量中的每一个定义RQT的分裂旗标。
[0093]逆量化单元58和逆变换单元60分别应用逆量化和逆变换以在像素域中重建残余块,例如以供稍后用作参考图片的参考块。运动补偿单元44可以通过将残余块添加到参考图片列表中的一者内的参考图片中的一者的预测性块中来计算参考块。运动补偿单元44还可将一个或多个内插滤波器应用于经重建残余块以计算子整数像素值用于运动估计。求和器62将经重建残余块添加到由运动补偿单元44产生的运动补偿预测块以产生参考块用于存储在参考图片存储器64中。参考块可由运动估计单元42和运动补偿单元44使用作为参考块以对后续视频帧或图片中的块进行帧间预测。
[0094]在量化之后,熵译码单元56对经量化变换系数进行熵译码。此外,熵译码单元56对例如上述预测性语法元素等语法元素进行熵译码。举例来说,熵译码单元56可以执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵译码技术。就基于上下文的熵译码而论,上下文可以基于相邻块。在熵译码单元56的熵译码之后,可以将经编码位流发射到另一装置(例如视频解码器30),或者将所述经编码位流存档用于以后发射或检索。在一些实例中,视频编码器20可以利用预定义扫描次序来扫描经量化变换系数以产生可被熵编码的串行化向量。熵编码还可确定压缩比。在其它实例中,视频编码器20可以执行自适应扫描。在扫描经量化变换系数以形成一维向量之后,视频编码器20可以对一维向量进行熵编码。
[0095]除了对经量化变换系数进行熵译码之外,熵译码单元56还对例如分裂旗标等语法元素进行熵编码。在一个实例中,可以使用CABAC用上下文对分裂旗标进行编码。可以使用另一分量的RQT树(例如,RQT1,其在用于当前分量的RQT2之前已经编码)中的对应分裂旗标的值来选择用于一个RQT (例如,RQT2)的分裂旗标的CABAC译码的上下文。举例来说,如果在UV的RQT树(RQT2)之前编码了 Y的RQT树(RQTl),那么可以用基于RQTl中的对应分裂旗标(例如,对应于与正译码的分裂旗标相同级别的分裂旗标)的值而选择的CABAC上下文对RQT2的分裂旗标进行CABAC译码。在一个实例中,当用于RQT2的级别O的分裂旗标被编码时,可以使用RQTl的级别O处的分裂旗标的值来选择用于RQT2的级别O处的分裂旗标的译码的CABAC上下文。因此,可以至少部分基于RQTl中的对应分裂旗标的值来确定用于对RQT2中的分裂旗标进行译码的上下文。可以指定一个或多个规则、函数或等式用于基于RQTl中的分裂旗标的值而选择RQT2中的分裂旗标的上下文。举例来说,如果用于RQTl的分裂旗标的值是零,那么可以针对RQT2的分裂旗标选择第一上下文,并且如果用于RQTl的分裂旗标的值是一,那么可以针对分裂旗标或RQT2选择第二上下文。在另一实例中,可以基于用于RQT2的一个或多个分裂旗标的值选择定义RQT2的所有上下文分裂旗标的映射。在其它实例中,可以对例如CAVLC或PIPE等其它类型的熵译码使用所选的上下文。
[0096]在另一实例中,如果Y、U和V各自具有其自身的RQT结构并且Y和U的RQT结构在V的RQT结构之前编码,那么当对V的RQT结构的级别O处的分裂旗标进行编码时,可以使用一个函数(splitY,splitU)来选择上下文,其中splitY是用于Y的RQT树中的对应分裂旗标的值,并且splitU是用于U的RQT树中的对应分裂旗标的值。在另一实例中,如果Y、U和V各自具有其自身的RQT结构,并且Y和U的RQT结构在V的RQT结构之前编码,那么当对V的RQT结构的级别O处的分裂旗标进行编码时,可以使用一个函数(splitU)来选择上下文,其中splitU是用于U的RQT树中的对应分裂旗标的值。可以用被发现得出合适的上下文选择(例如,促进译码效率)的多种方式中的任一种来定义所述函数。
[0097]图7是说明可实施本发明中描述的技术的实例熵编码单元56的框图。在一个实例中,图5中所说明的熵编码单元56可以是CABAC编码器。实例熵编码单元56可包含二进制化单元502、算术编码单元510 (其包含旁路编码引擎504和常规编码引擎508)和上下文建模单元506。
[0098]熵编码单元56可以接收一个或多个语法元素,例如上述分裂旗标语法元素。二进制化单元502接收语法元素并且产生二进制数串(即,二进制串)。举例来说,二进制化单元502可以使用以下技术中的任何一种或组合来产生二进制数串:固定长度译码、一元译码、截短一元译码、截短莱斯译码、哥伦布译码、指数哥伦布译码和哥伦布-莱斯译码。此外,在一些情况下,二进制化单元502可以作为二进制串接收语法元素并且简单地使二进制数值通过。
[0099]算术编码单元510经配置以从二进制化单元502接收二进制数串,并且对二进制数串执行算术编码。如图7中所示,算术编码单元510可以从旁路路径或常规译码路径接收二进制数值。遵循旁路路径的二进制数值可以是被识别为经旁路译码的二进制数值,并且遵循常规编码路径的二进制数值可以被识别为经CABAC译码。按照上述CABAC过程,在算术编码单元510从旁路路径接收二进制数值的情况下,旁路编码引擎504可以不利用指派给二进制数值的自适应上下文对二进制数值执行算术编码。在一个实例中,旁路编码引擎504可以对于二进制数的可能值采用相等概率。
[0100]在算术编码单元510通过常规路径接收二进制数值的情况下,上下文建模单元506可以提供上下文变量(例如,上下文状态),使得常规编码引擎508可以基于上下文建模单元506提供的上下文指派而执行算术编码。上下文指派可以根据例如HEVC等视频译码标准来定义。上下文模型可以存储在存储器中。在一个实例中,可以如上所述基于另一分裂旗标的值来确定用于对一个分裂旗标进行CABAC译码的上下文。上下文建模单元506可包含一系列索引表和/或利用映射函数来确定用于特定二进制数的上下文和上下文状态。在对二进制数值进行编码之后,常规编码引擎508可以基于实际二进制数值来更新上下文。
[0101]图8是说明用于根据本发明中描述的技术对视频数据进行编码的实例方法的流程图。分割单元35产生第一分裂旗标,其中第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块(802)。熵译码单元56确定用于第一分裂旗标的上下文,其中所述上下文至少部分是基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值(804)。视频数据的第二分量可以是视频数据的亮度或第二色度分量。因而,与另一 RQT相关联的分裂旗标的值可以确定第一分裂旗标的上下文。熵译码单元56基于所确定的上下文使用上下文自适应二进制算术译码(CABAC)对第一分裂旗标进行熵编码(806)。熵译码单元56输出表示第一分裂旗标的值的经熵编码数据作为位流的一部分(808)。
[0102]以此方式,图5的视频编码器20表示经配置以进行以下操作的视频编码器的实例:产生第一分裂旗标,其中第一分裂旗标的值指示一个以上变换操作是否与用于视频数据的第一色度分量的变换系数阵列相关联;确定用于第一分裂旗标的上下文,其中所述上下文至少部分是基于与用于视频数据的亮度分量的变换系数阵列相关联的第二分裂旗标的值;基于所确定的上下文使用上下文自适应二进制算术译码(CABAC)对第一分裂旗标进行熵编码;以及输出表示第一分裂旗标的值的经熵编码数据作为位流的一部分。
[0103]图9是说明可实施本发明中描述的技术的实例视频解码器30的框图。在图9的实例中,视频解码器30包含熵解码单元80、预测单元81、逆量化单元86、逆变换单元88、求和器90和参考图片存储器92。预测单元81包含运动补偿单元82和帧内预测单元84。在一些实例中,视频解码器30可执行大体上与关于来自图5的视频编码器20描述的编码遍次互逆的解码遍次。
[0104]在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块和相关联语法元素的经编码视频位流。视频解码器30的熵解码单元80对位流进行熵解码以产生经量化系数、运动向量和其它语法元素。熵解码单元80将运动向量和其它语法元素转发到预测单元81。视频解码器30可以接收视频切片等级和/或视频块等级的语法元素。
[0105]图10是说明可实施本发明中描述的技术的实例熵解码单元80的框图。熵解码单元80接收经熵编码位流,并且从位流中解码语法元素。语法元素可包含上述分裂旗标语法元素。图10中的实例熵解码单元80包含算术解码单元702,其可包含旁路解码引擎704和常规解码引擎706。实例熵解码单元80还包含上下文建模单元708和逆二进制化单元710。实例熵解码单元80可以执行相对于图5描述的实例熵编码单元56的互逆功能。以此方式,熵解码单元80可以基于本文所述的技术执行熵解码。
[0106]算术解码单元702接收经编码位流。如图10中所示,算术解码单元702可以根据旁路路径或常规译码路径处理经编码二进制数值。可以在位流中以较高级别语法用信号表示是应根据旁路路径还是常规通过来处理经编码二进制数值的指示。按照上述CABAC过程,在算术解码单元702从旁路路径接收二进制数值的情况下,旁路解码引擎704可以不利用指派给二进制数值的上下文对二进制数值执行算术编码。在一个实例中,旁路解码引擎704可以对于二进制数的可能值采用相等概率。
[0107]在算术解码单元702通过常规路径接收二进制数值的情况下,上下文建模单元708可以提供上下文变量,使得常规解码引擎706可以基于上下文建模单元708提供的上下文指派而执行算术编码。上下文指派可以根据例如HEVC等视频译码标准来定义。上下文模型可以存储在存储器中。在一个实例中,可以如上所述基于另一分裂旗标的值来确定用于一个分裂旗标的上下文。上下文建模单元708可包含一系列索引表和/或利用映射函数来确定经编码位流的上下文和上下文变量部分。在对二进制数值进行解码之后,常规译码引擎706可以基于经解码二进制数值更新上下文状态值。此外,逆二进制化单元710可以对二进制数值执行逆二进制化,并且使用二进制数匹配函数来确定二进制数值是否有效。逆二进制化单元710还可基于匹配确定来更新上下文建模单元。因而,逆二进制化单元710根据上下文自适应解码技术输出语法元素。
[0108]再次参看图9,当视频帧经译码为经帧间译码(即,B、P或GPB)切片时,预测单元81的运动补偿单元82基于从熵解码单元80接收到的运动向量和其它语法元素产生用于当前视频切片的视频块的预测性块。预测性块可以从参考图片列表中的一者内的参考图片中的一者产生。视频解码器30可以基于存储在参考图片存储器92中的参考图片使用默认建构技术建构参考巾贞列表一列表O和列表I。
[0109]运动补偿单元82通过剖析运动向量和其它语法元素确定用于当前视频切片的视频块的预测信息,并且使用所述预测信息产生用于正被解码的当前视频块的预测性块。举例来说,运动补偿单元82使用一些接收到的语法元素确定用于对视频切片的视频块进行译码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、切片的参考图片列表中的一者或一者以上的建构信息、切片的每一经帧间编码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态和用以对当前视频切片中的视频块进行解码的其它信息。
[0110]运动补偿单元82还可基于内插滤波器执行内插。运动补偿单元82可使用由视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。在这种情况下,运动补偿单元82可根据接收到的语法元素而确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生预测性块。
[0111]当视频切片经译码为经帧内译码(I)切片时,预测单元81的帧内预测单元84可以基于用信号表示的帧内预测模式和来自当前帧或图片的先前经解码块的数据产生用于当前视频切片的视频块的预测数据。帧内预测单元84可以用与上文针对视频编码器20描述的相同方式识别正被解码的块的最可能的帧内预测模式。帧内预测单元84可以剖析第一位以确定用于正被解码的块的实际帧内预测模式是最可能的帧内预测模式中的一个还是其余帧内预测模式中的一个。如果实际模式是最可能模式中的一个,那么在位流中用信号表示的代码可以指示要选择最可能模式中的哪一个。如果第一位指示实际模式不是最可能模式中的一个,那么帧内预测单元84可以基于接收到的码字从所述组其余模式中确定实际帧内预测模式。用信号表示其余模式可以使用固定长度码字。帧内预测单元84可以接着使用所选模式对块进行解码和重建。
[0112]逆量化单元86将在位流中提供且由熵解码单元80解码的经量化变换系数逆量化,即解量化。逆量化过程可包含使用视频编码器20针对视频切片中的每一视频块计算的量化参数以确定应当应用的量化程度和同样逆量化程度。
[0113]逆变换单元88对变换系数应用逆变换,例如逆DCT、逆整数变换或概念上类似的逆变换过程,以便产生像素域中的残余块。逆变换单元88可经配置以根据本文所述的TU分割方案应用逆变换。以此方式,逆变换单元88可以剖析一群组的变换系数并且基于一个或多个分裂旗标的值执行变换。
[0114]在预测单元81基于帧内预测或运动补偿产生了用于当前视频块的预测性块之后,视频解码器30通过将来自逆变换单元88的残余块与预测单元81产生的对应预测性块求和来形成经解码视频块。求和器90表示可以执行此求和运算的组件。必要时,还可应用解块滤波器对经解码块进行滤波以便移除成块假影。其它环路滤波器(在译码环路中或在译码环路之后)也可用于使像素过渡平滑化或以其它方式改善视频质量。接着将给定帧或图片中的经解码视频块存储在参考图片存储器92中,参考图片存储器92存储用于后续运动补偿的参考图片。参考图片存储器92还存储经解码视频用于以后在显示装置(例如图3的显示装置32)上呈现。
[0115]图11是说明用于根据本发明中描述的技术对视频数据进行解码的实例方法的流程图。熵解码单元80接收表示与变换系数阵列相关联的第一分裂旗标的值的经熵编码数据(1102)。熵解码单元80确定用于表示第一分裂旗标的经熵编码数据的上下文(1104)。如上所述,上下文可以至少部分基于与用于视频数据的亮度分量的变换系数阵列相关联的第二分裂旗标的值。用于视频数据的亮度分量的变换系数阵列和用于视频数据的色度分量的变换系数阵列可以包含在相同CU或TU中。熵解码单元80使用上下文自适应二进制算术译码(CABAC)基于所确定的上下文对表示第一旗标的值的数据进行熵解码(1106)。逆变换单元88接收用于视频数据的第一色度分量的变换系数阵列(1108)。在一些实例中,用于第一变换系数阵列的位流中的位的分配可以基于分裂旗标的值。视频解码器30基于第一分裂旗标的值重建视频数据(1110)。
[0116]以此方式,图10的视频解码器30表示经配置以进行以下操作的视频解码器的实例;接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中第一分裂旗标的值指示用于第一色度分量的变换系数阵列是否划分成更小的变换块;确定用于表示第一分裂旗标的经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值;使用上下文自适应二进制算术译码(CABAC)基于所确定的上下文对表示第一旗标的值的数据进行熵解码和基于第一分裂旗标的值重建视频数据。如上所述,第二分裂旗标的值直接映射用于第一分裂旗标的上下文,或提供一个可以从中导出用于第一分裂旗标的上下文的映射。
[0117]在一个或多个实例中,所描述的功能可以用硬件、软件、固件或其任何组合来实施。如果用软件实施,则所述功能可作为一个或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包含任何促进将计算机程序从一处传送到另一处的媒体(例如,根据一种通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(I)有形计算机可读存储媒体,其是非暂时形的,或(2)通信媒体,例如信号或载波。数据存储媒体可以是可由一个或多个计算机或一个或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用的媒体。计算机程序产品可包含计算机可读媒体。
[0118]借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或任何其它可用来存储指令或数据结构的形式的期望程序代码并且可由计算机存取的媒体。而且,恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。然而,应理解,计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
[0119]指令可以由一个或多个处理器执行,所述一个或多个处理器例如是一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构中的任一者或适合于实施本文中所描述的技术的任一其它结构。另外,在一些方面中,本文所述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一个或多个电路或逻辑元件中。
[0120]本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示的技术的装置的功能方面,但未必需要通过不同硬件单元实现。实际上,如上文所描述,各种单元可以配合合适的软件和/或固件组合在一个编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一个或多个处理器。
[0121]已经描述各种实例。这些和其它实例在所附权利要求书的范围内。
【权利要求】
1.一种对视频数据进行解码的方法,所述方法包含: 接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块; 确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码;以及 基于所述第一分裂旗标的所述值重建视频数据。
2.根据权利要求1所述的方法,其进一步包括至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
3.根据权利要求1所述的方法,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
4.根据权利要求1所述的方法,其中视频数据的所述第二分量是视频数据的第二色度分量。
5.根据权利要求1所述的方法,其中视频数据的所述第二分量是视频数据的亮度分 量。
6.根据权利要求5所述的方法,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
7.根据权利要求1所述的方法,其中重建视频数据包含对变换块执行逆变换以产生用于视频数据的所述第一色度分量的对应残余值。
8.一种包括一个或多个处理器的视频解码装置,所述一个或多个处理器经配置以: 接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块; 确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码;以及 基于所述第一分裂旗标的所述值重建视频数据。
9.根据权利要求8所述的视频解码装置,其中所述一个或多个处理器进一步经配置以至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
10.根据权利要求8所述的视频解码装置,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
11.根据权利要求8所述的视频解码装置,其中视频数据的所述第二分量是视频数据的第二色度分量。
12.根据权利要求8所述的视频解码装置,其中视频数据的所述第二分量是视频数据的亮度分量。
13.根据权利要求12所述的视频解码装置,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
14.根据权利要求8所述的视频解码装置,其中重建视频数据包含对变换块执行逆变换以产生用于视频数据的所述第一色度分量的对应残余值。
15.根据权利要求8所述的视频解码装置,其中所述视频解码装置包括以下各者中的至少一者: 集成电路; 微处理器;以及 无线通信装置。
16.一种非暂时计算机可读媒体,其包括存储在其上的指令,所述指令在被执行时致使用于对视频数据进行解码的装置的一个或多个处理器: 接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块; 确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码;以及 基于所述第一分裂旗标的所述值重建视频数据。
17.根据权利要求16所述的非暂时计算机可读媒体,其中所述指令进一步致使所述一个或多个处理器至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
18.根据权利要求16所述的非暂时计算机可读媒体,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
19.根据权利要求16所述的非暂时计算机可读媒体,其中视频数据的所述第二分量是视频数据的第二色度分量。
20.根据权利要求16所述的非暂时计算机可读媒体,其中视频数据的所述第二分量是视频数据的亮度分量。
21.根据权利要求20所述的非暂时计算机可读媒体,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
22.根据权利要求16所述的非暂时计算机可读媒体,其中重建视频数据包含对变换块执行逆变换以产生用于视频数据的所述第一色度分量的对应残余值。
23.一种用于对视频数据进行解码的设备,其包括: 用于接收表示与用于视频数据的第一色度分量的变换系数阵列相关联的第一分裂旗标的值的经熵编码数据的装置,其中所述第一分裂旗标的所述值指示用于所述第一色度分量的所述变换系数阵列是否划分成更小的变换块;用于确定用于表示所述第一分裂旗标的所述经熵编码数据的上下文的装置,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 用于使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对表示所述第一旗标的所述值的所述数据进行熵解码的装置;以及 用于基于所述第一分裂旗标的所述值重建视频数据的装置。
24.一种对视频数据进行编码的方法,所述方法包括: 产生第一分裂旗标,其中所述第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块; 确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及 输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
25.根据权利要求24所述的方法,其进一步包括至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于 视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
26.根据权利要求24所述的方法,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
27.根据权利要求24所述的方法,其中视频数据的所述第二分量是视频数据的第二色度分量。
28.根据权利要求24所述的方法,其中视频数据的所述第二分量是视频数据的亮度分量。
29.根据权利要求28所述的方法,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
30.一种包括一个或多个处理器的视频编码装置,所述一个或多个处理器经配置以: 产生第一分裂旗标,其中所述第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块; 确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及 输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
31.根据权利要求30所述的视频编码装置,其中所述一个或多个处理器进一步经配置以至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
32.根据权利要求30所述的视频编码装置,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
33.根据权利要求30所述的视频编码装置,其中视频数据的所述第二分量是视频数据的第二色度分量。
34.根据权利要求30所述的视频编码装置,其中视频数据的所述第二分量是视频数据的亮度分量。
35.根据权利要求34所述的视频编码装置,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
36.根据权利要求30所述的视频编码装置,其中所述视频解码装置包括以下各者中的至少一者: 集成电路; 微处理器;以及 无线通信装置。
37.一种非暂时计算机可读媒体,其包括存储在其上的指令,所述指令在被执行时致使用于对视频数据进行编码的装置的一个或多个处理器: 产生第一分裂旗标,其中所述第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块; 确定用于所述第一分裂旗标的上下文,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵 列相关联的第二分裂旗标的值; 使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对所述第一分裂旗标进行熵编码;以及 输出表示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分。
38.根据权利要求37所述的非暂时计算机可读媒体,其中所述指令进一步致使所述一个或多个处理器至少部分基于与所述视频数据相关联的块大小、图片类型、块分区或运动信息中的一者确定所述第一分裂旗标的所述值是否进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
39.根据权利要求37所述的非暂时计算机可读媒体,其中所述第一分裂旗标的所述值进一步指示用于视频数据的第二色度分量的对应变换系数阵列是否划分成更小的变换块。
40.根据权利要求37所述的非暂时计算机可读媒体,其中视频数据的所述第二分量是视频数据的第二色度分量。
41.根据权利要求37所述的非暂时计算机可读媒体,其中视频数据的所述第二分量是视频数据的亮度分量。
42.根据权利要求41所述的非暂时计算机可读媒体,其中所述上下文进一步至少部分基于与用于视频数据的第二色度分量的变换系数阵列相关联的第三分裂旗标的值。
43.一种用于对视频数据进行编码的设备,其包括: 用于产生第一分裂旗标的装置,其中所述第一分裂旗标的值指示用于视频数据的第一色度分量的变换系数阵列是否划分成更小的变换块; 用于确定用于所述第一分裂旗标的上下文的装置,其中所述上下文至少部分基于与用于视频数据的第二分量的变换系数阵列相关联的第二分裂旗标的值; 用于使用上下文自适应二进制算术译码CABAC基于所述所确定的上下文对所述第一分裂旗标进行熵编码的装置;以及用于输出表 示所述第一分裂旗标的所述值的经熵编码数据作为位流的一部分的装置。
【文档编号】H04N19/463GK104081777SQ201380006946
【公开日】2014年10月1日 申请日期:2013年1月24日 优先权日:2012年1月30日
【发明者】郭立威, 翔林·王, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1