使用帧内预测对视频进行编码/解码的方法和装置与流程

文档序号:11456369阅读:226来源:国知局
使用帧内预测对视频进行编码/解码的方法和装置与流程

本发明涉及视频编码方法和视频解码方法,更具体地,涉及使用帧内预测方法的视频编码和解码方法。



背景技术:

随着不断开发和供应用于再现和存储高分辨率或高质量视频内容的硬件,针对用于将高分辨率或高质量视频内容高效编码或解码的视频编解码器的需求逐渐增长。根据传统的视频编解码器,基于具有树形结构的编码单元来根据有限编码方法对视频进行编码。

经由频率转换将空间区域的图像数据转换成频率区域的系数。根据视频编解码器,将图像分割成具有预定尺寸的块,在每个块上执行离散余弦变换(dct),并且以块为单位对频率系数进行编码,以便快速计算频率转换。与空间区域的图像数据相比,频率区域的系数容易被压缩。具体而言,由于根据视频编解码器的帧间预测或帧内预测的预测误差来表达空间区域的图像像素值,因此,当在预测误差上执行频率转换时,可能将大量的数据转换成0。通过用小尺寸的数据来替换连续且重复生成的数据,可以减少图像数据量。



技术实现要素:

技术问题

为了增加视频编码/解码效率,提供一种能够改变预测单元与变换单元之间的关系的帧内预测方法。

技术解决方案

根据实施例的一方面,视频解码方法包括:确定与通过分割上部块而生成的多个下部块中的一个相对应的当前下部块的帧内预测模式;基于与上部块相邻的样本来确定当前下部块的参考样本;通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及基于预测值来重建当前下部块,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

上部块可以是编码单元,并且多个下部块可以是编码单元中包括的预测单元。

确定参考样本可以包括将与上部块相邻的所有样本确定为参考样本。

确定参考样本可以包括将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。

视频解码方法还可以包括获取上部块边界帧内预测标记,其表明是否基于与上部块相邻的样本来确定参考样本。

确定参考样本可以包括:如果上部块边界帧内预测标记表明参考样本被确定为与上部块相邻的样本,那么将与上部块相邻的样本确定为当前下部块的参考样本。

获取上部块边界帧内预测标记可以包括针对上部块或者上部块的上部视频数据来获取上部块边界帧内预测标记。

可以通过在上部块中包括的所有下部块上执行确定帧内预测模式、确定参考样本以及确定预测值来预测上部块。

当前下部块和在上部块中包括的其他下部块可以彼此并行地预测和重建。

视频解码方法还可以包括将平滑滤波器应用到与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻的样本。

根据实施例的另一方面,视频解码设备包括:帧内预测模式确定器,其被配置成确定与通过分割上部块而生成的多个下部块中的一个相对应的当前下部块的帧内预测模式;参考样本确定器,其被配置成基于与上部块相邻的样本来确定当前下部块的参考样本;预测器,其被配置成通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及重建器,其被配置成基于预测值来重建当前下部块,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

上部块可以是编码单元,并且多个下部块可以是编码单元中包括的预测单元。

参考样本确定器可以将与上部块相邻的所有样本确定为参考样本。

参考样本确定器可以将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。

视频解码设备还可以包括上部块边界帧内预测标记获取器,其用于获取表明是否基于与上部块相邻的样本来确定参考样本的上部块边界帧内预测标记。

如果上部块边界帧内预测标记表明参考样本被确定为与上部块相邻的样本,那么参考样本确定器可以将与上部块相邻的样本确定为当前下部块的参考样本。

上部块边界帧内预测标记获取器可以针对上部块或者上部块的上部视频数据来获取上部块边界帧内预测标记。

可以通过在上部块中包括的所有下部块上执行帧内预测模式确定器、参考样本确定器和预测器的功能来预测上部块。

当前下部块和在上部块中包括的其他下部块可以彼此并行地预测。

视频解码设备还可以包括边界滤波器,其用于将平滑滤波器应用到与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻的样本。

根据实施例的另一方面,视频编码方法包括:确定与上部块相邻的样本之中的、上部块中包括的当前下部块的参考样本;确定当前下部块的帧内预测模式,该帧内预测模式针对参考样本进行优化;通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及基于预测值对当前下部块进行编码,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

根据实施例的另一方面,视频编码设备包括:参考样本确定器,其被配置成确定与上部块相邻的样本之中的、上部块中包括的当前下部块的参考样本;帧内预测模式确定器,其被配置成确定当前下部块的帧内预测模式,该帧内预测模式针对参考样本进行优化;预测器,其被配置成通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及编码器,其用于基于预测值对当前下部块进行编码,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

根据实施例的另一方面,一种计算机可读记录介质在其上记录有计算机程序,该计算机程序用于执行视频解码方法和视频编码方法。

本发明的有益效果

通过将与编码单元相邻的样本用作参考样本,可以彼此独立且并行地预测编码单元中包括的预测单元。此外,预测单元的预测可以独立于变换单元的变换并且与之并行地执行。此外,无论变换单元的形式如何,预测单元都可以具有多种形式。

由于上述效果,视频编码/解码效率得以提供。

附图说明

图1a示出根据实施例的基于具有树形结构的编码单元的视频编码设备的框图。

图1b示出根据实施例的基于具有树形结构的编码单元的视频解码设备的框图。

图2示出根据实施例的编码单元的概念。

图3a示出根据实施例的基于编码单元的视频编码器的框图。

图3b示出根据实施例的基于编码单元的视频解码器的框图。

图4示出根据实施例的根据深度的较深编码单元和分区。

图5示出根据实施例的编码单元与变换单元之间的关系。

图6示出根据实施例的根据深度的多个编码信息片。

图7示出根据实施例的根据深度的较深编码单元。

图8、图9和图10示出根据实施例的编码单元、预测单元与变换单元之间的关系。

图11示出根据表1的编码模式信息的,编码单元、预测单元与变换单元之间的关系。

图12a是根据实施例的视频解码设备的框图。

图12b是根据实施例的视频解码方法的流程图。

图13a是根据实施例的视频编码设备的框图。

图13b是根据实施例的视频编码方法的流程图。

图14a到图14d是用于描述使用与预测单元相邻的样本的帧内预测方法与使用与编码单元相邻的样本的帧内预测方法之间的差异的示意图。

图15是用于描述根据实施例的使用与编码单元相邻的样本的帧内预测方法的示意图。

图16是用于描述根据实施例的在预测单元之间应用平滑滤波器的方法的示意图。

具体实施方式

最佳实施方式

根据实施例的一方面,视频解码方法包括:确定与通过分割上部块而生成的多个下部块中的一个相对应的当前下部块的帧内预测模式;基于与上部块相邻的样本来确定当前下部块的参考样本;通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及基于预测值来重建当前下部块,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

根据实施例的另一方面,视频解码设备包括:帧内预测模式确定器,其被配置成确定与通过分割上部块而生成的多个下部块中的一个相对应的当前下部块的帧内预测模式;参考样本确定器,其被配置成基于与上部块相邻的样本来确定当前下部块的参考样本;预测器,其被配置成通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及重建器,其被配置成基于预测值来重建当前下部块,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

根据实施例的另一方面,视频编码方法包括:确定与上部块相邻的样本之中的、上部块中包括的当前下部块的参考样本;确定当前下部块的帧内预测模式,该帧内预测模式针对参考样本进行优化;通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及基于预测值对当前下部块进行编码,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

根据实施例的另一方面,视频编码设备包括:参考样本确定器,其被配置成确定与上部块相邻的样本之中的、上部块中包括的当前下部块的参考样本;帧内预测模式确定器,其被配置成确定当前下部块的帧内预测模式,该帧内预测模式针对参考样本进行优化;预测器,其被配置成通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值;以及编码器,其用于基于预测值对当前下部块进行编码,其中从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。

本发明的实施方式

在以下描述中,“图像”指代静态图像或动态图像,诸如,视频。“图片”指代将被编码或解码的静态图像。

“样本”指代分配到图像的采样位置并且将进行处理的数据。例如,空间域中的图像的像素可以是样本。

帧内预测模式指代通过使用图片的连续性来预测图片的样本的预测模式。

基于位于块的左上角的样本来确定坐标(x,y)。具体而言,将位于块的左上角的样本的坐标确定为(0,0)。坐标的x值在向右方向上增加,并且坐标的y值在向下方向上增加。

图1a是根据各种实施例的基于具有树形结构的编码单元的视频解码设备100的框图。

基于具有树形结构的编码单元的、用于视频预测的视频编码设备100包括编码器110和输出单元120。在下文中,为便于描述,根据实施例的基于树形结构的编码单元的、涉及视频预测的视频编码设备100将简称为“视频编码设备100”。

编码器110可以基于最大编码单元来分割当前图片,所述最大编码单元是具有图像的当前图片的最大尺寸的编码单元。如果当前图片大于最大编码单元,那么当前图片的图像数据可以被分割成至少一个最大编码单元。根据实施例的最大编码单元可以是具有32×32、64×64、128×128、256×256等尺寸的数据单元,其中数据单元的形状是具有2的平方的宽度和长度的正方形。

根据实施例的编码单元的特征可以是最大尺寸和深度。深度表示编码单元从最大编码单元进行空间分割的次数,并且随着深度加深,根据深度的较深编码单元可以从最大编码单元分割到最小编码单元。最大编码单元的深度是最高深度,并且最小编码单元的深度是最低深度。由于对应于每个深度的编码单元的尺寸随着最大编码单元的深度加深而减小,因此,对应于较高深度的编码单元可以包括对应于较低深度的多个编码单元。

如上文所述,当前图片的图像数据根据编码单元的最大尺寸分割成最大编码单元,并且最大编码单元中的每个可以包括根据深度分割的较深编码单元。由于根据实施例的最大编码单元根据深度进行分割,因此,最大编码单元中包括的空间域的图像数据可以根据深度进行分层分类。

限制最大编码单元的高度和宽度进行分层分割的总次数的编码单元的最大深度和最大尺寸可以预先确定。

编码器110对通过根据深度来分割最大编码单元的区域而获得的至少一个分割区域进行编码,并且根据所述至少一个分割区域确定输出最终编码的图像数据的深度。换言之,通过根据当前图片的最大编码单元对根据深度的较深编码单元中的图像数据进行编码并且选择具有最小编码误差的深度,编码器110确定编码深度。根据最大编码单元确定的编码深度和图像数据输出到输出单元120。

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

随着编码单元根据深度进行分层分割,并且随着编码单元的数量增加,最大编码单元的尺寸被分割。此外,即使编码单元对应于一个最大编码单元中的相同深度,也要通过分别测量每个编码单元的图像数据的编码误差来确定是否将对应于相同深度的编码单元中的每个编码单元分割到较低深度。因此,即使在图像数据被包括在一个最大编码单元中时,根据深度的编码误差也可以根据一个最大编码单元中的区域而不同,从而编码深度可以根据图像数据中的区域而不同。因此,在一个最大编码单元中可以确定一个或多个编码深度,并且最大编码单元的图像数据可以根据至少一个编码深度的编码单元分开。

因此,根据实施例的编码器110可以确定当前最大编码单元中包括的具有树形结构的编码单元。根据实施例的“具有树形结构的编码单元”包括在当前最大编码单元中包括的所有较深编码单元之中的、与确定为编码深度的深度相对应的编码单元。编码深度的编码单元可以根据最大编码单元的相同区域中的深度来分层确定,并且可以在不同区域中独立确定。同样,当前区域中的编码深度可以独立于另一区域中的编码深度进行确定。

根据实施例的最大深度是与从最大编码单元到最小编码单元的分割次数相关的索引。根据实施例的最大深度可以表示从最大编码单元到最小编码单元的总分割次数。例如,当最大编码单元的深度为0时,最大编码单元被分割一次的编码单元的深度可以设置为1,并且最大编码单元被分割两次的编码单元的深度可以设置为2。在这种情况下,如果通过将最大编码单元分割四次而获取的编码单元对应于最小编码单元,由于存在0、1、2、3和4的深度等级,那么最大深度可以设置为4。

预测编码和变换可以根据最大编码单元来执行。预测编码和变换也根据最大编码单元而基于根据等于或小于最大深度的深度的较深编码单元来执行。

由于每当最大编码单元根据深度而被分割时较深编码单元的数量都增加,因此,在随着深度加深而生成的所有较深编码单元上执行包括预测编码和变换在内的编码。在下文中,为便于描述,将基于当前深度的编码单元,在至少一个最大编码单元中描述预测编码和变换。

根据实施例的视频编码设备100可以不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,并且此时,可以将相同的数据单元用于所有操作或者将不同的数据单元用于每个操作。

例如,视频编码设备100不仅可以选择用于对图像数据进行编码的某一编码单元,而且可以选择不同于上述编码单元的数据单元,以便在编码单元中的图像数据上执行预测编码。

为了在最大编码单元中执行预测编码,可以基于根据实施例的对应于编码深度的编码单元(即,基于不再分割成对应于较低深度的编码单元的编码单元)执行预测编码。在下文中,不再进行分割并且成为用于预测编码的基础单元的编码单元现在将被称为“预测单元”。通过分割预测单元而获得的分区可以包括预测单元和通过分割预测单元的高度和宽度中的至少一个而获得的数据单元。分区是编码单元的预测单元被分割的数据单元,并且预测单元可以是与编码单元具有相同尺寸的分区。

例如,当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,当变换单元的尺寸是n×n时变换深度可以为1,以及当变换单元的尺寸是n/2×n/2时变换深度可以为2。换言之,关于变换单元,具有树形结构的变换单元可以根据变换深度进行设置。

根据编码深度的编码信息不仅需要编码深度,而且需要与预测有关的信息和与变换有关的信息。因此,编码器110不仅确定具有最小编码误差的深度,而且确定将预测单元分割成分区的分区模式、根据预测单元的预测模式以及用于变换的变换单元的尺寸。

下文将参考图8到图24详细描述根据实施例的最大编码单元中的具有树形结构的编码单元以及确定预测单元/分区和变换单元的方法。

编码器110可以通过使用基于拉格朗日乘子的率失真优化来测量根据深度的较深编码单元的编码误差。

输出单元120以比特流的形式输出最大编码单元的图像数据(基于由编码器110确定的至少一个编码深度进行编码)以及根据深度的编码模式信息。

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

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

编码深度信息可以通过使用根据深度的分割信息进行定义,从而表明是否在较低深度而非当前深度的编码单元上执行编码。如果当前编码单元的当前深度是编码深度,那么对当前编码单元进行编码,因此,分割信息可以定义为不将当前编码单元分割到较低深度。相反,如果当前编码单元的当前深度不是编码深度,那么必须在较低深度的编码单元上执行编码,因此,当前深度的分割信息可以定义为将当前编码单元分割为较低深度的编码单元。

如果当前深度不是编码深度,那么在分割成较低深度的编码单元的编码单元上执行编码。由于较低深度的至少一个编码单元存在于当前深度的一个编码单元中,因此,在较低深度的每个编码单元上重复执行编码,因而可以针对具有相同深度的编码单元递归地执行编码。

由于在一个最大编码单元内确定具有树形结构的编码单元,并且应针对每个编码深度的编码单元确定与至少一个编码模式有关的信息,因此,可以相对于一个最大编码单元来确定与至少一个编码模式有关的信息。此外,最大编码单元的图像数据的编码深度可以根据位置而不同,这是因为图像数据根据深度进行分层分割,因此,可以针对图像数据来设置与编码深度和编码模式有关的信息。

因此,根据实施例的输出单元120可以将与对应的编码深度和编码模式有关的编码信息分配到最大编码单元中包括的编码单元、预测单元和最小单元中的至少一个。

根据实施例的最小单元是通过将构成最低编码深度的最小编码单元分割成4个而获得的正方形数据单元。或者,根据实施例的最小单元可以是可被包括在最大编码单元所包括的所有编码单元、预测单元、分区单元和变换单元中的最大正方形数据单元。

例如,由输出单元120输出的编码信息可以分类成根据较深编码单元的编码信息和根据预测单元的编码信息。根据较深编码单元的编码信息可以包括预测模式信息和分区尺寸信息。根据预测单元的编码信息可以包括与帧间模式期间的估计方向有关的信息、与帧间模式的参考图像索引有关的信息、与运动矢量有关的信息、与帧内模式的色度分量有关的信息以及与帧内模式期间的内插法有关的信息。

与根据图片、截片段或gop定义的编码单元的最大尺寸有关的信息以及与最大深度有关的信息可以插入到比特流的标头、序列参数集或图片参数集中。

与当前视频准许的变换单元的最大尺寸有关的信息以及与变换单元的最小尺寸有关的信息也可以通过比特流的标头、序列参数集或图片参数集输出。输出单元120可以对与预测相关的参考信息、预测信息和截片段类型信息进行编码并输出这些信息。

根据视频编码设备100的最简单实施例,较深编码单元可以是通过将较高深度的编码单元(上一层的编码单元)的高度和宽度一分为二所得到的编码单元。换言之,在当前深度的编码单元的尺寸是2n×2n时,较低深度的编码单元的尺寸是n×n。此外,具有2n×2n尺寸的当前编码单元可以最大包括四个具有n×n尺寸的较低深度编码单元。

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

因此,如果具有高分辨率或大数据量的图像在传统宏块中编码,那么每个图片的宏块数量过度增加。因此,针对每个宏块生成的压缩信息的片数增加,因而难以传输压缩的信息并且数据压缩效率降低。然而,通过使用根据实施例的视频编码设备,图像压缩效率可以增加,这是因为在考虑图像的特征同时调整编码单元,同时考虑图像的尺寸而增大编码单元的最大尺寸。

图1b是根据各种实施例的基于具有树形结构的编码单元的视频解码设备150的框图。

根据实施例,基于具有树形结构的编码单元的、用于视频预测的视频解码设备150包括图像数据与编码信息接收器与提取器160以及解码器170。在下文中,为便于描述,根据实施例的基于具有树形结构的编码单元的、用于视频预测的视频解码设备150将简称为“视频解码设备150”。

根据实施例,用于视频解码设备150的解码操作的各种术语(诸如,编码单元、深度、预测单元、变换单元和与各种编码模式有关的信息)的定义与上文参考图8和视频编码设备100描述的相同。

接收器与提取器160接收并解析编码视频的比特流。图像数据与编码信息接收器与提取器160从解析的比特流中提取根据每个最大编码单元的具有树形结构的编码单元中的每个的编码图像数据,并且将提取的图像数据输出到解码器170。图像数据与编码信息接收器与提取器160可以从与当前图片有关的标头、序列参数集或图片参数集中提取与当前图片的编码单元的最大尺寸有关的信息。

此外,图像数据与编码信息接收器与提取器160针对根据每个最大编码单元的具有树形结构的编码单元从解析的比特流中提取编码深度和编码模式信息。提取的编码深度和编码模式信息输出到解码器170。换言之,比特流的图像数据可以按照使得解码器170对每个最大编码单元的图像数据进行解码的方式分割成最大编码单元。

根据每个最大编码单元的编码深度和编码模式信息可以相对于一片或多片编码深度信息进行设置,并且根据编码深度的编码模式信息可以包括例如相应编码单元的分区类型信息、预测模式信息和变换单元尺寸信息。此外,根据深度的分割信息可以被提取为与编码深度有关的信息。

如在根据实施例的视频编码设备100中,由图像数据与编码信息接收器与提取器160提取的根据每个最大编码单元的编码深度和编码模式信息是被确定为在编码器根据最大编码单元和深度对编码单元重复编码时生成最小编码误差的编码深度和编码模式信息。因此,视频解码设备150可以通过根据生成最小编码误差的编码方法对数据进行解码来重建图像。

由于根据实施例的编码深度和编码模式信息可以分配到对应的编码单元、预测单元和最小单元之中的预定数据单元,因此,图像数据与编码信息接收器与提取器160可以根据每个预定数据单元来提取编码深度和编码模式信息。当对应的最大编码单元的编码深度和编码模式信息被分配到预定数据单元中的每个时,可以推断,被分配相同编码深度和编码模式信息的预定数据单元就是相同最大编码单元中包括的数据单元。

解码器170基于根据每个最大编码单元的编码深度和编码式信息将每个最大编码单元的图像数据解码,以此来重建当前图片。换言之,解码器170可以基于每个最大编码单元中包括的具有树形结构的编码单元之中针对每个编码单元的读取分区模式、预测类型和变换单元而对编码的图像数据进行解码。解码过程可以包括预测过程和逆变换过程,所述预测过程包括帧内预测和运动补偿。

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

此外,解码器170可以读取与用于每个编码单元的具有树形结构的变换单元有关的信息,以便基于每个编码单元的变换单元来执行逆变换,从而针对每个最大编码单元进行逆变换。经由逆变换,可以重建编码单元的空间区域的像素值。

解码器170可以通过使用根据深度的分割信息来确定当前最大编码单元的编码深度。如果分割信息表明图像数据不再以当前深度进行分割,那么当前深度就是编码深度。因此,解码器170可以通过使用与对应于当前深度的每个编码单元的预测单元的分区模式、预测类型和变换单元的尺寸有关的信息来对当前最大编码单元的图像数据进行解码。

换言之,通过观察分配给编码单元、预测单元和最小单元之中的预定数据单元的编码信息集,可以收集含有包括相同分割信息的编码信息的数据单元,并且可以将收集的数据单元视作将由解码器170以相同编码模式解码的一个数据单元。如此,可以通过获取与用于每个编码单元的编码模式有关的信息来对当前编码单元进行解码。

接收器与提取器160可以从所接收的当前层比特流中获取样本自适应偏移(sao)类型和偏移,可以基于当前层预测图像的每个样本的样本值的分布来确定sao类别,因而可以通过使用sao类型和偏移根据每个sao类别来获取偏移。因此,尽管没有接收每个样本的预测误差,但解码器170可以针对当前层预测图像的每个样本根据每个类别来补偿偏移,并且可以参考所补偿的当前层预测图像来确定当前层重建图像。

因此,视频解码设备150可以获取与一编码单元有关的信息(该编码单元通过在编码过程中对每个最大编码单元进行递归地编码而生成最小编码误差),并且可以使用所获取的信息对当前图片进行解码。换言之,可以对确定是每个最大编码单元中的最佳编码单元的、具有树形结构的编码单元进行解码。

因此,即使图像具有高分辨率或具有过大的数据量,图像仍可以通过使用编码单元的尺寸和编码模式来高效解码和重建,所述编码单元的尺寸和编码模式是通过使用从编码器接收的最佳编码模式信息根据图像的特征而自适应地确定的。

图2示出根据各种实施例的编码单元的概念。

编码单元的尺寸可以由宽度×高度来表示,并且可以是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的分区。

在视频数据210中,分辨率是1920×1080,编码单元的最大尺寸是64,并且最大深度是2。在视频数据220中,分辨率是1920×1080,编码单元的最大尺寸是64,并且最大深度是3。在视频数据230中,分辨率是352×288,编码单元的最大尺寸是16,并且最大深度是1。图8所示的最大深度是指从最大编码单元到最小编码单元的总分割次数。

如果分辨率高或数据量大,那么编码单元的最大尺寸可以较大,以便不仅增加编码效率,而且准确反映图像的特征。因此,分辨率比视频数据230高的视频数据210和220的编码单元的最大尺寸可以被选择为64。

由于视频数据210的最大深度是2,因此,视频数据210的编码单元215可以包括长轴尺寸为64的最大编码单元,以及长轴尺寸为32和16的编码单元,这是因为通过将最大编码单元分割两次,深度加深到两个层。由于视频数据230的最大深度是1,因此,视频数据230的编码单元235可以包括长轴尺寸为16的最大编码单元,以及长轴尺寸为8的编码单元,这是因为通过将最大编码单元分割一次,深度加深到一层。

由于视频数据220的最大深度是3,因此,视频数据220的编码单元225可以包括长轴尺寸为64的最大编码单元,以及长轴尺寸为32、16和8的编码单元,这是因为通过将最大编码单元分割三次,深度加深到3个层。随着深度加深,可以提高对详细信息的表达能力。

图3a是根据各种实施例的基于编码单元的视频编码器300的框图。

根据实施例的视频编码器300包括视频编码设备100的编码器210的操作,以便对图像数据进行编码。换言之,帧内预测器304相对于当前帧302以帧内模式在编码单元上执行帧内预测,并且运动估算器306和运动补偿器308通过使用当前帧302和参考帧326以帧内模式在编码单元上分别执行帧间估算和运动补偿。

从帧内预测器304、运动估算器306和运动补偿器308输出的数据通过变换器310和量化器312作为经量化的变换系数输出。经量化的变换系数通过反量化器318和逆变换器320而重建成空间域的数据,并且空间域的重建数据通过去块化单元322和偏移补偿器324进行后处理并且作为参考帧326输出。经量化的变换系数可以通过熵编码器314作为比特流316输出。

为了将视频编码器300应用于视频编码设备100,视频编码器300的所有元件(即,帧内预测器304、运动估算器306、运动补偿器308、变换器310、量化器312、熵编码器314、反量化器318、逆变换器320、去块化单元322和偏移补偿器324)必须在考虑每个最大编码单元的最大深度的同时基于具有树形结构的编码单元中的每个编码单元来执行操作。

具体而言,帧内预测器304、运动估算器306和运动补偿器308在考虑当前最大编码单元的最大尺寸和最大深度的同时确定具有树形结构的编码单元中的每个编码单元的分区和预测模式,并且变换器310确定具有树形结构的编码单元之中的每个编码单元中的变换单元的尺寸。

图3b是根据各种实施例的基于编码单元的视频解码器350的框图。

比特流352经过解析器354,因而待解码的编码图像数据和解码所需的编码信息被解析。编码图像数据通过熵解码器356和反量化器358而作为反量化数据输出,并且通过逆变换器360而被重建成空间域的图像数据。

针对空间域的图像数据,帧内预测器362在帧内模式的编码单元上执行帧内预测,并且运动补偿器364通过使用参考帧370在帧间模式的编码单元上执行运动补偿。

经过帧内预测器362和运动补偿器364的空间域的数据通过去块化单元366和偏移补偿器368进行后处理,并且可以作为重建帧372输出。此外,通过去块化单元366和偏移补偿器368进行后处理的数据可以作为参考帧370输出。

为了由视频解码设备150的解码器170对图像数据进行解码,可以执行根据实施例的视频解码器350的解析器354之后的顺序操作。

为了将视频解码器350应用于视频解码设备200,视频解码器350的所有元件(即,解析器354、熵解码器356、反量化器358、逆变换器360、帧内预测器362、运动补偿器364、去块化单元366和偏移补偿器368)针对每个最大编码单元基于具有树形结构的编码单元来执行操作。

具体而言,帧内预测器362和运动补偿器364确定具有树形结构的每个编码单元的分区和预测模式,并且逆变换器360必须确定每个编码单元的变换单元的尺寸。

图4示出根据各种实施例的根据深度的较深编码单元和分区。

根据实施例的视频编码设备100和根据实施例的视频解码设备150使用分层编码单元,以便考虑图像的特征。编码单元的最大高度、最大宽度和最大深度可以根据图像的特征而自适应地确定,或者可以根据用户需要而不同地设置。根据深度的较深编码单元的尺寸可以根据编码单元的预定最大尺寸进行确定。

在根据实施例的编码单元的分层结构400中,编码单元的最大高度和最大宽度均是64,并且最大深度是3。在这种情况下,最大深度是指编码单元从最大编码单元分割到最小编码单元的总次数。由于深度沿着编码单元的分层结构400的竖直轴加深,因此,较深编码单元的高度和宽度均被分割。此外,沿着编码单元的分层结构400的水平轴示出作为每个较深编码单元的预测编码的基础的预测单元和分区。

换言之,编码单元410是编码单元的分层结构400中的最大编码单元,其中深度为0并且尺寸(即,高度乘宽度)为64×64。深度沿着竖直轴加深,而且存在尺寸为32×32且深度为1的编码单元420、尺寸为16×16且深度为2的编码单元430,以及尺寸为8×8且深度为3的编码单元440。尺寸为8×8且深度为3的编码单元440是最小编码单元。

编码单元的预测单元和分区根据每个深度沿着水平轴布置。换言之,如果尺寸为64×64且深度为0的编码单元410是预测单元,那么预测单元可以分割成尺寸为64×64的编码单元410中包括的分区,即,尺寸为64×64的分区410、尺寸为64×32的分区412、尺寸为32×64的分区414,或者尺寸为32×32的分区416。

同样,尺寸为32×32且深度为1的编码单元420的预测单元可以分割成尺寸为32×32的编码单元420中包括的分区,即,尺寸为32×32的分区420、尺寸为32×16的分区422、尺寸为16×32的分区424以及尺寸为16×16的分区426。

同样,尺寸为16×16且深度为2的编码单元430的预测单元可以分割成尺寸为16×16的编码单元430中包括的分区,即,编码单元430中包括的尺寸为16×16的分区、尺寸为16×8的分区432、尺寸为8×16的分区434以及尺寸为8×8的分区436。

同样,尺寸为8×8且深度为3的编码单元440的预测单元可以分割成尺寸为8×8的编码单元440中包括的分区,即,编码单元440中包括的尺寸为8×8的分区440、尺寸为8×4的分区442、尺寸为4×8的分区444以及尺寸为4×4的分区446。

为了确定最大编码单元410的编码深度,视频编码设备100的编码器110必须在最大编码单元410中包括的分别与深度对应的编码单元上执行编码。

包括相同范围和相同尺寸的数据的、根据深度的较深编码单元的数量随着深度加深而增加。例如,需要四个对应于深度2的编码单元来覆盖一个对应于深度1的编码单元中包括的数据。因此,为了将根据深度的相同数据的编码结果进行比较,必须通过使用对应于深度1的编码单元和对应于深度2的四个编码单元中的每个来对数据进行编码。

为了根据深度中的每个来执行编码,可以通过沿着编码单元的分层结构400的水平轴,根据深度在编码单元的预测单元中的每个上执行编码来选择出最小编码误差,也就是相对应的深度的代表性编码误差。或者,随着深度沿着编码单元的分层结构400的竖直轴加深,可以通过针对每个深度执行编码,根据深度来比较最小编码误差而搜索出最小编码误差。最大编码单元1310中生成最小编码误差的深度和分区可以被选作最大编码单元1310的编码深度和分区类型。

图5示出根据各种实施例的编码单元与变换单元之间的关系。

根据实施例的视频编码设备100或根据实施例的视频解码设备150根据每个最大编码单元的、尺寸小于或等于最大编码单元的编码单元而对图像进行编码或解码。在编码期间用于变换的变换单元的尺寸可以基于不大于相对应的编码单元的数据单元进行选择。

例如,在根据实施例的视频编码设备100或根据实施例的视频解码设备150中,如果编码单元510的尺寸是64×64,那么可以通过使用尺寸为32×32的变换单元520来执行变换。

此外,可以通过在尺寸为32×32、16×16、8×8和4×4(都小于64×64)的变换单元中的每个上执行变换而对尺寸为64×64的编码单元510的数据进行编码,并且随后可以针对原始图像选择具有最小编码误差的变换单元。

图6示出根据各种实施例的多个编码信息片。

视频编码设备100的输出单元120可以针对与编码深度对应的每个编码单元来编码并传输分区模式信息600、预测模式信息610和变换单元尺寸信息620,以作为编码模式信息。

分区类型信息600表明与通过分割当前编码单元的预测单元而获得的分区的形状有关的信息,其中分区是用于对当前编码单元进行预测编码的数据单元。例如,尺寸为2n×2n的当前编码单元cu_0可以分割成下列分区中的任一个:尺寸为2n×2n的分区802、尺寸为2n×n的分区604、尺寸为n×2n的分区606以及尺寸为n×n的分区608。在这种情况下,与当前编码单元有关的分区类型信息600设置成表示下列一个:尺寸为2n×2n的分区602、尺寸为2n×n的分区604、尺寸为n×2n的分区606以及尺寸为n×n的分区608。

预测模式信息610表明每个分区的预测模式。例如,预测类型信息610可以表明在由分区模式信息600表明的分区上执行的预测编码的模式,即,帧内模式612、帧间模式614或跳跃模式616。

变换单元尺寸信息620表示在当前编码单元上执行变换时将依据的变换单元。例如,所述变换单元可以是第一帧内变换单元622、第二帧内变换单元624、第一帧间变换单元626或者第二帧间变换单元628。

根据实施例的视频解码设备150的接收器与提取器160可以针对每个深度的编码单元来提取分区类型信息600、预测模式信息610和变换单元尺寸信息620,并且将这些信息用于解码。

图7示出根据各种实施例的根据深度的较深编码单元。

分割信息可以用来表示深度的变化。分割信息表明当前深度的编码单元是否分割成较低深度的编码单元。

用于对深度为0且尺寸为2n_0×2n_0的编码单元700进行预测编码的预测单元710可以包括下列分区类型的分区:尺寸为2n_0×2n_0的分区类型712、尺寸为2n_0×n_0的分区类型714、尺寸为n_0×2n_0的分区类型716和尺寸为n_0×n_0的分区类型718。尽管所示分区712、714、716和718中的全部都是对称分割的,但如上文所述,分区类型不限于此并且可以包括不对称分区、任意分区、几何分区等。

根据每个分区类型,在尺寸为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的分区上执行跳跃模式的预测编码。

如果尺寸为2n_0×2n_0的分区类型712、尺寸为2n_0×n_0的分区类型714和尺寸为n_0×2n_0的分区类型716中的一个分区类型的编码误差是最小的,那么预测单元可以不分割到较低深度。

如果尺寸为n_0×n_0的分区类型718的编码误差是最小的,那么深度从0变成1并且执行分割(操作720),并且在深度为2且尺寸为n_0×n_0的分区类型的编码单元730上重复执行编码,以便搜索最小编码误差。

用于对深度为1且尺寸为2n_1×2n_1(=n_0×n_0)的编码单元730进行预测编码的预测单元740可以包括:尺寸为2n_1×2n_1的分区类型742、尺寸为2n_1×n_1的分区类型744、尺寸为n_1×2n_1的分区类型746和尺寸为n_1×n_1的分区类型748。

如果尺寸为n_1×n_1的分区类型748的编码误差是最小的,那么深度从1变成2并且执行分割(在操作750中),并且在深度为2且尺寸为n_2×n_2的编码单元760上重复执行编码,以便搜索最小编码误差。

当最大深度为d时,可以对根据深度的较深编码单元进行设置,直到深度对应于d-1时,并且可以对分割信息进行设置,直到深度对应于d-2时。换言之,当在对应于深度d-2的编码单元进行分割之后执行编码直到深度为d-1(在操作770中)时,用于对深度为d-1且尺寸为2n_(d-1)×2n_(d-1)的编码单元780进行预测编码的预测单元790可以包括下列分区类型的分区:尺寸为2n_(d-1)×2n_(d-1)的分区类型792、尺寸为2n_(d-1)×n_(d-1)的分区类型794、尺寸为n_(d-1)×2n_(d-1)的分区类型796和尺寸为n_(d-1)×n_(d-1)的分区类型798。

可以在分区类型之中的尺寸为2n_(d-1)×2n_(d-1)的一个分区、尺寸为2n_(d-1)×n_(d-1)的两个分区、尺寸为n_(d-1)×2n_(d-1)的两个分区、尺寸为n_(d-1)×n_(d-1)的四个分区上重复执行预测编码,以便搜索生成最小编码误差的分区类型。

即使在尺寸为n_(d-1)×n_(d-1)的分区类型798具有最小编码误差时,由于最大深度为d,因此,深度为d-1的编码单元cu_(d-1)不再分割到较深深度,并且构成当前最大编码单元700的编码单元的编码深度被确定为d-1,而且当前最大编码单元700的分区类型可以被确定为n_(d-1)×n_(d-1)。此外,由于最大深度为d,因此,不设置深度为d-1的编码单元752的分割信息。

数据单元799可以是当前最大编码单元的“最小单元”。根据实施例的最小单元可以是通过将具有最低编码深度的最小编码单元分割成4个而获得的正方形数据单元。通过重复执行编码,根据实施例的视频编码设备100可以通过比较根据编码单元700的深度的编码误差来选择具有最小编码误差的编码深度以便确定深度,并且将对应的分区类型和预测模式设置为编码深度的编码模式。

如此,在所有的深度0、1、……、d-1、d中比较根据深度的最小编码误差,并且可以将具有最小编码误差的深度确定为编码深度。编码深度以及预测单元的分区类型和预测模式可以作为编码模式信息而被编码和传输。此外,由于编码单元应从深度0而被分割到编码深度,因此,只有编码深度的分割信息应设置为“0”,而除编码深度之外的根据深度的分割信息应设置为“1”。

根据实施例的视频解码设备150的图像数据与编码信息接收器与提取器160可以提取并使用与编码单元700有关的编码深度和预测单元信息,以便对编码单元712进行解码。根据实施例的视频解码设备150可以通过使用根据深度的分割信息而将分割信息为“0”的深度确定为编码深度,并且可以将与对应深度有关的编码模式信息用于解码。

图8、图9和图10示出根据各种实施例的编码单元、预测单元与变换单元之间的关系。

编码单元810是最大编码单元中的由视频编码设备100确定的、根据编码深度的较深编码单元。预测单元860是根据编码深度的编码单元810中的每个的预测单元的分区,并且变换单元870是根据编码深度的编码单元中的每个的变换单元。

当根据深度的编码单元810之中的最大编码单元的深度为0时,编码单元812具有深度1,编码单元814、816、818、828、850和852具有深度2,编码单元820、822、824、826、830、832和848具有深度3,并且编码单元840、842、844和846具有深度4。

编码单元在预测单元860的一些分区814、816、822、832、848、850、852和854中进行分割。换言之,分区814、822、850和854具有2n×n的分区类型,分区816、848和852具有n×2n的分区类型,并且分区832具有n×n的分区类型。编码单元810的预测单元和分区小于或等于每个编码单元。

在小于编码单元852的数据单元中,对变换单元870中的编码单元852的图像数据执行变换或逆变换。此外,变换单元814、816、822、832、848、850、852和854是尺寸或形状不同于预测单元860的对应预测单元和分区的那些尺寸或形状的数据单元。换言之,根据实施例的视频编码设备100和视频解码设备150可以在相同编码单元中的单个数据单元上执行帧内预测/运动估算/运动补偿以及变换/逆变换。

因此,对最大编码单元的每个区域中具有分层结构的编码单元中的每个递归地执行编码,以便确定最佳编码单元,从而可以获得具有递归树形结构的编码单元。编码信息可以包括与编码单元有关的分割信息、分区类型信息、预测模式信息,以及变换单元尺寸信息。

根据实施例的视频编码设备100的输出单元120可以输出与具有树形结构的编码单元有关的编码信息,并且根据实施例的视频解码设备150的图像数据与编码信息接收器与提取器160可以从接收的比特流中提取与具有树形结构的编码单元有关的编码信息。

分割信息指明当前编码单元是否分割成较低深度的编码单元。如果当前深度d的分割信息为0,那么(当前编码单元不再分割到较低深度所在的)深度是编码深度,因此,可以针对编码深度来限定分区类型信息、预测模式信息和变换单元尺寸信息。如果当前编码单元根据分割信息进一步分割,那么必须在较低深度的四个分割编码单元上独立执行编码。

预测模式可以是帧内模式、帧间模式和跳跃模式中的一个。帧内模式和帧间模式可以限定于所有分区类型,而跳跃模式只限定于尺寸为2n×2n的分区类型。

分区类型信息可以表明通过对称地分割预测单元的高度或宽度而获得的尺寸为2n×2n、2n×n、n×2n和n×n的对称分区类型,以及通过不对称地分割预测单元的高度或宽度而获得的尺寸为2n×nu、2n×nd、nl×2n和nr×2n的不对称分区类型。尺寸为2n×nu和2n×nd的不对称分区类型可以分别通过以1:3和3:1分割预测单元的高度来获得,并且尺寸为nl×2n和nr×2n的不对称分区类型可以分别通过以1:3和3:1分割预测单元的宽度来获得。

变换单元的尺寸可以设置为在帧内模式下有两个类型并且在帧间模式下有两个类型。换言之,如果变换单元的分割信息为0,那么变换单元的尺寸可以是2n×2n,也就是当前编码单元的尺寸。如果变换单元的分割信息为1,那么可以通过分割当前编码单元来获得变换单元。此外,如果尺寸为2n×2n的当前编码单元的分区类型是对称分区类型,那么变换单元的尺寸可以是n×n,并且如果当前编码单元的分区类型是不对称分区类型,那么变换单元的尺寸可以是n/2×n/2。

根据实施例的与具有树形结构的编码单元有关的编码信息可以分配到与编码深度对应的编码单元、预测单元和最小单元中的至少一个。与编码深度对应的编码单元可以包括含有相同编码信息的预测单元和最小单元中的至少一个。

因此,通过比较相邻数据单元的多片编码信息来确定所述相邻数据单元是否包括在与相同编码深度对应的编码单元中。此外,通过使用数据单元的编码信息来确定对应于编码深度的对应编码单元,因此可以推断出最大编码单元中的编码深度的分布。

因此,如果通过参考相邻数据单元来预测当前编码单元,那么可以直接参考并使用与当前编码单元相邻的较深编码单元中的数据单元的编码信息。

在另一实施例中,如果当前编码单元基于相邻数据单元进行预测编码,那么可以参考相邻数据单元,以使得通过使用与当前编码单元相邻的较深编码单元的编码信息在较深编码单元中搜索出与当前编码单元相邻的数据。

图11示出根据表1的编码模式信息的编码单元、预测单元与变换单元之间的关系。

最大编码单元1100包括编码单元1102、1104、1106、1112、1114、1116、以及具有编码深度的1118。此处,由于编码单元1118是具有编码深度的编码单元,因此,分割信息可以设置为0。尺寸为2n×2n的编码单元1318的分区类型信息可以设置为包括下列的分区类型中的一个:2n×2n1122、2n×n1124、n×2n1126、n×n1128、2n×nu1132、2n×nd1134、nl×2n1136和nr×2n1138。

变换单元分割信息(tu尺寸标记)是一种类型的变换索引,并且与变换索引对应的变换单元的尺寸可以根据编码单元的预测单元类型或分区类型而改变。

例如,当分区模式信息设置为对称分区类型2n×2n1122、2n×n1124、n×2n1126和n×n1128中的一个时,如果变换单元分割信息为0,那么设置尺寸为2n×2n的变换单元1142,并且如果变换单元分割信息为1,那么设置尺寸为n×n的变换单元1144。

当分区类型信息设置为不对称分区类型2n×nu1132、2n×nd1134、nl×2n1136和nr×2n1138中的一个时,如果变换单元分割信息(tu尺寸标记)为0,那么可以设置尺寸为2n×2n的变换单元1152,并且如果变换单元分割信息为1,那么可以设置尺寸为n/2×n/2的变换单元1354。

上文参考图5描述的变换单元分割信息(tu尺寸标记)是值为0或1的标记,但根据实施例的变换单元分割信息不限于具有1比特的标记,并且变换单元可以分层地分割,而同时变换单元分割信息根据设置以0、1、2、3等的方式增长。变换单元分割信息可以是变换索引的示例。

在这种情况下,实际使用的变换单元的尺寸可以通过使用根据实施例的变换单元分割信息以及变换单元的最大尺寸和变换单元的最小尺寸一起来表示。根据实施例的视频编码设备100可以对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元分割信息进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元分割信息进行编码的结果可以插入到sps。根据实施例的视频解码设备150可以通过使用最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元分割信息来对视频进行解码。

例如,(a)如果当前编码单元的尺寸是64×64并且最大变换单元尺寸是32×32,那么(a-1)变换单元的尺寸在tu尺寸标记为0时可以是32×32,(a-2)在tu尺寸标记为1时可以是16×16,以及(a-3)在tu尺寸标记为2时可以是8×8。

作为另一示例,(b)如果当前编码单元的尺寸是32×32并且最小变换单元尺寸是32×32,那么(b-1)变换单元的尺寸在tu尺寸标记为0时可以是32×32。此处,由于变换单元的尺寸不可小于32×32,因此,tu尺寸标记无法设置成除了0之外的值。

作为另一示例,(c)如果当前编码单元的尺寸是64×64并且最大tu尺寸标记是1,那么tu尺寸标记可以是0或1。此处,tu尺寸标记无法设置成除了0或1之外的值。

因此,如果将最大tu尺寸标记定义为“maxtransformsizeindex”,将最小变换单元尺寸定义为“mintransformsize”,并且当tu尺寸标记为0时变换单元尺寸为“roottusize”,那么可以在当前编码单元中确定的当前最小变换单元尺寸“currmintusize”可由等式(1)定义:

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可以根据预测模式的类型而改变。

例如,如果当前预测模式是帧间模式,那么“roottusize”可以通过使用下列等式(2)来确定。在等式(2)中,“maxtransformsize”表示最大变换单元尺寸,并且“pusize”表示当前预测单元尺寸。

roottusize=min(maxtransformsize,pusize).........(2)

换言之,如果当前预测模式是帧间模式,那么在tu尺寸标记为0时,变换单元尺寸“roottusize”可以是最大变换单元尺寸和当前预测单元尺寸之中的较小值。

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

roottusize=min(maxtransformsize,partitionsize)...........(3)

换言之,如果当前预测模式是帧内模式,那么在tu尺寸标记为0时,变换单元尺寸“roottusize”可以是最大变换单元尺寸和当前分区单元的尺寸之中的较小值。

然而,根据分区单元中的预测模式的类型而改变的当前最大变换单元尺寸“roottusize”仅仅是实施例,并且用于确定当前最大变换单元尺寸的因素不限于此。

根据上文参考图8到图11描述的基于具有树形结构的编码单元的视频编码方法,空间域的图像数据在具有树形结构的编码单元的每个中进行编码,并且空间域的图像数据按如下方式进行重建:即,基于具有树形结构的编码单元根据视频解码方法在每个最大编码单元上执行解码,以便可以重建由图片和图片序列形成的视频。重建的视频可以由再现设备再现、可以存储在存储介质中,或可以经由网络传输。

图12a是根据实施例的视频解码设备1200的框图。具体而言,图12a的框图示出使用帧内预测模式的视频解码设备的实施例。

视频解码设备1200可以包括帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240。尽管在图12a中示出帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240是单独元件,但根据另一实施例,帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240可以组合到单个元件中。根据另一实施例,帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240的功能可以由两个或更多元件执行。

尽管在图12a中示出帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240是一个设备的元件,但用于执行帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240的功能的设备并不始终需要在物理上彼此相邻。因此,根据另一实施例,帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240可以是分布式的。

图12a的帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240可以根据实施例由单个处理器控制,或者根据另一实施例由多个处理器控制。

视频解码设备1200可以包括用于存储由帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240生成的数据的存储设备(未示出)。帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240可以从存储设备中提取数据并且使用该数据。

图12a的视频解码设备1200不限于物理设备。例如,视频解码设备1200的功能的一部分可以由软件执行,而不是硬件。

帧内预测模式确定器1210确定与通过分割上部块而生成的多个下部块中的一个对应的当前下部块的帧内预测模式。

上部块和下部块的概念是相对的。上部块可以包括多个下部块。例如,上部块可以是编码单元,并且下部块可以是编码单元中包括的预测单元。作为另一示例,上部块可以是最大编码单元,并且下部块可以是编码单元中包括的预测单元。

当前下部块表示上部块所包括的下部块之中的当前将被解码的下部块。当前下部块的帧内预测模式可以基于从比特流中获取的帧内预测模式信息进行确定。

参考样本确定器1220基于与上部块相邻的样本来确定当前下部块的参考样本。

在帧间预测模式下,从另一图像中确定预测单元中包括的样本的预测值。因此,编码单元中包括的预测单元和变换单元之间没有依赖关系。因此,编码单元中包括的预测单元和变换单元可以彼此独立且并行地进行编码和解码。

然而,在帧内预测模式下,编码单元基于与相邻的样本的连续性进行编码和解码。因此,在帧内预测模式下,待解码的样本和用于帧内预测的参考样本越靠近,可以执行越准确的预测。

用于帧内预测的参考样本可以使用各种方法进行确定。根据第一帧内预测方法,将与预测单元相邻的样本确定为参考样本,并且基于参考样本来确定预测单元中包括的样本的预测值。根据第二帧内预测方法,将与编码单元相邻的样本确定为参考样本,并且基于参考样本来确定预测单元中包括的样本的预测值。

根据第一帧内预测方法,为了增加预测值的准确性,基于等于或小于预测单元的变换单元来执行帧内预测和重建。如果变换单元小于预测单元,那么将与变换单元相邻的样本确定为参考样本,并且基于参考样本来确定变换单元中包括的样本的预测值。

如果变换单元大于预测单元,则由于基于变换单元来执行解码,因此,并不重建与一些预测单元相邻的样本,因而并不预测预测单元的样本。因此,根据第一帧内预测方法,预测单元应始终大于变换单元。

根据第二帧内预测方法,尽管与第一帧内预测方法相比,所预测的值的准确性略有降低,但由于除去了预测单元之间的依赖关系,因此可以彼此并行地预测预测单元。此外,尽管第一帧内预测方法限制变换单元不应大于预测单元,但根据第二帧内预测方法,由于预测单元始终参考先前重建的样本,因此预测单元可以小于变换单元。因此,根据第二帧内预测方法,一个变换单元可以包括多个预测单元。

下文将参考图14a到图14d详细描述上述第一和第二帧内预测方法。

第一帧内预测方法的问题在于,变换单元可以取决于编码单元中包括的另一变换单元进行预测。因此,变换单元可能不彼此独立且并行地进行编码和解码。此外,当预测单元小于变换单元时,参考样本与预测单元中包括的样本之间的空间相关性基于预测单元上的位置而减小。

因此,用于计算样本的预测值的预测单元的分区类型和用于计算样本的残差数据的变换单元的尺寸取决于彼此进行确定。此外,预测单元取决于彼此进行预测,因而没有彼此并行地预测。

下文参考图14a到图14d详细描述上述问题。

为了解决上述问题,类似于第二帧内预测方法,可以基于与包括下部块的上部块相邻的样本来确定当前下部块的参考样本。由于上部块中包括的下部块分享与上部块相邻的样本,因此,下部块没有参考用于帧内预测的另一下部块的重建样本。换言之,从上部块中包括的另一下部块的参考样本中去掉当前下部块中包括的当前样本。因此,下部块可以彼此独立地进行帧内预测。因此,下部块可以彼此并行地进行预测,并且预测单元的分区类型和变换单元的尺寸可以彼此独立地确定。

例如,当上部块是编码单元并且下部块是编码单元中包括的预测单元时,可以基于与包括预测单元的编码单元相邻的样本来确定预测单元中包括的样本的预测值。

作为另一示例,当上部块是最大编码单元并且下部块是上部块中包括的编码单元的预测单元时,可以基于与包括预测单元的最大编码单元相邻的样本来确定预测单元中包括的样本的预测值。

可以基于与上部块相邻的样本,使用各种方法来确定下部块的参考样本。例如,可以将与上部块相邻的所有样本确定为下部块的参考样本。作为另一示例,可以将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。下文将参考图15和图16详细描述参考样本确定方法。

参考样本确定器1220可以基于上部块边界帧内预测标记来确定参考样本确定方法,所述上部块边界帧内预测标记表明是否基于与上部块相邻的样本来确定参考样本。例如,当上部块边界帧内预测标记表明基于与上部块相邻的样本来确定参考样本时,可以基于与上部块相邻的样本来确定参考样本。相反,当上部块边界帧内预测标记没有表明基于与上部块相邻的样本来确定参考样本时,可以使用另一方法来确定参考样本。例如,可以基于与下部块相邻的样本来确定参考样本。

可以针对上部块的上部视频数据从比特流中获取上部块边界帧内预测标记。例如,可以按照图像来获取上部块边界帧内预测标记。当上部块边界帧内预测标记表明基于与上部块相邻的样本来确定参考样本时,基于与上部块相邻的样本来确定图像的所有下部块的参考样本。

作为另一示例,可以按照包括多个图像的序列单元来获取上部块边界帧内预测标记。当上部块边界帧内预测标记表明基于与上部块相邻的样本来确定参考样本时,基于与上部块相邻的样本来确定序列单元中包括的所有下部块的参考样本。

预测器1230基于帧内预测方法通过使用由参考样本确定器1220确定的参考样本来确定当前下部块中包括的当前样本的预测值。

当前样本表示当前将被解码的当前下部块中包括的样本。可以基于由帧内预测模式表明的预测方案来确定当前样本的预测值。下文将参考图15和图16详细描述参考样本确定方法。

边界滤波器(未示出)可以将平滑滤波器应用到样本,该样品与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻。下文参考图17详细描述边界滤波器的功能。

重建器1240基于预测器1230确定的预测值来重建当前下部块。当前下部块中包括的当前样本的预测值与对应于当前样本的残差数据合计起来。合计的值用作当前样本的重建值。

帧内预测模式确定器1210、参考样本确定器1220、预测器1230和重建器1240的功能可以在上部块所包括的所有下部块上执行。所有下部块分享用于帧内预测的参考样本,因此可以彼此独立且并行地进行帧内预测和解码。

图12b是根据实施例的视频解码方法1250的流程图。具体而言,图12b的流程图示出使用帧内预测方法的视频解码方法的实施例。

在操作12中,确定一当前下部块的帧内预测模式,所述当前下部块与通过分割一上部块而生成的多个下部块中的一个对应。根据实施例,上部块可以是编码单元,并且下部块可以是该编码单元中包括的预测单元。

在操作14中,基于与上部块相邻的样本来确定当前下部块的参考样本。根据实施例,可以将与上部块相邻的所有样本确定为下部块的参考样本。根据另一实施例,可以将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。

在操作14之前,可以从比特流中获取上部块边界帧内预测标记。当上部块边界帧内预测标记表明参考样本被确定为与上部块相邻的样本时,可以基于与上部块相邻的样本来确定当前下部块的参考样本。可以针对上部块的上部视频数据获取上部块边界帧内预测标记。

在操作16中,基于帧内预测模式使用参考样本来确定当前下部块中包括的当前样本的预测值。平滑滤波器可以应用到与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻的样本。

在操作18中,基于预测值来重建当前下部块。

可以通过在上部块中包括的所有下部块上执行操作12到18来预测和重建上部块。上部块中包括的所有下部块可以彼此独立且并行地进行帧内预测和重建。

根据实施例的上述视频解码方法1250可以由视频解码设备1200执行。

图13a是根据实施例的视频编码设备1300的框图。具体而言,图13a的框图示出使用帧内预测模式的视频编码设备的实施例。

视频编码设备1300可以包括参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340。尽管在图13a中示出参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340是单独元件,但根据另一实施例,参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340可以组合到单个元件中。根据另一实施例,参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340的功能可以由两个或更多元件执行。

尽管在图13a中示出参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340是一个设备的元件,但用于执行参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340的功能的设备并不始终需要在物理上彼此相邻。因此,根据另一实施例,参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340可以是分布式的。

图13a的参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340可以根据实施例由单个处理器控制,或者根据另一实施例由多个处理器控制。

视频编码设备1300可以包括用于存储由参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340生成的数据的存储设备(未示出)。参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340可以从存储设备中提取数据并且使用该数据。

图13a的视频编码设备1300不限于物理设备。例如,视频编码设备1300的功能的一部分可以由软件执行,而不是硬件。

参考样本确定器1310在与上部块相邻的样本之中确定上部块中包括的当前下部块的参考样本。根据实施例,上部块可以是编码单元,并且下部块可以是编码单元中包括的预测单元。

根据实施例,参考样本确定器1310可以将与上部块相邻的所有样本确定为参考样本。根据另一实施例,参考样本确定器1310可以将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。

当上部块边界帧内预测标记(其表明是否基于与上部块相邻的样本来确定参考样本)表明参考样本被确定为与上部块相邻的样本时,参考样本确定器1310可以将与上部块相邻的样本确定为当前下部块的参考样本。可以针对上部块的上部视频数据来确定上部块边界帧内预测标记。

帧内预测模式确定器1320确定针对参考样本进行优化的当前下部块的帧内预测模式。下部块的帧内预测模式可以基于率失真优化而被确定为最有效的帧内预测模式。

预测器1330通过基于帧内预测模式而使用参考样本来确定当前下部块中包括的当前样本的预测值。预测器1330可以将平滑滤波器应用到与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻的样本。

编码器1340基于预测值对当前下部块进行编码。编码器1340可以生成包括原始值与当前样本的预测值之间的差值的残差数据。编码器1340可以将由参考样本确定器1310、帧内预测模式确定器1320和预测器1330确定的编码信息包括在比特流中。

参考样本确定器1310、帧内预测模式确定器1320、预测器1330和编码器1340的功能可以在上部块所包括的所有下部块上执行。上部块中包括的所有下部块可以彼此独立且并行地进行预测和编码。

图13b是根据实施例的视频编码方法1350的流程图。具体而言,图13b的流程图示出使用帧内预测方法的视频编码方法的实施例。

在操作22中,基于与上部块相邻的样本来确定当前下部块的参考样本。根据实施例,可以将与上部块相邻的所有样本确定为下部块的参考样本。根据另一实施例,可以将与上部块相邻的样本之中的位于当前下部块的水平方向上的样本和位于当前下部块的竖直方向上的样本确定为参考样本。

根据实施例,上部块可以是编码单元,并且下部块可以是编码单元中包括的预测单元。根据另一实施例,下部块可以是编码单元中包括的预测单元,并且上部块可以是包括下部块的最大编码单元。

在操作22之前,可以确定是否基于与上部块相邻的样本来确定参考样本。可以针对上部块的上部视频数据来确定参考样本确定方法。基于参考样本确定方法来生成上部块边界帧内预测标记。

在操作24中,确定一当前下部块的帧内预测模式,其与通过分割上部块而生成的多个下部块中的一个对应。下部块的帧内预测模式可以基于率失真优化而被确定为最有效的帧内预测模式。

在操作26中,基于帧内预测模式使用参考样本来确定当前下部块中包括的当前样本的预测值。平滑滤波器可以应用到与所预测的当前下部块和在上部块中包括的其他所预测的下部块之间的边界相邻的样本。

在操作28中,基于预测值对当前下部块进行编码。

可以通过在上部块中包括的所有下部块上执行操作22到28来预测和编码上部块。上部块中包括的所有下部块可以彼此独立且并行地进行预测和编码。

根据实施例的上述视频编码方法1350可以由视频编码设备1300执行。

图14a到图14d是用于描述第一帧内预测方法与第二帧内预测方法之间的差异的示意图。在图14a到图14d中,cu指编码单元,pu指预测单元,并且tu指变换单元。

图14a示出编码单元1410、预测单元1411和变换单元1412具有相同尺寸的情况。由于编码单元1410、预测单元1411和变换单元1412相同,因此,与编码单元1410相邻的样本以及与预测单元1411和变换单元1412相邻的样本相同。因此,使用第一帧内预测方法确定的参考样本与使用第二帧内预测方法确定的参考样本相同。因此,基于帧内预测方法,预测值没有不同。

图14b示出编码单元1420和预测单元1421具有相同尺寸但变换单元1422、1423、1424和1425具有尺寸n×n的情况。

根据第一帧内预测方法,基于变换单元来预测和解码样本。由于预测单元1421包括变换单元1422、1423、1424和1425,因此,变换单元1422、1423、1424和1425具有相同帧内预测模式。然而,变换单元1422、1423、1424和1425中的每个参考与之相邻的样本进行帧内预测。例如,当在z扫描方向上执行预测和解码时,按照变换单元1422、变换单元1423、变换单元1424和变换单元1425的顺序来执行预测和解码。因此,参考变换单元1422的样本对变换单元1423进行帧内预测。

根据第二帧内预测方法,基于与预测单元1421相邻的块来预测预测单元1421。变换单元1422、1423、1424和1425彼此独立地生成残余数据。由于第一帧内预测方法和第二帧内预测方法将不同参考样本用于帧内预测,因此,样本的预测值和残余数据在第一帧内预测方法与第二帧内预测方法之间不同。

图14c示出预测单元1431、1432、1433和1434以及变换单元1435、1436、1437和1438具有尺寸n×n的情况。

根据第一帧内预测方法,基于变换单元来预测和解码样本。基于对应的预测单元1431、1432、1433和1434的帧内预测模式来预测变换单元1435、1436、1437和1438。变换单元1435、1436、1437和1438中的每个参考与之相邻的样本进行帧内预测。例如,当在z方向上执行预测和解码时,按照变换单元1435、变换单元1436、变换单元1437和变换单元1438的顺序来执行预测和解码。因此,参考变换单元1436的样本对变换单元1437进行帧内预测。

根据第二帧内预测方法,基于与编码单元1430相邻的样本来预测预测单元1431、1432、1433和1434。变换单元1435、1436、1437和1438彼此独立地生成残差数据。类似于图14b的实施例,由于第一帧内预测方法和第二帧内预测方法将不同参考样本用于帧内预测,因此,样本的预测值和残差数据在第一帧内预测方法与第二帧内预测方法之间不同。

图14d示出编码单元1440和变换单元1445具有相同尺寸但预测单元1441、1442、1443和1444具有尺寸n×n的情况。

根据第一帧内预测方法,可以不在变换单元1445中包括的四个预测单元1441、1442、1443和1444中的全部上执行帧内预测。根据第一帧内预测方法,由于基于变换单元对所有样本进行帧内预测和解码,因此,可以对与预测单元1441对应的样本进行解码,但不预测预测单元1442、1443和1444,这是因为与它们相邻的样本没有解码。例如,尽管预测单元1442在预测单元1441的样本被解码之后是可预测的,但由于同时预测和解码变换单元1445的所有样本,因此没有预测预测单元1442。因此,第一帧内预测方法不适用于图14d。

然而,根据第二帧内预测方法,由于基于与编码单元1440相邻的样本来预测预测单元1441、1442、1443和1444,因此,可以彼此并行地预测变换单元1445的所有样本。因此,不同于第一帧内预测方法,甚至在变换单元大于预测单元时都可以执行预测和解码。

总结图14a到图14d的描述,根据第二帧内预测方法,不同于第一帧内预测方法,甚至在变换单元大于预测单元时都可以执行预测和解码。根据第一帧内预测方法,变换单元可以按照变换单元的扫描顺序进行帧内预测和解码,但根据第二帧内预测方法,可以预测预测单元,并且变换单元可以彼此独立且并行地生成残差数据。

在图14b和图14c的情况下,用于将相对靠近的样本确定为参考样本的第一帧内预测方法可以比第二帧内预测方法更有效。然而,高分辨率图像在以下方面具有高可能性,即,维持与预测单元间隔开的参考样本和在预测单元中包括的样本之间的连续性,因而可以使用第二帧内预测方法。

图15示出第二帧内预测方法的实施例。

图15示出尺寸为16×16的编码单元1510。编码单元1510包括四个预测单元1512、1514、1516和1518。先前解码的样本t0到t32和l1到l32与编码单元1510相邻。t0到t32和l1到l32之中的解码样本可以被确定为用来预测预测单元1512、1514、1516和1518的参考样本。

t0到t32和l1到l32之中的没有解码的样本被确定为只在编码单元1510的预测过程中才具有最接近的解码样本值。例如,当l16被解码但l17到l32没有解码时,l17到l32被视作只在编码单元1510的预测过程中才与最接近的解码样本值l16具有相同值。

四个预测单元1512、1514、1516和1518具有不同的帧内预测模式。在图15中,预测单元1512以竖直模式进行预测,预测单元1514以左下对角线模式进行预测,预测单元1516以dc模式进行预测,并且预测单元1518以右下对角线模式进行预测。预测单元1512、1514、1516和1518基于位于编码单元1510外部的参考样本(例如,t0到t32和l1到l32)进行预测。位于编码单元1510中的样本没有用来预测预测单元1512、1514、1516和1518。

预测单元1512以竖直模式进行预测。因此,位于预测单元1512的顶部方向上的参考样本t1到t8用来预测预测单元1512。预测单元1512中包括的样本具有与位于样本的竖直方向上的参考样本的值相等的预测值。例如,当t1的值是64时,与t1位于同一列中的样本的预测值被确定为64。

预测单元1514以左下对角线模式进行预测。因此,位于预测单元1514的右上方向上的参考样本t10到t24用来预测预测单元1514。预测单元1514中包括的样本具有与位于样本的右上方向上的参考样本的值相等的预测值。例如,当t17的值是96时,位于t17的左下方向上的样本的预测值被确定为96。

预测单元1516以dc模式进行预测。因此,与预测单元1516相邻的参考样本t0到t16和l1到l16用来预测预测单元1516。预测单元1516中包括的样本具有与参考样本t0到t16和l1到l16的平均值相等的预测值。例如,当参考样本t0到t16的平均值是80时,预测单元1516中包括的样本的预测值都被确定为80。

预测单元1518以右下对角线模式进行预测。因此,位于预测单元1518的左上方向上的参考样本t0到t7和l1到l7用来预测预测单元1518。预测单元1518中包括的样本具有与位于样本的左上方向上的参考样本的值相等的预测值。例如,当t0的值是64时,位于t0的右下方向上的样本的预测值被确定为64。

根据另一实施例,可以基于位置来确定预测单元1512、1514、1516和1518的参考样本。参考样本可以包括与编码单元1510相邻的样本之中的位于每个预测单元的水平方向上的样本和位于预测单元的竖直方向上的样本。此外,参考样本可以包括位于预测单元的右上方向上的样本和位于预测单元的左下方向上的样本。如有必要,参考样本还可以包括与编码单元1510相邻的样本。

例如,预测单元1512的参考样本可以包括位于预测单元1512的竖直方向上的样本t0到t8和位于预测单元1512的水平方向上的样本l1到l8。预测单元1512的参考样本还可以包括位于预测单元1512的右上方向上的样本t9到t16和位于预测单元1512的左下方向上的样本l9到l16。由于预测单元1512以竖直模式进行预测,因此,基于参考样本t1到t8来预测预测单元1512。

例如,预测单元1514的参考样本可以包括位于预测单元1514的竖直方向上的样本t9到t16和位于预测单元1514的水平方向上的样本l1到l8。预测单元1514的参考样本还可以包括位于预测单元1514的右上方向上的样本t17到t24和位于预测单元1514的左下方向上的样本l17到l24。由于预测单元1514以左下对角线模式进行预测,因此,基于参考样本t10到t24来预测预测单元1514。

例如,预测单元1516的参考样本可以包括位于预测单元1516的竖直方向上的样本t0到t8和位于预测单元1516的水平方向上的样本l9到l16。预测单元1516的参考样本还可以包括位于预测单元1516的右上方向上的样本t17到t24和位于预测单元1516的左下方向上的样本l17到l24。由于预测单元1516以dc模式被预测,因此,基于参考样本l9到l16和t0到t8的平均值来预测预测单元1516。

例如,预测单元1518的参考样本可以包括位于预测单元1518的竖直方向上的样本t9到t16和位于预测单元1518的水平方向上的样本l9到l16。预测单元1518的参考样本还可以包括位于预测单元1518的右上方向上的样本t25到t32和位于预测单元1518的左下方向上的样本l25到l32。由于预测单元1518以右下对角线模式进行预测,因此,基于参考样本t9到t16和l9到l16来预测预测单元1518。

如有必要,预测单元1512、1514、1516和1518的参考样本可以包括与编码单元1510相邻的样本。

图16是用于描述应用到预测单元的边界的平滑滤波器的示意图。图16示出用于在预测单元被预测之后将平滑滤波器应用到预测单元的边界的帧内预测方法的实施例。

编码单元1610包括四个预测单元1612、1614、1616和1618。由于预测单元1612、1614、1616和1618以不同的帧内预测模式进行预测,因此,位于预测单元1612、1614、1616和1618的边界处的样本的连续性较低。因此,可以将平滑滤波器应用到位于预测单元1612、1614、1616和1618的边界处的样本,从而增加样本之间的连续性。

基于三个条件,可以使用各种方法来应用平滑滤波器。第一,基于样本距离应用平滑滤波器的边界有多远,可以不同地应用平滑滤波器。例如,平滑滤波器可以只应用到恰好靠着边界的样本。作为另一示例,平滑滤波器可以应用到下列样本:从恰好靠着边界的样本到与边界远离两个样本单元的样本。作为另一示例,应用平滑滤波器的样本的范围可以基于预测单元1612、1614、1616和1618的尺寸进行确定。

第二,基于所使用的滤波器的抽头的数量,可以不同地应用平滑滤波器。例如,当使用3抽头滤波器时,基于左样本和右样本来对应用平滑滤波器的样本进行滤波。作为另一示例,当使用5抽头滤波器时,基于两个左样本和两个右样本来对应用平滑滤波器的样本进行滤波。

第三,基于所使用的滤波器的滤波器系数,可以不同地应用平滑滤波器。当使用3抽头滤波器时,可以将滤波器系数确定为[a1,a2,a3]。如果a2大于a1和a3,那么滤波的强度减小。当使用5抽头滤波器时,可以将滤波器系数确定为[a1,a2,a3,a4,a5]。如果a3大于a1、a2、a4和a5,那么滤波的强度减小。例如,滤波器系数为[1,4,6,4,1]的5抽头滤波器的滤波强度比滤波器系数为[1,2,10,2,1]的5抽头滤波器的滤波强度高。

根据图16的实施例1600,将平滑滤波器应用到与预测单元1612、1614、1616和1618的边界相邻的样本1620。由于将平滑滤波器应用到样本1620,因此,编码单元1610中包括的样本的连续性增加。

一个或多个实施例可以编写为计算机程序,并且可以在使用非瞬时计算机可读记录介质执行程序的通用数字计算机中实施。非瞬时计算机可读记录介质的示例包括磁存储介质(例如,rom、软盘、硬盘等)、光记录介质(例如,cd-rom或dvd)等。

虽然已参考本发明的实施例特别展示并描述了本发明,但本领域普通技术人员将理解,在不脱离所附权利要求书的精神和范围的情况下,可以对形式和细节做出各种改变。实施例应仅被视作描述,而不是用于限制的目的。因此,本发明的范围并不由具体实施方式限定,而是由所附权利要求限定,并且该范围内的所有差异都将被解释为包括在本发明中。

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