使用树形结构的解码装置的制作方法

文档序号:13623165阅读:137来源:国知局
使用树形结构的解码装置的制作方法

技术领域

本公开涉及使用树形结构的编码/解码方法和装置。更具体地,本公开涉及用于通过在对各种图像信息的编码和对产生的编码的数据的解码过程中使用树形结构来提高编码效率并且进而提高视频压缩效率的方法和装置。



背景技术:

本部分中的陈述仅提供了与本公开相关的背景信息,并且可能不构成现有技术

目前的视频数据压缩技术包括H.261、H.263、MPEG-2、MPEG-4等。在对图像进行编码时,现有的视频压缩技术将各个图像划分为固定尺寸的宏块,这些宏块由具有亮度分量的矩形的16×16个像素区域和具有色度分量的矩形的8×8个像素区域组成。对所有这些亮度分量和色度分量进行空间或者时间预测,并且产生的预测残差在最终被压缩之前经历变换、量化和熵编码。

编码装置利用H.264/AVC压缩标准将每个宏块细分为16×16、8×8和4×4的较小尺寸的块以执行帧内预测编码,其中在4种预测模式中的一种模式中处理16×16像素块,并且在9种预测模式中的一种模式中处理8×8像素块和4×4像素块。对于帧间预测编码,可以先将各个宏块划分为像素尺寸16×16、16×8、8×16、8×8、8×4、4×8和4×4的块。以8×8或者4×4像素块为单位执行变换,并且变换系数的量化使用标量量化。按照这种方式,期望帧内预测编码或者帧间预测编码过程中的视频编码装置不仅编码目标图像,而且还编码用于帧内预测和帧间预测的各种信息。

另外,压缩诸如4K×2K视频的高分辨率视频具有显著的必要性,但是还没有开发出可以有效地压缩大容量的高分辨率视频的这样的技术。而且,随着视频大小增加以及用于编码大容量视频的分割的单位增大,进行帧内预测编码和帧间预测编码需要更多的信息,使得视频压缩效率降低。因此,需要开发能够提高编码效率和视频压缩效率的技术。



技术实现要素:

技术问题

为了解决上述问题并且满足所开发的技术的需要,本公开主要试图通过在对各种图像信息的编码以及对产生的编码的数据的解码过程中使用树形结构来提高编码效率并且进而提高视频压缩效率。

发明概要

本公开的一个实施方式提供了一种用于对要编码的图像信息进行编码的编码装置,该编码装置包括:树形编码器,其用于将具有图像信息的预定区域分为多个组,通过将分组的区域内要编码的信息的最小值或者最大值确定为与分组的区域有关的信息来生成一直到最高层的每一层的节点值,并且将每一层的节点值与上层的节点值之间的差值或者每一层的节点值与基于预设标准确定的值之间的差值编码;以及附加信息编码器,其用于编码附加信息,所述附加信息包括与最大层数有关的信息、与要分组的区域的数量有关的信息以及与每一层的节点值是由下层的节点值之中的最小值还是最大值确定的有关的信息。

本公开的另一实施方式提供了一种用于解码比特流以重构信息的解码装置,该解码装置包括:附加信息解码器,其用于解码所述比特流以重构附加信息,所述附加信息包括与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是由下层的节点值之中的最小值还是最大值确定的有关的信息;以及树形解码器,其用于通过使用所述附加信息来解码所述比特流以重构每一层的节点值与上层的节点值之间的差值或者每一层的节点值与基于预设标准确定的值之间的差值,将重构的差值与上层的节点值相加以重构每一层的节点值,并且重构最低层的节点值作为要解码的信息。

本公开的又一实施方式提供了一种用于对要编码的图像信息进行编码的编码装置,该编码装置包括:树形编码器,其用于对具有所述图像信息的预定区域中具有相同信息的区域进行分组,并且编码节点值和指示每一层的节点是否被划分的标记中的一个或多个;以及附加信息编码器,其用于编码附加信息,所述附加信息包括与最大层数有关的信息以及与由最低层的各个节点指示的区域的尺寸有关的信息。

本公开的又一实施方式提供了一种用于解码比特流以重构信息的解码装置,该解码装置包括:附加信息解码器,其用于解码比特流以重构附加信息,所述附加信息包括与最大层数有关的信息以及与由最低层的各个节点指示的区域的尺寸有关的信息;以及树形解码器,其用于基于所述附加信息来解码所述比特流,以重构指示从最高层到最低层的每一层的节点是否被划分的标记,并且通过根据重构的标记重构各个层的节点的节点值来重构所述信息。

本公开的又一实施方式提供了一种用于通过使用树形结构来编码图像信息的编码方法,该编码方法包括:形成树形结构,其中每一层包括至少一个节点,并且所述节点被划分为或者不被划分为下层的节点;将用于指示所述节点是否被划分为所述下层的节点的标记编码;以及编码附加信息,所述附加信息包括与最大层数有关的信息以及与由最低层的各个节点指示的区域的尺寸有关的信息。

本公开的又一实施方式提供了一种用于通过使用树形结构来重构图像信息的解码方法,该解码方法包括:重构附加信息,所述附加信息包括与构成所述树形结构的最大层数有关的信息以及与由最低层的各个节点指示的区域的尺寸有关的信息;以及基于所述附加信息,重构指示每一层中包括的各个节点是否被划分的标记,并且根据重构的标记来重构每一层的节点的节点值。

有益效果

根据如上所述的本公开,通过在对各种图像信息的编码以及对产生的编码数据的解码过程中使用树形结构,可以提高编码效率并且进而提高视频压缩效率。

附图说明

图1是示意性地示出根据本公开的第一实施方式的使用树形结构的编码装置的框图;

图2是示出根据本公开的第一实施方式的要使用树形结构编码的信息的示例图;

图3是示出根据本公开的第一实施方式的与在每层处确定的区域有关的信息的标签树的示例性示图;

图4是示出根据本公开的第一实施方式的使用树形结构编码的比特的示例性示图;

图5是示出根据本公开的第一实施方式的使用树形结构的编码方法的流程图;

图6是示意性地示出根据本公开的第一实施方式的使用树形结构的解码方法的框图;

图7是示出根据本公开的第一实施方式的使用树形结构的解码方法的流程图;

图8是示意性地示出根据本公开的第二实施方式的使用树形结构的编码装置的框图;

图9是示出根据本公开的第二实施方式的树形结构的示例性示图;

图10是示出根据本公开的第二实施方式的表示为树形结构的信息编码结果的示例性示图;

图11是示出根据本公开的第二实施方式的用于将节点划分为下层的另一方案的示例性示图;

图12和图13是示出当按照不同方案来分发与区域有关的信息时的分组的示例性示图;

图14是示出根据本公开的第二实施方式的使用树形结构的编码方法的流程图;

图15是示意性地示出根据本公开的第二实施方式的使用树形结构的解码装置的框图;以及

图16是示出根据本公开的第二实施方式的使用树形结构的解码方法的流程图。

具体实施方式

下面将参考附图详细描述根据本公开的实施方式的使用树形结构的编码/解码方法和装置。

根据本公开的实施方式,在对要编码的图像信息的编码和对产生的编码数据的解码中,通过使用树形结构来提高编码效率。

根据本公开的实施方式,要编码的信息可以是与图像信号有关的信息或者是用于对图像信号进行编码的各种信息,诸如可变尺寸宏块的宏块尺寸和宏块类型信息、指示用于预测和变换的子块的尺寸和类型的分区信息、帧内预测信息、运动矢量、运动矢量预测方向、最优运动矢量预测候选、任意尺寸区域的最优内插滤波器、图像增强滤波器的使用与否、参考图片索引、量化矩阵索引、最优运动矢量精度和变换尺寸信息、图像像素信息、编码块信息或者指示预定块内是否存在零以外的变换系数的系数信息。

另外,预定区域可以是可变尺寸的宏块,或者可以是各种像素尺寸的块,诸如64×64的像素块、32×32的像素块、16×16的像素块、16×32的像素块或者4×16的像素块。另外,预定区域可以是各种类型和尺寸的区域,诸如确定运动矢量所根据的块。

根据本公开的实施方式,编码和解码可以应用于熵编码和熵解码,但是不限于此,并且还可以应用于各种其他编码和解码。

图1是示意性地示出根据本公开的第一实施方式的使用树形结构的编码装置的框图。

根据本公开的第一实施方式的使用树形结构的编码装置100可以包括树形编码器110和附加信息编码器120。

树形编码器110将具有要编码的图像信息的预定区域分为多个组,通过将分组的区域内要编码的信息的最小值或者最大值确定为与分组的区域有关的信息来生成一直到最高层的每一层的节点值,并且对每一层的节点值与上层的节点值之间的差值或者每一层的节点值与基于预设标准而确定的值之间的差值进行编码。

术语“每一层的节点值”表示与每一层的分组的区域有关的信息的值。例如,最低层的节点值可以是与预定区域有关的信息的值。最低层的上层的节点值可以是与按预定区域分组的区域有关的信息的值。与分组区域有关的信息的值可以由与分组区域内包括的预定区域有关的信息的值之中的最小值或最大值来决定。此外,由预设的标准决定的值可以是前一区域或相邻区域之中到目前为止在区域中具有最高发生概率的值,但是并不限于此,并且可以是由各种标准决定的值。

在这种情况下,树形编码器110可以通过使用诸如一元码、截断一元码和指数哥伦布(Exp-Golomb)码的各种二进制编码方法对每一层的节点值与上层的节点值之间的差值进行编码。另外,在通过使用诸如一元码、截断一元码和指数哥伦布(Exp-Golomb)码的各种二进制编码方法对每一层的节点值与上层的节点值之间的差值进行二值化之后,树形编码器110可以通过基于相邻层或者上层的节点值确定用于对要编码的层的节点值进行编码的概率模型,或者通过在每一层改变概率模型来执行二进制算数编码。

另外,如果每一层的节点值由下层的节点值中的最小值确定,则树形编码器110跳过对具有最大节点值的层以下的层的节点值的编码。也就是说,在每一层的节点值由下层的节点值中的最小值决定的情况下,如果某一层的某个节点值是要编码的信息的最大值,则树形编码器110对相应层的节点值进行编码,并且跳过对更下层的节点值的编码,假设下层的节点值具有相同值。另一方面,在每一层的节点值由下层的节点值中的最大值确定的情况下,树形编码器110跳过对具有最小节点值的层以下的层的节点值的编码。也就是说,在每一层的节点值由下层的节点值中的最大值决定的情况下,如果某一层的某个节点值是要编码的信息所能够具有的最小值,则树形编码器110对相应层的节点值进行编码,并且跳过对更下层的节点值的编码,假设下层的所有节点值具有相同值。

另外,为了根据要编码的信息的发生概率来执行编码,树形编码器110可以通过改变分配给要编码的信息的编号(code number),根据发生概率来分配小编号或者大编号。在这种情况下,可以通过使用各种发生概率(诸如,与预定的相邻区域有关的信息的发生概率或者与包括要编码的信息的整个或者部分区域内到目前为止已编码的区域有关的信息的发生概率)来计算要编码的信息的发生概率。

在树形编码器110对最高层的节点值进行编码的情况下,由于不存在最高层的上层,因此树形编码器110可以将最高层的上层的节点值设置为预定值,并且可以对最高层的节点值与所设置的预定值之间的差值进行编码。在这种情况下,被设置为最高层的上层的节点值的预定值可以通过各种值来设置,诸如,在包括要编码的信息的整个区域或者部分区域中到目前为止在被编码时具有最高发生概率的值、预设值和与预定的相邻区域有关的信息的值中具有最高发生概率的值。

根据本公开的第一实施方式,附加信息编码器120对附加信息进行编码,附加信息用于利用树形结构对与预定区域有关的信息进行编码。附加信息可以是与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是由下层的节点值中的最小值还是最大值确定的有关的信息。编码的附加信息可以包括在预定编码单位的头部中,诸如序列头部、图片头部或者比特流的片段头部。

下面将参照图2至图4详细描述通过使用树形结构对要编码的信息进行编码的过程。

图2是示出根据本公开的第一实施方式的要使用树形结构来编码的信息以及分配给各个信息的编号的示例性示图。

在帧间预测的情况下,当图像宏块是64×64像素块并且被划分为8×16的像素子块时,在图2中例示了在每个8×16像素子块处确定的运动矢量精度。在这种情况下,要编码的信息是预定区域的运动矢量精度,并且预定区域是8×16像素子块。

编码可以通过使用要编码的数据的未改变值(untouched value)来实现,并且还可以通过向要编码的数据分配编号来实现。根据数据的发生概率,可以按照各种方式修改用于分配编号的方法。图2的实施方式示出了分别向1/2精度、1/4精度和1/8精度分配编号1、2和3的示例。根据本公开的第一实施方式的编码装置100可以通过在每一层重复以下过程来确定每一层的节点值,即,如图2中示出的向运动矢量分配编号,如图3中所示的将预定数量的预定区域进行分组以便使用树形结构来编码,并且基于分组区域内包括的信息来确定与分组区域有关的信息。

图3是示出根据本公开的第一实施方式的与在每一层确定的区域有关的信息的标签树的示例性示图。

为了如图2所示使用树形结构来编码要编码的信息,视频编码装置100通过在每一层直至最高层重复以下过程来确定图3中所示的树形结构,即,分组4个8×16像素子块,并且利用各个分组区域内包括的信息的最小值来确定与该分组区域有关的信息。

此后,视频编码装置100编码附加信息,附加信息用于基于该树形结构来编码信息。附加信息可以是与树形结构中的最大层数有关的信息、与最低层的区域的尺寸有关的信息以及关于与每一层分组的区域的信息是由与低层的区域有关的信息中的最小值还是最大值确定的信息。代替与最低层的区域的尺寸有关的信息,可以将要分组的区域的数量有关的信息包括在附加信息中并继而进行编码。在图3中,作为附加信息,树形结构中的最大层数是4,最低层的区域的尺寸是8×16像素,并且与每一层的分组区域有关的信息是与低层的区域有关的信息的最小值。在这种情况下,代替将最低层的区域的尺寸作为附加信息进行编码,可以将要分组的区域的数量“4”作为编码信息来编码。

参照图3,由于分配给第3层的前4个区域的编号的最小值是指示1/2精度的编号1,所以与第2层的第一区域有关的信息的值是指示1/2精度的编号1。按照这种方式,如图3所示的树形结构通过以下步骤来确定:对从第3层到第0层的每一层的区域进行分组,并且将与分组的区域内包括的区域有关的信息中的最小值确定为与分组的区域有关的信息的值。

如果确定了如图3中所示的树形结构,则编码装置100生成从上层到下层的代码比特(code bit),并且编码所生成的代码比特。另外,由于编码装置100知道要编码的信息的最大值,所以编码装置100可以通过使用截断一元码来生成二进制比特(binary bit)。

在这种情况下,用于编码每一层的节点的方法编码与上层节点值的差值,并且用于编码该差值的方法编码与该差值一样多的二进制比特“0”,并且在末尾处编码二进制比特“1”。如果要编码的当前节点的值与上层节点的值之间不存在差异,则编码二进制比特“1”。

更具体地,用于编码每个节点值的方法通过使用二进制比特“0”和“1”来编码要编码的当前节点的值与上层节点的值之间的差值,以下情况(1)至(3)除外。仅编码与差值一样多的二进制比特“0”,并且在末尾处编码二进制比特“1”。如果要编码的当前节点的值与上层节点的值之间不存在差异,则编码二进制比特“1”。相反,可以编码与差值一样多的二进制比特“1”,并且如果要编码的当前节点的值与上层节点的值之间不存在差异,则可以编码二进制比特“0”。

(1)在对每个节点值进行编码时,在上层节点的值是要编码的数据所能够具有的最大值的情况下,不编码下层节点,因为下层节点无法具有比上层节点更大的值。也就是说,所有的下层节点具有与上层节点的编号相同的值。

(2)在对差值进行编码时,在当前节点的值是要编码的数据的值或者是编号可以具有的最大值的情况下,编码数量与上层节点的差值相同的二进制比特“0”,并且在其末端不编码指示对当前节点的编码的终止的二进制比特“1”。例如,如果要编码的数据所能够具有的最大值是3,并且上层节点的值是1,则编码二进制比特“00”,并且要编码的当前节点的值是3。

(3)在对具有相同的上层节点的各个节点之中的最后一个节点的值进行编码时,在除了该最后一个节点以外的其它节点的值大于上层节点的值的情况下,不编码最后一个节点的值。

在对最高层节点的值进行编码时,通过使用上述二进制比特0或者1,将与要编码的数据的值或者编号所能够具有的最大值的差值编码。另外,用于对最高层节点的值进行编码的另一种方法可以编码与编号或者具有最高发生概率的数据的差值。

图4是示出根据本公开的第一实施方式的通过使用树形结构而编码的图2的运动矢量精度的比特的示例性示图。

图4示出了通过使用树形结构和相应的区域来编码与图2的区域有关的信息而生成的比特。下面将参照图4描述通过使用图3的树形结构来编码与图2的区域有关的信息的过程。在以下编码过程中,节点值意味着编号。

在区域(0,0)的情况下,作为最高层的第0层不存在上层。假设1/2精度具有最高发生概率,将上层的节点值设置为1(1/2精度)。因此,最高层的节点值与其上层层的节点值之间的差值是0。如果表述为二进制比特串,则0变为1。因为第1层中的区域(0,0)的节点值是1(1/2精度),并且上层的节点值是1(1/2精度),所以其间的差值是0。如果表述为二进制比特串,则0变为1。因为第2层中的区域(0,0)的节点值是1(1/2精度),并且上层的节点值是1(1/2精度),所以其间的差值是0。如果表述为二进制比特串,则0变为1。因为第3层中的区域(0,0)的节点值是1(1/2精度),并且上层的节点值是1(1/2精度),所以其间的差值是0。如果表述为二进制比特串,则0变为1。因此,通过将与图1中所示的区域之中的区域(0,0)有关的信息编码而获得的二进制比特串是1111。

在区域(0,1)的情况下,因为在将区域(0,0)的节点值编码的过程中已经编码了第0层、第1层和第2层的节点值,所以不编码第0层、第1层和第2层的节点值,而仅编码第3层的节点值。因为第3层中的区域(0,1)的节点值是2(1/4精度),并且其上层的节点值是1(1/2精度),所以编号之间的差值是1。如果表示为二进制比特串,则1变为01。因此,通过编码与图2中所示的区域之中的区域(0,1)有关的信息而获得的二进制比特串是01。

在区域(0,4)的情况下,因为在将区域(0,0)编码的过程中已经编码了第0层的节点值,所以不编码第0层的节点值,而仅编码第1层、第2层和第3层的节点值。因为第1层中的区域(0,1)的节点值是1(1/2精度),并且其上层的节点值是1(1/2精度),所以编号之间的差值是1。如果表示为二进制比特串,则1变为01。因为第2层中的区域(0,2)的节点值是2(1/4精度),并且其上层的节点值是2(1/4精度),所以编号之间的差值是0。如果表示为二进制比特串,则0变为1。因为第3层中的区域(0,4)的节点值是2(1/4精度),并且其上层的节点值是2(1/4精度),所以编号之间的差值是0。如果表示为二进制比特串,则0变为1。因此,通过编码与图1中所示的区域之中的区域(0,4)有关的信息而获得的二进制比特串是0111。

在区域(2,0)的情况下,因为已经编码了第0层和第1层的节点值,所以不编码第0层和第1层的编码值,并且仅编码第2层和第3层的节点值。因为第2层中的区域(1,0)的节点值是3(1/8精度),并且上层的节点值是1(1/2精度),所以编号之间的差值是最大值2,并且相应的节点值是3(1/8精度)。因此,由截断一元码生成的二进制比特串是00。因为最大值出现,所以不编码相应节点的下层的节点值。

同样地,在区域(2,6)的情况下,因为已经编码了第0层和第2层的节点值,所以不编码第0层和第1层的节点值,并且仅编码第2层和第3层的节点值。因为第2层中的区域(0,1)的节点值是3(1/8精度),并且上层的节点值是2(1/4精度),所以它们之间的差值是1,并且相应的节点值是3(1/8精度)。因此,通过截断一元码生成的二进制比特串是0。在这种情况下,因为最大值出现,所以不编码下层的节点值。

在执行算术编码的情况下,编码装置100通过使用二进制比特串或与相邻区域有关的信息来生成概率模型,并且对生成的二进制比特串执行算术编码。在不执行算术编码的情况下,编码装置100将生成的二进制比特串插入到比特流中。

以这种方式,通过使用树形结构来编码图2中示例性示出的信息,生成了比特流。

虽然图2至图4示出了向1/2精度、1/4精度和1/8精度分配编号1、2和3,并且接着编码的示例,但是可以通过使用与相邻区域有关的信息或者已编码的信息的发生概率向不同的精度分配不同的编号。

图5是示出根据本公开的第一实施方式的使用树形结构的编码方法的流程图。

对于根据本公开的第一实施方式的使用树形结构的编码方法,编码装置100将具有要编码的图像信息的预定区域分为多个组,并且通过将分组的区域内要编码的信息的最小值或者最大值确定为与分组的区域有关的信息来生成直至最高层的每一层的节点值(步骤S510)。编码装置100将每一层的节点值与上层的节点值之间的差值编码(步骤S520)。编码装置100编码附加信息,附加信息包括与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是由下层的节点值中的最小值还是最大值确定的有关的信息(步骤S530)。

编码装置100并非必须执行步骤S530,并且可以根据实现方案或者必要性而可选地执行步骤S530。例如,在编码装置100和解码装置(下文描述)相互知道与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是由下层的节点值中的最小值还是最大值确定的有关的信息中的一个或更多个的情况下,编码装置100可以不编码已相互知道的信息,而仅编码相互不知道的信息。如果在协商和建立过程中已相互知道所有信息,则编码装置100可以不编码附加信息。

在步骤S530,编码装置100可以将与要分组的区域的数量有关的信息而不是与最低层的区域的尺寸有关的信息插入到编码信息中,并且编码该编码信息。这是因为如果确定了最大层数,则也可以确定用于确定要分组的区域的数量的最低层的区域的尺寸。

在步骤S520,编码装置100可以通过使用二进制编码来编码差值,或者通过使用二进制编码来编码差值并接着改变概率模型从而执行二进制算术编码。在这种情况下,概率模型可以基于相邻层或者上层的节点值来确定,或者可以在每一层不同地改变。

在步骤S520,在每一层的节点值是由下层的节点值中的最小值来确定的情况下,编码装置100可以跳过对具有最大节点值的节点的更下层的节点值的编码。在由下层的节点值中的最大值来确定每一层的节点值的情况下,编码装置100可以跳过对具有最小节点值的层以下的层的节点值的编码。

在步骤S520,编码装置100可以改变分配给要编码的信息的编号,以便根据要编码的信息的发生概率来执行编码。

在步骤S520,在编码装置编码最高层的节点值的情况下,编码装置100可以将最高层的上层的节点值设置为预定值,并且对最高层的节点值与所设置的预定值之间的差值进行编码。

图6是示意性地示出根据本公开的第一实施方式的使用树形结构的解码装置的框图。

根据本公开的第一实施方式的使用树形结构的解码装置600可以包括附加信息解码器610和树形解码器620。

附加信息解码器610解码比特流以重构附加信息,附加信息包括与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与是每一层的节点值由下层的节点值中的最小值还是最大值来确定的有关的信息。树形解码器620使用解码后的附加信息来重构树形结构,并且重构每一层的节点值与其上层的节点值之间的差值或者每一层的节点值与由预设标准确定的值之间的差值。在这种情况下,附加信息解码器610通过从比特流的头部中提取具有编码的附加信息的数据并且接着解码提取出的数据来重构附加信息。比特流的头部可以是宏块头部、切片头部、图片头部或者序列头部。由预设标准确定的值可以是在先前的区域或相邻的区域中到目前为止已解码的区域中具有最高发生概率的值,但是不限于此,并且可以是由各种标准确定的值。

附加信息解码器610并非必须包括在解码装置600中,并且可以根据实现方案或者必要性而可选地包括在其中。例如,在编码装置100和解码装置600相互知道与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与是每一层的节点值由下层的节点值中的最小值还是最大值确定的有关的信息的情况下,编码装置100可以不编码附加信息,并且相应地,解码装置600可以通过使用预设附加信息来重构树形结构,无需通过解码比特流来重构附加信息。

树形解码器620通过使用附加信息来解码比特流,以重构每一层的节点值与上层的节点值之间的差值或者每一层的节点值与由预设标准确定的值之间的差值。树形解码器620通过将重构的差值与上层的节点值相加来重构每一层的节点值。树形解码器620将最低层的节点值重构为要解码的信息。也就是说,树形解码器620通过使用预设的或者由附加信息解码器610重构的附加信息来重构增强的树形结构。树形解码器620基于增强的树形结构来解码比特流,以重构每一层的节点值与上层的节点值之间的差值。树形解码器620通过将重构的差值与上层的节点值相加来重构每一层的节点值。

在这种情况下,树形解码器620可以通过使用多种二进制解码方法(诸如,一元码、截断一元码和指数哥伦布码)来解码比特流,以重构每一层的节点值与上层的节点值之间的差值。另外,在通过使用各种二进制解码方法(诸如,一元码、截断一元码和指数哥伦布码)解码比特流之后,树形解码器620可以通过基于相邻层或上层的节点值确定要解码的层的概率模型来执行二进制算术解码。另外,树形解码器620可以通过差别地改变每一层的概率模型来执行对比特流的算术解码。

在基于附加信息而识别出编码装置100确定下层的节点值中的最小值为每一层的节点值的情况下,树形解码器620跳过对具有最大节点值的层以下的层的节点值的解码,假设下层的所有节点值具有相同的值。另一方面,在基于附加信息识别了编码装置100确定下层的节点值中的最大值为每一层的节点值的情况下,树形解码器620跳过对具有最小节点值的层以下的层的节点值的解码,假设下层的所有节点值具有相同的值。

树形解码器620可以根据要解码的信息的发生概率而差别地改变编号。也就是说,树形解码器620可以根据要解码的信息的发生概率而分配小编号或者大编号。要解码的信息的发生概率可以通过使用多种方法来计算,诸如与预定的相邻区域有关的信息的发生概率,或者在具有要解码的信息的区域之前已被解码和重构的信息的发生概率。

在树形解码器620重构最高层的节点值与其上层的节点值之间的差值的情况下,假定由于最高层的上层不存在而具有预定值,树形解码器620仅重构差值。在这种情况下,预定值可以是以下值之中的任一个:在到目前为止解码出的具有最高发生概率的值、预设值、与预定的相邻区域有关的信息的值之中的具有最高发生概率的值等。

下面将参照图2至图4来详细描述根据本公开的第一实施方式的通过使用树形结构来解码比特流以重构信息的过程。

解码装置600从比特流的图片头部、切片头部或者宏块头部中提取出具有编码的附加信息的数据,并且通过解码提取出的数据来重构附加信息。另外,解码装置600可以使用预设的附加信息。附加信息可以包括与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是由下层的节点值中的最小值还是最大值确定的有关的信息。解码装置600可以通过使用附加信息中的与最大层数有关的信息以及与最低层的区域的尺寸有关的信息来重构如图3所示的树形结构。在这种情况下,解码装置600可以通过使用要分组的区域的数量有关的信息而不是与最低层的区域的尺寸有关的信息来重构树形结构。另外,解码装置600可以通过使用与最低层的区域的尺寸有关的信息以及与要分组的区域的数量有关的信息二者来重构树形结构。

如果重构了如图3所示的树形结构,则解码装置600使用重构的树形结构来解码比特流,在比特流中编码了每一层的节点值与上层的节点值之间的差值,如以上参照图4所述。

因为解码装置600已知道要解码的信息的最大值,所以解码装置600通过使用截断一元码来解码二进制比特串。在这种情况下,可以假设1/2精度、1/4精度和1/8精度的编号分别是1、2和3。可以根据各个精度的发生概率而差别地改变各个精度的编号。如果解码装置600执行二进制比特串的算术解码,则解码装置600通过使用与相邻区域有关的信息或者二进制比特串来生成概率模型,并且通过下比特流的算术解码来生成二进制比特流。如果解码装置不执行二进制比特串的算术解码,则解码装置600通过解码比特流而生成二进制比特串。

参照图4,在区域(0,0)的情况下,最高层第0层没有上层。假设上层的节点值具有1/2精度(最高发生概率),如果解码了二进制比特串1,则最高层的节点值与其上层的节点值之间的差值是0。在第1层中,如果解码了二进制比特串1,则与其上层的节点值的差值是0。在第2层中,如果解码了二进制比特串1,则与其上层的节点值的差值是0。在第3层中,如果解码了二进制比特串1,则与其上层的节点值的差值是0。如果将每一层的节点值与每一层的节点值和其上层的节点值之间的差值相加,则每一层的节点值是1,即,1/2精度。因此,区域(0,0)的重构的信息是1/2精度。

在区域(0,1)的情况下,因为在重构与区域(0,0)有关的信息的过程中已经解码了第0层、第1层和第2层,所以不对它们执行额外解码。在第3层中,如果解码了二进制比特串01,则与其上层的节点值的差值是1。因此,区域(0,1)的重构的信息是2,意味着1/4精度。

在区域(2,0)的情况下,因为在重构与区域(0,0)有关的信息的过程中已解码了第0层和第1层,所以不对它们执行额外解码。在第2层中,因为上层的节点值是1(1/2精度),所以可以知道与上层的节点值的差值是最大值,即,2。因此,如果通过截断一元码解码二进制比特串00,则区域(2,0)的重构的信息是1/8精度。

同样地,在区域(2,6)的情况下,因为第2层的上层是1/4精度,所以可以知道差值的最大值是1。如果通过截断一元码解码二进制比特流0,则与上层的差值是1,并且区域(2,6)的重构的信息是1/8精度。在这种情况下,因为出现了最大值,所以不解码下层的节点值,并且将该节点值确定为1/8精度。

在上述示例中,在假设向1/2精度、1/4精度和1/8精度分别分配了编号1、2和3的情况下执行解码。然而,通过使用与相邻区域有关的信息或者被解码并重构的信息的发生概率,可以差别地改变各个精度的编号。

图7是示出根据本公开的第一实施方式的使用树形结构的解码方法的流程图。

对于根据本公开的第一实施方式的使用树形结构的解码方法,解码装置600解码比特流以重构附加信息(步骤S710)。也就是说,解码装置600从比特流的预定编码单元的头部(诸如,图片头部、切片头部或者宏块头部)中提取出具有编码的附加信息的数据,并且通过解码提取出的数据来重构附加信息。附加信息可以包括与最大层数有关的信息、与最低层的区域的尺寸有关的信息以及与每一层的节点值是通过下层的节点值中的最小值还是最大值确定的有关的信息。

解码装置600并非必须执行步骤S710,而是可以根据实现方案或者必要性而可选地执行步骤S710。例如,在编码装置100和解码装置600相互协商地预设包括在附加信息中的所有信息片的情况下,编码装置100可以不编码附加信息,并且相应地,解码装置600可以通过使用预设的附加信息来解码比特流。在包括在附加信息中的信息仅部分是由编码装置100与解码装置600之间的预先安排而设置的情况下,编码装置100可以仅编码相互不知道的信息,并且解码装置600可以解码比特流以仅重构相互不知道的信息。重构的信息和预设的其他信息可以用于解码。

解码装置600可以解码比特流以重构每一层的节点值与上层的节点值之间的差值(步骤S720)。也就是说,解码装置600通过使用在步骤S710重构的附加信息或者预设的附加信息来重构增强的树形结构,并且通过使用重构的增强的树形结构来解码比特流从而重构每一层的节点值与上层的节点值之间的差值。

解码装置600通过将重构的差值与上层的节点值相加来重构每一层的节点值(步骤S730),并且重构最低层的节点值作为要解码的信息(步骤S740)。

在步骤S720,解码装置600可以通过使用二进制解码方法解码比特流来重构每一层的节点值,或者可以通过使用二进制解码方法解码比特流并接着改变概率模型执行二进制算术解码来重构每一层的节点值。概率模型可以基于相邻层或者上层的节点值来确定,或者可以在每一层不同地改变。

在步骤S720,解码装置600可以改变分配给要解码的信息的编号,以便根据要解码的信息的发生概率来解码。

在步骤S730,在识别出每一层的节点值是由下层的节点值中的最小值确定的情况下,解码装置600可以使用最大值来重构具有最大节点值的层以下的层的所有节点值。

在步骤S730,在识别出每一层的节点值是由下层的节点值中的最大值确定的情况下,解码装置600可以使用最小值来重构具有最小节点值的层以下的层的所有节点值。

在步骤S730,在解码最高层的节点值时,解码装置600可以通过将最高层的上层的节点值设置为预定值来重构最高层的节点值。

如上所述,根据本公开的第一实施方式,通过使用树形结构来有效率地编码要编码的图像信息,可以提高压缩效率。

图8是示意性地示出根据本公开的第二实施方式的使用树形结构的编码装置的框图。

根据本公开的第二实施方式的使用树形结构的编码装置800可以包括树形编码器810和附加信息编码器820,二者都用于可变尺寸的块。

用于可变尺寸的块的树形编码器810对具有要编码的图像信息的预定区域之中具有相同信息的区域进行分组,并且将节点值和指示每一层的节点是否被划分的标记中的一个或多个编码。

用于可变尺寸的块的附加信息编码器820编码附加信息,附加信息包括与根据第二实施方式的树形结构中的最大层数有关的信息以及与由最低层的每个节点指示的区域的尺寸有关的信息。编码的附加信息被包括在比特流的头部中。比特流的头部可以是序列头部、图片头部、切片头部、宏块头部等。

以下将参照图9和图10详细描述通过使用树形结构来编码要编码的信息的过程。

图9是示出根据本公开的第二实施方式的树形结构的示例性示图。

图9A示出了单个图片内具有要编码的信息的区域。在图9A中,每个区域可以是16×16像素宏块。在每个区域内指示的A、B和C表示各个区域中要编码的信息。此类信息可以是运动矢量精度,但是不限于此,并且可以是各种信息,诸如分区类型信息、帧内预测模式或者系数信息。在第二实施方式中,虽然假设每个区域是16×16像素宏块,但是区域也可以是各种块,诸如64×64像素块、32×32像素块、16×32像素块、16×16像素块、16×8像素块、8×8像素块、8×4像素块、4×8像素块或者4×4像素块。另外,各个区域可以具有不同的尺寸。

图9B示出了图9A中所示的区域之中多组具有相同信息的区域。图9C示出了与图9B所示分组的区域有关的信息的树形结构。在图9C中,由最低节点指示的区域是16×16宏块,并且树形结构中的最大层数是4。因此,对此类附加信息进行编码并且将其包括在相关区域的头部中。

图10是示出根据本公开的第二实施方式的表示为树形结构的信息编码结果的示例性示图。

如果编码图9C中所示的树形结构的信息,则可以获得如图10所示的最终比特流。节点是否被划分为下层的节点由单个比特来编码。例如,比特值‘1’表示当前节点被划分为下层的节点,并且比特值‘0’表示当前节点不被划分为下层的节点。在最低层的节点的情况下,不对节点是否被划分为下层的节点进行编码,而是将最低层的节点的节点值编码。

在图9C中,因为第0层的节点被划分为下层的节点,所以使用比特值‘1’来编码第0层的该个节点。因为划分出的第1层的第一节点的节点值是A,并且该第一节点不再被划分为下层的节点,所以使用比特值‘0’来编码第一节点,并且编码节点值A。因为第1层的第二节点被划分为下层的节点,所以第二节点使用比特值‘1’来编码。因为第1层的第三节点不被划分为下层的节点,所说第三节点使用比特值‘0’来编码,并且编码节点值B。因为第1层的最后第四节点被划分为下层的节点,所以最后第四节点使用比特值‘1’编码。按照相同的方式,编码第2层的各个节点。在第3层中,在头部中,最大层数被指定为4。因此,由于可以知道不再有下层的节点,所以仅编码每个节点值。

虽然为了方便起见使用A、B和C来指示各节点值,但是也可以将各节点值表示为二进制比特。另外,图9的示例仅示出了两种情况:第一情况,节点被划分为下层的节点;以及第二情况,节点不被划分为下层的节点。在该实施方式中,在节点被划分为下层的节点的情况下,节点划分为4个节点。参照图9,节点划分为下层的4个节点意味着与将与当前层的节点相对应的区域划分为4个相等的子区域。另选地,如图11所示,可以按照多种形式将节点划分为下层的节点。例如,可以不将节点划分为下层的节点。可以按照两个水平划分区域的形式将节点划分为下层的节点。可以按照两个垂直划分区域的形式将节点划分为下层的节点。可以按照四个区域的形式将节点划分为下层的节点。在这种情况下,可以将指示四种划分类型的信息发送到解码装置。

如果分组的区域不大,则编码装置800可以通过编码指示上层的节点被划分为特定层的节点的标记来减少用于指示存在下层的节点的比特的数量。例如,在比特流的头部中指定最大层数为4并且要编码的信息如图12所示分布的情况下,图12中所示的区域可以通过如图13所示那样对具有相同信息的区域进行分组来表示。在这种情况下,编码装置800可以将指示最高层的节点被划分为第2层或者第3层的节点的标记编码。因此,可以减少指示上层的节点被划分为下层的节点的标记的数量,从而减少了比特的数量。

图14是示出根据本公开的第二实施方式的使用树形结构的编码方法的流程图。

对于根据本公开的第二实施方式的使用树形结构的编码方法,编码装置800对具有要编码的预定区域之中具有相同信息的区域进行分组,并且将节点值和指示每一层的各个节点是否被划分的标记中的一个或多个编码(步骤S1410),并且将附加信息编码,附加信息包括与最大层数有关的信息以及与由最低层的每个节点所指示的区域的尺寸有关的信息(步骤S1420)。

在步骤S1410,如果节点被划分,则编码装置800可以编码指示节点的划分的标记。也就是说,编码装置800可以确定每一层的节点是否被划分。如果节点被划分,则编码装置800可以仅编码指示相应节点被划分为下层的节点的标记,而不编码相应的节点值。

在步骤S1410,如果节点没有被划分,则编码装置800可以编码节点的节点值和指示节点没有被划分的标记。也就是说,编码装置800可以确定每一层的节点是否被划分。如果节点没有被划分,则编码装置800可以编码相应节点的节点值以及指示相应节点没有被划分为下层的节点的标记。术语“节点的节点值”是指节点所拥有的信息。如果将具有相同信息的区域分组为单个节点,则所述相同信息是节点值。

在步骤S1410,如果节点是最低层的节点,则编码装置800可以仅编码相应节点的节点值。也就是说,编码装置800可以在确定每一层的节点是否被划分之前,确定要编码的节点是否是最低层。如果相应节点是最低层,则编码装置800可以仅编码相应节点的节点值,而不编码指示相应节点是否被划分的标记。

在步骤S1420,编码装置800可以将具有编码的附加信息的数据插入到比特流的头部中。比特流的头部可以是各种编码单位的头部,诸如序列头部、图片头部、切片头部或者宏块头部。

在步骤S1410,在编码指示节点被划分的标记之后,编码装置800可以编码指示节点被直接划分为一个或多个下层的节点的标记。也就是说,在编码指示节点是否被划分的标记之后,如果相应节点被划分为下层的节点,则编码装置可以编码指示相应节点被再分为下面一层的标记,并且还可以编码指示相应节点被划分为下面两个或者更多个层的节点的标记。

图15是示意性地示出根据本公开的第二实施方式的使用树形结构的解码装置的框图。

根据本公开的第二实施方式的使用树形结构的解码装置1500可以包括附加信息解码器1510和树形解码器1520,二者都用于可变尺寸的块。

用于可变尺寸的块的附加信息解码器1510解码比特流以重构附加信息,附加信息包括与最大层数有关的信息以及与由最低层的每个节点指示的区域的尺寸有关的信息。用于可变尺寸的块的树形解码器1520使用重构的附加信息来重构树形结构。在这种情况下,用于可变尺寸的块的附加信息解码器1510从比特流的头部中提取出具有编码的附加信息的数据,并且解码提取出的数据以重构附加信息。比特流的头部可以是宏块头部、切片头部、图片头部、序列头部等。

然而,用于可变尺寸的块的附加信息解码器1510并非必须包括在解码装置1500中,而是可以根据实现方案或者必要性而可选地包括。例如,在编码装置800和解码装置1500预先相互协商了最大层数和由最低层的每个节点指示的区域的尺寸的情况下,编码装置800可以不编码附加信息。因此,解码装置1500也可以不通过解码比特流而重构附加信息,而是可以通过使用预设附加信息来重构树形结构。

用于可变尺寸的块的树形解码器1520基于附加信息来解码比特流,以重构指示从最高层到最低层的每一层的节点是否被划分的标记,并且通过根据重构的标记重构每一层的节点的节点值来重构信息。也就是说,用于可变尺寸的块的树形解码器1520基于由用于可变尺寸的块的附加信息解码器1510重构的附加信息或者预设的附加信息来解码比特流。用于可变尺寸的块的树形解码器1520确定从最高层到最低层的每一层的节点是否被划分。如果没有被划分,则用于可变尺寸的块的树形解码器1520通过重构节点的节点值来重构树形结构,并且基于重构的树形结构来重构要解码的信息。

将参照图9和图10提供有关于根据本公开的第二实施方式的由解码装置1500通过使用树形结构来解码比特流从而重构信息的过程的描述。

解码装置1500从比特流的宏块头部、切片头部、图片头部或者序列头部中提取出编码的附加信息,并且解码提取出的附加信息以重构附加信息。附加信息包括与树形结构中的最大层数有关的信息以及与由最低层的每个节点指示的区域的尺寸有关的信息。

解码装置1500从比特流中提取比特串,诸如图10的最终比特。接着,如上所述,解码装置1500基于重构的附加信息和提取的比特串来重构树形结构,如图10示意性所示。

例如,解码装置1500顺序地读取从比特流中提取出的最终比特的比特串的比特值,并且重构指示从最高层到最低层的每一层的节点是否被划分为下层的节点的标记。如果重构的标记指示节点没有被划分为下层的节点,则解码装置1500读取下一比特串,并且重构相应节点的节点值。重构的节点值是要解码的信息。另外,如果重构的标记指示节点被划分为下层的节点,则解码装置1500读取下一比特值,并且重构指示下一节点或者下一层后的下一节点是否被划分为下层的节点的标记。按照这种方式,解码装置1500顺序地读取比特串,并且重构信息一直到至最低层。同时,对于最低层的节点,解码装置1500不重构指示节点是否被划分的标记,并且仅重构各个节点的节点值。

在节点被划分为下层的节点的情况下,节点被划分为4个节点,如图9示意性所示。参照图9,节点被划分为下层的4个节点意味着与当前层的节点相对应的区域被划分为4个相等的子区域。另选地,如图11中所示,可以按照多种形式将节点划分为下层的节点。例如,可以不将节点划分为下层的节点。可以按照两个水平划分区域的形式将节点划分为下层的节点,可以按照两个垂直划分区域的形式将节点划分为下层的节点。可以按照四个区域的形式将节点划分为下层的节点。在这种情况下,从编码装置向解码装置1500发送指示四种划分类型的信息。

按照这种方式,解码装置1500通过从最高层到最低层重构信息来重构如图9C中所示的树形结构,并且基于重构的树形结构来重构与图9B和图9A所示的各个区域有关的信息。

如果通过从比特流的比特串中提取数据并且解码所提取的数据而重构的标记指示特定层的节点被直接划分为下面两层或更下面的层的节点,则解码装置1500跳过对所指示的层之间的层的解码,并且解码相应节点的节点值和指示被指出的下层的节点是否被划分的标记中的一个或多个。

图16是示出根据本公开的第二实施方式的使用树形结构的解码方法的流程图。

关于根据本公开的第二实施方式的使用树形结构的解码方法,解码装置1500解码比特流以重构附加信息,附加信息包括与最大层数有关的信息以及与由最低层的每个节点指示的区域的尺寸有关的信息(步骤S1610)。解码装置1500基于附加信息解码从比特流中提取的比特串,以重构指示从最高层到最低层的每一层的节点是否被划分的标记,并且通过根据重构的标记重构每一层的节点的节点值来重构信息(步骤S1620)。

在步骤S1620,如果标记指示节点没有被划分为下层的节点,则解码装置150可以重构该节点的节点值。也就是说,解码装置1500重构指示每一层的节点是否被划分的标记,如果重构的标记指示相应节点的节点被划分为下层的节点,则解码下一节点,并且在重构的标记指示相应节点的节点没有被划分为下层的节点时仅重构相应节点的节点值。

在节点被划分为下层的节点的情况下,节点被划分为4个节点,如图9示例性示出的。另选地,如图11所示,可以按照各种形式将节点划分为下层的节点。例如,可以不将节点划分为下层的节点。可以按照两个水平划分区域的形式将节点划分为下层的节点。可以按照两个垂直划分区域的形式将节点划分为下层的节点。可以按照四个区域的形式将节点划分为下层的节点。在这种情况下,向解码装置1500发送指示四种划分类型的信息。

在步骤S1620,解码装置1500可以仅重构最低层的各个节点的节点值。也就是说,在重构用于指示每一层的节点是否被划分的标记和/或节点的节点值的过程中,解码装置1500预先确定要解码的节点是否包括在最低层中。如果要解码的节点包括在最低层中,则解码装置1500仅重构相应节点的节点值,而不重构指示相应节点是否被划分的标记。

在根据本公开的实施方式的使用树形结构的编码/解码方法中,要编码和解码的信息不限于实施方式中提出的数据,而是可以应用于以下提出的各种信息的编码和解码。

要编码的信息可以包括与图像信号有关的信息或者用于编码图像信号的各种信息,诸如宏块尺寸和宏块类型信息、指示用于预测和变换的子块的尺寸和类型的宏块分区信息、帧内预测信息、运动矢量、运动矢量预测方向、最优运动矢量预测候选、任意尺寸的区域的最优内插滤波器、图像增强滤波器的使用与否、参考图片索引、量化矩阵索引、最优运动矢量精度和变换尺寸信息、图像像素信息、编码块信息或者指示预定块内是否存在零以外的变换系数的系数信息。

在本公开的实施方式中,宏块具有可变尺寸作为视频编码和解码的默认单位。根据本公开的实施方式,可以通过使用树形结构来编码宏块尺寸信息。为此,根据本公开的实施方式的编码装置生成与宏块的最大尺寸和最小尺寸有关的信息、与构成树的最大层数有关的信息以及宏块划分分区标记,并且向解码装置发送生成的信息。可以将与宏块的最大尺寸与最小尺寸有关的信息以及与构成树的最大层数有关的信息包括在比特流中,作为序列、图片组(GOP)、图片、切片等的头部信息。

如图9或者图11所示,宏块划分标记可以通过使用树形结构来编码,并且可以包括在编码单位的头部中。换言之,根据本公开的实施方式的使用树形结构而编码和解码的信息是上述宏块划分标记。

可以利用分开确定的水平尺寸和垂直尺寸来设置宏块的最大尺寸和最小尺寸,以允许使用任意尺寸的宏块。另外,要编码的宏块的最大尺寸和最小尺寸可以被分配以实际尺寸,或者可以发送放大率以指示将预定尺寸放大或缩小特定倍数。为了编码放大比率以用于通过将预定尺寸乘以特定倍数(被选择为16)来生成最大宏块尺寸,编码了log2(选定的MB尺寸/16)的值。例如,如果宏块尺寸是16×16,则编码0。如果宏块尺寸是32×32,则编码1。另外,可以分开编码水平尺寸和垂直尺寸的比率。

另选地,在通过上述方法编码最大宏块尺寸值之后,通过使用指示最大宏块尺寸与最小宏块尺寸的比率的log2(最大宏块尺寸/最小宏块尺寸)的值,可以编码宏块的最小尺寸值。相反,在通过上述方法编码最小块尺寸之后,通过使用log2(最大宏块尺寸/最小宏块尺寸)的值,可以编码最大宏块尺寸值。

另外,根据本公开的实施方式,可以使用根据本公开的树形结构来编码和解码宏块分区信息。宏块分区信息可以包括与用于预测和/或变换的子块的最大尺寸和最小尺寸有关的信息、与构成树的最大层数有关的信息以及宏块分区划分标记,作为与用于预测和/或变换的子块(也就是说,宏块分区)的尺寸和/或类型相关的信息。根据本公开的实施方式的编码装置向解码装置发送宏块分区信息。

可以以整个图片序列、GOP、图片或者切片为单位确定用于预测和/或变换的子块的最大尺寸和最小尺寸。可以将与用于预测和/或变换的子块的最大尺寸和最小尺寸有关的信息以及与构成树的最大层数有关的信息包括在比特流中,作为序列、GOP、图片或者切片的头部信息。

另一方面,通过使用根据本公开的实施方式的树形结构,可以编码宏块分区信息之中的宏块分区划分标记。宏块分区划分标记可以包括在与编码单位相对应的宏块的头部中或者宏块分区的头部中。

另外,针对用于预测和/或变换的子块尺寸,也就是说,预测和/或变换尺寸信息,可以分开地设置最大尺寸和最小预测的水平尺寸和垂直尺寸和/或变换尺寸。因此,可以使用具有任意尺寸的预测和/或变换。另外,可用的预测和/或变换的最大尺寸和最小尺寸可以被分配以实际尺寸,或者可以发送放大率以用于指示将预定尺寸放大或者缩小特定倍数。为了编码放大比率以用于通过将预定尺寸乘以特定倍数(其被选择为4)来生成最大预测和/或变换尺寸,编码log2(选择的预测和/或变换/4)的值。例如,如果预测和/或变换尺寸是4×4,则编码0。如果预测和/或变换尺寸事8×8,则编码1。另外,可以分开地编码水平尺寸和垂直尺寸的比率。

另选地,在通过上述方法编码最大预测和/或变换尺寸的值之后,通过使用指示最大预测和/或变换尺寸与最小预测和/或变换尺寸的比率的log2(最大预测和/或变换尺寸/最小预测和/或变换尺寸)的值,可以编码最小预测和/或变换尺寸的值。相反,在通过上述方法编码最小预测和/或变换尺寸的值之后,通过使用log2(最大预测和/或变换尺寸/最小预测和/或变换尺寸)的值,可以编码最大预测和/或变换尺寸的值。

指示预定块内是否存在非零的变换系数的编码块信息可以是1比特标记,该1比特标记指示用于预测或者变换而划分的子块内是否存在非零的变换系数。在这种情况下,可以针对亮度分量(Y)块和色度分量(U,V)块编码不同的标记。对于亮度和色度分量(Y,U,V)的三个块,可以由单个标记指示非零的变换系数是否存在。

另选地,在编码指示三个分量(Y,U,V)的所有块内是否存在非零的变换系数的标记之后,可以在存在非零的变换系数时仅编码变换类型,并且继而可以分别编码指示各个色度分量的子块内是否存在非零的变换系数的标记。

根据本公开的上述实施方式,树形编码器通过对具有要编码的图像信息的区域之中具有相同信息的区域进行分组而生成要编码的图像信息的树形结构。然而,这仅是生成树形结构的一个示例,并且对于本领域技术人员明显的是,可以按照多种方式生成树形结构。例如,通过将参考块(例如,最大尺寸的宏块)反复划分为较小尺寸的子块,可以确定正在作为编码/解码单位的宏块的尺寸或者用于预测或者变换的子块的尺寸。换言之,通过将参考块划分为多个第一子块,将第一子块再分为较小尺寸的第二子块,或者不对第一子块进行再划分,可以将用于预测或者变换的各种尺寸的宏块或者子块包括在单个图片中。在这种情况下,是否将块划分为子块可以由划分标记指示。按照这种方式,宏块尺寸信息(即,宏块划分标记)或者用于预测或者变换的子块尺寸信息(即,宏块分区划分标记)具有如图9B或者图9C所示的树形结构。

虽然已经出于例示的目的而描述了本公开的示例性实施方式,但是本领域技术人员将理解,在不脱离本公开的本质特征的情况下,各种修改、添加和替换都是可能的。因此,本公开的示例性方面不是为了限制性的目的而描述的。因此,本公开的范围不由以上方面限定,而是由权利要求及其等同物限定。

工业实用性

如上所述,本公开对于编码和解码图像的视频压缩处理中的应用是非常有用的,能够通过在对多种图像信息的编码和对产生的编码的数据的解码中使用树形结构而提高编码效率,并且进而提高视频压缩效率。

相关申请的交叉引用

在适当的情况下,本申请按照35 U.S.C §119(a)的规定要求于2009年12月10日在韩国提交的专利申请No. 10-2009-0122500和于2010年12月10日在韩国提交的专利申请No. 10-2010-0126315的优先权,在此通过引用方式并入其全部内容。另外,该非临时申请要求基于韩国专利申请以相同的理由要求在除美国以外的其他国家的优先权,在此通过引用并入其全部内容。

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