用于帧内预测的解码图像的装置转让专利

申请号 : CN201611000685.5

文献号 : CN106851293B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李忠九金珉成李乙浩

申请人 : 数码士有限公司

摘要 :

一种对图像解码的装置,所述装置包括:逆变换单元,所述逆变换单元被配置为通过对接收到的比特流进行熵解码并且通过对残差执行逆量化和逆变换来恢复所述残差;帧内预测单元,所述帧内预测单元被配置为通过选择性地使用多个预测模式之一对划分的预测单元执行帧内预测,生成所述预测单元;以及加法器,所述加法器被配置为通过将所述残差与所述预测单元相加来恢复所述图像。使用上述装置,可以增强具有HD或更高分辨率的高分辨率图像的编码效率。

权利要求 :

1.一种对图像解码的装置,所述装置包括:

逆变换单元,所述逆变换单元被配置为通过对接收到的比特流进行熵解码并且通过对残差执行逆量化和逆变换来恢复所述残差;

帧内预测单元,所述帧内预测单元被配置为通过选择性地使用多个预测模式之一对划分的预测单元执行帧内预测,生成所述预测单元;其中,所述预测单元的大小被限于不超过

64×64像素;以及

加法器,所述加法器被配置为通过将所述残差与所述预测单元相加来恢复所述图像,其中,当激活平面帧内预测模式时,当前预测单元的内像素的预测像素值通过利用下述两者执行双线性内插而获得:(i)在所述当前预测单元的先前解码的上端块中在垂直方向上对应的像素值和在所述当前预测单元的先前解码的左侧块中在水平方向上对应的像素值,和(ii)在所述当前预测单元中在垂直和水平方向上对应的内边界预测像素值,其中,所述在垂直和水平方向上对应的内边界预测像素值包括:位于所述当前预测单元的最下边界上并且与所述内像素处于同一垂直列上的第一像素的像素值,和位于所述当前预测单元的最右边界上并且与所述内像素处于同一水平行上的第二像素的像素值,并且其中,编译单元具有递归树结构。

2.如权利要求1所述的装置,其中,当编译单元被划分并且达到最大可允许深度时,所述预测单元对应于叶编译单元。

3.如权利要求1所述的装置,其中,在所述当前预测单元的先前解码的上端块中在垂直方向上对应的像素值和在所述当前预测单元的先前解码的左侧块中在水平方向上对应的像素值包括:位于所述当前预测单元的上端块的最下边界上并且与所述内像素处于同一垂直列上的第三像素的像素值,和位于所述当前预测单元的左侧块的最右边界上并且与所述内像素处于同一水平行上的第四像素的像素值。

说明书 :

用于帧内预测的解码图像的装置

[0001] 本申请是分案申请,其原案申请是申请号为PCT/KR2011/004892、申请日为2011年7月4日的PCT申请并且于2013年2月1日进入中国国家阶段,国家申请号为201180038054.1,名称为“用于帧内预测的编码/解码图像的装置和方法”。

技术领域

[0002] 本发明针对解码图像,并且更具体地针对可以应用于帧内预测的解码图像的装置。

背景技术

[0003] 在一般图像压缩方法中,一个图片被分为多个块,每个块具有预定尺寸。帧间预测和帧内预测技术用于去除图片之间的冗余,以便增加压缩效率。
[0004] 使用帧间预测的编码图像的方法根据当前块周围的块(已经编码的,诸如当前帧(或图片)中上块、左块、左上块和右上块)中像素值基于块之间的像素相关性来预测像素值,并且传送它们的预测误差。
[0005] 在帧间编码中,在若干预测方向之间(水平、垂直、对角或平均等),选择最佳预测模式(预测方向)以适合于要被编码的图像的特性。
[0006] 在现有H.264/AVC标准中,在帧间预测编码应用于4×4像素单元块的情况下,在9个预测模式之中(预测模式0至8),每4×4像素块选择一个最适当的预测模式,并且基于每4×4像素块对选择的预测模式(预测方向)进行编码。此外,在帧间预测编码应用于16×16像素单元块的情况下,在4个预测模式之中(垂直预测、水平预测、平均预测和平面预测),每16×16像素块选择一个最适当的预测模式,并且基于每16×16像素块对选择的预测模式(预测方向)进行编码。
[0007] 在现有帧内编码中,仅对M×M方型对称像素块(M=4,8或16)预定义预定数目的预测方向,以执行帧内预测编码。也就是说,传统地,仅M×M尺寸对称分割被应用于帧间预测编码,使得方型对称块用作帧内预测编码的基本单元。

发明内容

[0008] 技术问题
[0009] 因为当仅使用传统对称像素块执行帧内预测时增加编译效率存在限制,所以需要增加编译效率的方法。
[0010] 特别地,因为当仅使用对称像素块对具有HD(高清)或更高分辨率的高分辨率图像执行帧内预测时增加编译效率存在限制,所以需要增加编译效率的方法。
[0011] 本发明的第一个目的是提供一种可应用于具有HD(高清)或更高分辨率的高分辨率图像的帧内预测编码方法和装置。
[0012] 本发明的第二个目的是提供一种可应用于具有HD(高清)或更高分辨率的高分辨率图像的帧内预测解码方法和装置。
[0013] 技术方案
[0014] 为了实现本发明的上述第一个目的,根据本发明的一方面,对图像编码的方法包括如下步骤:通过选择性地使用多个预测模式之一对通过将非对称分割和几何分割中的至少一种应用于输入图像划分的预测单元执行帧内预测编码,以便对输入图像进行预测编码;以及对残差执行变换、量化和熵编码,所述残差是通过帧内预测所预测的预测单元与当前的预测单元之间的差。可以通过沿垂直方向、水平方向、平均值预测、对角右下方向和对角左下方向中的一个使用在早于预测单元编码的块中的像素值,预测非对称分割的预测单元中的像素值。
[0015] 为了实现本发明的上述第二个目的,根据本发明的一方面,对图像解码的方法包括如下步骤:通过对接收到的比特流进行熵解码并且通过对残差执行逆量化和逆变换来恢复残差;通过选择性地使用多个预测模式之一对通过应用非对称分割和几何分割中的至少一种划分的预测单元执行帧内预测编码,生成预测单元;以及通过将残差与预测相加来恢复图像。
[0016] 可以通过沿垂直方向、水平方向、平均值预测、对角右下方向和对角左下方向中的一个使用在早于预测单元编码的块中的像素值,预测非对称分割的预测单元中的像素值。可以通过沿在整个360°内的全方向上以相同预定角度形成的线,使用在早于预测单元编码的块中的像素值,预测非对称分割的预测单元中的像素值。可以基于限定斜率的dx和dy的信息,沿具有与具有沿水平方向的dx和沿垂直方向的dy的斜率相对应的角度的线,使得非对称分割的预测单元中的像素值经受帧内预测。可以使用早于预测单元编码的左侧块和上端块中的垂直和/或水平方向对应像素值,获得位于预测单元的最右和最下端的像素的预测像素值。可以通过使用早于预测单元编码的左侧块和上端块中的垂直和/或水平方向的对应像素值以及预测单元中的垂直和/或水平方向的对应内像素值,执行线性插值,来获得位于预测单元的最右和最下端的像素的像素值。可以通过使用与当前预测单元相邻放置的先前编码的左侧块和上端块中的垂直和/或水平方向的像素值以及与第N-1图片的对应预测单元相邻放置的先前编码的左侧块和上端块中的垂直和/或水平方向的对应像素值,获得平均值或执行线性插值,来获得位于第N图片的当前的预测单元的最右和最下端的像素的预测像素值。
[0017] 为了实现本发明的上述第二个目的,根据本发明的另一方面,用于对图像解码的装置包括:逆变换单元,该逆变换单元被配置为通过对接收到的比特流进行熵解码并且通过对残差执行逆量化和逆变换来重构残差;帧内预测单元,该帧内预测单元被配置为通过选择性地使用多个预测模式之一对通过应用非对称分割和几何分割中的至少一种划分的预测单元执行帧内预测编码,生成预测单元;以及加法器,该加法器被配置为通过将残差与预测相加来重构图像。
[0018] 有益效果
[0019] 根据上述帧内预测编码/解码方法和装置,帧内预测编码/解码方法和装置可以通过对具有非对称形状或具有尺寸M×N的任何几何形状的像素块应用帧内预测编码/解码来增强具有HD或超HD分辨率的高分辨率图像的编码效率。

附图说明

[0020] 图1是图示根据本发明的一个示例实施例的递归编译单元结构的概念图。
[0021] 图2至图5是图示根据本发明的一个示例实施例的非对称分割方法的概念图。
[0022] 图6是图示根据本发明的一个示例实施例的使用非对称像素块的帧内预测编码方法的概念图。
[0023] 图7至图9是图示根据本发明的另一示例实施例的使用非对称像素块的帧内预测编码方法的概念图。
[0024] 图10是图示根据本发明的另一示例实施例的基于平面预测的帧内预测编码方法的概念图。
[0025] 图11是图示根据本发明的另一示例实施例的基于平面预测的帧内预测编码方法的概念图。
[0026] 图12是图示根据本发明的另一示例实施例的几何分割处理的概念图。
[0027] 图13是图示根据本发明的一个示例实施例的执行帧内预测编码的图像编码装置的配置的框图。
[0028] 图14是图示根据本发明的一个示例实施例的应用帧内预测编码的图像编码方法的流程图。
[0029] 图15是图示根据本发明的一个示例实施例的图像解码装置的配置的框图。
[0030] 图16是图示根据本发明的一个示例实施例的图像解码方法的流程图。

具体实施方式

[0031] 可以对本发明进行各种修改,并且本发明可以具有多个实施例。参照附图详细描述具体实施例。
[0032] 然而,本发明不限于特定实施例,并且应当理解本发明包括在本发明的精神和技术范围内包括的所有修改、等同物或替换。
[0033] 术语“第一”和“第二”可以用于描述各种组件,但是组件不限于此。这些术语仅用于将组件彼此区分。例如,第一组件也可以命名为第二组件,并且类似地,第二组件可以命名为第一组件。术语“和/或”包括如在此描述的多个相关项的组合或者多个相关项的任何一个。
[0034] 当组件“连接”或“耦合”到另一组件时,组件可以直接连接或耦合到另一组件。相反,当组件直接连接或耦合到另一组件时,没有组件干预。
[0035] 给出在此使用的术语来描述实施例,但是并不意在限制本发明。单数术语包括复数术语,除非明确指明。如在此使用的,术语“包括”或“具有”用于指示存在如在此描述的特征、数字、步骤、操作、组件、部分或其组合,但是不排除添加一个或多个特征、数字、步骤、操作、组件、部分或其组合的存在或可能性。
[0036] 除非另有限定,在此使用的包括技术或科学术语的所有术语具有与本领域普通技术人员通常理解的含义相同的含义。如通常使用的在字典中定义的这样的术语应当被解释为与相关技术领域中理解的含义相同的含义,并且除非另外定义,不应当理想地或过于正式地被理解。
[0037] 在下文中,将参照附图更加详细地描述本发明的优选实施例。为了方便描述,在整个附图和说明书中,相同的参考标号用于表示相同的组件,并且不对其进行重复描述。
[0038] 根据本发明的示例实施例,可以使用可应用于具有HD(高清晰度)或更高分辨率的高分辨率图像的尺寸32×32像素或更大的扩展宏块来执行包括帧间/帧内预测、变换、量化和熵编码的编码和解码,并且可以使用下面将描述的递归编译单元(CU)结构进行编码和解码。
[0039] 图1是图示根据本发明的实施例的递归编译单元结构的概念图。
[0040] 参照图1,每个编译单元CU具有正方形,并且可以具有可变尺寸2N×2N(单位:像素)。可以基于每个编译单元来执行帧间预测、帧内预测、变换、量化和熵编码。编译单元CU可以包括最大编译单元LCU和最小编译单元SCU。最大编译单元LCU或最小编译单元SCU的尺寸可以通过2的幂来表示,其可以是8或者更大。
[0041] 根据示例实施例,编译单元CU可以具有递归树结构。图1图示最大编译单元LCU(或CU0)的一边具有尺寸2N0(其为128(N0=64))而最大等级或等级深度为5的示例。可以通过一系列标记来表示递归结构。例如,在等级或等级深度为k的编译单元CUk具有标记值0的情况下,在当前等级或等级深度对编译单元CUk执行编译。当标记值为1时,将编译单元CUk分成4个独立的编译单元CUk+1,编码单元CUk+1具有等级或等级深度k+1且尺寸为Nk+1×Nk+1。在此情况下,可以递归地处理编译单元CUk+1,直到其等级或等级深度达到可允许最大等级或等级深度。当编译单元CUk+1的等级或等级深度与可允许最大等级或等级深度(如图4所示,例如,4)相同时,不允许进一步划分。
[0042] 最大编译单元LCU和最小编译单元SCU的尺寸可以包括在序列参数集(SPS)中。序列参数集SPS可以包括最大编译单元LCU的可允许最大等级或等级深度。例如,在图2中图示的示例中,可允许最大等级或等级深度是5,并且当最大编译单元LCU的一边具有尺寸128像素时,可以允许五个编译单元尺寸,诸如128×128(LCU)、64×64、32×32、16×16和8×8(SCU)。也就是说,给定最大编译单元LCU的尺寸和可允许最大等级或等级深度,可以确定编译单元的可允许尺寸。
[0043] 使用上述递归编译单元可以提供以下优点。
[0044] 第一,可以支持大于现有16×16宏块的尺寸的尺寸。如果感兴趣的图像区域是均匀的,则与使用多个小块时相比,最大编译单元LCU可以用较少数目的符号表示感兴趣的图像区域。
[0045] 第二,与使用固定尺寸的宏块时相比,可以支持任何尺寸的最大编译单元LCU,使得对于各种内容、应用和装置,可以容易地优化编解码器。也就是说,可以适当地选择最大编译单元LCU的尺寸、最大等级或等级深度,使得除了目标应用之外,可以优化分层块结构。
[0046] 第三,不管是宏块、子宏块还是扩展宏块,可以使用单个单元类型的编译单元LCU,使得可以仅通过使用最大编译单元LCU、最大等级(或最大等级深度)和一系列标记简单表示多级分层结构。当与尺寸独立的语法表示一起使用时,编译单元LCU足以指示用于剩余编译工具的一个通用尺寸语法项,并且这样的一致性可以简化实际的解析处理。最大等级值(或最大等级深度值)可以是任何值,并且可以具有大于现有H.264/AVC编码方案中的允许值。通过使用尺寸独立的语法表示按照与编译单元CU的尺寸独立的一致方式指示所有语法元素。可以递归地指示编译单元的划分处理,并且叶编译单元(该等级中的最后一个编译单元)的语法元素可以被限定为相同尺寸而不考虑编译单元的尺寸。上述表示在减小解析复杂度方面非常有效,并且当允许高等级或等级深度时,可以对这种表示作出进一步澄清。
[0047] 如果分层划分处理完成,则可以在编译单元分层单元的叶节点上执行帧间预测或帧内预测,而无需进一步划分。此叶编译单元用作预测单元PU,其是帧间预测或帧内预测的基本单元。
[0048] 对于帧间预测或帧内预测,在叶编译单元上实现分割。也就是说,在预测单元PU上执行分割。在此,预测单元PU是帧间预测或帧内预测的基本单元,并且可以是现有宏块单元或子宏块单元,或者尺寸为32×32像素或更大的扩展宏块单元或编译单元。
[0049] 与预测相关的所有信息(运动向量、运动向量之间的差等)可以以作为帧间预测的基本单元的预测单元为单位被传送到解码器。
[0050] 对于帧间预测或帧内预测,分割可以包括非对称分割,除了正方形之外的任何形状的几何分割,或者沿边缘方向的分割,现将更加详细地对其进行描述。
[0051] 图2至图5是图示根据实施例的非对称分割的概念图。
[0052] 当用于帧间预测或帧内预测的预测单元PU具有M×M(M是自然数,尺寸单位是像素)的尺寸时,沿编译单元的水平或垂直方向执行非对称分割。图3至图5图示预测单元PU的尺寸是64×64、32×32、16×16、8×8像素的示例。图3和图4图示其中预测单元PU的尺寸大于作为宏块尺寸16×16像素的非对称分割。
[0053] 参照图2,在尺寸为64×64的情况下,沿水平方向进行非对称分割,以将预测单元分成尺寸为64×16的部分P11a和尺寸为64×48的部分P21a,或者分成尺寸为64×48的部分P12a和尺寸为64×16的部分P22a。或者,沿垂直方向执行非对称分割,以将预测单元分成尺寸为16×64的部分P13a和尺寸为48×64的部分P23a,或者分成尺寸为48×64的部分P14a和尺寸为16×64的部分P24a。
[0054] 参照图3,在尺寸为32×32的情况下,预测单元可以经受水平方向非对称分割,以分成尺寸为32×8的部分P11b和尺寸为32×24的部分P21b,或者分成尺寸为32×24的部分P12b和尺寸为32×8的部分P22b。或者,预测单元可以经受垂直方向非对称分割,以分成尺寸为8×32的部分P13b和尺寸为24×32的部分P23b,或者分成尺寸为24×32的部分P14b和尺寸为8×32的部分P24b。
[0055] 参照图4,在尺寸为16×16的情况下,预测单元PU可以经受水平方向非对称分割,以分成尺寸为16×4的部分P11c和尺寸为16×12的部分P21c,或者分成尺寸为16×12的上部分和尺寸为16×4的下部分(尽管在附图中没有示出)。此外,尽管在附图中没有示出,但是预测单元PU可以经受垂直方向非对称分割,以分成尺寸为4×16的左部分和尺寸为12×16的右部分,或者分成尺寸为12×16的左部分和尺寸为4×16的右部分。
[0056] 参照图5,在尺寸为8×8的情况下,预测单元PU可以经受水平方向非对称分割,以分成尺寸为8×2的部分P11d和尺寸为8×6的部分P21d,或者分成尺寸为8×6的上部分和尺寸为8×2的下部分(尽管在附图中没有示出)。此外,尽管在附图中没有示出,但是预测单元PU可以经受垂直方向非对称分割,以分成尺寸为2×8的左部分和尺寸为6×8的右部分,或者分成尺寸为6×8的左部分和尺寸为2×8的右部分。
[0057] 图6是图示根据本发明的实施例的使用非对称像素块的帧内预测编码方法的概念图。
[0058] 图7至9是图示根据本发明的另一实施例的使用非对称像素块的帧内预测编码方法的概念图。图6至图9图示了当使用结合图2至图5描述的非对称分割时帧内预测的示例。然而,本发明不限于此。图6至图9所示的帧内预测编码方法也可应用于使用图2至图5中所示的各种类型的非对称分割。
[0059] 图6是用于描述对尺寸为8×2的部分P11d执行帧内预测的预测模式的示图,该部分P11d通过在水平方向上对尺寸为8×8的预测单元PU执行非对称分割来获得。
[0060] 参照图6,使用沿预测方向在先前编码的块中的像素值来预测尺寸为8×2的部分P11d中的像素值,所述预测方向包括垂直方向(预测模式0)、水平方向(预测模式1)、平均值预测(预测模式2)、对角右下方向(预测模式3)和对角左下方向(预测模式4)。
[0061] 例如,在预测模式0的情况下,由于预测像素值处于尺寸为8×2的部分P11d中,使用先前编码的上块中沿垂直方向放置的像素值。
[0062] 在预测模式1的情况下,由于预测像素值处于尺寸为8×2的部分P11d中,使用先前编码的左块中沿水平方向放置的像素值。
[0063] 在预测模式2的情况下,由于预测像素值处于尺寸为8×2的部分P11d中,使用先前编码的左块和上块中的像素的平均值。
[0064] 在预测模式3的情况下,由于预测像素值处于尺寸为8×2的部分P11d中,使用先前编码的上块中沿对角右下方向放置的像素值。在预测模式3的情况下,当部分P11d的上块中的像素不充足时,可以使用右上块中的两个像素弥补。
[0065] 在预测模式4的情况下,由于预测像素值处于尺寸为8×2的部分P11d中,使用先前编码的左上块中沿对角左下方向放置的像素值。
[0066] 图7图示对尺寸为8×6的部分P21d执行帧内预测的预测模式,该部分P21d通过在水平方向上对尺寸为8×8的预测单元PU执行非对称分割来获得。
[0067] 参照图7,使用沿预测方向在先前编码的块中的像素值来预测尺寸为8×6的部分P21d中的像素值,所述预测方向包括垂直方向(预测模式0)、水平方向(预测模式1)、平均值预测(预测模式2)、对角右下方向(预测模式3)和对角左下方向(预测模式4)。
[0068] 例如,在预测模式0的情况下,由于预测像素值位于尺寸为8×6的部分P21d中,使用先前编码的上块中沿垂直方向放置的像素值。
[0069] 在预测模式1的情况下,由于预测像素值处于尺寸为8×6的部分P21d中,使用先前编码的左块中沿水平方向放置的像素值。
[0070] 在预测模式2的情况下,由于预测像素值处于尺寸为8×6的部分P21d中,使用先前编码的左块和上块中的像素的平均值。
[0071] 在预测模式3的情况下,由于预测像素值处于尺寸为8×6的部分P21d中,使用先前编码的上块中沿对角右下方向放置的像素值。在预测模式3的情况下,当部分P21d的上块中的像素不充足时,可以使用右上块中的两个像素弥补。
[0072] 在预测模式4的情况下,由于预测像素值处于尺寸为8×6的部分P21d中,使用先前编码的左上块中沿对角左下方向放置的像素值。
[0073] 图8图示了对尺寸为16×4的部分P11c执行帧内预测的预测模式,该部分P11c通过在水平方向上对尺寸为16×16的预测单元PU执行非对称分割来获得。
[0074] 参照图8,使用沿预测方向在先前编码的块中的像素值来预测尺寸为16×4的部分P11c中的像素值,所述预测方向包括垂直方向(预测模式0)、水平方向(预测模式1)、平均值预测(预测模式2)、对角右下方向(预测模式3)和对角左下方向(预测模式4)。
[0075] 例如,在预测模式0的情况下,由于预测像素值处于尺寸为16×4的部分P11c中,使用先前编码的上块中沿垂直方向放置的像素值。
[0076] 在预测模式1的情况下,由于预测像素值处于尺寸为16×4的部分P11c中,使用先前编码的左块中沿水平方向放置的像素值。
[0077] 在预测模式2的情况下,由于预测像素值处于尺寸为16×4的部分P11c中,使用先前编码的左块和上块中的像素的平均值。
[0078] 在预测模式3的情况下,由于预测像素值处于尺寸为16×4的部分P11c中,使用先前编码的上块中沿对角右下方向放置的像素值。在预测模式3的情况下,当部分P11c的上块中的像素不充足时,可以使用右上块中的四个像素弥补。
[0079] 在预测模式4的情况下,由于预测像素值处于尺寸为16×4的部分P11c中,使用先前编码的左上块中沿对角左下方向放置的像素值。
[0080] 图9图示了对尺寸为32×8的部分P11b执行帧内预测的预测模式,该部分P11b通过在水平方向上对尺寸为32×32的预测单元PU执行非对称分割来获得。
[0081] 参照图9,使用沿预测方向先前编码的块中的像素值来预测尺寸为32×8的部分P11b中的像素值,所述预测方向包括垂直方向(预测模式0)、水平方向(预测模式1)、平均值预测(预测模式2)、对角右下方向(预测模式3)和对角左下方向(预测模式4)。
[0082] 例如,在预测模式0的情况下,由于预测像素值处于尺寸为32×8的部分P11b中,使用先前编码的上块中沿垂直方向放置的像素值。
[0083] 在预测模式1的情况下,由于预测像素值处于尺寸为32×8的部分P11b中,使用先前编码的左块中沿水平方向放置的像素值。
[0084] 在预测模式2的情况下,由于预测像素值处于尺寸为32×8的部分P11b中,使用先前编码的左块和上块中的像素的平均值。
[0085] 在预测模式3的情况下,由于预测像素值处于尺寸为32×8的部分P11b中,使用先前编码的上块中沿对角右下方向放置的像素值。在预测模式3的情况下,当部分P11b的上块中的像素不充足时,可以使用右上块中的八个像素弥补。
[0086] 在预测模式4的情况下,由于预测像素值处于尺寸为32×8的部分P11b中,使用先前编码的左上块中沿对角左下方向放置的像素值。
[0087] 图6至9图示了对于非对称分割块的各个尺寸的预测单元使用预定数目预测模式的示例,并且对于每个预测单元还可以使用沿其他方向(未示出)的预测模式。例如,可以使用先前编码的左上块中的像素值沿在整个360°内全方向上以相同预定角度(例如,22.5°或11.25°)形成的线执行帧内预测。或者,可以由编码器预先指定任何角度,使得沿根据该指定角度限定的线来执行帧内预测。例如,为了指定角度,可以定义具有沿水平方向的dx和沿垂直方向的dy的斜率,可以将关于dx和dy的信息从编码器传输到解码器。也可以将预定角度信息从编码器传输到解码器。
[0088] 图10是图示根据本发明的另一实施例的基于平面预测的帧内预测编码方法的概念图。
[0089] 在尺寸为16×16或更大的扩展宏块用于对具有HD或更高分辨率的高分辨率图像进行编码或者预测单元的尺寸增加到8×8或更大的情况下,如果现有帧内预测模式应用于预测单元的最右和最下像素值,则预测产生失真,因此使其难以将图像平滑为平滑图像。
[0090] 在这样的情况下,可以定义单独的平面模式,并且当激活平面模式标记时,如图10所示,为了获得预测单元的最右且最下像素(1010)的预测像素值,可以使用像素(1001和1003)的值和/或预测块的内像素的值来执行线性插值。像素1001位于先前编码的预测单元的上块中,并且在垂直方向中与最右且最下像素(1010)相对应。像素1003位于先前编码的预测单元的左块中,并且在水平方向中与最右且最下像素(1010)相对应。内像素是位于预测块内的像素,并且内像素在水平方向和垂直方向中与最右且最下像素(1010)相对应。
[0091] 即,当激活平面模式标记时,如图10所示,为了获得预测单元的最右且最下像素(例如,像素1010)的预测像素值,可以使用像素(1001和1003)的值来执行线性插值。像素1001位于先前编码的预测单元的上块中,并且在垂直方向中与最右且最下像素(1010)相对应。像素1003位于先前编码的预测单元的左块中,并且在水平方向中与最右且最下像素(1010)相对应。
[0092] 替代地,当激活平面模式标记时,如图10所示,为了获得预测单元的最右且最下像素(例如像素1010)的预测像素值,可以使用像素(1001和1003)的值和/或内像素的值来执行线性插值。像素1001位于先前编码的预测单元的上块中,并且在垂直方向中与最右且最下像素(1010)相对应,并且像素1003位于先前编码的预测单元的左块中,并且在水平方向中与最右且最下像素(1010)相对应。内像素位于预测块内,并且内像素在水平方向和垂直方向中与最右且最下像素(1010)相对应。当激活平面模式标记时,可以将预测单元的最右且最下像素(1010)值从编码器传输到解码器。在此,在如图10所示的当前预测单元由8×8个预测块组成的情况下,先前编码的左侧块和上端块中垂直和/或水平方向的对应像素值(1001,1003)指示与预测块相邻的已经编码的块之中左侧块和上端块中像素的像素值,位于预测单元的最右且最下端的像素1010的水平方向的对应像素值指示像素1003的值,并且位于预测单元的最右且最下端的像素1010的垂直方向的对应像素值指示像素1001的值,并且预测块中水平方向的内预测像素值指示沿像素1003与最右且最下像素1010之间的水平方向放置的至少一个像素的值,并且预测块中垂直方向的对应内预测像素值指示沿像素1001与最右且最下像素1010之间的垂直方向布置的至少一个像素的值。
[0093] 此外,在激活平面预测模式标记的情况下,可以通过使用先前编码的左侧块和上端块中的垂直和/或水平方向的对应像素的像素值和/或预测单元中垂直和/或水平方向的对应内边界预测像素值(例如,垂直和/或水平方向的对应内边界预测像素值指示沿像素1003与最右且最下像素1010之间的水平方向放置的至少一个像素的值或者沿像素1001与最右且最下像素1010之间的垂直方向布置的至少一个像素的值)执行双线性插值来获得预测单元的内像素的预测像素值。在此,预测单元的内像素的预测像素值指示预测块中沿水平方向布置的内像素的预测像素值(由于图10中示出8×8块,因此存在8个水平线,并且预测块中沿水平方向布置的内像素的预测像素值指示沿8个水平线的各个的方向布置的8个内像素的预测像素值)或者预测块中沿垂直方向布置的内像素的预测像素值(由于图10中示出8×8块,因此存在8个垂直线,并且预测块中沿垂直方向布置的内像素的预测像素值指示沿8个垂直线的各个的垂直方向布置的8个内像素的预测像素值)。
[0094] 在图10中,在获得预测单元的内像素的预测像素值的情况下,先前编码的左侧块和上端块中垂直和/或水平方向的对应像素值指示与预测块相邻的先前编码块的左侧块和上端块中的像素的像素值。在如图10所示的当前预测单元由8×8预测块组成的情况下,预测单元的最右线的8个像素(即,从顶部到底部的8个像素)的水平方向的对应像素值指示沿水平方向与预测块相邻的先前编码的左侧块之中的预测单元的最右线的对应像素相同位置处布置的像素的像素值,预测单元的最下端线的8个像素(即,从最左侧到最右侧的8个像素)的垂直方向的对应像素值指示沿垂直方向与预测单元的最下线的对应像素相同位置处布置的像素的像素值。
[0095] 此外,在图10中,在获得预测单元的内像素的预测像素值的情况下,预测单元中垂直和/或水平方向的对应像素的内边界预测像素值指示预测块中最下线或最右线处放置的像素的像素值(预测像素值)。在如图10所示的当前预测单元由8×8预测块组成的情况下,例如,从预测单元顶部开始的第五个水平线上8个像素之中与右侧第七个像素相对应的像素的内边界预测像素值可以是从预测单元顶部开始的第五个水平线上8个像素之中的最右像素的像素值(或预测像素值)。在这样的情况下,可以使用从预测单元顶部开始的第五个水平线上8个像素之中的最右像素的像素值(或预测像素值),以及与预测块相邻的先前编码的左侧块中的像素的像素值之中沿水平方向与从预测单元顶部开始的第五个水平线上8个像素之中右侧第七个像素位置相同排列的先前编码的像素的像素值,通过执行双向插值,来获得从预测单元顶部开始的第五个水平线上8个像素之中右侧第七个像素的预测像素值。
[0096] 此外,在图10中,在获得预测单元的内像素的预测像素值的情况下,预测单元中垂直和/或水平方向对应像素的内边界预测像素值,例如,在如图10所示当前预测单元由8×8预测块组成时,从预测单元的最左侧开始右侧第五个垂直线上的8个像素之中从顶部沿垂直方向第七个像素的相对应像素的内边界预测像素值可以是位于从预测单元的最左侧开始右侧第五个垂直线上的8个像素的最下端的像素的像素值。
[0097] 在这样的情况下,可以使用从预测单元的最左侧开始的右侧第五个垂直线上8个像素之中位于最下端的像素的像素值(或预测像素值)以及与预测块相邻的先前编码的上侧块中的像素的像素值之中沿垂直方向与从预测单元的最左侧开始的右侧第五个垂直线上8个像素之中从顶部开始沿垂直方向第七个像素相同位置处布置的先前编码的像素的像素值(或预测像素值),通过执行双向插值来获得从预测单元的最左侧开始的右侧第五个垂直线上8个像素之中从顶部开始沿垂直方向第七个像素的预测像素值。
[0098] 同时,在激活平面预测模式标记的情况下,可以将预测单元的最右且最下端像素的像素值从编码器传送到解码器。此外,可以使用已经从编码器传送的最右且最上像素1001和最右且最下像素1010,通过执行线性插值来获得位于图10的最右线上的像素的像素值。可以使用已经从编码器传送的最左且最下像素1003和最右且最下像素1010,通过执行线性插值来获得位于图10的最下线上的像素的像素值。
[0099] 图11是图示根据本发明的另一实施例的基于平面预测的帧内预测编码方法的概念图。
[0100] 当激活平面预测模式标记时,如图11所示,在时间上位于包括在作为要被编码的当前图片的第N图片之前的第N-1图片处确定第N图片中的具有第一尺寸(例如,图11中的8×8像素)的当前预测单元的参考预测单元。为了获得当前预测单元中最右且最下像素的预测像素值,不仅与当前预测单元相邻的先前编码的左和上块213中垂直和水平方向的对应像素值,而且与第N-1图片的对应预测单元相邻的先前编码的左和上块233中垂直和水平方向的对应像素值都被用于计算它们的平均值或者执行线性插值。
[0101] 或者,为了获得当前预测单元中最右且最下像素的预测像素值,第N图片的当前预测单元中垂直和水平方向的对应内像素值、与当前预测单元相邻的先前编码的左和上块213中垂直和水平方向的对应像素值、以及与第N-1图片的对应预测单元相邻的先前编码的左和上块233中垂直和水平方向的对应像素值都被用于计算它们的平均值或者执行线性插值。
[0102] 此外,为了获得当前预测单元中最右且最下像素的预测像素值,第N-1图片的对应单元中垂直和水平方向对应最右且最下像素的内像素值、以及第N图片的当前预测单元中垂直和水平方向的对应内像素值、与当前预测单元相邻的先前编码的左和上块213中垂直和水平方向的对应像素值以及与第N-1图片的对应预测单元相邻的先前编码的左和上块233中垂直和水平方向的对应像素值被用于计算它们的平均值或者执行线性插值。
[0103] 而且,在激活平面预测模式标记的情况下,可以使用第N-1图片的对应预测单元中垂直和水平方向的对应内边界像素值、第N-1图片的对应预测单元中先前编码的左和上块中垂直和水平方向的对应像素值、第N图片的当前预测单元中垂直和水平方向对应的内边界像素值和/或第N图片的当前预测单元中先前编码的左和上块中垂直和水平方向的对应像素值,通过执行双向插值来获得第N图片的预测单元中内像素的预测像素值。
[0104] 尽管图11图示了使用第N个图片的当前预测单元和第N-1个图片的对应预测单元进行帧内预测的示例,但是本发明不限与此。例如,还可以使用第N个图片的当前预测单元和第N+1个图片的对应预测单元,使用第N个图片的当前预测单元和第N-1个图片与第N+1个图片的对应预测单元,或者使用第N个图片的当前预测单元和第N-2个图片、第N-1个图片、第N+1个图片与第N+2个图片的对应预测单元,执行帧内预测。
[0105] 具有第二尺寸的当前预测单元可能是8×8、16×16或32×32像素的正方形,或者可以是图2至图5所示的非对称形状。在当前预测单元具有如图2至图6所示的非对称形状的情况下,可以应用结合图10和图11描述的实施例以执行帧间预测。
[0106] 也就是说,对于具有对称形状(诸如长方形或正方形)的预测单元以及具有非对称形状或任何几何形状的预测单元,基于如图10和图11所示的平面预测的帧内预测编码方法可以应用于像素块的帧内编码/解码。
[0107] 图12是图示根据本发明的另一实施例的几何分割的概念图。
[0108] 图12图示了预测单元PU经受几何分割,使得划分的部分具有除了正方形之外的其他形状的示例。
[0109] 参照图12,对于预测单元,可以如下定义分区之间的几何边界线L。可以通过穿过预测单元PU的中心O的x轴和y轴将预测单元PU划分成四个象限。垂直线从中心O画到边界线L。然后,可以通过从中心O到边界线L的距离ρ和逆时针方向从x轴到垂直线的角度θ来指定位于任何方向上的任何可能边界线L。
[0110] 对于帧间或帧内预测,预测单元PU相对于其中心被划分为四个象限。预测单元PU的左上部分的第二象限被分为一个分区,并且剩余的L形状被分为一个分区。如在此使用的,与分割分区或若干分割分区相对应的预测单元PU的“部分”也被称为“块”。或者,预测单元PU的左下部分的第三象限被分为一个分区,并且剩余象限被分为一个分区。替代地,预测单元PU的右上部分的第一象限被分为一个分区,并且剩余象限被分为一个分区。而且,与第四象限相对应的预测单元PU的右下部分被分为一个分区,其中剩余象限被分为一个分区。此外,第四象限,预测单元PU的右下部分被分为一个分区,其中剩余象限被分为一个分区。
[0111] 如上所述,预测单元可以被分割,使得分割区具有L形状。因此,如果在分割时,在边缘块(例如,左上、右上、右下或左下块)存在移动对象,那么与预测单元PU被分为四块时相比,可以更加有效地进行编码。根据运动对象所在的边缘块位于四个分区之中,可以选择和使用对应分区。
[0112] 用于运动估计的块的大小可以变化。另外,根据一个示例性实施例,当非对称分割或几何分割应用时,块的形状不仅可以是现有正方形,也可以是其他几何形状,诸如长方形或其他非对称形状,“L”形,或三角形,如图2至图9所示。
[0113] 另外,在上述包括结合图10描述的块分割的几何块分割的情况下,可以变换和利用图6至图9中应用的预测模式以对几何块执行帧内预测。
[0114] 图13是图示根据本发明的实施例的执行帧内预测编码的图像编码装置的配置的框图。
[0115] 参照图13,图像编码装置包括编码器630。编码器630包括帧间预测单元632、帧内预测单元635、减法器637、变换单元639、量化单元641、熵编码单元643、逆量化单元645、逆变换单元647、加法器649和帧缓冲器651。帧间预测单元632包括运动预测单元631和运动补偿单元633。
[0116] 编码器630对输入图像执行编码。对于帧间预测单元632中的帧间预测或帧内预测单元635中的帧内预测,基于每个预测单元PU使用输入图像。
[0117] 可以根据输入图像存储在包括在编码器中的缓冲区(未示出)之后该缓冲区中存储的帧(或图片)的时间频率特性来确定应用于帧间预测或帧内预测的预测单元的尺寸。例如,预测单元确定单元610分析第n-1个帧(或图片)和第n个帧(或图片)的时间频率特性,并且如果分析的时间频率特性值小于预设的第一阈值,则确定预测单元的尺寸为64×64像素。如果分析的时间频率特性值等于或大于预设的第一阈值且小于第二阈值,则确定预测单元的尺寸为32×32像素,并且如果分析的时间频率特性值等于或大于预设的第二阈值,则确定预测单元的尺寸为16×16像素或更小。在此,第一阈值是指当帧(或图片)之间的变化小于第二阈值时的时间频率特性值。
[0118] 可以根据输入图像存储在包括在编码器中的缓冲区(未示出)之后该缓冲区中存储的帧(或图片)的空间频率特性来确定应用于帧间预测或帧内预测的预测单元的尺寸。例如,在输入帧(或图片)具有高均匀性或同质性的情况下,可以将预测单元的尺寸设置为大,例如,32×32像素或更大,在输入帧(或图片)具有低均匀性或同质性的情况下(也就是,当空间频率高时),可以将预测单元的尺寸设置为小,例如,16×16像素或更小。
[0119] 虽然在图13中没有示出,但是可以通过接收输入图像的编码控制器(未示出)或者通过接收输入图像的独立的预测单元确定单元(未示出)来执行确定预测单元的尺寸的操作。例如,预测单元的尺寸可以是16×16、32×32或64×64像素。
[0120] 如上所述,包括为帧间或帧内预测确定的预测单元的尺寸的预测单元信息被提供给熵编码单元643并且基于具有确定的尺寸的预测单元被提供给编码器630。特别地,在使用扩展宏块以及扩展宏块的尺寸来执行编码和解码的情况下,预测块信息可以包括关于宏块或扩展宏块的尺寸的信息。在此,扩展宏块的尺寸是指32×32像素或更大,例如,包括32×32、64×64或128×128像素。在上述递归编译单元CU用于执行编码和解码的情况下,预测单元信息可以包括,不是关于宏块的尺寸的信息,而是关于帧间或帧内预测所使用的最大编译单元LCU的尺寸的信息,也就是说,预测单元的尺寸,并且进一步,预测单元信息可以包括最大编译单元LCU的尺寸、最小编译单元SCU的尺寸、最大允许等级或等级深度和标记信息。
[0121] 编码器630对具有确定尺寸的预测单元执行编码。
[0122] 帧间预测单元632对当前通过上述非对称分割或几何分割编码的预测单元进行划分,并且基于每个划分分区执行运动估计以生成运动向量。
[0123] 运动预测单元631通过各种分割方法对提供的当前预测单元进行划分,并且对于每个分区块,在位于当前编码图片之前和/或之后的至少一个参考图片(被编码并被存储在帧缓冲器651中)中搜索与当前编码的分区块类似的区域,从而基于每个块生成运动向量。用于运动估计的块的尺寸可以变化,并且根据实施例,当应用非对称分割或几何分割时,块的形状不仅可以是现有正方形,也可以是其他几何形状,诸如长方形或其他非对称形状,“L”形,或三角形,如图2至图9所示。
[0124] 运动补偿单元633通过使用从运动预测单元631生成的运动向量和参考图片执行运动补偿来生成预测块(或预测的预测单元)。
[0125] 帧间预测单元632对块执行块合并,并且获得每个合并块的运动参数。将获得的运动参数传输到解码器。
[0126] 帧内预测单元635可以使用块之间的像素相关性来执行帧内预测编码。根据结合图6至图11描述的各种实施例,帧内预测单元635执行帧内预测,该帧内预测通过从当前帧(或图片)的块中的先前编码像素值预测像素值来寻找当前预测单元的预测块。
[0127] 加法器637对从运动补偿单元633提供的预测块(或预测的预测单元)与当前块(或当前预测单元)之间执行减法操作以生成残差,并且变换单元639和量化单元641分别执行DCT(离散余弦变换)和残差的量化。在此,变换单元639可以基于从预测单元确定单元1810提供的预测单元尺寸信息来执行变换。例如,变换单元639可以对32×32或64×64像素尺寸进行变换。或者,变换单元639可以独立于从预测单元确定单元610提供的预测单元尺寸信息基于单独的变换单元TU来执行变换。例如,变换单元TU尺寸最小可以是4×4像素,最大可以是64×64像素。或者,变换单元TU的最大尺寸可以大于64×64像素,例如,128×128像素。变换单元尺寸信息可以包括在变换单元信息中并且被传输到解码器。
[0128] 熵编码单元643对报头信息执行熵编码,报头信息包括量化的DCT系数、运动向量、确定的预测单元信息、分割信息和变换单元信息,从而生成比特流。
[0129] 逆量化单元645和逆变换单元647分别对由量化单元641量化的数据执行逆量化和逆变换。加法器649将逆变换的数据与从运动补偿单元633提供的预测的预测单元相加,以重构图像,并且将重构的图像提供给帧缓冲器651,使得帧缓冲器651存储该存储的图像。
[0130] 图14是图示根据本发明的实施例的应用帧内预测编码的图像编码方法的流程图。
[0131] 参照图14,当图像输入到编码装置时(步骤S1401),对于输入图像,通过上述非对称或几何分割方法来划分帧间或帧内预测的预测单元(步骤S1403)。
[0132] 在激活帧内预测模式的情况下,对分割的非对称块或几何块应用结合图6至图11描述的帧内预测方法,从而执行帧内预测(步骤S1405)。
[0133] 或者,当激活帧内预测模式时,通过对于每个分区块,在位于当前编码图片之前和/或之后的至少一个参考图片(被编码并被存储在帧缓冲器651中)中搜索与当前编码的分区块类似的区域,生成预测块(或预测的预测单元),从而基于每个块生成运动向量,随后使用所生成的运动向量和图片执行运动补偿。
[0134] 接下来,编码装置获得当前预测单元与预测的(帧内预测的或帧间预测的)预测单元之间的差以生成残差,然后对所生成的残差执行变换和量化(步骤S1407)。其后,编码装置对包括量化的DCT系数和运动参数的报头信息进行熵编码并且生成比特流(步骤S1409)。
[0135] 图15是图示根据本发明的实施例的图像解码装置的配置的框图。
[0136] 参照图15,解码设备包括熵解码单元731、逆量化单元733、逆变换单元735、运动补偿单元737、帧内预测单元739、帧缓冲器741和加法器743。
[0137] 熵解码单元731接收压缩的比特流,并且对压缩的比特流执行熵解码,从而生成量化系数。逆量化单元733和逆变换单元735分别对量化系数执行逆量化和逆变换,以重构残差。
[0138] 由熵解码单元731解码的报头信息可以包括预测单元尺寸信息,该信息可以包括例如扩展宏块尺寸16×16、32×32、64×64或128×128像素。此外,解码的报头信息包括用于运动补偿和预测的运动参数。运动参数可以包括为根据实施例的块合并方法合并的每个块传送的运动参数。解码器报头信息还包括指示是否激活平面模式的标记以及具有上述非对称形状的每个单元预测模式信息。
[0139] 运动补偿单元737使用运动参数对与基于由熵解码单元731从比特流解码的报头信息编码的预测单元具有相同尺寸的预测单元执行运动补偿,从而生成预测的预测单元。运动补偿单元737使用为根据实施例的块合并方法合并的每个块传送的运动参数执行运动补偿,从而生成预测的预测单元。
[0140] 帧内预测单元739使用块之间的像素相关性来执行帧内预测编码。帧内预测单元739可以通过结合图6至图11描述的帧内预测编码方法获得当前预测单元的预测像素值。
[0141] 加法器743将从逆变换单元735提供的残差与从运动补偿单元737或帧内预测单元739提供的预测的预测单元相加,以重构图像,并且将残差提供到帧缓冲器741,使得帧缓冲器741存储重构的图像。
[0142] 图16是图示根据本发明的实施例的图像解码方法的流程图。
[0143] 参照图16,解码设备从编码设备接收比特流(步骤S1601)。
[0144] 其后,解码设备对接收到的比特流执行熵解码(步骤S1603)。通过熵解码所解码的数据包括残差,残差是指当前预测单元与预测的预测单元之间的差。通过熵解码所解码的报头信息可以包括预测单元信息、运动补偿和预测的运动参数、指示是否激活平面预测模式的标记以及非对称类型每个预测单元预测模式信息。预测单元信息可以包括预测单元尺寸信息。
[0145] 在此,不是使用扩展宏块和扩展宏块的尺寸执行编码和解码,在上述递归编译单元CU用于编码和解码的情况下,预测单元PU信息可以包括最大编译单元LCU和最小编译单元SCU的尺寸、最大允许等级或等级深度和标记信息。
[0146] 解码控制器(未示出)可以从编码装置接收编码装置中应用的预测单元PU尺寸,并且根据编码装置中应用的预测单元PU的大小,可以执行将被描述的运动补偿解码、帧内预测编码、逆变换或逆量化。
[0147] 解码装置对熵编码的残差进行逆量化和逆变换(步骤S1605)。可以基于预测单元尺寸(例如,32×32或64×64像素)执行逆变换。
[0148] 解码装置可以将帧间预测或帧内预测方法应用于具有各种形状的预测单元,诸如结合图6至图11描述的非对称或几何形状,从而生成预测的预测单元(步骤S1607)。
[0149] 解码器将逆量化的逆变换的残差与通过帧间或帧内预测来预测的预测单元相加,从而重构图像(步骤S1609)。
[0150] 尽管已经描述了本发明的实施例,但是本领域的普通技术人员将理解,在不脱离所附权利要求限定的本发明的范围的情况下可以对本发明进行各种修改。