对视频进行编码和解码的方法和设备与流程

文档序号:16168763发布日期:2018-12-07 21:47阅读:324来源:国知局
对视频进行编码和解码的方法和设备与流程

技术领域

示例性实施例涉及对视频进行编码和解码。



背景技术:

随着用于再现和存储高清晰度或高质量视频内容的硬件的发展,对有效地对高清晰度或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。在传统视频编解码器中,基于具有预定尺寸的宏块根据有限的编码方法来对视频进行编码。

在视频编解码器中,编码的块模式用于表示是否发送块的变换系数。块的纹理涉及块是否包括非0的变换系数。因此,编码的块模式表示关于块的纹理的特征。



技术实现要素:

技术问题

示例性实施例提供通过使用模式信息对视频的编码和解码,其中,所述模式信息在分层结构的编码单元和数据单元中被设置并被读取。

解决方案

根据示例性实施例,使用分层数据单元的模式信息对视频进行编码的方法包括:将画面划分为作为所述画面被编码的具有最大尺寸的编码数据单元的至少一个最大编码单元,所述最大编码单元包括小于作为所述画面被编码的数据单元的最大编码单元的编码单元;根据指示最大编码单元被划分以获得编码单元的次数的编码单元的深度对编码单元进行编码并将其变换为变换单元;确定发生对画面进行编码的最小编码误差的编码深度;确定已确定的编码深度的编码单元;确定关于包括关于与确定的编码单元相应的变换单元的尺寸的信息的确定的编码深度的每个编码单元的编码模式;输出模式信息、关于确定的编码模式的信息以及关于确定的编码单元的最大尺寸的信息,所述模式信息指示纹理相关的信息是否基于至少一个最大编码单元、确定的编码单元和变换单元的分层结构被编码,其中,所述变换单元相应于根据确定的编码模式的确定的编码单元,其中,所述画面根据深度被分层地划分为至少一个最大编码单元和编码单元,并且所述编码单元根据深度被独立地划分。

有益效果

通过基于考虑当前画面的特征确定的最大编码单元的尺寸和最大深度针对每个最大编码单元确定具有最佳形状和最佳尺寸的编码单元来形成具有树形结构的编码单元。另外,由于可通过使用多种预测模式和变换中的任意一个对每个最大编码单元执行编码,因此可考虑多种图像尺寸的编码单元的特征来确定最佳编码模式。

分层数据单元的模式信息被确定并被使用,将被施加到模式信息的数据单元基于编码单元模式信息的密度被选择性地确定,从而增加比特流的传输效率。

附图说明

图1是根据示例性实施例的用于对视频进行编码的设备的框图;

图2是根据示例性实施例的用于对视频进行解码的设备的框图;

图3是用于描述根据示例性实施例的编码单元的概念的示图;

图4是根据示例性实施例的基于编码单元的图像编码器的框图;

图5是根据示例性实施例的基于编码单元的图像解码器的框图;

图6是示出根据示例性实施例的根据多个深度的多个更深编码单元和多个分区的示图;

图7是用于描述根据示例性实施例的编码单元和变换单元之间的关系的示图;

图8是用于描述根据示例性实施例的与编码深度相应的多个编码单元的编码信息的示图;

图9是根据示例性实施例的根据深度的更深编码单元的示图;

图10、图11和图12是用于描述根据示例性实施例的编码单元、预测单元和变换单元之间的关系的示图;

图13是用于描述根据表1中的示例性实施例的编码模式信息的编码单元、预测单元或分区、和变换单元之间的关系的示图;

图14是示出根据示例性实施例的对视频进行编码的方法的流程图;

图15是示出根据示例性实施例的对视频进行解码的方法的流程图;

图16是根据示例性实施例的使用分层数据单元的模式信息的视频编码设备的框图;

图17是根据示例性实施例的使用分层数据单元的模式信息的视频解码设备的框图;

图18示出根据示例性实施例的最大编码单元和编码深度的编码单元的分层结构;

图19、图20a-图20b和图21a-图21c是根据示例性实施例的使用组模式信息的编码处理的流程图;

图22和图23是用于对根据示例性实施例的用于对分层数据单元模式信息进行编码的处理和对单个等级模式信息进行编码的处理进行比较的示图;

图24是用于描述根据示例性实施例的反转模式信息的概念的示图;

图25是根据示例性实施例的用于对密度模式信息进行编码的处理的流程图;

图26是示出根据示例性实施例的用于对变换索引和模式信息进行解码的处理的流程图;

图27是示出根据示例性实施例的使用分层数据单元的模式信息的视频编码方法的流程图;

图28是示出根据示例性实施例的使用分层数据单元的模式信息的视频解码方法的流程图。

最佳模式

根据示例性实施例,使用分层数据单元的模式信息对视频进行编码的方法包括以下步骤:将画面划分为作为所述画面被编码的具有最大尺寸的编码数据单元的至少一个最大编码单元,所述最大编码单元包括小于作为所述画面被编码的数据单元的最大编码单元的编码单元;根据指示最大编码单元被划分以获得编码单元的次数的编码单元的深度对编码单元进行编码并将其变换为变换单元;确定发生对画面进行编码的最小编码误差的编码深度;确定已确定的编码深度的编码单元;确定关于包括关于与确定的编码单元相应的变换单元的尺寸的信息的确定的编码深度的每个编码单元的编码模式;输出模式信息、关于确定的编码模式的信息以及关于确定的编码单元的最大尺寸的信息,所述模式信息指示纹理相关的信息是否基于至少一个最大编码单元、确定的编码单元和变换单元的分层结构被编码,其中,所述变换单元相应于根据确定的编码模式的确定的编码单元,其中,所述画面根据深度被分层地划分为至少一个最大编码单元和编码单元,并且所述编码单元根据深度被独立地划分。

所述模式信息可包括分层编码单元模式信息,所述分层编码单元模式信息指示更低的变换深度的变换单元的纹理相关的信息和编码单元模式信息是否从最大编码单元的编码深度的编码单元到至少一个变换单元分层地被编码。

模式信息还可包括最大编码单元模式信息,最大编码单元模式信息指示最大编码单元的纹理相关的信息是否被编码。

当最大编码单元模式信息被设置以对最大编码单元的纹理相关的信息进行编码时,针对最大编码单元的编码深度的编码单元的分层编码单元模式信息被设置。

分层编码单元模式信息可被设置直到最大编码单元的编码深度的编码单元中的每个编码单元达到变换深度的变换单元。

根据示例性实施例的另一方面,一种使用分层数据单元的模式信息对视频进行解码的方法包括以下步骤:接收编码的画面的比特流并对所述比特流进行解析;从解析的比特流提取关于作为画面被编码的数据单元的编码单元的最大尺寸的信息、关于编码深度的多个编码单元中的一个编码单元的编码模式的信息以及模式信息,其中,所述模式信息指示纹理相关的信息是否基于作为具有最大尺寸的画面被编码的编码数据单元的至少一个最大编码单元、编码深度的编码单元中的编码单元以及与所述编码单元相应的变换单元的分层结构被编码,并且基于关于编码模式的信息和模式信息从解析的比特流提取针对至少一个最大编码单元进行编码的视频数据;基于关于编码单元的最大尺寸的信息和关于编码模式的信息对针对编码深度的编码单元和变换单元进行编码的视频数据进行解码,其中,画面根据深度被分层地划分为至少一个最大编码单元和编码单元,并且编码单元根据编码深度被独立地划分。

所述提取的步骤可包括:基于分层编码单元模式信息确定是否分层地从最大编码单元的编码深度的编码单元到至少一个变换单元提取更低变换深度的变换单元的纹理相关的信息和编码单元模式信息。

所述提取的步骤还可包括:基于最大编码单元模式信息确定是否提取最大编码单元的纹理相关的信息。

所述提取的步骤还可包括:基于最大编码单元模式信息确定是否提取最大编码单元的编码深度的分层编码单元模式信息。

根据示例性实施例的另一方面,提供了一种使用分层数据单元的模式信息的视频编码设备,所述设备包括:最大编码单元划分器,将画面划分为作为所述画面被编码的具有最大尺寸的编码数据单元的至少一个最大编码单元,最大编码单元包括小于作为画面被编码的数据单元的最大编码单元的编码单元;编码单元和编码模式确定器,根据指示最大编码单元被划分以获得编码单元的次数的编码单元的深度对编码单元进行编码并将其转换为变换单元,确定发生对画面进行编码的最小编码误差的编码深度,确定已确定的编码深度的编码单元;确定关于包括关于与确定的编码单元相应的变换单元的尺寸的信息的确定的编码深度的每个编码单元的编码模式;输出单元,输出模式信息、关于确定的编码模式的信息以及关于确定的编码单元的最大尺寸的信息,所述模式信息指示纹理相关的信息是否基于至少一个最大编码单元、确定的编码单元和变换单元的分层结构被编码,其中,所述变换单元相应于根据确定的编码模式的确定的编码单元,其中,画面根据深度被分层地划分为至少一个最大编码单元和编码单元,并且所述编码单元根据深度被独立地划分。

根据示例性实施例的另一方面,提供了一种使用分层数据单元的模式信息的视频解码设备,所述设备包括:接收器,接收编码的画面的比特流并对所述比特流进行解析;数据提取器,从解析的比特流提取关于作为画面被编码的数据单元的编码单元的最大尺寸的信息、关于编码深度的多个编码单元中的一个编码单元的编码模式的信息以及模式信息,其中,所述模式信息指示纹理相关的信息是否基于作为具有最大尺寸的画面被编码的编码数据单元的至少一个最大编码单元、编码深度的多个编码单元中的编码单元以及与所述编码单元相应的变换单元的分层结构被编码,并且基于关于编码模式的信息和模式信息从解析的比特流提取针对至少一个最大编码单元进行编码的视频数据;解码器,基于关于编码单元的最大尺寸的信息和关于编码模式的信息对针对编码深度的编码单元和变换单元编码的视频数据进行解码,其中,画面根据深度被分层地划分为至少一个最大编码单元和编码单元,并且编码单元根据编码深度被独立地划分。

根据示例性实施例的另一方面,提供了一种记录有用于执行使用分层数据单元的模式信息的视频编码方法的程序的计算机可读记录介质。

根据示例性实施例的另一方面,提供了一种记录有用于执行使用分层数据单元的模式信息的视频编码方法的程序的计算机可读记录介质。

具体实施方式

以下,将参照示例性实施例被示出的附图更全面地描述示例性实施例。如全文中使用的,术语“单位”根据其上下文可指尺寸单位,也可不指尺寸单位。

以下,根据示例性实施例,“编码单元”是编码数据单元和已编码的数据单元,其中,在所述编码数据单元中在编码器侧(例如,包括处理器和编码器的编码设备)对图像数据进行编码,其中,在所述已编码的数据单元中在解码器侧(例如,包括处理器和解码器的解码设备)对已编码的图像数据进行解码。此外,“编码深度”是指对编码单元进行编码的深度。

以下,“图像”可表示视频的静止图像或运动图像(即,视频本身)。

将参照图1到图15描述根据示例性实施例的基于空间分层的数据单元对视频的编码和解码,并且将参照图16到图28描述根据示例性实施例的通过使用分层数据单元的模式信息对视频的编码和解码。

图1是根据示例性实施例的视频编码设备100的框图。

视频编码设备100包括最大编码单元划分器110、编码单元确定器120和输出单元130。

最大编码单元划分器110可基于图像的当前画面的最大编码单元来划分所述当前画面。如果当前画面大于最大编码单元,则当前画面的图像数据可被划分为至少一个最大编码单元。根据示例性实施例的最大编码单元可以是具有尺寸为32×32、64×64、128×128、256×256等的数据单元,其中,数据单元的形状是宽度和长度为2的平方的正方形。图像数据可根据至少一个最大编码单元被输出到编码单元确定器120。

根据示例性实施例的编码单元可由最大尺寸和深度来表征。深度表示从最大编码单元空间划分编码单元的次数,并且随着深度的加深或增加,可从最大编码单元到最小编码单元划分根据深度的更深的编码单元。最大编码单元的深度是最高深度,最小编码单元的深度是最低深度。由于随着最大编码单元的深度加深,与每个深度相应的编码单元的尺寸减小,因此,与更高的深度相应的编码单元可包括多个与更低的深度相应的编码单元。

如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为最大编码单元,并且最大编码单元中的每个可包括根据深度被划分的更深的编码单元。由于根据示例性实施例的最大编码单元根据深度被划分,因此包括在最大编码单元中的空间域的图像数据可根据深度被分层地分类。

编码单元的最大深度和最大尺寸可被预定,其中,编码单元的最大深度和最大尺寸限制最大编码单元的高度和宽度可被分层地划分的总次数。

编码单元确定器120对通过根据深度划分最大编码单元的区域而获得的至少一个划分区域进行编码,并根据所述至少一个划分区域确定用于最终输出编码图像数据的深度。换句话说,编码单元确定器120通过基于当前画面的最大编码单元对根据深度的更深编码单元中的图像数据进行编码来确定编码深度,并选择具有最小编码误差的深度。因此,与确定的编码深度相应的编码单元的已编码的图像数据被最终输出。另外,与编码深度相应的编码单元可被看作已编码的编码单元。

确定的编码深度和根据确定的编码深度的编码图像数据被输出到输出单元130。

基于与等于或低于最大深度的至少一个深度相应的更深的编码单元对最大编码单元中的图像数据进行编码,并且基于更深的编码单元中的每个对图像数据进行编码的结果进行比较。在将更深的编码单元的编码误差进行比较之后,具有最小编码误差的深度可被选择。可对每个最大编码单元选择至少一个编码深度。

随着编码单元根据深度被分层地划分,并且随着编码单元的数量增加,最大编码单元的尺寸被划分。另外,即使在一个最大编码单元中多个编码单元相应于相同深度,也通过单独地测量每个编码单元的图像数据的编码误差来确定是否将与相同深度相应的编码单元中的每一个划分至更低的深度。因此,即使当图像数据被包括在一个最大编码单元中时,图像数据也根据多个深度被划分为多个区域,在一个最大编码单元中编码误差可根据区域而不同,因此编码深度可根据图像数据中的区域而不同。因此,在一个最大编码单元中可确定一个或多个编码深度,并且可根据至少一个编码深度的编码单元来划分最大编码单元的图像数据。

因此,编码单元确定器120可确定包括在最大编码单元中具有树形结构的编码单元。根据示例性实施例的“具有树形结构的编码单元”包括最大编码单元中所包括的所有更深的编码单元中与确定为编码深度的深度相应的编码单元。在最大编码单元的相同区域中,编码深度的编码单元可根据深度被分层地确定,在不同的区域中,编码深度的编码单元可被独立地确定。类似地,当前区域中的编码深度可独立于另一区域中的编码深度被确定。

根据示例性实施例的最大深度是与图像数据从最大编码单元到最小编码单元被划分的次数相关的索引。根据示例性实施例的第一最大深度可表示图像数据从最大编码单元到最小编码单元被划分的总次数。根据示例性实施例的第二最大深度可表示从最大编码单元到最小编码单元的深度级的总数。例如,当最大编码单元的深度是0时,最大编码单元被划分一次的编码单元的深度可被设置为1,最大编码单元被划分两次的编码单元的深度可被设置为2。这里,如果最小编码单元是最大编码单元被划分四次的编码单元,则存在深度为0、1、2、3和4的5个深度级,因此,第一最大深度可被设置为4,第二最大深度可被设置为5。

可根据最大编码单元执行预测编码和变换。还可根据最大编码单元,基于根据等于最大深度的深度或小于最大深度的多个深度的更深编码单元来执行预测编码和变换。可根据正交变换或整数变换的方法来执行变换。

由于每当最大编码单元根据深度被划分时,更深的编码单元的数量增加,因此对由于深度的加深而产生的所有的更深的编码单元执行编码(包括预测编码和变换)。为了描述方便,将在最大编码单元中基于当前深度的编码单元来描述预测编码和变换。

视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行多个操作(诸如,预测编码、变换和熵编码)。可针对所有操作使用相同的数据单元,或者可针对每个操作使用不同的数据单元。

例如,视频编码设备100不仅可选择用于对图像数据进行编码的编码单元,还可选择与该编码单元不同的数据单元,以便对编码单元中的图像数据执行预测编码。

为了在最大编码单元中执行预测编码,可基于与编码深度相应的编码单元(即,基于不再被划分为与更低深度相应的多个编码单元的编码单元)执行预测编码。以下,不再被划分并且变为用于预测编码的基本单元的编码单元将被称为“预测单元”。通过划分预测单元而获得的分区(partition)可包括:通过划分预测单元的高度和宽度中的至少一个而获得的预测单元或数据单元。

例如,当2N×2N(其中,N是正整数)的编码单元不再被划分并且变为2N×2N的预测单元时,分区的尺寸可以是2N×2N、2N×N、N×2N或N×N。分区类型的示例包括通过对预测单元的高度或宽度进行对称划分而获得的对称分区、通过对预测单元的高度或宽度进行不对称划分(诸如,1:n或n:1比率)而获得的分区、通过对预测单元进行几何划分而获得的分区以及具有任意形状的分区。

预测单元的预测模式可以是帧内模式、帧间模式和跳过模式中的至少一个。例如,可对2N×2N、2N×N、N×2N或N×N的分区执行帧内模式或帧间模式。另外,可仅对2N×2N的分区执行跳过模式。对编码单元中的一个预测单元独立地执行编码,从而选择具有最小编码误差的预测模式。

视频编码设备100还可基于用于对图像数据进行编码的编码单元以及基于与该编码单元不同的数据单元,对编码单元中的图像数据执行变换。

为了在编码单元中执行变换,可基于具有小于或等于编码单元的尺寸的数据单元来执行变换。例如,用于变换的数据单元可包括用于帧内模式的数据单元以及用于帧间模式的数据单元。

用作变换的基础的数据单元将被称为“变换单元”。还可在变换单元中设置指示通过将编码单元的高度和宽度进行划分而达到变换单元的划分次数的变换深度。例如,在2N×2N的当前编码单元中,当变换单元的尺寸也是2N×2N时,变换深度可以是0,在当前编码单元的高度和深度中的每一个被划分为两等份(总共被划分为41个变换单元)时,变换深度可以是1,并且变换单元的尺寸因此是N×N,在当前编码单元的高度和深度中的每一个被划分为四等份(总共被划分为42个变换单元)时,变换深度可以是2,并且变换单元的尺寸因此是N/2×N/2。例如,可根据分层树形结构来设置变换单元,在分层树形结构中,更高变换深度的变换单元根据变换深度的分层特性被划分为更低变换深度的四个变换单元。

与编码单元类似,编码单元中的变换单元可被递归地划分为更小尺寸的区域,从而可以以区域为单位独立地确定变换单元。因此,可根据具有根据变换深度的树形结构的变换,来划分编码单元中的残差数据。

根据与编码深度相应的编码单元的编码信息不仅需要关于编码深度的信息,还需要与预测编码和变换相关的信息。因此,编码单元确定器120不仅确定具有最小编码误差的编码深度,还确定预测单元中的分区类型、根据预测单元的预测模式以及用于变换的变换单元的尺寸。

稍后将参照图3至图12来详细地描述根据示例性实施例的最大编码单元中的根据树形结构的编码单元以及确定分区的方法。

编码单元确定器120可通过使用基于拉格朗日乘子(Lagrangian multiplier)的率失真优化来测量根据深度的更深的编码单元的编码误差。

输出单元130在比特流中输出最大编码单元的图像数据以及关于根据编码深度的编码模式的信息,其中,所述图像数据基于由编码单元确定器120确定的至少一个编码深度被编码。

可通过对图像的残差数据进行编码来获得编码图像数据。

关于根据编码深度的编码模式的信息可包括关于以下内容的信息:编码深度、预测单元中的分区类型、预测模式以及变换单元的尺寸。

可通过使用根据深度的划分信息来定义关于编码深度的信息,划分信息指示是否针对更低深度而非当前深度的编码单元来执行编码。如果当前编码单元的当前深度是编码深度,则当前编码单元中的图像数据被编码和输出,因此划分信息可被定义为不将当前编码单元划分为更低深度。可选择地,如果当前编码单元的当前深度不是编码深度,则对更低深度的编码单元执行编码,因此划分信息可被定义为划分当前编码单元以获得更低深度的编码单元。

如果当前深度不是编码深度,则对被划分为更低深度的编码单元的编码单元执行编码。由于更低深度的至少一个编码单元存在于当前深度的一个编码单元中,对更低深度的每个编码单元重复地执行编码,因此可对具有相同深度的编码单元递归地执行编码。

由于对一个最大编码单元确定具有树形结构的编码单元,并且对编码深度的编码单元确定关于至少一个编码模式的信息,因此可对一个最大编码单元确定关于至少一个编码模式的信息。另外,由于图像数据根据深度被分层地划分,因此,最大编码单元的图像数据的编码深度可根据位置而不同,从而可对图像数据设置关于编码深度以及编码模式的信息。

因此,输出单元130可将关于相应编码深度和编码模式的编码信息分配给包括在最大编码单元中的编码单元、预测单元和最小单元中的至少一个。

根据示例性实施例的最小单元是对构成最低深度的最小编码单元进行划分4次而获得的矩形数据单元。可选择地,最小单元可以是最大矩形数据单元,最大矩形数据单元可被包括在最大编码单元中所包括的所有编码单元、预测单元、分区单元和变换单元中。

例如,通过输出单元130输出的编码信息可被分类为根据编码单元的编码信息以及根据预测单元的编码信息。根据编码单元的编码信息可包括关于预测模式的信息以及关于分区的尺寸的信息。根据预测单元的编码信息可包括关于以下内容的信息:帧间模式的估计方向、帧间模式的参考图像索引、运动矢量、帧内模式的色度分量以及帧内模式的插值方法。另外,关于根据画面、像条或GOP定义的编码单元的最大尺寸的信息以及关于最大深度的信息可被插入到比特流的序列参数集(SPS)或头。

在视频编码设备100中,更深的编码单元可以是通过将作为上一层的更高深度的编码单元的高度或宽度划分两个而获得的编码单元。换句话说,在当前深度的编码单元的尺寸是2N×2N时,更低深度的编码单元的尺寸是N×N。另外,具有2N×2N的尺寸的当前深度的编码单元可包括最多4个更低深度的编码单元。

因此,视频编码设备100可通过基于考虑当前画面的特性所确定的最大编码单元的尺寸和最大深度,针对每个最大编码单元确定具有最佳形状和最佳尺寸的编码单元,来形成具有树形结构的编码单元。另外,由于通过使用各种预测模式和变换中的任何一个对每个最大编码单元执行编码,因此可考虑各种图像尺寸的编码单元的特性来确定最佳编码模式。

如果以传统宏块对具有高清晰度的图像或者大量的数据进行编码,则每个画面的宏块的数量过度地增加。因此,对每个宏块产生的压缩信息的条数增加,因此难以发送压缩的信息并且数据压缩效率减小。然而,通过使用视频编码设备100,由于在考虑图像的特征的同时调整编码单元并且在考虑图像的尺寸的同时增加编码单元的最大尺寸,因此可提高图像压缩效率。

图2是根据示例性实施例的视频解码设备200的框图。

视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。用于视频解码设备200的各种操作的各种术语(诸如,编码单元、深度、预测单元、变换单元)的定义和关于各种编码模式的信息与以上参照图1和视频编码设备100描述的那些定义和信息一致。

接收器210接收编码视频的比特流并对该比特流进行解析。图像数据和编码信息提取器220从解析的比特流提取用于每个编码单元的编码图像数据,并且将提取的图像数据输出到图像数据解码器230,其中,编码单元具有根据每个最大编码单元的树形结构。图像数据和编码信息提取器220可从关于当前画面的头或者SPS提取关于当前画面的编码单元的最大尺寸的信息。

另外,图像数据和编码信息提取器220从解析的比特流提取关于根据每个最大编码单元的用于具有树形结构的编码单元的编码深度以及编码模式的信息。提取的关于编码深度和编码模式的信息被输出到图像数据解码器230。换句话说,比特流中的图像数据被划分为最大编码单元,从而图像数据解码器230针对每个最大编码单元对图像数据进行解码。

可针对关于与编码深度相应的至少一个编码单元的信息来设置关于根据最大编码单元的编码深度和编码模式的信息,并且关于编码模式的信息可包括关于以下内容中的信息:与编码深度相应的相应编码单元的分区类型、预测模式以及变换单元的尺寸。另外,根据深度的划分信息可被提取作为关于编码深度的信息。

由图像数据和编码信息提取器220提取的关于根据每个最大编码单元的编码深度和编码模式的信息是关于这样的编码深度和编码模式的信息:所述编码深度和编码模式被确定用于当编码器(诸如,视频编码设备100)根据每个最大编码单元针对根据深度的每个更深编码单元重复执行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的编码深度和编码模式对图像数据进行解码来恢复图像。

由于关于编码深度和编码模式的编码信息可被分配给来自相应编码单元、预测单元以及最小单元中的预定数据单元,因此,图像数据和编码信息提取器220可根据预定数据单元提取关于编码深度和编码模式的信息。被分配有相同的关于编码深度和编码模式的信息的预定数据单元可指包括在相同的最大编码单元中的数据单元。

图像数据解码器230通过基于关于根据最大编码单元的编码深度和编码模式的信息对每个最大编码单元中的图像数据进行解码来恢复当前画面。换句话说,图像数据解码器230可基于提取的关于来自包括在每个最大编码单元中的具有树形结构的编码单元的每个编码单元的分区类型、预测模式和变换单元的信息来对编码图像数据进行解码。解码处理可包括预测(所述预测包括帧内预测和运动补偿)和反变换。可根据反正交变换或反整数变换的方法来执行反变换。

图像数据解码器230可基于关于根据编码深度的编码单元的预测单元的分区类型以及预测模式的信息,根据每个编码单元的分区和预测模式来执行帧内预测或运动补偿。

另外,图像数据解码器230可基于关于根据编码深度的编码单元的变换单元的尺寸的信息,根据编码单元中的每个变换单元来执行反变换,从而根据最大编码单元执行反变换。

图像数据解码器230可通过使用根据深度的划分信息来确定当前最大编码单元的至少一个编码深度。如果划分信息指示图像数据在当前深度中不再被划分,则当前深度是编码深度。因此,图像数据解码器230可通过使用关于与编码深度相应的每个编码单元的预测单元的的分区类型、预测模式以及变换单元的尺寸的信息,来对当前最大编码单元中与每个编码深度相应的至少一个编码单元的编码数据进行解码,并且输出当前最大编码单元的图像数据。

换句话说,可通过观察为编码单元、预测单元和最小单元中的预定数据单元分配的编码信息集,来收集包括包含相同划分信息的编码信息的数据单元,收集的数据单元可被认为是将由图像数据解码器230以相同的编码模式进行解码的一个数据单元。

视频解码设备200可获得关于当针对每个最大编码单元递归执行编码时产生最小编码误差的至少一个编码单元的信息,并可使用所述信息来对当前画面进行解码。换句话说,可对每个最大编码单元中被确定为最佳编码单元的具有树形结构的编码单元进行解码。另外,考虑图像数据的分辨率和图像数据的量来确定编码单元的最大尺寸。

因此,即使图像数据具有高分辨率和大数据量,也可通过使用根据图像数据的特征来自适应地确定的编码单元的尺寸和编码模式以及通过使用从编码器接收的关于最佳编码模式的信息来对图像数据进行有效地解码和恢复。

现在将参照图3至图13对根据示例性实施例的确定具有树形结构的编码单元、预测单元和变换单元的方法进行描述。

图3是用于描述根据示例性实施例的编码单元的概念的示图。

编码单元的尺寸可按照宽度×高度来表达,并可以是64×64、32×32、16×16和8×8。64×64的编码单元可被划分为64×64、64×32、32×64或32×32的分区,32×32的编码单元可被划分为32×32、32×16、16×32或16×16的分区,16×16的编码单元可被划分为16×16、16×8、8×16或8×8的分区,8×8的编码单元可被划分为8×8、8×4、4×8或4×4的分区。

在视频数据310中,分辨率是1920×1080,编码单元的最大尺寸是64,并且最大深度是2。在视频数据320中,分辨率是1920×1080,编码单元的最大尺寸是64,并且最大深度是3。在视频数据330中,分辨率是352×288,编码单元的最大尺寸是16,并且最大深度是1。图3中示出的最大深度表示从最大编码单元到最小编码单元的划分总数。

如果分辨率高或者数据量大,则编码单元的最大尺寸可以为大以便不仅增加编码效率而且准确地反映图像的特性。因此,视频数据310和视频数据320的编码单元的最大尺寸可以是64,其中,视频数据310和视频数据320具有的分辨率高于视频数据330具有的分辨率。

因为由于视频数据310的最大深度是2而通过划分最大编码单元两次深度被加深到两层,所以视频数据310的编码单元315可包括具有长轴尺寸64的最大编码单元以及具有长轴尺寸32和16的编码单元。同时,因为由于视频数据330的最大深度是1通过划分最大编码单元一次深度被加深到一层,因此视频数据330的编码单元335可包括具有长轴尺寸16的最大编码单元以及具有长轴尺寸8的编码单元。

因为由于视频数据320的最大深度是3而通过划分最大编码单元三次深度被加深到3层,因此视频数据320的编码单元325可包括具有长轴尺寸64的最大编码单元以及具有长轴尺寸32、16和8的编码单元。随着深度的加深,可精确地表达详细的信息。

图4是根据示例性实施例的基于编码单元的图像编码器400的框图。

图像编码器400执行视频编码设备100的编码单元确定器120的操作以对图像数据进行编码。换句话说,帧内预测器410在帧内模式下对当前帧405中的编码单元执行帧内预测,运动估计器420和运动补偿器425在帧间模式下通过使用当前帧405和参考帧495对当前帧中的编码单元分别执行帧间估计和运动补偿。

从帧内预测器410、运动估计器420和运动补偿器425输出的数据通过变换器430和量化器440被输出为量化的变换系数。量化的变换系数通过反量化器460和反变换器470被恢复为空间域中的数据,并且恢复的空间域中的数据在通过去块单元480和环路滤波单元490被后处理之后被输出为参考帧495。量化的变换系数可通过熵编码器450被输出为比特流455。

为了使得图像编码器400被应用到视频编码设备100中,图像编码器400的所有元件(即,帧内预测器410、运动估计器420、运动补偿器425、变换器430、量化器440、熵编码器450、反量化器460、反变换器470、去块单元480和环路滤波单元490)在考虑每个最大编码单元的最大深度的同时,基于具有树形结构的多个编码单元中的每个编码单元执行操作。

具体地讲,帧内预测器410、运动估计器420和运动补偿器425在考虑当前最大编码单元的最大尺寸和最大深度的同时,确定具有树形结构的多个编码单元中的每个编码单元的分区和预测模式,并且变换器430确定具有树形结构的多个编码单元中的每个编码单元中的变换单元的尺寸。

图5是根据示例性实施例的基于编码单元的图像解码器500的框图。

解析器510对来自比特流505的将被解码的编码的图像数据以及解码所需的关于编码的信息进行解析。编码的图像数据通过熵解码器520和反量化器530作为反量化的数据被输出,并且反量化的数据通过反变换器540被恢复为空间域中的图像数据。

帧内预测器550对于空间域中的图像数据在帧内模式下对多个编码单元执行帧内预测,运动补偿器560通过使用参考帧585在帧间模式下对多个编码单元执行运动补偿。

经过帧内预测器550和运动补偿器560的空间域中的图像数据可在通过去块单元570和环路滤波单元580被后处理之后被输出为恢复的帧595。另外,经过去块单元570和环路滤波单元580被后处理的图像数据可被输出为参考帧585。

为了在视频解码设备200的图像数据解码器230中对图像数据进行解码,图像解码器500可执行在解析器510之后执行的操作。

为了使得图像解码器500被应用到视频解码设备200中,图像解码器500的所有元件(即,解析器510、熵解码器520、反量化器530、反变换器540、帧内预测器550、运动补偿器560、去块单元570和环路滤波单元580)对于每个最大编码单元基于具有树形结构的多个编码单元执行操作。

具体地讲,帧内预测器550和运动补偿器560对于具有树形结构的多个编码单元的每个基于分区和预测模式来执行操作,并且反变换器540对于每个编码单元基于变换单元的尺寸来执行操作。

图6是示出根据示例性实施例的根据多个深度的多个更深编码单元和多个分区的示图。

视频编码设备100和视频解码设备200使用多个分层的编码单元以考虑图像的特性。多个编码单元的最大高度、最大宽度和最大深度可根据图像的特性被自适应地确定,或者可由用户不同地设置。根据多个深度的多个更深编码单元的尺寸可根据编码单元的预定最大尺寸被确定。

在根据示例性实施例的多个编码单元的分层结构600中,多个编码单元的最大高度和最大宽度都是64,并且最大深度是4。由于深度沿着分层结构600的纵轴加深,因此更深编码单元的高度和宽度都被划分。另外,作为用于每个更深编码单元的预测编码的基础的预测单元和多个分区沿分层结构600的横轴被显示。

换句话说,编码单元610是分层结构600中的最大编码单元,其中,深度是0,尺寸(即,高度乘宽度)是64×64。深度沿纵轴加深,并且存在具有尺寸32×32和深度1的编码单元620、具有尺寸16×16和深度2的编码单元630、具有尺寸8×8和深度3的编码单元640以及具有尺寸4×4和深度4的编码单元650。具有尺寸4×4和深度4的编码单元650是最小编码单元。

编码单元的预测单元和多个分区根据每个深度沿横轴排列。换句话说,如果具有尺寸64×64和深度0的编码单元610是预测单元,则该预测单元可被划分为包括在编码单元610中的多个分区(即,具有尺寸64×64的分区610、具有尺寸64×32的多个分区612、具有尺寸32×64的多个分区614、或者具有尺寸32×32的多个分区616)。

类似地,具有尺寸32×32和深度1的编码单元620的预测单元可被划分为包括在编码单元620中的多个分区(即,具有尺寸32×32的分区620、具有尺寸32×16的多个分区622、具有尺寸16×32的多个分区624以及具有尺寸16×16的多个分区626)。

类似地,具有尺寸16×16和深度2的编码单元630的预测单元可被划分为包括在编码单元630中的多个分区(即,包括在编码单元630中的具有尺寸16×16的分区、具有尺寸16×8的多个分区632、具有尺寸8×16的多个分区634以及具有尺寸8×8的多个分区636)。

类似地,具有尺寸8×8和深度3的编码单元640的预测单元可被划分为包括在编码单元640中的多个分区(即,包括在编码单元640中的具有尺寸8×8的分区、具有尺寸8×4的多个分区642、具有尺寸4×8的多个分区644以及具有尺寸4×4的多个分区646)。

具有尺寸4×4和深度4的编码单元650是最小编码单元以及最低深度的编码单元。编码单元650的预测单元仅被分配给具有尺寸4×4的分区,而不是被划分为具有尺寸4×2的多个分区652、具有尺寸2×4的多个分区654以及具有尺寸2×2的多个分区656。

为了确定构成最大编码单元610的多个编码单元的至少一个编码深度,视频编码设备100的编码单元确定器120对包括在最大编码单元610中的与每个深度相应的编码单元执行编码。

随着深度的加深,包括相同范围中并且相同尺寸的数据的根据深度的更深编码单元的数量增加。例如,需要四个与深度2相应的编码单元来覆盖包括在一个与深度1相应的编码单元中的数据。因此,为了根据深度对相同数据的多个编码结果进行比较,与深度1相应的编码单元以及与深度2相应的四个编码单元都被编码。

为了对多个深度中的当前深度执行编码,沿分层结构600的横轴,通过对与当前深度相应的多个编码单元中的每个预测单元执行编码来对当前深度选择最小编码误差。可选择地,可通过随着深度沿分层结构600的纵轴加深,对每个深度执行编码,根据深度比较最小编码误差,来搜索最小编码误差。在编码单元610中的具有最小编码误差的深度和分区可被选作为编码单元610的编码深度和分区类型。

图7是用于描述根据示例性实施例的编码单元710和变换单元720之间的关系的示图。

视频编码设备100或视频解码设备200针对每个最大编码单元根据具有尺寸小于或等于最大编码单元的多个编码单元来对图像进行编码或解码。可基于不大于相应编码单元的多个数据单元来选择在编码期间用于变换的多个变换单元的多个尺寸。

例如,在视频编码设备100或视频解码设备200中,如果编码单元710的尺寸是64×64,则可通过使用具有尺寸32×32的多个变换单元720来执行变换。

另外,可通过对具有尺寸小于64×64的尺寸32×32、16×16、8×8和4×4的每个变换单元执行变换,来对具有尺寸64×64的编码单元710的数据进行编码,并且随后具有最小编码误差的变换单元可被选择。

图8是用于描述根据示例性实施例的与编码深度相应的多个编码单元的编码信息的示图。

视频编码设备100的输出单元130可将如下信息作为关于编码模式的信息进行编码和发送:关于分区类型的信息800、关于预测模式的信息810以及关于与编码深度相应的每个编码单元的变换单元的尺寸的信息820。

信息800指示关于通过划分当前编码单元的预测单元而获得的分区的形状的信息,其中,所述分区是用于对当前编码单元进行预测编码的数据单元。例如,具有尺寸2N×2N的当前编码单元CU_0可被划分为如下分区中的任何一个:具有尺寸2N×2N的分区802、具有尺寸2N×N的分区804、具有尺寸N×2N的分区806以及具有尺寸N×N的分区808。这里,关于分区类型的信息800被设置为指示如下分区中的一个:具有尺寸2N×N的分区804、具有尺寸N×2N的分区806以及具有尺寸N×N的分区808。

信息810指示每个分区的预测模式。例如,信息810可指示对由信息800指示的分区执行的预测编码的模式(即,帧内模式812、帧间模式814或跳过模式816)。

信息820指示当对当前编码单元执行变换时将被基于的变换单元。例如,变换单元可以是第一帧内变换单元822、第二帧内变换单元824、第一帧间变换单元826或第二帧内变换单元828。

视频解码设备200的图像数据和编码信息提取器220可根据每个更深编码单元来提取并使用用于解码的信息800、810和820。

图9是根据示例性实施例的根据深度的更深编码单元的示图。

划分信息可用于指示深度的改变。划分信息指示当前深度的编码单元是否被划分为更低深度的多个编码单元。

用于对深度0和尺寸2N_0×2N_0的编码单元900进行预测编码的预测单元910可包括如下分区类型的多个分区:具有尺寸2N_0×2N_0的分区类型912、具有尺寸2N_0×N_0的分区类型914、具有尺寸N_0×2N_0的分区类型916以及具有尺寸N_0×N_0的分区类型918。图9仅示出通过对预测单元910对称划分而获得的分区类型912至918,但是应该理解分区类型不限于此,并且预测单元910的多个分区可包括多个不对称分区、具有预定形状的多个分区以及具有几何形状的多个分区。

根据每个分区类型对如下分区重复地执行预测编码:具有尺寸2N_0×2N_0的一个分区、具有尺寸2N_0×N_0的两个分区、具有尺寸N_0×2N_0的两个分区以及具有尺寸N_0×N_0的四个分区。可对具有尺寸2N_0×2N_0、N_0×2N_0、2N_0×N_0以及N_0×N_0的多个分区执行帧内模式和帧间模式的预测编码。仅对具有尺寸2N_0×2N_0的分区执行跳过模式的预测编码。

包括以分区类型912至918的预测编码的编码误差被比较,并且在多个分区类型中确定最小编码误差。如果一编码误差在分区类型912至916之一中最小,则预测单元910可不被划分为更低深度。

如果该编码误差在分区类型918中最小,则在操作920,深度从0改变为1以划分分区类型918,并且对具有深度2和尺寸N_0×N_0的编码单元930重复地执行编码以搜索最小编码误差。

用于对具有深度1和尺寸2N_1×2N_1(=N_0×N_0)的编码单元930进行预测编码的预测单元940可包括如下分区类型的多个分区:具有尺寸2N_1×2N_1的分区类型942、具有尺寸2N_1×N_1的分区类型944、具有尺寸N_1×2N_1的分区类型946以及具有尺寸N_1×N_1的分区类型948。

如果编码误差在分区类型948中最小,则在操作950,深度从1改变为2以划分分区类型948,并且对具有深度2和尺寸N_2×N_2的编码单元960重复地执行编码以搜索最小编码误差。

当最大深度是d时,可执行根据每个深度的划分操作直到当深度变为d-1,并且划分信息可被编码直到当深度是0至d-2之一。换句话说,当执行编码直到在操作970与深度d-2相应的编码单元被划分之后深度是d-1时,用于对具有深度d-1和尺寸2N_(d-1)×2N_(d-1)的编码单元980进行预测编码的预测单元990可包括如下分区类型的多个分区:具有尺寸2N_(d-1)×2N_(d-1)的分区类型992、具有尺寸2N_(d-1)×N_(d-1)的分区类型994、具有尺寸N_(d-1)×2N_(d-1)的分区类型996以及具有尺寸N_(d-1)×N_(d-1)的分区类型998。

可对如下分区重复地执行预测编码:分区类型992至998中的具有尺寸2N_(d-1)×2N_(d-1)的一个分区、具有尺寸2N_(d-1)×N_(d-1)的两个分区、具有尺寸N_(d-1)×2N_(d-1)的两个分区、具有尺寸N_(d-1)×N_(d-1)的四个分区,以搜索具有最小编码误差的分区类型。

即使在分区类型998具有最小编码误差时,由于最大深度是d,因此具有深度d-1的编码单元CU_(d-1)不再被划分到更低深度,并且构成当前最大编码单元900的多个编码单元的编码深度被确定为d-1并且当前最大编码单元900的分区类型可被确定为N_(d-1)×N_(d-1)。另外,由于最大深度是d并且具有最低深度d-1的最小编码单元980不再被划分到更低深度,因此最小编码单元980的划分信息不被设置。

数据单元999可以是当前最大编码单元的“最小单元”。根据示例性实施例的最小单元可以是通过按照4划分最小编码单元980而获得的矩形数据单元。通过重复地执行编码,视频编码设备100可通过根据编码单元900的多个深度来比较多个编码误差来选择具有最小编码误差的深度以确定编码深度,并且将相应分区类型以及预测模式设置为编码深度的编码模式。

同样地,根据多个深度的多个最小编码误差在所有的深度1至d中被比较,并且具有最小编码误差的深度可被确定为编码深度。编码深度、预测单元的分区类型以及预测模式可被编码并作为关于编码模式的信息被发送。另外,由于编码单元从深度0到编码深度被划分,因此仅该编码深度的划分信息被设置0,除了编码深度之外的多个深度的划分信息被设置为1。

视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的编码深度以及预测单元的信息以对分区912进行解码。视频解码设备200可通过使用根据多个深度的划分信息来将划分信息是0的深度确定为编码深度,并且使用关于相应深度的编码模式的信息用于解码。

图10至图12是用于描述根据示例性实施例的多个编码单元1010、多个预测单元1060和多个变换单元1070之间的关系的示图。

图10中的多个编码单元1010是最大编码单元中的与由视频编码设备100确定的多个编码深度相应的具有树形结构的多个编码单元。图11中的多个预测单元1060是多个编码单元1010的每个的多个预测单元的多个分区,图12中的多个变换单元1070是多个编码单元1010的每个的多个变换单元。

当在多个编码单元1010中最大编码单元的深度是0时,多个编码单元1012和1054的深度是1,多个编码单元1014、1016、1018、1028、1050和1052的深度是2,多个编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,多个编码单元1040、1042、1044和1046的深度是4。

在多个预测单元1060中,一些编码单元1014、1046、1022、1032、1048、1050、1052和1054通过划分多个编码单元1010的编码单元而获得。换句话说,多个编码单元1014、1022、1050和1054中的多个分区类型具有尺寸2N×N,多个编码单元1016、1048和1052中的多个分区类型具有尺寸N×2N,编码单元1032的分区类型具有尺寸N×N。编码单元1010的多个预测单元和多个分区小于或等于每个编码单元。

以小于编码单元1052的数据单元对多个变换单元1070中的编码单元1052的图像数据执行变换或反变换。另外,多个变换单元1070的多个编码单元1014、1016、1022、1032、1048、1050和1052在尺寸和形状上与多个预测单元1060的多个编码单元1014、1016、1022、1032、1048、1050和1052不同。换句话说,视频编码设备100和视频解码设备200可对相同编码单元中的数据单元独立地执行帧内预测、运动估计、运动补偿、变换和反变换。

根据示例性实施例的变换索引信息可表示关于用于变换当前编码单元的变换单元的结构的信息。例如,根据示例性实施例的变换索引信息可包括关于执行从当前编码单元到最后等级变换单元的划分的次数的信息以及变换单元的尺寸和格式。关于根据示例性实施例的编码模式的信息(即,编码信息)可包括关于用于对当前编码单元等以及变换索引信息进行编码的多种方法的信息。

根据示例性实施例的变换索引信息可表示当前变换单元是否被划分为更低等级的变换单元。例如,表示当前变换单元是否被划分为更低等级的变换单元的变换单元划分比特可被用作根据示例性实施例的变换索引信息。

根据示例性实施例的变换索引信息可表示当前编码单元是否被划分为相同尺寸的变换单元。例如,根据示例性实施例的变换索引信息可表示当前编码单元的高度和宽度是否被减半一次并被划分为四个变换单元,或者是否被减半两次并被划分为十六个变换单元。更具体来说,根据示例性实施例的变换索引信息可表示从当前编码单元被划分的相同尺寸的变换单元的4的幂数。

根据另一示例性实施例的变换索引信息可表示当前编码单元是否被划分为根据树形结构的多种尺寸的变换单元。例如,根据另一示例性实施例的变换索引信息可被表达为每个等级变换单元的变换单元划分比特的比特串,其中,每个等级变换单元按照根据树形结构的从当前编码单元到被划分为变换单元的等级被布置。根据另一示例性实施例的变换索引信息可包括按照每个变换单元的Z字形扫描顺序的相同等级的变换单元的变换单元划分单元的比特串。另外,当预定的变换单元被划分为分层结构的更低等级变换单元时,根据另一示例性实施例的变换索引信息可包括按照每个更低等级变换单元的Z字形扫描顺序的更低等级变换单元的变换单元划分单元的比特串。

因此,对最大编码单元的每个区域中的具有分层结构的多个编码单元的每个执行递归编码,以确定最佳编码单元,因此具有递归树形结构的多个编码单元可被获得。编码信息可包括关于编码单元的划分信息、关于分区类型的信息、关于预测模式的信息以及关于变换单元的尺寸的信息。表1显示可由视频编码设备100和视频解码设备200设置的编码信息。

表1

【表1】

视频编码设备100的输出单元130可输出关于具有树形结构的多个编码单元的编码信息,并且视频解码设备200的图像数据和编码信息提取器220可从接收的比特流提取关于具有树形结构的多个编码单元的编码信息。

划分信息指示当前编码单元是否被划分为更低深度的多个编码单元。如果当前深度d的划分信息是0,则当前编码单元不再被划分为更低深度的深度是编码深度,因此可针对编码深度定义关于分区类型、预测模式以及变换单元的尺寸的信息。如果当前编码单元根据划分信息被进一步划分,则对更低深度的四个划分编码单元独立地执行编码。

预测模式可以是帧内模式、帧间模式和跳过模式中的一个。可在所有分区类型中定义帧内模式和帧间模式,并且可在仅具有尺寸2N×2N的分区类型定义跳过模式。

关于分区类型的信息可指示通过对称地划分预测单元的高度或宽度而获得的具有尺寸2N×2N、2N×N、N×2N和N×N的多个对称分区类型、以及通过不对称地划分预测单元的高度或宽度而获得的具有尺寸2N×nU、2N×nD、nL×2N和nR×2N的多个不对称分区类型。可通过以1:3和3:1划分预测单元的高度来分别地获得具有尺寸2N×nU和2N×nD的多个不对称分区类型,可通过以1:3和3:1划分预测单元的宽度来分别地获得具有尺寸nL×2N和nR×2N的多个不对称分区类型。

变换单元的尺寸可被设置为帧内模式中的两种类型以及帧间模式中的两种类型。换句话说,如果变换单元的划分信息是0,则变换单元的尺寸可以是作为当前编码单元的尺寸的2N×2N。如果变换单元的划分信息是1,则可通过划分当前编码单元来获得多个变换单元。另外,如果具有尺寸2N×2N的当前编码单元的分区类型是对称分区类型,则变换单元的尺寸可以是N×N,如果当前编码单元的分区类型是不对称分区类型,则变换单元的尺寸可以是N/2×N/2。

关于具有树形结构的多个编码单元的编码信息可包括以下编码单元与编码深度相应的编码单元、预测单元以及最小单元中的至少一个。与编码深度相应的编码单元可包括:包含相同编码信息的预测单元和最小单元中的至少一个。

因此,通过对多个相邻数据单元的编码单元进行比较,来确定多个相邻单元是否被包括在与编码深度相应的相同的编码单元中。另外,通过使用数据单元的编码信息来确定与编码深度相应的相应编码单元,因此最大编码单元中的多个编码深度的分布可被确定。

因此,如果基于多个相邻数据单元的编码信息预测当前编码单元,则与当前编码单元相邻的多个更深编码单元中的多个数据单元的编码信息可被直接参考和使用。

可选择地,如果基于多个相邻数据单元的编码信息来预测当前编码单元,则使用多个数据单元的编码信息来搜索与当前编码单元相邻的多个数据单元,并且搜索到的多个相邻编码单元可被参考以用于预测当前编码单元。

图13是用于描述根据表1的编码模式信息的编码单元、预测单元或分区、和变换单元之间的关系的示图。

最大编码单元1300包括多个编码深度的多个编码单元1302、1304、1306、1312、1314、1316和1318。这里,由于编码单元1318是编码深度的编码单元,因此划分信息可被设置为0。关于尺寸2N×2N的编码单元1318的分区类型的信息可被设置为以下分区类型之一:具有尺寸2N×2N的分区类型1322、具有尺寸2N×N的分区类型1324、具有尺寸N×2N的分区类型1326、具有尺寸N×N的分区类型1328、具有尺寸2N×nU的分区类型1332、具有尺寸2N×nD的分区类型1334、具有尺寸nL×2N的分区类型1336和具有尺寸nR×2N的分区类型1338。

变换单元的划分信息(TU尺寸标志)是根据示例性实施例的变换索引之一。与变换索引相应的变换单元的划分信息(TU尺寸标志)的尺寸可取决于编码单元的预测单元类型或编码单元的分区类型和预测单元的预测类型或分区。

例如,当分区类型被设置为对称(即,分区类型1322、1324、1326或1328)时,如果变换单元的划分信息(TU尺寸标志)为0,则设置具有尺寸2N×2N的变换单元1342,如果TU尺寸标志为1,则设置具有尺寸N×N的变换单元1344。

当分区类型被设置为不对称(即,分区类型1332、1334、1336或1338)时,如果TU尺寸标志为0,则设置具有尺寸2N×2N的变换单元1352,如果TU尺寸标志为1,则设置具有尺寸N/2×N/2的变换单元1354。

参照图13,TU尺寸标志是具有值0或1的标志,但是TU尺寸标志不限于1比特,并且在TU尺寸标志从0增加的同时,变换单元可被分层划分以具有树形结构。

在这种情况下,根据示例性实施例,可通过使用变换单元的TU尺寸标志以及变换单元的最大尺寸和最小尺寸来表示实际上已使用的变换单元的尺寸。根据示例性实施例,视频编码设备100能够对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标志进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标志进行编码的结果可被插入SPS。根据示例性实施例,视频解码设备200可通过使用最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标志来对视频进行解码。

例如,如果当前编码单元的尺寸是64×64并且最大变换单元尺寸是32×32,则当TU尺寸标志为0时,变换单元的尺寸可以是32×32,当TU尺寸标志为1时,变换单元的尺寸可以是16×16,当TU尺寸标志为2时,变换单元的尺寸可以是8×8。

作为另一示例,如果当前编码单元的尺寸是32×32并且最小变换单元尺寸是32×32,则当TU尺寸标志为0时,变换单元的尺寸可以是32×32。这里,由于变换单元的尺寸不能够小于32×32,因此TU尺寸标志不能够被设置为除了0以外的值。

作为另一示例,如果当前编码单元的尺寸是64×64并且最大TU尺寸标志为1,则TU尺寸标志可以是0或1。这里,TU尺寸标志不能被设置为除了0或1以外的值。

因此,如果定义在TU尺寸标志为0时最大TU尺寸标志为“MaxTransformSizeIndex”,最小变换单元尺寸为“MinTransformSize”,并且变换单元尺寸为“RootTuSize”,则可通过等式(1)来定义可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”:

CurrMinTuSize=max(MinTransformSize,RootTuSize/(2∧MaxTransformSizeIndex))……(1)

与可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”相比,当TU尺寸标志为0时的变换单元尺寸“RootTuSize”可表示可在系统中选择的最大变换单元尺寸。在等式(1)中,“RootTuSize/(2∧MaxTransformSizeIndex)”表示当TU尺寸标志为0时,变换单元尺寸“RootTuSize”被划分了与最大TU尺寸标志相应的次数时的变换单元尺寸,并且“MinTransformSize”表示最小变换尺寸。因此,“RootTuSize/(2∧MaxTransformSizeIndex)”和“MinTransformSize“中较小的值可以是可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”。

根据示例性实施例,最大变换单元尺寸“RootTuSize”可根据预测模式的类型而改变。

例如,如果当前预测模式是帧间模式,则可通过使用以下的等式(2)来确定“RootTuSize”。在等式(2)中,“MaxTransformSize”表示最大变换单元尺寸,“PUSize”指示当前预测单元尺寸。

RootTuSize=min(MaxTransformSize,PUSize)……(2)

也就是说,如果当前预测模式是帧间模式,则当TU尺寸标志为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前预测单元尺寸中较小的值。

如果当前分区单元的预测模式是帧内模式,则可通过使用以下的等式(3)来确定“RootTuSize”。在等式(3)中,“PartitionSize”表示当前分区单元的尺寸。

RootTuSize=min(MaxTransformSize,PartitionSize)……(3)

也就是说,如果当前预测模式是帧内模式,则当TU尺寸标志为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前分区单元的尺寸中较小的值。

然而,根据分区单元中的预测模式的类型而改变的当前最大变换单元尺寸“RootTuSize”仅是示例,并且不限于此。

图14是示出根据示例性实施例的对视频进行编码的方法的流程图。

在操作1210,将当前画面划分为至少一个最大编码单元。可预定可能的划分的次数的总数的最大深度。

在操作1220,通过对至少一个划分区域进行编码来确定用于根据至少一个划分区域输出最终编码结果的已编码的深度,并确定根据树形结构的编码单元,其中,通过根据深度对每个最大编码单元的区域进行划分来获得所述至少一个划分区域。

每当深度加深时最大编码单元被空间划分,因此最大编码单元被划分为更低深度的编码单元。每个编码单元可通过独立于相邻编码单元被空间划分而被划分为另一更低深度的编码单元。对根据深度的每个编码单元重复地执行编码。

此外,针对每个更深编码单元确定根据具有最小编码误差的分区类型的变换单元。为了在每个最大编码单元中确定具有最小编码误差的编码深度,可在所有根据深度的更深编码单元中对编码误差进行测量和比较。

在操作1230,针对每个最大编码单元输出组成根据编码深度的最终编码结果的已编码的图像数据以及关于编码深度和编码模式的编码信息。关于编码模式的信息可包括:关于编码深度或划分信息的信息、关于预测单元的分区类型的信息、预测模式和变换单元的尺寸。可将关于编码模式的已编码的信息和已编码的图像数据发送到解码器。

图15是示出根据示例性实施例的对视频进行解码的方法的流程图。

在操作1310,已编码的视频的比特流被接收和解析。

在操作1320,从解析的比特流提取:分配到最大编码单元的当前画面的已编码的图像数据以及关于根据最大编码单元的编码深度和编码模式的信息。每个最大编码单元的编码深度是在每个最大编码单元中具有最小编码误差的深度。在对每个最大编码单元进行编码中,基于通过根据深度对每个最大编码单元进行分层划分而获得的至少一个数据单元对图像数据进行编码。

根据关于编码深度和编码模式的信息,最大编码单元可被划分为具有树形结构的编码单元。将具有树形结构的每个编码单元确定为与编码深度相应的编码单元,并对具有树形结构的每个编码单元进行最优编码以便输出最小编码误差。因此,可通过在根据编码单元确定至少一个编码深度之后,对在编码单元中的每条已编码的图像数据进行解码来提高图像的编码效率和解码效率。

在操作1330,基于关于根据最大编码单元的编码深度和编码模式的信息对每个最大编码单元的图像数据进行解码。解码的图像数据可由再现设备再现,可存储于存储介质或通过网络传输。

图16是根据示例性实施例的使用分层数据单元的模式信息的视频编码设备1400的框图。

参照图16,视频编码设备1400包括最大编码单元划分器1410、编码单元和编码模式确定器1420和输出单元1430。被配置用于考虑跳过次序和划分次序的视频编码设备1400是视频编码设备100的实施例。视频编码设备100的最大编码单元110、编码单元确定器120和输出单元130可分别对应于最大编码单元划分器1410、编码单元和编码模式确定器1420和输出单元1430。

最大编码单元划分器1410将输入视频的画面划分为预定的尺寸的最大编码单元,并将每个最大编码单元的视频数据输出到编码单元和编码模式确定器1420。

编码单元和编码模式确定器1420根据深度对从最大编码单元划分器1410输入的最大编码单元的区域进行分层划分,并基于根据与执行划分的次数相应的深度的更深编码单元独立地对每个分层划分区域执行编码。

另外,基于一个深度的更深编码单元的编码伴随着基于具有小于或等于所述深度的更深编码单元的格式和尺寸的预测单元的预测以及基于小于或等于所述深度的更深编码单元的所有尺寸的变换单元的变换。

因此,编码单元和编码模式确定器1420可确定:用于输出编码视频数据的至少一个编码深度和所述至少一个编码深度的编码单元的分区类型、预测模式和变换单元的尺寸。关于确定的编码深度的编码单元的信息可被确定为关于编码模式的信息。

编码单元和编码模式确定器1420可基于根据深度的更深编码单元对视频数据进行编码,并搜索在所述视频数据和原始视频数据之间具有最小编码误差的编码深度以及与所述编码深度相关的编码模式,以确定用于针对最大编码单元的每个独立区域输出已编码的视频数据的编码深度以及与所述编码深度相关的编码模式。因此,编码单元和编码模式确定器1420可针对每个最大编码单元确定具有包括编码深度的编码单元的树形结构的编码单元。

由编码单元和编码模式确定器1420确定的关于编码深度和与所述编码深度相关的编码模式的信息以及相应的已编码的视频数据被输出到输出单元1430。

输出单元1430输出每个最大编码单元的模式信息、关于编码深度和与所述编码深度相关的编码模式的信息和已编码的视频数据。另外,输出单元1430可输出关于编码单元的最大尺寸的信息。

输出单元1430可基于模式信息设置是否输出编码单元的纹理相关的信息。纹理相关的信息包括相应数据单元的变换系数和编码单元的索引和量化参数。当存在数据单元的至少一个非零系数时,可对数据单元的纹理相关的信息进行编码。

模式信息可包括:基于编码单元的分层结构和相应的最大编码单元设置的分层编码单元模式信息、最大编码单元模式信息以及编码单元模式信息。

分层编码单元模式信息指示纹理相关的信息和关于更低变换深度的变换单元的编码单元模式信息是否被编码。从当前最大编码单元的编码深度的编码单元到编码模式的最终变换单元分层地设置分层编码单元模式信息。

当前变换深度的变换单元包括更低变换深度的四个变换单元,因此针对每个变换深度的相应的分层编码单元模式信息递归地确定是否对四个更低变换深度的变换纹理相关信息和编码单元模式信息进行编码。

当未对当前变换深度的变换单元的纹理相关的信息和编码单元模式信息进行编码,并且对更低的编码深度的变换单元的编码单元模式信息进行编码时,可将当前变换单元的分层编码单元模式信息设置为1。

然而,当当前变换深度的编码模式是最终变换深度,并且存在基于当前变换单元的纹理相关的信息时,输出单元1430可将当前变换单元的分层编码单元模式信息设置为1。

当对当前变换深度的变换单元的纹理相关的信息和编码单元模式信息进行编码,并且未对更低的变换深度的变换单元的编码单元模式信息进行编码时,输出单元1430还可将当前变换单元的分层编码单元模式信息设置为0。

输出单元1430可输出编码单元模式信息,其中,所述编码单元模式信息指示关于根据编码模式的最终变换深度的变换单元的纹理相关的信息是否被编码。

最大编码单元模式信息指示当前最大编码单元的纹理相关的信息是否被编码。输出单元1430可设置是否通过使用最大编码单元模式信息来输出最大编码单元的编码深度的编码单元的分层编码单元模式信息。

例如,如果不存在最大编码单元的纹理信息,则将相应的最大编码单元的最大编码单元模式信息设置为0,并且不必输出编码单元模式信息、分层编码单元模式信息和更低深度的编码单元的纹理相关的信息。然而,如果存在最大编码单元的纹理信息,则将相应的最大编码单元的最大编码单元模式信息设置为1,并且可设置输出的编码单元模式信息、分层编码单元模式信息和更低深度的编码单元的纹理相关的信息。

因此,最大编码单元模式信息、编码单元和变换单元的分层编码单元模式信息、编码单元模式信息可被输出作为关于单个最大编码单元的模式信息。

可针对每个颜色分量和每个预测模式对模式信息进行编码。

组模式信息可被编码以表示纹理相关的信息是否针对颜色分量被编码。可针对包括至少一个颜色分量的颜色分量的组合设置组模式信息。也就是说,组模式信息可被编码以表示是否存在属于颜色分量的组合的颜色分量的至少一个非零系数。

例如,可将组模式信息设置为指示是否针对纹理相关的信息的关于Y分量、Cr分量和Cb分量的至少一个组合的颜色分量进行编码。更具体地讲,组模式信息可指示是否针对纹理相关的信息的亮度分量和色度分量的所有颜色分量编码。作为另一示例,可针对亮度分量以外的色度分量的颜色分量的纹理相关的信息来设置组模式信息。

可基于组模式信息确定是否针对每个颜色分量的模式信息进行编码。另外,如果存在关于排除属于颜色分量的组合的多个颜色分量之外的颜色分量的模式信息,则可另外地对模式信息进行编码。

可根据变换单元模式信息的密度对密度模式信息进行编码,以跳过冗余模式信息或不必要的模式信息。作为密度模式信息的示例,可对单个等级模式信息或反转模式信息进行编码。

输出单元1430可选择性地确定是否对根据分层数据单元的分层模式信息进行编码或者是否对不同的方式的模式信息进行编码,其中,所述分层数据单元的分层模式信息使用分层编码单元模式信息、编码单元模式信息、最大编码单元模式信息等。例如,输出单元1430可根据当前编码单元的编码深度确定是否对根据分层数据单元的分层模式信息或密度模式信息进行编码。

输出单元1430可根据当前编码单元的编码模式确定是否对根据分层数据单元的分层模式信息或密度模式信息进行编码。例如,输出单元1430可基于当前编码单元的编码模式中的以下项中的至少一项确定是否对关于当前编码单元的分层模式信息或密度模式信息进行编码:当前编码单元的图像数据的颜色分量(诸如,亮度分量或色度分量)、量化参数、预测模式(诸如,帧间模式或帧内模式)、像条类型(诸如,I型、P型或B型)、帧间模式的预测模式(诸如,双向预测或单向预测)。

输出单元1430可对模式信息类型信息进行编码,其中,所述模式信息类型信息指示根据分层数据单元的分层模式信息或密度模式信息是否已被编码为当前编码单元的模式信息。例如,可以以标志的形式对模式信息类型信息进行编码,其中,所述标志表示模式信息尚未通过使用分层模式信息被编码。

另一条模式信息类型信息可被表达为表示多条模式信息(诸如,分层模式信息、每个颜色分量的组模式信息、单个等级模式信息、反转模式信息等)的索引。

因此,输出单元1430可通过将纹理信息插入到传输比特流来输出基于根据最大编码单元、编码单元和变换单元分层设置的模式信息的编码的数据的纹理信息。

图17是根据示例性实施例的使用分层数据单元的模式信息的视频解码设备1500的框图。

参照图17,被配置用于考虑跳过次序和划分次序的视频解码设备1500包括:接收器1510、数据提取器1520和解码器1530。被配置用于考虑跳过次序和划分次序的视频解码设备1500是视频解码设备200的一个实施例。视频解码设备200的接收器210、图像数据和编码信息提取器220和图像数据解码器230可对应于视频解码设备1500的接收器1510、数据提取器1520和解码器1530。

接收器1510接收编码的视频的比特流并对所述比特流进行解析。

数据提取器1520从接收器1510接收解析的比特流,并从所述比特流提取与针对每个最大编码单元的编码深度和编码模式相关的编码信息以及编码的视频数据。另外,数据提取器1520可从所述比特流提取关于编码单元的最大尺寸的信息。

具体来说,数据提取器1520可从来自接收器1510的解析的比特流提取模式信息,并基于所述模式信息从编码的视频数据提取纹理相关的信息。

数据提取器1520可将分层编码单元模式信息、编码单元模式信息和最大编码单元模式信息提取为模式信息。

首先,当数据提取器1520提取编码单元模式信息时,数据提取器1520可基于编码单元模式信息确定是否提取关于相应的变换单元的纹理相关的信息。纹理相关的信息包括相应的变换单元的变换系数、变换单元的索引和量化参数等。

当数据提取器1520提取分层编码单元模式信息时,数据提取器1520可基于分层编码单元模式信息确定是否分层地提取更低变换深度的变换单元的纹理相关的信息以及编码单元模式信息。

数据提取器1520可基于分层编码单元模式信息确定是否根据编码模式递归地从当前编码单元到变换单元提取更低变换深度的变换单元的编码单元模式信息和纹理相关的信息。

如果分层编码单元模式信息是1,则数据提取器1520可不提取当前变换深度的变换单元的纹理相关的信息以及编码单元模式信息,但可提取更低变换深度的变换单元的编码单元模式信息。然而,如果当前变换深度是最终的变换深度并且分层编码单元模式信息是1,则数据提取器1520可基于当前变换单元提取纹理相关的信息。

如果分层编码单元模式信息是0,则数据提取器1520可提取当前变换深度的变换单元的纹理相关的信息以及编码单元模式信息,但不必提取更低变换深度的变换单元的编码单元模式信息。

当数据提取器1520提取最大编码单元模式信息时,数据提取器1520可基于最大编码单元模式信息确定是否提取最大编码单元的编码深度的编码单元的分层编码单元模式信息。

例如,如果最大编码单元模式信息是1,则数据提取器1520可确定是否提取最大编码单元的编码深度的编码单元的分层编码单元模式信息。如果最大编码单元模式信息是0,则数据提取器1520不提取相应的最大编码单元的纹理相关的信息。

如果具有最高变换深度为0的变换单元的模式信息是0,则数据提取器1520可不提取变换索引信息。如果具有最高变换深度为0的变换单元的模式信息不是0,则数据提取器1520可从当前编码单元的编码模式信息提取变换索引信息以及针对每个变换深度的变换单元模式信息。

数据提取器1520可提取针对每个颜色分量的模式信息或针对每个预测模式的模式信息。

数据提取器1520可通过读取组模式信息来确定是否存在针对当前数据单元的每个颜色分量的至少一个非零系数,并确定是否提取每个颜色分量的模式信息。数据提取器1520可通过读取组模式信息来确定是否存在属于颜色分量组合的至少一个颜色分量的每个颜色分量的至少一个非零系数,并确定是否提取属于颜色分量组合的每个颜色分量的模式信息。

例如,数据提取器1520可基于组模式信息分析是否存在关于Y分量、Cr分量和Cb分量的至少一个组合的每个颜色分量的至少一个非零系数。更具体来讲,数据提取器1520可基于组模式信息确定是否存在关于亮度分量和色度分量的所有颜色分量的每个颜色分量的至少一个非零系数。作为另一示例,数据提取器1520可基于组模式信息确定是否存在关于色度分量而非亮度分量的颜色分量的每个颜色分量的非零系数。

数据提取器1520可基于组模式信息确定是否提取属于颜色分量组合的每个颜色分量的模式信息,并且如果这种颜色分量存在,则额外地提取除属于所述颜色分量组合的颜色分量以外的颜色分量的模式信息。

数据提取器1520可根据变换单元模式信息的密度提取冗余的或不必要的模式信息被省略的密度模式信息。

数据提取器1520可根据分层数据单元或模式信息以另一种方式提取分层模式信息。例如,数据提取器1520可提取根据当前编码单元的编码深度选择性地被编码的分层模式信息或密度模式信息。

数据提取器1520可提取根据当前编码单元的编码模式选择性地被编码的根据分层数据单元的分层模式信息或密度模式信息。例如,数据提取器1520可基于颜色分量、量化参数、预测模式、像条类型和当前编码单元的编码模式中的帧间模式的预测方向中的至少一个来提取被选择性地编码为分层模式信息或密度模式信息的当前编码单元的模式信息。

数据提取器1520可提取模式信息类型信息,其中,所述模式信息类型信息指示根据分层数据单元的分层模式信息还是密度模式信息已被编码。例如,数据提取器1520可通过读取以标志形式的模式信息类型信息来确定当前编码单元的模式信息是分层模式信息还是密度模式信息,其中,所述标志指示当前模式信息是否是分层模式信息。

可选地,通过读取以指示多条模式信息的索引表达的模式信息类型信息来确定提取的模式信息是否是以下多条模式信息之一:诸如,分层模式信息、每个颜色分量的组模式信息、单个等级模式信息和反转模式信息。

解码器1530从数据提取器1520接收编码模式信息和编码的视频数据,并基于关于编码深度和编码模式的信息对具有树形结构的编码单元中的至少一个编码深度的每个编码单元的画面的已编码的视频数据进行解码。

已解码且已恢复的视频数据可被发送到各种类型的可再现终端或存储装置。

根据示例性实施例的使用分层数据单元的模式信息的视频编码设备1400以及根据示例性实施例的使用分层数据单元的模式信息的视频解码设备1500可基于编码单元模式信息的密度确定将被施加到模式信息的数据单元。例如,如果编码单元模式信息不是密集的,则最大编码单元等级的最大编码单元模式信息被用于提高比特率。然而,如果编码单元模式信息是密集的,则最大编码单元模式信息可不被用于提高比特率。因此,模式信息的数据单元被选择性地调整,从而增加比特流的传输效率。

现将参照图18到图26描述根据示例性实施例的分层数据单元的多条模式信息。

图18示出根据示例性实施例的最大编码单元1610和编码深度的编码单元1620、1622、1624和1626的分层结构。

参照图18,为了描述模式信息,最大编码单元1610包括编码深度为1的编码单元1620、1622、1624和1626。以下将描述最大编码单元模式信息未被使用的第一实施例和最大编码单元模式信息被使用的第二实施例。

首先,假设最大编码单元1610不具有变换系数(以下,称为“情况1”)。

在第一实施例中,可对关于编码单元1620、1622、1624和1626的模式信息进行编码,而不对关于最大编码单元1610的模式信息进行编码。也就是说,可对关于编码单元1620、1622、1624和1626中的每个的变换深度为0的变换单元的编码单元模式信息进行编码。因此,针对情况1的第一实施例的模式信息可被输出为四个比特“0000”。

在针对情况1的第二实施例中,关于最大编码单元1610的最大编码单元模式信息被编码为“0”,并且可不必针对编码单元1620、1622、1624和1626设置模式信息。因此,针对情况1的第二实施例的模式信息可被输出为一个比特“0”。

因此,当最大编码单元1610不具有变换系数时,使用在比特率方面有益的最大编码单元模式信息。

其次,假设最大编码单元1610具有变换系数,编码单元1622和1626不具有变换系数,并且编码单元1620和1624具有变换深度为2的变换单元的变换系数(以下,称为“情况2”)。

在第一个实施例中,在不对关于最大编码单元1610的模式信息进行编码的情况下,关于编码单元1620、1622、1624和1626的模式信息包括:

可设置编码深度1的编码单元1620、1622、1624和1626的分层编码单元模式信息“1”;

关于编码单元1620,可设置变换深度0的变换单元的分层编码单元模式信息“1”,变换深度1的变换单元的编码单元模式信息“1100”和分层编码单元模式信息“1”;

关于编码单元1622,可设置变换深度0的变换单元的分层编码单元模式信息“0”;

关于编码单元1624,可设置变换深度0的变换单元的分层编码单元模式信息“1”,变换深度1的变换单元的编码单元模式信息“1110”和分层编码单元模式信息“1”;

关于编码单元1626,可设置变换深度0的变换单元的分层编码单元模式信息“0”。

因此,针对情况1的第一实施例的模式信息可被输出为十四比特“11111000111100”。

在第二个实施例中,关于最大编码单元1610的最大编码单元模式信息被编码为“1”,并且关于编码单元1620、1622、1624和1626编码的模式信息;

可设置深度1的编码单元1620、1622、1624和1626的分层编码单元模式信息“1”;

关于编码单元1620,可设置变换深度0的变换单元的分层编码单元模式信息“1”;

关于编码单元1622,可设置变换单元1的分层编码单元模式信息“1”且编码单元模式信息“1100”,变换深度0的变换单元的分层编码单元模式信息“0”;

关于编码单元1624,可设置变换深度0的变换单元的分层编码单元模式信息“1”;

关于编码单元1626,可设置变换深度1的分层编码单元模式信息“1”且编码单元模式信息“1110”,并且变换深度0的变换单元的分层编码单元模式信息“0”。

因此,针对情况2的第二实施例的模式信息可被输出为十五比特“111111000111100”。

因此,当编码单元模式信息在最大编码单元之内密集时,在比特率方面有益的最大编码单元模式信息未被使用。

根据示例性实施例的使用分层数据单元的模式信息的视频编码设备1400可通过分析最大编码单元的编码单元模式信息的密度来调整施加到模式信息的数据单元的等级。虽然上面描述了最大编码单元模式信息,但本发明不限于此,并可被施加到在最大编码单元之内的预定的深度的编码单元以及预定的数据单元(诸如,多个最大编码单元组)。

图19、图20和图21是根据示例性实施例的使用组模式信息的编码处理的流程图。

视频编码设备1400的输出单元1430可对视频数据的每个颜色分量的模式信息进行编码。例如,可对以下项进行编码:关于亮度分量系数的数据单元的亮度模式信息、关于Cb分量系数的数据单元的Cb模式信息以及关于Cr分量系数的数据单元的Cr模式信息。

输出单元1430可在对关于单个数据单元的每个颜色分量的视频数据的组模式信息进行编码之后,对每个颜色分量的模式信息进行编码。

参照图19,在操作1910,可针对当前数据单元的亮度分量、Cb分量和Cr分量的视频数据设置组模式信息(组CBF)。在操作1910,如果组模式信息被设置为0,则用于设置关于当前数据单元的模式信息的操作结束,并且,如果组模式信息被设置为1,则可分别在操作1920、1930和1940中设置每个颜色分量的亮度模式信息(亮度CBF)、Cb模式信息(Cb CBF)和Cr模式信息(Cr模式信息)。

在操作1920,如果亮度模式信息(亮度CBF)被设置为1,则在操作1925中对亮度分量系数进行编码,并且,如果亮度模式信息(亮度CBF)被设置为0,则可跳过操作1925。相似地,在操作1930,如果Cb模式信息(Cb CBF)被设置为1,则在操作1935中对Cb分量系数进行编码,并且,如果Cb模式信息(Cb CBF)被设置为0,则可跳过操作1935。相似地,在操作1940,如果Cr模式信息(Cr模式信息)被设置为1,则在操作1945中对Cr分量系数进行编码,并且,如果Cr分量模式信息(Cr模式信息)被设置为0,则可跳过操作1945。

参照图20a和图20b,针对当前数据单元的亮度分量系数分别设置亮度模式信息(亮度CBF)(20A中的流程图2000),并且可针对色度分量系数(即,Cb分量系数和Cr分量系数)设置组模式信息(图20b中的流程图2020)。

在操作2010,如果关于当前数据单元的亮度分量系数的亮度模式信息(亮度CBF)被设置为1,则在操作2015对亮度分量系数进行编码,并且如果亮度模式信息(亮度CBF)被设置为0,则可跳过操作2015。

在操作2030,可针对当前数据单元的Cb分量和Cr分量的视频数据设置组模式信息。在操作2030,如果组模式信息被设置为0,则针对当前数据单元设置模式信息的操作结束,并且用于对Cb分量系数和Cr分量系数进行编码的操作结束。在操作2030,如果组模式信息被设置为1,则可分别在操作2045和2055中对Cb模式信息(Cb CBF)和Cr模式信息(Cr CBF)进行编码。

在操作2040(或操作2050),如果Cb模式信息(Cb CBF)(或Cr模式信息(Cr CBF))被设置为1,则在操作2045(或操作2055)对Cb分量系数(或Cr分量系数)进行编码,并且,如果Cb模式信息(Cb CBF)(或Cr模式信息(Cr CBF))被设置为0,则可跳过操作2045(或操作2055)。

参照图21a、图21b和图21c,可分别设置当前数据单元的亮度模式信息(亮度CBF),并且可根据亮度模式信息(亮度CBF)的设置值确定是否针对当前数据单元的色度分量系数设置组模式信息。

例如,如果亮度模式信息(亮度CBF)的设置值是1,则不对关于颜色分量的组模式信息进行编码(图21a中的流程图2100和图21b中的流程图2120),并且如果亮度模式信息(亮度CBF)的设置值是0,则可对关于Cb分量系数和Cr分量系数的组模式信息进行编码(图21c中的流程图2140)。

更具体地讲,如果由于在当前数据单元中存在非0的亮度分量系数而将亮度模式信息(亮度CBF)设置为1,则在操作2110,可根据是否存在非0的Cb分量系数来设置Cb模式信息(Cb CBF),并且在操作2115,可对非0的Cb分量系数进行编码。同样,在操作2130,可根据是否存在非0的Cr分量系数来设置Cr模式信息(Cr CBF),并且在操作2135,可对非0的Cr分量系数进行编码。

如果由于在当前数据单元中不存在非0的亮度分量系数而将亮度模式信息(亮度CBF)设置为0,则在操作2150,可根据在当前数据单元中是否存在非0的Cb分量系数和Cr分量系数来设置组模式信息。在操作2150,如果由于不存在非0的Cb分量系数和Cr分量系数而将组模式信息设置为0,则用于设置当前数据单元的Cb模式信息(Cb CBF)和Cr模式信息(Cr CBF)的操作以及用于对Cb分量系数和Cr分量系数进行编码的操作结束。

在操作2150,由于在当前数据单元中存在非0的Cb分量系数以及Cr分量系数而将组模式信息设置为1,因此可分别在操作2160和操作2170中对Cb分量系数和Cr分量系数进行编码。在操作2160,根据是否存在非0的Cb分量系数来设置Cb模式信息(Cb CBF),并且在操作2165,可对非0的Cb分量系数进行编码。同样,在操作2170,根据是否存在非0的Cr分量系数来设置Cr模式信息(Cr CBF),并且在操作2175,可对非0的Cr分量系数进行编码。

因此,根据示例性实施例的视频解码设备1500的数据提取器1520可提取视频数据的每个颜色分量的模式信息。数据提取器1520还可根据读取关于单个数据单元的每个颜色分量的视频数据的组模式信息的结果提取每个颜色分量的模式信息。

根据示例性实施例的视频解码单元1400的输出单元1430可以以用于提高分层数据单元的模式信息的密度的格式来输出密度模式信息。

图22和图23是用于对根据示例性实施例的用于对分层数据单元模式信息进行编码的处理和对单个等级模式信息进行编码的处理进行比较的示图。

参照图22和图23,为了便于描述,假设更高的变换深度的变换单元根据变换深度被均等地划分为更低变换深度的四个变换单元。然而,变换单元的模式信息不限于此,并且更高变换深度的变换单元可被划分为更低变换深度的多种类型的变换单元。

图22是根据示例性实施例的用于对分层数据单元模式信息进行编码的处理的流程图。如果在变换深度n确定变换单元,则可必须设置从0到n的变换单元的模式信息。

更详细地,在操作2210,变换深度0的变换单元的模式信息被编码。如果变换深度0的变换单元的模式信息是0,则不对变换单元的系数进行编码。如果变换深度0的变换单元的模式信息是1,则可在操作2220、2222、2224和2226对变换深度1的四个变换单元的模式信息进行编码,其中,所述模式信息从变换深度0的变换单元被划分。在操作2220、2222、2224和2226,可基于变换深度1的四个变换单元的模式信息确定是否对更低变换深度的变换单元的模式信息进行编码。随着变换深度增加,可在操作2230、2232、2234和2236对从0到2^(2n)-1的2^(2n)变换深度n的变换单元的模式信息进行编码。

图23是根据示例性实施例的用于对单个等级模式信息进行编码的处理的流程图。如果在变换深度n确定根据树形结构的变换单元,则单个等级模式信息可被表达为变换深度n的变换单元的模式信息。也就是说,在操作2310、2312、2314和2316,2^(2n)变换深度n的变换单元的模式信息可被编码为单个等级模式信息。通过使用单个等级模式信息,可省略一般变换深度的变换单元(而不是根据当前编码单元之内的树形结构的变换单元)的模式信息。

图24是用于描述根据示例性实施例的反转模式信息的概念的示图。

参照图24,可针对帧内模式的编码单元的变换单元设置反转模式信息。反转模式信息指示设置比特值,其中,在所述设置比特值中根据当前编码单元的树形结构的变换单元的模式信息的设置值0和1被分别反转为1和0。

每个原始编码单元2410、2430、2440和2460被配置为包括变换深度1的变换单元。在原始编码单元2410、2430、2450和2470中指示的数字表示变换单元的模式信息。帧内模式的原始编码单元2410、2430、2450和2470的变换单元中,模式信息未必主要是0。

由于原始编码单元2410包括具有模式信息1、0、1和1的变换单元,因此具有变换单元的反转的模式信息的编码单元2420可包括具有模式信息0、1、0和0的变换单元。也就是说,编码单元2410的原始分层模式信息(原始CBF)在变换深度0中被编码为“1”和在变换深度1中被编码为“1011”,而编码单元2420的反转模式信息在变换深度0中可被编码为“1”和在变换深度1中被编码为“0100”。

由于原始编码单元2430包括具有模式信息1、1、1和1的变换单元,因此具有变换单元的反转的模式信息的编码单元2440可包括具有模式信息0、0、0和0的变换单元。也就是说,编码单元2430的原始分层模式信息在变换深度0中被编码为“1”和在变换深度1中被编码为“1111”,而编码单元2440的反转模式信息在变换深度0中可被编码为“0”。

如果原始编码单元2450包括具有模式信息1、0、1、1的变换单元,则编码单元2450的原始分层模式信息在变换深度0中编码为“1”和在变换深度1中编码为“1100”,而具有变换单元的反转的模式信息的编码单元2460包括变换单元的模式信息0、1、0、0,因此编码单元2460的反转模式信息可在变换深度0中被编码为“1”和在变换深度1中被编码为“0011”。

如果原始编码单元2470包括具有模式信息1、1、1、1的变换单元,则编码单元2470的原始分层模式信息(原始CBF)在变换深度0中被编码为“1”和在变换深度1中被编码为“1111”,而具有变换单元的反转的模式信息的编码单元2480包括变换单元的模式信息0、0、0、0,因此编码单元2480的反转模式信息可在变换深度0中被编码为“0”。

图25是根据示例性实施例的用于对密度模式信息进行编码的处理的流程图。

参照图25,在操作2510,如果关于当前编码单元的预定的条件被满足,则在操作2530,视频编码设备1400的输出单元1430可对针对当前编码单元的密度模式信息进行编码。例如,用于对密度模式信息进行编码的预定的条件可包括:当前编码单元的预测模式是帧内模式(或帧间模式)的条件、当前编码单元的量化参数小于阈值的条件、当前编码单元的系数是色度分量系数(或亮度分量系数)的条件等。密度模式信息可包括单个等级模式信息、反转模式信息等。

在操作2510,如果关于当前编码单元的预定的条件不满足,则在操作2530,视频编码设备1400的输出单元1430可针对当前编码单元对根据分层数据单元的模式信息进行编码。更具体来讲,对分层编码单元模式信息进行编码,并且可基于分层编码单元模式信息确定是否分层地对关于更低变换深度的变换单元的纹理相关的信息以及编码单元模式信息进行编码。

由于当数据单元在帧内模式中被预测时,数据单元包括亮度分量系数时,或者数据单元具有小的量化参数时,包括非0的系数的数据单元更可能是密集的,因此密度模式信息可具有优势。

因此,视频解码设备1500的数据提取器1520可提取根据预定的条件编码的密度模式信息。由于根据预定的规则修改了密度模式信息的表达方法,因此数据提取器1520可通过根据预先定义的规则正确地读取密度模式信息来提取相应的数据单元的系数。

图26是示出根据示例性实施例的用于对变换索引和模式信息进行解码的处理的流程图。

参照图26,由于当仅在编码单元之内存在非0的系数时,针对编码单元的变换索引信息是有效的,因此视频编码设备1400的输出单元1430可对包括非0的系数的编码单元的变换索引信息进行编码。因此,在操作2610,视频解码设备1500的数据提取器1520可对当前编码单元的模式信息进行解析。如果模式信息是0,则用于针对当前编码单元进行解码的操作可结束而不需对变换索引信息进行解析。在操作2610,如果当前编码单元的解析模式信息是1,则在操作2620,可在关于当前编码单元的编码模式的信息中对变换索引信息进行解析。

在操作2610,数据解析器1520对与当前编码单元相同的变换深度0的变换单元的模式信息进行解析。如果模式信息是0,则针对当前编码单元进行解码的操作可结束而不需对当前编码单元的变换索引信息进行解析。在操作2610,如果变换深度0的变换单元的模式信息是1,则在操作2620,可对变换单元的变换索引信息进行解析。

在操作2620,如果当前编码单元的变换索引信息是0,则在操作2630可对当前编码单元的系数进行解析而不需划分更低变换深度的变换单元。可基于解析的编码信息对解析的系数进行解码。在操作2620,如果当前编码单元的变换索引信息大于1,则变换深度0的变换单元被划分为变换深度1的变换单元,并且可在操作2640、2642、2644和2646对变换深度1的变换单元的模式信息进行解析。

在操作2650,如果变换索引信息小于2(即,如果变换索引信息是1),则在操作2660,可对变换深度1的变换单元的系数进行解析。可基于解析的编码信息对解析的系数进行解码。在操作2650,如果变换索引信息大于2(即,如果变换单元的变换深度大于2),则变换深度1的变换单元被划分为变换深度2的变换单元,并且可在操作2670、2672、2674和2676对变换深度2的变换单元的模式信息进行解析。

可根据变换索引信息重复执行这样的处理直到每个变换单元达到变换深度。因此,如果当前编码单元的变换单元的模式信息中最高变换深度0的变换单元的模式信息是0,则在操作2620对变换索引信息进行一次解析,而可在操作2610、2640、2642、2644、2646、2670、2672、2674和2676按每个变换深度针对每个变换深度对变换单元的模式信息进行解析。

图27是示出根据示例性实施例的使用分层数据单元的模式信息的视频编码方法的流程图。

参照图27,在操作2710,画面被划分为预定的最大尺寸的编码单元。

在操作2720,基于关于每个最大编码单元的对于根据深度被划分和减少的区域的至少一个深度的每个编码单元的至少一个变换单元,执行伴随着变换的编码。作为编码的结果,可选择具有最小编码误差的至少一个编码深度和关于包括关于至少一个变换单元的尺寸的信息的编码深度的编码单元的编码模式。因此,具有树形结构的编码单元可被确定为编码深度和编码模式的编码单元。

在操作2730,输出以下信息:模式信息、关于编码单元的最大尺寸的信息、关于编码模式的信息和针对每个最大编码单元的编码的视频数据。可基于模式信息确定是否输出编码的视频数据的纹理信息。模式信息可根据编码模式基于最大编码单元、编码单元和变换单元的分层结构被设置,并可包括分层编码单元模式信息、最大编码单元模式信息和编码单元模式信息。

模式信息还可包括:关于每个颜色分量的系数的变换单元的组模式信息、单个等级模式信息和具有根据模式信息的密度修改的表达方法的反转模式信息。

可根据当前编码单元的编码深度、编码模式等确定是否对多条模式信息(诸如,分层编码单元模式信息、组模式信息、密度模式信息等)之一进行编码。可对指示多条模式信息之一是否已被编码的模式信息类型信息进行编码。

图28是示出根据示例性实施例的使用分层数据单元的模式信息的视频解码方法的流程图。

在操作2810,接收编码的视频的比特流并对所述比特流进行解析。

在操作2820,从解析的比特流提取以下信息:关于编码单元的最大尺寸的信息、关于每个最大编码单元的至少一个编码深度的编码单元的编码模式的信息以及指示每个最大编码单元的纹理相关的信息是否被编码的模式信息。另外,可基于关于编码模式的信息和模式信息从解析的比特流提取每个最大编码单元的编码的视频数据。

具体来说,通过使用模式信息中的以下信息来确定是否提取最大编码单元的每个编码深度的每个编码单元的变换单元的纹理信息:基于最大编码单元、编码单元和变换单元的分层结构的最大编码单元模式信息、分层编码单元模式信息和编码单元模式信息。可基于组模式信息提取每个颜色分量的系数的变换单元的模式信息。单个等级模式信息或反转模式信息的表达方法必须根据模式信息的密度被改变和读取。

如果变换深度0的变换单元模式信息是0,则关于当前变换单元的变换索引信息不需要被解析。

可根据当前编码单元的编码深度、编码模式等确定提取的模式信息是不是多条模式信息(诸如,分层编码单元模式信息、组模式信息、密度模式信息等)之一。可提取指示多条模式信息之一是否已被编码的模式信息类型信息,并可基于所述模式信息类型信息读取当前编码单元的模式信息。

在操作2830,基于关于编码模式的信息对关于至少一个编码深度的每个编码单元编码的视频数据进行解码和恢复。

根据示例性实施例的视频编码和视频解码执行大尺寸数据单元的编码和解码,以对大尺寸视频数据执行图像处理。因此,关于宽平面区域的数据单元或空间上不具有运动信息的画面的数据单元,模式信息可不是密集的。另外,关于具有复杂像素值的画面,模式信息可能不是密集的。因此,根据所述画面的模式信息的密度调整被施加到模式信息的等级,从而增加模式信息的传输效率。

示例性实施例可被写成计算机程序并可被实施在使用计算机可读记录介质执行程序的通用数字计算机中。计算机可读记录介质的示例包括磁性存储介质(例如,ROM、软盘、硬盘等)和光记录介质(例如,CD-ROM或DVD)。可选择地,示例性实施例可被实施为用于通过网络(诸如,互联网)传输的计算机可读传输介质的载波或信号。

如将由熟练的技术人员理解,示例性实施例可被实施为软件组件或硬件组件(诸如,执行特定任务的现场可编程逻辑门阵列(FPGA)或特定应用集成电路(ASIC))。单元或模块可有利地被配置为驻留在可寻址存储介质并被配置为在一个或多个处理器或微处理器上执行。因此,单元或模块可包括,举例来说,组件(诸如,软件组件、面向对象的软件组件、类组件和任务组件)、处理、函数、属性、程序、子例程、程序代码段、驱动器、固件、微代码、电路、数据、数据库、数据结构、表、阵列和变量。在组件和单元中提供的功能性可被并入到较少的组件和单元或模块,或者被进一步分成额外的组件和单元或模块。

虽然已参照本发明的示例性实施例具体地示出并描述了本发明,但本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可在其中做出形式和细节上的各种改变。示例性实施例应被视为仅是描述性的,而不是为了限制。因此,本发明的范围由权利要求限定而不由本发明的详细描述限定,并且在所述范围之内的所有不同应被理解为被包括在本发明中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1