首页> 中国专利> 考虑BL内模式的去块滤波方法和使用该方法的多层视频编码器/解码器

考虑BL内模式的去块滤波方法和使用该方法的多层视频编码器/解码器

摘要

在基于多层的视频编码器/解码器中使用的去块滤波器。在对利用BL内模式编码的当前块和其相邻块之间的边界执行去块滤波时判定去块滤波器强度的情况下,确定当前块或相邻块是否具有系数。如果确定当前块或相邻块具有系数,则将滤波器强度判定为第一滤波器强度,如果确定当前块或相邻块不具有系数,则将滤波器强度判定为第二滤波器强度。第一滤波器强度大于第二滤波器强度。

著录项

  • 公开/公告号CN101233756A

    专利类型发明专利

  • 公开/公告日2008-07-30

    原文格式PDF

  • 申请/专利权人 三星电子株式会社;

    申请/专利号CN200680027904.7

  • 申请日2006-07-25

  • 分类号H04N7/24;

  • 代理机构北京市柳沈律师事务所;

  • 代理人邵亚丽

  • 地址 韩国京畿道

  • 入库时间 2023-12-17 20:32:26

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-08-11

    授权

    授权

  • 2008-09-24

    实质审查的生效

    实质审查的生效

  • 2008-07-30

    公开

    公开

说明书

技术领域

根据本发明的方法和装置涉及视频压缩技术,并且更具体地涉及一种在多层视频编码器/解码器中使用的去块滤波器。

背景技术

随着信息和通信技术的发展,除了文本和语音通信以外,多媒体通信也日益增多。现有的以文本为中心的通信系统不足以满足消费者的各种愿望,因此能够供应(accommodate)诸如文本、图像、音乐等的各种形式的信息的多媒体服务日益增多。由于多媒体数据较大,因此分别需要大容量存储介质和宽带宽来存储和传送它。因此,需要压缩编码技术来传输多媒体数据。

数据压缩的基本原理是去除冗余。可以通过去除诸如图像中的相同颜色或对象的重复的空间冗余、诸如运动图像中的相似的相邻帧或声音的连续重复的时间冗余、以及考虑人对高频的不敏感性的视觉/感觉冗余来压缩数据。在通常的视频编码方法中,通过基于运动补偿的时间滤波来去除时间冗余,并且通过空间变换来去除空间冗余。

为了传输多媒体,需要传输介质,其性能各不相同。目前使用的传输介质具有多种传输速度。例如,超高速通信网络每秒可以传送数十兆比特的数据,移动通信网络具有每秒384千比特的传输速度。为了支持这种传输环境中的传输介质并且为了以适合于该传输环境的传输速率来传输多媒体,可分级(scalable)的数据编码方法最合适。

这一编码方法使得可以根据比特速率、错误率和系统资源状态而在解码器或预解码器(pre-deconder)端执行一个压缩比特流的部分解码。所述解码器或预解码器可以通过仅仅采用利用可分级的编码方法编码的比特流的一部分来恢复具有不同的画面质量、分辨率或帧速率的多媒体序列。

对于这种可分级视频编码,运动画面专家组-21(MPEG-21)PART-13已经推进了其标准化工作。具体地说,已经进行了很多用于在基于多层的视频编码方法中实现可分级性(scalability)的研究。作为这种多层视频编码的示例,多层结构由基本层、第一增强层和第二增强层组成,并且各层具有诸如四分之一通用中间格式(QCIF)、通用中间格式(CIF)和2CIF的不同分辨率和不同的帧速率。

图1图示了使用多层结构的可分级视频编码解码器的示例。在此视频编码解码器中,基本层被设置为15Hz(帧速率)上的QCIF,第一增强层被设置为30Hz上的CIF,并且第二增强层被设置为60Hz上的标准清晰度(SD)。

在将这种多层视频帧编码时,可以使用层之间的相关性。例如,通过从基本层的视频帧的某个区域13的预测来高效地将第一增强层的视频帧的对应区域12编码。以相同的方式,通过从第一增强层的区域12的预测来高效地将第二增强层的视频帧的区域11编码。如果多层视频帧的各层具有不同的分辨率,则应当在执行预测之前对基本层的图像执行上采样(upsampled)。

在由联合视频组(JVT)提出的当前的可分级视频编码标准(下文中被称为SVC标准)中,正在进行对用于基于现有的H.264标准实现如图1所示的示例中的多层视频编码解码器的研究,所述联合视频组是国际标准化组织/国际电子技术委员会(ISO/IEC)和国际电信联盟(ITU)的视频专家组。

然而,H.264使用离散余弦变换(DCT)作为空间变换方法,并且在基于DCT的编码解码器中,当压缩率增大时,出现不希望有的方块效应(blockingartifacts)。存在两个方块效应的成因。

第一个成因是基于块的整数DCT变换。这是因为由于由DCT变换产生的DCT系数的量化而在块边界处出现不连续。由于H.264使用相对小的4’4大小的DCT变换,因此可以略微减轻不连续问题,但是不能完全消除它。

第二个成因是运动补偿预测。通过复制从不同的参考帧的另一位置内插得到的像素数据来产生运动补偿块。由于这些组数据没有精确地彼此一致,因此在所复制的块的边缘处出现不连续。此外,在复制过程期间,这一不连续被传递给运动补偿块。

近来,已经开发了用于解决方块效应的若干技术。为了减小方块效应(blocking effect),H.264和MPEG-4已经提出了一种重叠块运动补偿(OBMC)技术。即使OBMC在减少方块效应上有效,它也具有以下问题,即:它需要用于运动预测的大量计算,该运动预测是在编码器端执行的。因此,H.264使用去块滤波器,以便减少方块效应并且提高画面质量。去块滤波器处理是在恢复宏块之前并且在执行其逆变换之后在编码器或解码器端执行的。在此情况下,可以调节去块滤波器的强度(strength)以适合各种状态。

图2是解释根据传统H.264标准的判定去块滤波器强度(the deblockingfilter strength)的方法的流程图。这里,块q和块p是定义将应用去块滤波器的块边界的两个块,并且代表当前块和相邻块。根据块p或q是否是帧内编码(intra-coded)的块、目标样本是否位于宏块边界处、块p或q是否是编码块等等来设置5种类型的滤波器强度(被表示为Bs=0至4)。如果Bs=0,则其意味着没有将去块滤波器应用于对应的目标像素。

换言之,根据用于判定去块滤波器强度的传统方法,滤波器强度基于其中存在目标样本的当前块和相邻块是帧内编码的、帧间编码(inter-coded)的还是未被编码的。滤波器强度还基于目标样本存在于4′4块的边界处还是16′16块的边界处。

在目前处于进展中的SVC标准草案中,如图3所示,除了现有的帧间编码方法(即,帧间模式)和帧内编码方法(即,帧内模式)之外,还采用了BL内编码方法(intra-BL coding method即,BL内模式),该方法是通过使用在下层上创建的帧来预测当前层上的帧的方法。

图3是示意性地解释上述三种编码模式的视图。第一(?),执行当前帧1的某个宏块4的帧内编码,第二(?),执行使用处于与当前帧的时间位置不同的时间位置上的帧2的帧间编码,以及第三(?),执行使用与宏块4相对应的基本层帧3的区域6的图像的BL内编码。

如上所述,在可分级视频编码标准中,以宏块为单位在三种预测方法中选择一种有优势的方法,并且相应地将对应的宏块编码。也就是说,将帧间预测方法、帧内预测方法和BL内预测方法之一选择性地用于一个宏块。

发明内容

技术问题

在当前的SVC标准中,判定去块滤波器强度,以便按照原样遵循传统的H.264标准,如图2所示。

然而,由于在多层视频编码器/解码器中将去块滤波器应用于层,因此再次将去块滤波器过分地(strongly)应用于从下层提供的帧以便高效地预测当前层帧是不合理的。然而,由于在当前的SVC标准中将BL内编码模式视为一种帧内编码并且按照原样应用如图2所示的根据H.264的判定滤波器强度的方法,因此当判定滤波器强度时,没有考虑当前块是否已经以BL内模式被编码。

已知当滤波器强度适合于相应的状态并且以合适的滤波器强度应用去块滤波器时,所恢复的视频的画面质量被显著提高。因此,有必要研究在多层视频编码/解码操作期间考虑到BL内模式而适当地判定滤波器强度的技术。

技术方案

本发明的示例性的非限制性实施例克服了上述缺点和上面没有描述的其它缺点。此外,本发明不需要克服上述缺点,并且本发明的说明性的、非限制性的实施例可以不克服上述问题中的任一个。

在基于多层的视频编码器/解码器中,本发明根据将应用去块滤波器的某个块是否使用了BL内模式而提供适当的去块滤波器强度。

根据本发明的一个方面,提供了一种当对于利用BL内模式编码的当前块和其相邻块之间的边界执行去块滤波时判定去块滤波器强度的方法,根据本发明,该方法包括:确定当前块或相邻块是否具有系数;如果作为判断结果当前块或相邻块具有系数,则将滤波器强度判定为第一滤波器强度;以及如果作为判断结果当前块或相邻块不具有系数,则将滤波器强度判定为第二滤波器强度;其中,第一滤波器强度高于第二滤波器强度。

根据本发明的另一方面,提供了一种当对于利用BL内模式编码的当前块和其相邻块之间的边界执行去块滤波时判定去块滤波器强度的方法,其包括:确定当前块或相邻块是否对应于当前块和相邻块具有相同的基本帧的BL内模式;如果作为判断结果当前块或相邻块不对应于BL内模式,则将滤波器强度判定为第一滤波器强度;以及如果作为判断结果当前块或相邻块对应于BL内模式,则将滤波器强度判定为第二滤波器强度;其中,第一滤波器强度高于第二滤波器强度。

根据本发明的另一方面,提供了一种当对于利用BL内模式编码的当前块和其相邻块之间的边界执行去块滤波时判定去块滤波器强度的方法,其包括:确定当前块和相邻块是否具有系数;确定当前块和相邻块是否对应于当前块和相邻块具有相同的基本帧的BL内模式;以及在第一条件是当前块和相邻块具有系数并且第二条件是当前块和相邻块不对应于当前块和相邻块具有相同的基本帧的BL内模式的假设下,如果满足第一条件和第二条件二者,则将滤波器强度判定为第一滤波器强度,如果满足第一条件和第二条件中的任一个,则将滤波器强度判定为第二滤波器强度,以及如果第一条件和第二条件都不满足,则将滤波器强度判定为第三滤波器强度,其中,按照第一滤波器强度、第二滤波器强度和第三滤波器强度的顺序逐渐降低滤波器强度。

根据本发明的另一方面,提供了一种使用去块滤波的基于多层的视频编码方法,其包括:将输入视频帧编码;将所编码的帧解码;判定对于被包括在所解码的帧中的当前块和其相邻块之间的边界将要应用的去块滤波器强度;以及根据所判定的去块滤波器强度对于所述边界执行去块滤波;其中,考虑当前块是否对应于BL内模式以及当前块或相邻块是否具有系数来执行所述判定去块滤波器强度。

根据本发明的另一方面,提供了一种使用去块滤波的基于多层的视频解码方法,其包括:从输入比特流恢复视频帧;判定对于被包括在所恢复的帧中的当前块和其相邻块之间的边界将要应用的去块滤波器强度;以及根据所判定的去块滤波器强度对于所述边界执行去块滤波;其中,考虑当前块是否对应于BL内模式以及当前块或相邻块是否具有系数来执行所述判定去块滤波器强度。

根据本发明的另一方面,提供了一种使用去块滤波的基于多层的视频编码器,其包括:第一单元,将输入视频帧编码;第二单元,将所编码的帧解码;第三单元,判定对于被包括在所解码的帧中的当前块和其相邻块之间的边界将要应用的去块滤波器强度;以及第四单元,根据所判定的去块滤波器强度对于所述边界执行去块滤波;其中,第三单元考虑到当前块是否对应于BL内模式以及当前块或相邻块是否具有系数来判定所述滤波器强度。

根据本发明的另一方面,提供了一种使用去块滤波的基于多层的视频解码器,其包括:第一单元,从输入比特流恢复视频帧;第二单元,判定对于被包括在所恢复的帧中的当前块和其相邻块之间的边界将要应用的去块滤波器强度;以及第三单元,根据所判定的去块滤波器强度对于所述边界执行去块滤波;其中,第二单元考虑到当前块是否对应于BL内模式以及当前块或相邻块是否具有系数来判定所述滤波器强度。

附图说明

根据结合附图的对示例实施例的以下详细描述,本发明的上述和其它方面将更加清楚,在附图中:

图1是图示使用多层结构的可分级视频编码解码器的示例的视图;

图2是图示根据传统的H.264标准的判定去块滤波器的方法的流程图;

图3是解释三种可分级视频编码方法的示意图;

图4是图示基于相同的基本帧的BL内模式的示例的视图;

图5是图示根据本发明示例实施例的判定多层视频编码器的滤波器强度的方法的流程图;

图6是图示块的垂直边界和目标样本的视图;

图7是图示块的水平边界和目标样本的视图;

图8是图示当前块q和其相邻块pa和pb的位置相关性的视图;

图9是图示根据本发明示例实施例的开环型(open loop type)视频编码器的构造的框图;

图10是图示根据本发明示例实施例的所产生的比特流的结构的视图;

图11是图示对于亮度分量的、宏块和块的边界的视图;

图12是图示对于色度分量的、宏块和块的边界的视图;以及

图13是图示根据本发明示例实施例的视频编码器的构造的框图。

具体实施方式

在下文中,将参照附图详细描述本发明的示例实施例。通过介绍将参照附图详细描述的示例实施例,本发明的方面和特征以及用于实现这些方面和特征的方法将显而易见。然而,本发明不限于在下文中公开的示例实施例,而是可以以多种形式实现。在描述中定义的内容,例如详细构造和元素,被提供来帮助本领域技术人员全面地理解本发明,并且本发明仅被限定在所附权利要求书的范围内。在对本发明的全部描述中,相同的附图参考标号在各个图中用于相同的元素。

在本发明中,将传统的H.264定向(directional)帧内预测模式(在下文中被称为“定向帧内模式”directional intra-mode)和参考另一层的帧的BL内模式严格地彼此区分开,并且将BL内模式确定为一种帧间预测模式(在下文中被称为“帧间模式”)。这是因为帧间模式在预测当前帧时参考相同层中的相邻帧,并且它与在预测当前帧时参考另一层的帧(即,基本帧)的BL内模式相似。也就是说,帧间模式和BL内模式之间的唯一区别在于在预测期间参考哪个帧。

在以下描述中,为了清楚地区分H.264帧内模式和BL内模式,将把帧内模式定义为定向帧内模式。

在本发明中,如果当前块q不对应于BL内模式,则应用传统的H.264滤波器强度,而如果当前块对应于BL内模式,则应用用于选择滤波器强度的新算法。根据此算法,在当前块q和相邻块p对应于帧内模式的情况下应用最大滤波器强度(Bs=4)。否则,当前块q可能对应于BL内模式或帧间模式,在此情况下,设置当前块q或相邻块p具有系数的第一条件以及当前块q和相邻块p不对应于BL内模式的第二条件,在所述BL内模式中,块p和q具有相同的基本帧。

第一条件考虑在当前块q和相邻块p中的至少一个具有系数的情况下必须使用相对高的滤波器强度。通常,如果在视频编码期间将被编码的某个值小于阈值,则它被简单地改变为“0”,但是它不被编码。因此,在所述块中包括的系数变为“0”,并且对应的块可能不具有系数。对于不具有系数的块,必须应用高强度的滤波器。

第二条件考虑当前块q和相邻块p不对应于块p和q具有相同的基本帧的BL内模式。因此,在当前块q或相邻块p对应于帧间模式或者当前块q和相邻块p对应于块p和q具有不同的基本帧的BL内模式的情况下,不满足第二条件。

如图4所示,假设与BL内模式相对应的两个块p和q具有相同的基本帧15。这两个块p和q属于当前帧20,并且参照基本帧15中的对应区域11和12而被编码。如上所述,在从相同的基本帧提取参考图像的情况下,在这两个块之间的边界处出现块效应(block artifacts)的可能性较小。然而,如果从不同的基本帧提取参考图像,则出现块效应的可能性较高。在帧间模式中,尽管两个块p和q参考相同的帧,但是与这两个块p和q不同,参考图像彼此不相邻的可能性较大,并且这导致出现块效应的可能性较高。因此,在满足第二条件的情况下,与不满足第二条件的情况相比,应当应用相对高的滤波器强度。

在本发明的示例实施例中,分别地,如果满足第一条件和第二条件二者,则将滤波器强度设置为“2”,如果满足第一条件和第二条件中的任一个,则将滤波器强度设置为“1”,并且如果第一条件和第二条件都不满足,则将滤波器强度设置为“0”。尽管具体的滤波器强度值(“0”、“1”、“2”和“4”)仅仅是示例性的,但是应当照原样保持滤波器强度的顺序。

另一方面,不需要同时确定第一条件和第二条件。可以通过仅确定第一条件来判定滤波器强度。在此情况下,满足第一条件的滤波器强度应当至少高于不满足第一条件的滤波器强度。以相同的方式,可以通过仅确定第二条件来判定滤波器强度。在此情况下,满足第二条件的滤波器强度应当至少高于不满足第二条件的滤波器强度。

图5是图示根据本发明实施例的判定多层视频编码器的滤波器强度的方法的流程图。在以下描述中,将术语“视频编码器(coder)”用作视频编码器(encoder)和视频解码器的公共名称。与如图2所示的传统方法相比,如图4所示的本发明的示例实施例还包括操作S110、S115、S125、S130和S145。

首先,选择将对其应用去块滤波器的相邻块(例如,4′4像素块)的边界(S10)。去块滤波器将被应用于块边界部分,具体地,将被应用于与块边界相邻的目标样本。目标样本是指如图6或图7所示被排列在当前块q和其相邻块p之间的边界周围的一组样本。如图8所示,考虑到块产生的顺序,当前块q的上方块和左方块对应于相邻块p(pa和pb),因此对其应用去块滤波器的目标是当前块q的上边界和左边界。在对于当前块的下方块和右方块的下一去块处理期间,对当前块q的下边界和右边界进行滤波。

在本发明的示例实施例中,考虑到:根据H.264标准,在运动预测中可变块的最小大小为4′4像素,因此每个块具有4′4像素的大小。然而,对于本领域技术人员来说将清楚的是,也可以将滤波应用于8′8块或其它块大小的块边界。

参照图6,在块边界为垂直的情况下,目标样本出现在当前块q的左边界周围。该目标样本包括在垂直边界线左侧的存在于相邻块p中的4个样本p0、p1、p2和p3以及在该边界线右侧的存在于当前块q中的4个样本q0、q1、q2和q3。尽管对总共4个样本进行滤波,但是可以根据所判定的滤波器强度而改变参考样本的数目和被滤波的样本的数目。

参照图7,在块边界为水平的情况下,目标样本出现在当前块q的上边界周围。该目标样本包括存在于水平边界线的上半部分(相邻块p)中的4个样本p0、p1、p2和p3以及存在于水平边界线的下半部分(当前块q)中的4个样本q0、q1、q2和q3。

根据现有的H.264标准,将去块滤波器分别应用于亮度信号分量和色度信号分量,并且以组成一帧的宏块为单位以光栅扫描顺序连续地进行滤波。对于各个宏块,可以在执行垂直方向上的滤波(如图6所示)之后执行水平方向上的滤波(如图7所示),反之亦然。

再次参照图5,在操作S10之后,确定当前块q是否对应于BL内模式(S110)。如果作为判断结果当前块不对应于BL内模式(操作S110中的“否”),则随后执行传统的H.264滤波器强度判定算法。

具体地,确定目标样本所属的块p和块q中的至少一个是否对应于定向帧内模式(S15)。如果块p和块q中的至少一个对应于定向帧内模式(操作S15中的“是”),则确定所述块边界是否被包括在宏块边界中(S20)。如果所述块边界被包括在宏块边界中,则将滤波器强度Bs设置为“4”(S25);如果所述块边界没有被包括在宏块边界中,则将Bs设置为“3”(S30)。操作S20中的判断是考虑到以下事实执行的,所述事实即:与其它块边界相比,在宏块边界中,块效应出现的可能性提高。

如果块p和块q都不对应于定向帧内模式(操作S15中的“否”),则确定块p或块q是否具有所述系数(S35)。如果块p和块q中的至少一个被编码(操作S35中的“是”),则将Bs设置为“2”(S40)。然而,如果在所述块都没有被编码的状态下(操作S35中的“否”)块p和块q的参考帧不同或者参考帧的数目不同(操作S45中的“是”),则将Bs设置为“1”(S50)。这是因为以下事实:块p和q具有不同的参考帧意味着已经出现块效应的可能性相对较高。

如果块p和q的参考帧没有不同或者它们之间的参考帧的数目没有不同(操作S45中的“否”),则作为操作S45中的判断的结果,确定块p和块q的运动向量是否不同(S55)。这是因为:由于在所述运动向量彼此不一致的情况下,尽管两个块具有相同的参考帧(操作S45中的“否”),但是与所述运动向量彼此一致的情况相比,已经出现块效应的可能性相对较高。如果在操作S55中块p和块q的运动向量不同(操作S55中的“是”),则将Bs设置为“1”(S50);如果不是,则将Bs设置为“0”(S60)。

另一方面,如果作为操作S110中的判断的结果块q对应于BL内模式(操作S110中的“是”),则使用根据本发明提出的第一条件和第二条件来判定滤波器强度。

具体地,首先确定相邻块p是否对应于定向帧内模式(S115)。如果块p对应于定向帧内模式,则将Bs设置为“4”(S120)。这是因为:与使用帧间相似性的帧间编码相比,使用帧内相似性的帧内编码显著地加重了块效应。因此,如果存在帧内编码的块,则与不存在帧内编码的块的情况相比,相对地提高滤波器强度。

如果块p不对应于定向帧内模式(操作S115中的“否”),则确定是否满足第一条件和第二条件。首先,确定是否满足第一条件,即p或q是否具有系数(S125),如果p或q具有系数,则确定p和q是否对应于p和q具有相同的基本帧的BL内模式(S130)。如果p和q对应于该BL内模式(操作S130中的“是”),即,如果不满足第二条件,则将Bs设置为“1”(S140);如果满足第二条件,则将Bs设置为“2”(S135)。

如果作为操作S125中的判断的结果p和q不都具有系数(操作S125中的“否”),则以相同的方式确定p和q是否对应于p和q具有相同的基本帧的BL内模式(S145)。如果p和q对应于p和q具有相同的基本帧的BL内模式(操作S145中的“是”),即,如果不满足第二条件,则将Bs设置为“0”。如果p和q不对应于p和q具有相同的基本帧的BL内模式(操作S145中的“否”),即,如果满足第二条件,则将Bs设置为“1”。

如上所述,在操作S120、S135、S140和S150中,将各个滤波器强度Bs设置为“4”、“2”、“1”和“0”。然而,这仅仅是示例性的,并且可以在不背离本发明的范围的情况下将它们设置为其它值,只要保持它们的强度顺序即可。

在当前块q对应于所述BL内模式(操作S110中的“是”)的情况下,与它不对应于所述BL内模式(操作S110中的“否”)的情况不同,不包括确定块边界是否是宏块边界的操作S20。这是因为:在当前块对应于所述BL内模式的情况下,可以确认块边界是否属于宏块边界对滤波器强度的改变影响不大。

图9是图示多层视频编码器的构造的框图,所述多层视频编码器包括使用如图5所示的判定滤波器强度的方法的去块滤波器。该多层视频编码器可以被实现为闭环型或开环型。这里,闭环型视频编码器参照原始帧执行预测,而开环型视频编码器参照所恢复的帧来执行预测。

选择单元280选择并输出从基本层编码器100的上采样器195传递的信号、从运动补偿单元260传递的信号和从帧内预测单元270传递的信号之一。这一选择是通过从BL内模式、帧间预测模式和帧内预测模式选择具有最高编码效率的模式来执行的。

帧内预测单元270根据指定的帧内预测模式而从自加法器215提供的所恢复的相邻块的图像来预测当前块的图像。H.264定义了这样的帧内预测模式,其包括具有方向的8个模式和一个DC模式。在它们中选择一种模式是通过选择具有最高编码效率的模式来执行的。帧内预测单元270将根据所选择的帧内预测模式产生的预测块提供给加法器205。

运动估计单元250基于参考帧而对输入视频帧的当前宏块执行运动估计,并且获得运动向量。被广泛用于运动估计的算法是块匹配算法。该块匹配算法在参考帧的指定搜索区域中将与最小误差相对应的偏移(displacement)估计作为运动向量。可以使用固定大小的运动块或者根据分层可变大小块匹配(HVSBM)算法而使用具有可变大小的运动块来执行运动估计。运动估计单元250将诸如作为运动估计的结果获得的运动向量、运动块的模式、参考帧号(reference frame number)等的运动数据提供给熵编码单元240。

运动补偿单元260使用由运动估计单元250计算的运动向量和参考帧来执行运动补偿,并且产生当前帧的帧间预测图像。

减法器205通过从当前的输入帧信号中减去由选择单元280选择的信号来产生残差(residual)帧。

空间变换单元220执行由减法器205产生的残差帧的空间变换。可以使用DCT、小波变换等作为空间变换方法。作为空间变换的结果获得变换系数。在使用DCT作为空间变换方法的情况下,获得DCT系数;在使用小波变换方法的情况下,获得小波系数。

量化单元230通过量化由空间变换单元220获得的变换系数来产生量化系数。量化是指通过以预定间隔划分所述变换值而利用离散值表示被表现为实数值的变换系数。这样的量化方法可以是标量量化(scalar quantization)、向量量化(vector quantization)等,并且通过将变换系数除以来自量化表的对应值并将所得到的值舍入(round off)为最接近的整数来执行所述标量量化方法。

在使用小波变换作为空间变换方法的情况下,主要使用嵌入式量化方法作为量化方法。此嵌入式量化方法通过借助于改变阈值(到1/2)而优先将超过阈值的变换系数的分量编码,而使用空间冗余来执行高效量化。该嵌入式量化方法可以是嵌入式零树小波算法(EZW)、分层树中的集合分割(SPIHT)、或嵌入式零块编码(EZBC)。

如上所述的熵编码之前的编码过程被称为有损编码。

熵编码单元240执行所述量化系数和由运动估计单元250提供的运动信息的无损编码,并且产生输出比特流。可以使用算术编码或可变长度编码作为无损编码方法。

图10是图示根据本发明的示例实施例产生的比特流50的结构示例的视图。在H.264中,以码片(slice)为单位将该比特流编码。比特流50包括码片首标60和码片数据70,并且码片数据70由多个宏块(MB)71-74组成。宏块数据73由mb_type字段80、mb_pred字段85和纹理(texture)数据字段90组成。

在mb_type字段80中,记录指示宏块类型的值。也就是说,此字段指示当前宏块是帧内宏块、帧间宏块还是BL内宏块。

在mb_pred字段85中,记录根据宏块类型的具体预测模式。在帧内宏块的情况下,记录所选择的帧内预测模式,在帧间宏块的情况下,记录参考帧号和通过宏块分割(macroblock partitions)获得的运动向量。

在纹理数据字段90中,记录编码的残差帧,即纹理数据。

再次参照图9,增强层编码器200还包括逆量化单元271、逆DCT变换单元272和加法器215,它们被用来通过将被有损编码的帧逆向解码来恢复该有损编码的帧。

逆量化单元271对由量化单元230量化的系数执行逆量化。这一逆量化过程是量化过程的逆过程。逆空间变换单元272执行量化结果的逆变换,并且将逆变换结果提供给加法器215。

加法器215通过将从逆空间变换单元272提供的信号加到由选择单元280选择并被存储在帧缓冲器(未示出)中的所预测的信号(the predicted signal)上而恢复视频帧。加法器215所恢复的视频帧被提供给去块滤波器290,并且所恢复的视频帧的相邻块的图像被提供给帧内预测单元270。

滤波器强度判定单元291根据参照图5解释的滤波器强度判定方法而对于宏块边界和一个宏块中的块(例如,4′4块)边界判定滤波器强度。在亮度分量的情况下,宏块具有16′16像素的大小,如图11所示,在色度分量的情况下,宏块具有8′8像素的大小,如图12所示。在图11和图12中,将“Bs”标记在一个宏块中要在其上指示滤波器强度的边界上。然而,没有将“Bs”标记在宏块的右边界线和下边界线上。如果在当前宏块的右方或下方不存在宏块,则不需要用于对应部分的去块滤波器,然而如果在当前宏块的右方或下方存在宏块,则在对应宏块的去块滤波过程期间判定所述边界线的滤波器强度。

去块滤波器290实际上根据由滤波器强度判定单元291判定的滤波器强度而对于各个边界线执行去块滤波。参照图6和图7,在垂直边界或水平边界的两侧,表示出4个像素。滤波操作最多可以影响在所述边界的每一侧的三个像素,即,{p2,p1,p0,q0,q1,q2}。这是考虑到滤波器强度Bs、相邻块的量化参数QP等判定的。

然而,在去块滤波中,将存在于帧中的真实边缘与通过量化DCT系数产生的边缘区分开是非常重要的。为了保持图像的特征(distinction),应当尽可能地保持真实边缘而不对其进行滤波,但是应当对虚假的边缘(artifical edge)进行滤波以便不被觉察到。因此,仅在满足等式(1)的全部条件时才进行滤波。

Bs≠0,|p0-q0|<α,|p1-p0|<β,|q1-q0|<β...    (1)

这里,a和b是根据量化参数FilterOffsetA、FilterOffsetB等确定的阈值。

如果Bs是“1”、“2”或“3”并且将4抽头滤波器应用于输入p1、p0、q0和q1,则滤波后的输出将为P0(其是对p0进行滤波的结果)和Q0(其是对q0进行滤波的结果)。对于亮度分量,如果

|p2-p0|<β,

则将4抽头滤波器应用于输入p2、p1、p1和q0,并且滤波后的输出为P1(其是对p1进行滤波的结果)。以相同的方式,如果

|q2-q0|<β,

则将4抽头滤波器应用于输入q2、q1、q0和p0,并且滤波后的输出为Q1(其是对q1进行滤波的结果)。

另一方面,如果“Bs”是“4”,则将3抽头滤波器、4抽头滤波器或5抽头滤波器应用于所述输入,并且可以基于阈值a和b以及8个实际像素而输出P0、P1和P2(它们是对p2进行滤波的结果),Q0、Q1和Q2(它们是对q2进行滤波的结果)。

再次参照图9,将由去块滤波器290滤波的结果帧(resultant frame)D1提供给运动估计单元250以便将其用于其它输入帧的帧间预测。此外,如果存在当前增强层之上的增强层,则在对上增强层执行BL内模式的预测时帧D1可以被提供作为参考帧。

然而,去块滤波器的输出D1仅在闭环型视频编码器的情况下被输入到运动估计单元250。在诸如基于MCTF(运动补偿时间滤波)的视频编码器的开环型视频编码器的情况下,在帧间预测期间,使用原始帧作为参考帧,因此不需要将去块滤波器的输出再次输入到运动估计单元250。

基本层编码器100可以包括空间变换单元120、量化单元130、熵编码单元140、运动估计单元150、运动补偿单元160、帧内预测单元170、选择单元180、逆量化单元171、逆空间变换单元172、下采样器105、上采样器和去块滤波器190。

下采样器105执行原始输入帧到基本层分辨率的下采样,上采样器195执行去块滤波器190的滤波后的输出的上采样,并且将上采样结果提供给增强层的选择单元280。

由于基本层编码器100不能使用下层的信息,因此选择单元180选择帧内预测信号和帧间预测信号之一,并且去块滤波器190按照与在传统的H.264中相同的方式来判定滤波器强度。

由于其它组成元件的操作与存在于增强层编码器200中的组成元件的操作相同,因此将省略其详细解释。

图13是图示根据本发明示例实施例的视频解码器3000的构造的框图。简单地说,视频解码器3000包括增强层解码器600和基本层解码器500。

首先,将解释增强层解码器600的构造。与熵编码单元相反,熵解码单元610执行输入的增强层比特流的无损解码,并且提取宏块类型信息(即,指示宏块类型的信息)、帧间预测模式、运动信息、纹理数据等。

这里,可以如图10所示的示例那样构造比特流。这里,宏块类型从mb_type字段80得知;具体的帧内预测模式和运动信息从mb_pred字段85得知;纹理数据通过读取纹理数据字段90得知。

熵解码单元610将纹理数据提供给逆量化单元620,将帧内预测模式提供给帧内预测单元640,并且将运动信息提供给运动补偿单元650。此外,熵解码单元610将当前宏块的信息的类型提供给滤波器强度判定单元691。

逆量化单元620对从熵解码单元610传递的纹理信息进行逆量化。此时,使用与在视频编码器中使用的量化表相同的量化表。

然后,逆空间变换单元630对逆量化结果执行逆空间变换。此逆空间变换对应于在视频编码器中执行的空间变换。也就是说,如果在编码器中执行DCT变换,则在视频解码器中执行逆DCT,如果在视频编码器中执行小波变换,则在视频解码器中执行逆小波变换。作为逆空间变换的结果,恢复残差帧。

帧内预测单元640根据从熵解码单元610传递的帧内预测模式而从自加法器615输出的所恢复的相邻帧内块(neighboring intra block)产生当前帧内块(current intra block)的预测块,以便将所产生的预测块提供给选择单元660。

另一方面,运动补偿单元650使用从熵解码单元610提供的运动信息和从去块滤波器690提供的参考帧来执行运动补偿。作为运动补偿的结果产生的预测帧被提供给选择单元660。

此外,选择单元660在从上采样器590传递的信号、从运动补偿单元650传递的信号、和从帧内预测单元640传递的信号中选择一个信号,并且将所选择的信号传递给加法器615。此时,选择单元660识别从熵解码单元610提供的当前宏块的类型信息,并且根据当前宏块的类型而在三种类型的信号中选择对应信号。

加法器615将从逆空间变换单元630输出的信号加到由选择单元660选择的信号以恢复增强层的视频帧。

滤波器强度判定单元691根据参照图5解释的滤波器强度判定方法而对于宏块边界和一个宏块中的块边界判定滤波器强度。在此情况下,为了进行滤波,应当知道当前宏块的类型(即,当前宏块是帧内宏块、帧间宏块还是BL内宏块),并且将关于宏块类型的信息传递给视频解码器3000,所述信息被包括在比特流的首标部分中。

去块滤波器690根据滤波器强度判定单元691执行各个边界线的去块滤波。将由去块滤波器690滤波的结果帧D3提供给运动补偿单元650以便产生其它输入帧的帧间预测帧。此外,如果存在当前增强层之上的增强层,则在对上增强层执行BL内模式的预测时帧D3可以被提供作为参考帧。

基本层解码器500的构造与增强层解码器的构造相似。然而,由于基本层解码器500不能使用下层的信息,因此选择单元560选择帧内预测信号和帧间预测信号之一,并且去块滤波器590按照与传统H.264算法中相同的方式判定滤波器强度。此外,上采样器595执行由去块滤波器590滤波的结果的上采样,并且将上采样的信号提供给增强层的选择单元660。

由于其它组成元件的操作与增强层解码器600的组成元件的操作相同,因此将省略其详细解释。

如上所述,例示了:视频编码器或视频解码器包括两个层,即基本层和增强层。然而,这仅仅是示例性的,对于本领域技术人员来说将清楚的是,可以实现具有三个或更多层的视频编码器。

到目前为止,图9和图13的各个组成元件是指软件或诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)的硬件。然而,可以将各个组成元件构造为位于可寻址的存储介质内或者执行一个或多个处理器。在各个组成元件中提供的功能可以被分散到进一步细化的组成元件中或者组合到一个组成元件中,所述组成元件的全部执行指定功能。

工业实用性

根据本发明,在多层视频编码器/解码器中,可以根据将对其应用去块滤波器的某个块是否是BL内模式块而适当地设置去块滤波器强度。

此外,通过设置适当的去块滤波器强度(如上所述),可以提高所恢复的视频的画面质量。

已经出于说明的目的描述了本发明的示例实施例,本领域技术人员将认识到:在不背离在所附权利要求中公开的本发明的范围和精神的情况下,各种修改、添加和替换是可能的。因此,本发明的范围应当由所附权利要求及其法律等同物限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号