用于对图像数据进行去块滤波的设备和方法以及使用所述设备和方法的视频解码设备和方法

文档序号:7912870阅读:233来源:国知局
专利名称:用于对图像数据进行去块滤波的设备和方法以及使用所述设备和方法的视频解码设备和方法
技术领域
示例性实施例总的说来涉及一种视频解码设备和方法,更具体地说,涉及一种用于去除解码图像的块失真的去块滤波设备和方法以及使用所述去块滤波设备和方法的视频解码设备和方法。
背景技术
公知的H. 264/AVC编解码器是具有非常高的数据压缩率的数字视频编解码器标准之一,由ITU-T视频编码专家组(VCEG)和国际标准化组织/国际电工委员会(IS0/IEC) 运动图像专家组(MPEG)组织的联合视频组(JVT)在2003年完成了 H. ^4/AVC编解码器的标准化,在目前为止研发的视频压缩技术中,H. 264/AVC编解码器是广泛使用的支持最高压缩率的视频压缩技术。为了确保高于现有视频压缩技术的压缩率,H. 264/AVC使用诸如以下项的技术 各种模式的帧内预测、多个参考帧、各种大小的块的运动预测、基于上下文的自适应变长编码(CAVLC)、基于上下文的自适应二进制算数编码(CABAC)和环内去块滤波。如上所述,H. 264/AVC可有益地提高图像数据的压缩率,但使用的技术具有比现有视频编解码器(如MPEG-2和MPEG-4)更高的复杂性。例如,在H. 264/AVC解码器中,6抽头内插滤波器、去块滤波器和CAVLC技术是复杂性高于现有视频编解码器的部分。这种高复杂性使得难以在诸如移动电话的移动终端中使用H. 264/AVC解码器。在该说明书中,在H. 264/AVC中需要高复杂性的技术中,去块滤波器将被考虑。通常,在诸如H. 264/AVC的视频编解码器标准中,由于图像数据以包括多个像素的块为单位被压缩编码并随后被解码,在恢复图像中会出现块伪像(blocking artifact)。块伪像归因于以下两个原因首先,在基于块的编码方法中,由于预定大小的块经历离散余弦变换(DCT)和量化,因此不重叠的块经过独立的变换和量化,而完全不考虑相邻块或像素之间的相关性,由此导致原始图像数据的损失。其次,诸如H. 264/AVC的视频编解码器通过基于块来预测运动矢量以补偿图像数据,并且属于一个块的像素具有相同的运动矢量,这会导致块伪像。去块滤波器的作用为通过对块的边界误差进行平滑处理来提高最终恢复的图像的质量,上述处理发生在基于块的编码中。

发明内容
技术问题然而,传统的去块滤波器通过重复以下处理来执行去块滤波针对组成宏块的像素块的所有水平边界,计算边界强度(BQ值作为用于调整滤波强度的滤波器系数,针对所述像素块的所有垂直边界,计算BS值作为用于调整滤波强度的滤波器系数。每个像素块包括多个像素。结果,传统去块滤波器的滤波方法需要大量计算,这增加了滤波器的复杂性和滤波时间。技术方案示例性实施例的一方面至少针对上述问题和/或缺点,并至少提供下述优点。因此,示例性实施例的一方面在于提供一种用于图像数据的低复杂性去块滤波设备和方法以及使用所述设备和方法的视频解码设备和方法。根据示例性实施例的一方面,提供一种用于去除图像数据的块失真的去块滤波设备,所述设备包括参数提取器,用于从输入的当前帧的头部提取宏块中的多个单位块的参数信息;判决器,用于基于提取的参数信息来确定是否执行去块滤波;滤波器,用于根据确定结果对宏块执行去块滤波。根据示例性实施例的另一方面,提供一种用于去除图像数据的块失真的去块滤波方法,所述方法包括从输入的当前帧的头部提取宏块中的多个单位块的参数信息;基于提取的参数信息来确定是否执行去块滤波;根据确定结果对宏块执行去块滤波。根据示例性实施例的另一方面,提供一种用于对图像数据进行解码的解码设备, 该解码设备包括用于恢复输入帧的残差图像的熵解码器、反量化器和反离散余弦变换 (IDCT)单元,所述设备包括帧间和帧内预测器,用于产生输入的当前帧的预测画面;去块滤波器,用于从输入的当前帧的头部提取指示熵编码的执行/未执行的参数信息,根据提取的参数信息来可选地对恢复图像执行去块滤波,其中,所述恢复图像通过使用输入的当前帧的预测画面被恢复。


通过下面结合附图进行的描述,特定示例性实施例的上述和其它方面和特点将更加清楚,其中图1是示出根据示例性实施例应用了去块滤波器的视频解码设备的结构的框图;图2是根据示例性实施例的去块滤波设备的结构的框图;图3是示出根据示例性实施例的去块滤波方法的流程图;图4是示出根据示例性实施例的去块滤波方法中的BS值确定和滤波处理的流程图;图5和图6是示出传统BS值确定和滤波处理的示图;图7和图8是示出根据示例性实施例的BS值确定和滤波处理的示图;图9是示出根据示例性实施例的针对宏块中的奇数边界的BS值确定和滤波范围的示图;以及图10是示出图9描述的针对奇数边界的BS值确定和滤波范围被应用于扩展的 NXN宏块的示例的示图。在整个附图中,相同的附图标号将被理解为指示相同的组件、特征和结构。
具体实施例方式现将参照附图来详细描述示例性实施例。在以下的描述中,诸如详细配置和部件的特定细节仅被提供为用于帮助全面理解示例性实施例。因此,本领域技术人员应清楚在不脱离本发明的范围和精神的情况下,可对这里描述的实施例进行各种改变和改进。此外,为了清楚和简明,将省略对公知功能和构造的描述。首先,将简要描述示例性实施例的基本构思。示例性实施例提供一种方法,该方法用于使用编码块模式(CBP)参数可选地执行去块滤波,并简化确定用于去块滤波的BS值的处理,其中,所述CBP参数指示熵编码(或解码)的执行/未执行。此外,示例性实施例提供一种方法,其中,如果CBP参数具有指示熵编码(或解码)未应用于宏块或跳过模式应用于宏块的值“0”,则在图像数据的解码期间省略或跳过去块滤波操作。以用于帧之间的相同宏块的标记信息的形式来预先定义跳过模式,从而提高诸如 MPEG和H. ^4/AVC的视频压缩技术中的压缩性能。如果针对特定宏块设置了跳过模式,则编码器仅发送指示跳过模式的标记信息(而不发送所述特定宏块的编码数据),解码器通过复制先前帧中具有相同位置的宏块来恢复所述特定宏块。尽管为了方便而在示例性实施例中考虑的是H. ^4/AVC,但是根据示例性实施例的去块滤波设备和方法可应用于需要去块滤波的各种视频技术。图1示出根据示例性实施例应用了去块滤波器的视频解码设备的结构。参照图1,熵解码器101对输入的当前帧的比特流进行熵解码,并恢复当前画面与预测画面之间的残差图像的量化值。反量化器103通过对量化值进行反量化来恢复残差图像的频率系数,反离散余弦变换(IDCT)单元105通过对恢复的频率系数进行IDCT变换来恢复残差图像。运动补偿器107使用存储在帧存储器113中的参考帧的运动矢量来产生当前帧的预测画面。帧内预测器109考虑宏块中的像素之间的空间冗余来产生当前帧的预测画面。 加法器111通过将由运动补偿器107或帧内预测器109产生的预测画面与由IDCT单元105 恢复的残差图像相加来产生当前帧的恢复图像。去块滤波器115从当前帧的头部提取指示熵编码的执行或未执行的CBP参数,并根据提取的CBP参数的值来可选地执行去块滤波。同样,去块滤波器115从当前帧的头部确定宏块的模式类型,并根据确定的模式类型来可选地执行去块滤波。如果去块滤波被执行,则去块滤波器115使用基于CBP参数确定的BS值来执行去块滤波。执行去块滤波的滤波器可包括共同应用于编码设备和解码设备的环内滤波器。帧存储器113存储当前帧的恢复图像,其中,恢复图像的块失真被去块滤波器115 过滤,当产生预测画面时,过滤后的恢复图像被用作参考帧。在示例性实施例中,CBP参数被用作用于确定是否执行去块滤波的参数,而指示去块滤波的执行或未执行的分离信息可被插入被输入解码设备的帧的头部。在图1中,除了去块滤波器115之外的所有部件可与传统部件相同。现在,将详细描述根据示例性实施例的去块滤波设备的结构和操作。图2示出根据示例性实施例的去块滤波设备的结构,其中,去块滤波器115的结构被示出。参照图2,去块滤波设备包括跳过模式确定器201和参数提取器203中的至少一个,其中,跳过模式确定器201用于确定当前宏块的模式类型是否是跳过模式,以确定是否执行去块滤波,参数提取器203用于从输入的当前帧的头部提取CBP参数。CBP参数是指示是否已针对原始宏块中的每个单位块执行了熵编码的参数。更具体地说,在H. ^4/AVC标准中,如果量化后的系数全部为“0”,则可通过将宏块定义为“全零”块来增加编码效率。也就是说,如果CBP参数具有值“0”,则其指示没有针对相关单位块执行熵编码。因此,如果 CBP参数具有值“0”,则解码设备可省略或不执行对单位块的熵解码。在示例性实施例中, CBP参数被用作以下信息,该信息不仅用于确定熵编码的执行或未执行,而且用于确定去块滤波的执行或未执行。 尽管在例如H. 264/AVC标准中,单位块被定义为8 X 8 ±夬(由成行的8像素和成列的8像素组成),但是单位块的大小不限于8X8块,其可具有不同大小。
BS判决器205 (即,判决单元)基于宏块的模式类型信息和/或CBP参数来决定是否执行去块滤波,其中,宏块的模式类型信息从跳过模式确定器201提供,CBP参数从参数提取器203提供。当决定执行去块滤波时,BS判决器205使用基于CBP参数确定的BS值对宏块中的垂直边界和水平边界执行去块滤波。BS值是用于调整去块滤波的强度的滤波器系数。由于基于BS值的去块滤波依据的是现有技术,因此,将不提供对它的详细描述。在示例性实施例中,如果CBP参数不是“0”,则BS判决器205分别针对宏块中的奇数边界和偶数边界来决定(或计算)BS值。例如,BS判决器205针对宏块中的垂直奇数边界和水平奇数边界,基于CBP参数来决定BS值,并按照传统方式来决定偶数边界的BS值。 这里使用的术语“边界”是指宏块中由预定数量的相邻垂直或水平像素组成的块之间的相邻垂直或水平边界(或边缘)。示例性实施例的BS值确定方法与传统方法相比可减少需要的计算,其中,所述传统方法应计算宏块中的所有水平边界和垂直边界的BS值,以下将描述用于决定BS值的详细方法。滤波器207包括偶数边界滤波器207a和奇数边界滤波器207b。偶数边界滤波器 207a使用由BS判决器205确定的BS值对宏块中的偶数边界执行去块滤波。奇数边界滤波器270b使用由BS判决器205确定的BS值对宏块中的奇数边界执行去块滤波。在图2的示例中,针对宏块中的偶数边界和奇数边界来决定不同的BS值,但是,如果针对偶数边界的去块滤波被省略,则也可通过仅基于CBP参数决定奇数边界的BS值来执行去块滤波,从而进一步减少去块滤波所需的计算。尽管跳过模式确定器201、参数提取器203和BS判决器205在图2的示例中被示为分离的功能块,但是它们可被实现为至少一个处理器或控制器。图3示出根据示例性实施例的去块滤波方法。将参照图2来描述图3的方法。在示例性实施例中,假设基本上基于宏块来执行去块滤波。参照图3,在操作301,跳过模式确定器201从当前帧的头部确定宏块的模式类型是否是跳过模式。如果不是跳过模式,则参数提取器203从当前帧的头部提取宏块中每个单位块的CBP参数,并在操作303确定CBP参数是否具有值“0”。操作301和303中的每一个均是可选的。在使用CBP参数确定是否执行去块滤波时,如果CBP参数不具有值“0”,则CBP参数可具有值“ 1 ”,或可具有指示单位块的编码块模式的值。在这种情况下,会在位于单位块中的垂直边界和水平边界中的至少一个中发生需要去块滤波的块失真。如果在操作301宏块的模式类型是跳过模式,或者,如果在操作303单位块的CBP 参数具有值“0”,则在操作305,BS判决器205进行控制以省略或不执行对宏块或单位块的去块滤波。如果在操作303,单位块的CBP参数不具有值“0”,则在操作307,BS判决器205根据CBP参数来决定宏块中的垂直边界和水平边界的BS值。在操作307确定的BS值包括宏块中的奇数边界的BS值,基于CBP参数确定的BS 值可包括通过实验预先确定的值,但不受限于特定值。此外,BS值还可包括宏块中的偶数边界的BS值,偶数边界的BS值按照传统方式被确定。因此,如果上述去块滤波方法被使用,则根据跳过模式的使用/未使用和/或CBP 参数的值来可选地执行去块滤波,在去块滤波期间,奇数边界的BS值被确定为基于CBP参数预定的值,从而显著减少视频解码器的去块滤波器中需要的计算,并由此有助于实现低复杂性的去块滤波器。图4示出根据示例性实施例的去块滤波方法中的BS值确定和滤波处理,其中,图 3的操作307的细节被示出。为了更好地理解示例性实施例,首先将参照图5和图6来描述传统的BS值确定和滤波处理。在图5中,Bl代表16X 16宏块(由成行的16像素和成列的16像素组成),B2 代表8X8单位块。如图5所示,传统的去块滤波器计算宏块Bl中的垂直边界501、503、505 和507的BS值,并随后执行去块滤波。此外,如图6所示,传统的去块滤波器计算水平边界 601、603、605和607的BS值,并随后执行去块滤波。例如,H. 264/AVC标准的去块滤波处理首先应用给定宏块的垂直滤波,然后应用水平滤波。在滤波期间,传统的去块滤波器使用诸如给定宏块的编码模式、运动矢量和量化系数值数量的信息来如图5和图6所示计算垂直边界501、503、505和507以及水平边界 601,603,605和607的BS值,并随后基于BS值来调整滤波强度。更具体地说,传统的去块滤波器沿垂直边界501计算四个4X4块组合A-E、B_F、 C-G和D-H的BS值,并随后根据计算出的BS值以不同的滤波强度基于像素来执行去块滤波。按照同样的方式,去块滤波器沿垂直边界503计算四个4X4块组合E-I、F-J、G-K和 H-L的BS值,沿垂直边界505计算四个4X4块组合I_M、J-N、K-O和L-P的BS值,沿垂直边界507计算四个4X4块组合M-Q、N-R、0-S和P-T的BS值,并随后根据计算出的BS值以不同的滤波强度基于像素来执行去块滤波。此外,传统的去块滤波器沿水平边界601计算四个4X4块组合U_E、V_I、ff-M和 X-Q的BS值,并随后根据计算出的BS值以不同的滤波强度基于像素来执行去块滤波。按照同样的方式,去块滤波器沿水平边界603计算四个4X4块组合E-F、I-J、M-N和Q-R的BS 值,沿水平边界605计算四个4X4块组合F-G、J-K、N-0和R-S的BS值,沿水平边界607计算四个4X4块组合G-H、K-L、0-P和S-T的BS值,并随后根据计算出的BS值以不同的滤波强度基于像素来执行去块滤波。在如上所述应用去块滤波的H. ^4/AVC标准的情况下,如果BS值是4,则滤波处理被应用于沿边界的最多3个像素,如果BS值是3、2和1,则滤波处理被应用于最多2个像
ο返回图4,将参照图7和图8来描述示例性实施例。在操作401中,BS判决器205 按照传统方式确定宏块中的垂直偶数边界701、703和水平偶数边界705、707的BS值,并随后在操作403对BS值被确定的垂直偶数边界701、703和水平偶数边界705、707执行去块滤波。在图7中,垂直偶数边界位于宏块中的第0垂直边界701和第2垂直边界703,水平偶数边界位于宏块中的第0水平边界705和第2水平边界707。
在操作405,BS判决器205基于宏块中的垂直奇数边界801、803和水平奇数边界 805,807的CBP参数来确定BS值,并随后在操作407对垂直奇数边界801、803和水平奇数边界805、807执行去块滤波。在图8中,垂直奇数边界位于宏块中的第1垂直边界801和第3垂直边界803,水平奇数边界位于宏块中的第1水平边界805和第3水平边界807。在图4的示例中,在对偶数边界执行BS值确定和滤波之后,对奇数边界执行BS值确定和滤波,但是可按照相反的顺序或者并列地执行BS值确定和滤波。还可首先确定偶数边界和奇数边界的BS值,随后执行滤波。根据图4的方法,针对宏块中的奇数边界,基于CBP参数值来确定BS值,从而减少选择情况的数量,由此进一步降低去块滤波设备的计算复杂性。图9示出根据示例性实施例的针对宏块中的奇数边界的BS值确定和滤波范围。假设在图9的示例中,8X8单位块901、903、905和907包括在16X 16宏块中。参照图9,BS值判决器205针对存在于第一单位块901中的垂直奇数边界E_I、F_J 和水平奇数边界E-F、I-J确定四个预定义的BS值,并且,滤波器207根据确定的BS值对奇数边界E-I、F-J、E-F、I-J执行去块滤波。根据滤波强度,BS值可被设置为例如1到4中的一个,并且,可针对四个边界E-I、F-J、E-F、I-J确定相同的BS值,或者,考虑到像素块E、 I、F和J,可针对所述四个边界中的至少一个设置不同的BS值。类似地,即使针对第二单位块903中的垂直奇数边界M-Q、N-R和水平奇数边界M-N、Q-R、第三单位块905中的垂直奇数边界G-K、H-L和水平垂直边界G-H、K-L、第四单位块907中的垂直奇数边界Q_S、P-T和水平垂直边界0-P、S-T,去块滤波器也按照与用于第一单位块901的相同方式来确定BS值并执行去块滤波。图10示出图9描述的针对奇数边界的BS值确定和滤波范围被应用于扩展的NXN 宏块。参照图10,即使较大的宏块(例如,32X32或64X64宏块)被使用,去块滤波器也按照图9描述的方式针对具有CBP参数值的单位块1001、1003、1005和1007中的垂直奇数边界和水平奇数边界来确定BS值并执行去块滤波。通过以上描述可清楚根据示例性实施例,可提供一种低复杂性去块滤波器,其中,即使在使用有限硬件资源的设备中(如移动终端)也可有效地使用所述低复杂性去块滤波器。这种低复杂性去块滤波器或所述低复杂性去块滤波器的组件可在处理器中实现, 或可通过由处理器执行的软件来实现。尽管已参照本发明的特定示例性实施例示出并描述了本发明,但是本领域的技术人员将理解在不脱离由权利要求及其等同物限定的本发明的精神和范围的情况下,可在此进行形式和细节上的各种改变。
权利要求
1.一种用于去除图像数据的块失真的去块滤波设备,包括参数提取器,用于从输入的当前帧的头部提取宏块中的多个单位块的参数信息;判决单元,用于基于提取的参数信息来确定是否执行去块滤波;以及滤波器,用于根据判决单元的确定结果对宏块执行去块滤波。
2.如权利要求1所述的去块滤波设备,还包括跳过模式确定器,用于基于输入的当前帧的头部来确定宏块的模式类型是否是跳过模式。
3.如权利要求2所述的去块滤波设备,其中,如果宏块的模式类型是跳过模式,则判决单元确定不对宏块执行去块滤波。
4.如权利要求1所述的去块滤波设备,其中,当基于提取的参数信息确定执行去块滤波时,判决单元根据所述多个单位块的参数信息来确定用于去块滤波的至少一个滤波器系数。
5.如权利要求1所述的去块滤波设备,其中,参数信息包括指示熵编码的执行或未执行的编码块模式(CBP)参数,其中,如果CBP参数具有值“0”,则判决单元省略对宏块中的相关单位块的去块滤波。
6.如权利要求4所述的去块滤波设备,其中,判决单元适用于针对宏块的多个像素块之间的偶数边界和奇数边界分别确定所述至少一个滤波器系数。
7.如权利要求6所述的去块滤波设备,其中,所述多个单位块之一包括所述多个像素块。
8.如权利要求7所述的去块滤波设备,其中,判决单元根据提取的参数信息来确定奇数边界的所述至少一个滤波器系数。
9.如权利要求4所述的去块滤波设备,其中,所述至少一个滤波器系数是用于调整去块滤波的强度的边界强度(BQ值。
10.一种用于去除图像数据的块失真的去块滤波方法,包括从输入的当前帧的头部提取宏块中的多个单位块的参数信息;基于提取的参数信息来确定是否执行去块滤波;以及根据确定步骤对宏块执行去块滤波。
11.如权利要求10所述的去块滤波方法,还包括基于输入的当前帧的头部来确定宏块的模式类型是否是跳过模式;以及如果宏块的模式类型是跳过模式,则不对宏块执行去块滤波。
12.如权利要求10所述的去块滤波方法,其中,当基于提取的参数信息确定执行去块滤波时,确定步骤包括根据所述多个单位块的参数信息来确定用于去块滤波的至少一个滤波器系数。
13.如权利要求1所述的去块滤波设备或如权利要求10所述的去块滤波方法,其中,参数信息包括指示熵编码的执行或未执行的编码块模式(CBP)参数。
14.如权利要求13所述的去块滤波方法,其中,如果CBP参数具有值“0”,则确定步骤包括不执行对宏块中的相关单位块的去块滤波。
15.如权利要求12所述的去块滤波方法,其中,确定步骤包括针对宏块中的多个像素块之间的偶数边界和奇数边界分别确定所述至少一个滤波器系数,其中,所述多个单位块中的每一个包括所述多个像素块。
16.如权利要求15所述的去块滤波方法,其中,确定步骤包括根据提取的参数信息来确定奇数边界的所述至少一个滤波器系数。
17.如权利要求12所述的去块滤波方法,其中,所述至少一个滤波器系数是用于调整去块滤波的强度的边界强度(BQ值。
18.一种用于对图像数据进行解码的解码设备,所述解码设备包括 用于恢复输入帧的残差图像的熵解码器、反量化器;反离散余弦变换(IDCT)单元;帧间和帧内预测器,用于产生输入的当前帧的预测画面;以及去块滤波器,用于从当前帧的头部提取指示熵编码的执行或未执行的参数信息,根据提取的参数信息来可选地对当前帧的恢复图像执行去块滤波,其中,所述恢复图像通过使用预测画面被恢复。
19.如权利要求18所述的解码设备,其中,去块滤波器包括参数提取器,用于从输入的当前帧的头部提取宏块中的多个单位块的参数信息; 判决单元,用于基于提取的参数信息来确定是否执行去块滤波;以及滤波器,用于根据判决单元的确定结果对宏块执行去块滤波。
全文摘要
一种用于去除解码图像的块失真的去块滤波设备和方法以及使用所述去块滤波设备和方法的视频解码设备和方法。所述去块滤波方法包括从输入的当前帧的头部提取宏块中的多个单位块的参数信息;基于提取的参数信息来确定是否执行去块滤波;根据确定结果对宏块执行去块滤波。
文档编号H04N7/26GK102577377SQ201080034984
公开日2012年7月11日 申请日期2010年8月4日 优先权日2009年8月4日
发明者南廷学, 崔雄一, 沈东圭, 赵大星, 赵炫镐 申请人:三星电子株式会社, 光云大学校产学协力团
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1