采用自适应偏置处理编码视频的方法和装置与流程

文档序号:11880919阅读:268来源:国知局
采用自适应偏置处理编码视频的方法和装置与流程

本申请是2011年5月9日递交的,发明名称为“自适应回路滤波方法和装置”,申请号为201180011416.8的申请的分案申请。

技术领域

本发明有关于视频编码(video coding),且尤其有关于与自适应回路滤波(Adaptive Loop Filtering,ALF)有关的编码技术。



背景技术:

运动补偿(motion compensation)帧间编码(inter-frame coding)已在多种编码标准中广泛应用,如MPEG-1/2/4以及H.261/H.263/H.264/AVC。上述编码系统中的运动估计、运动补偿和后续处理都是基于块(block basis)进行的。在压缩进程中,由于采用了如量化(quantization)的有损操作(lossy operation),可能会出现编码噪声(coding noise)。在重建(reconstructed)视频数据中,特别是在块边缘或边缘附近,会有明显的编码伪影(coding artifact)。为了减小编码伪影的明显性,更新的编码系统中开始采用一种被称为去块(deblock)的技术,其中上述系统如H.264/AVC以及高性能视频编码(High Efficiency Video Coding,HEVC)系统。去块进程在块边缘自适应地应用滤波,以平滑编码噪声带来的边缘或边缘附近的突变,并维持图像的清晰度。此外,根据帧间编码的特性,回路内操作时配置去块进程。在最近的HEVC开发中,采用自适应回路滤波来处理去块重建帧。除了去块之外,自适应回路滤波可用作回路内处理,且通常用于对重建视频数据进行去块之后。自适应回路滤波用于在多个帧上重建视频数据,以降低时域上编码伪影的明显性。滤波系数可根据已知的优化算法进行设定,其中优化算法如使初始帧和重建帧之间的均方误差(Mean Square Error,MSE)最小的维纳-霍夫等式(Wiener-Hopf equation)。

在HEVC系统中,一帧或一片(slice)中的每个块均可选择进行传统ALF或不进行(开启/关闭)传统ALF。其中块的尺寸和形状均可为自适应的,且块的尺寸和形状信息可明确发送给译码器,或者可从译码器中暗中获取。根据所选性能准则,每个块可作出是否进行ALF的决定。可采用ALF标记(flag)来表示每个块的开启/关闭决定,使得译码器可相应进行ALF。虽然目前已知ALF可改进重建视频的视觉质量,但前期ALF开发的ALF处理非常局限,仅采用一可开启/关闭的固定ALF。因此,亟需一种改进的ALF,可允许从滤波器组(filter set)进行选择,其中一组滤波器可用来自适应地重建视频数据。还需要一种新的处理单元,用来应用滤波进程,从而进行更灵活以及/或者局部的处理。此外,还需要允许译码器获取各自信息,以在没有边信息(side information)的情况下也能应用滤波进程。



技术实现要素:

有鉴于此,本发明提供一种采用自适应偏置处理视频数据的方法,其中图片被划分为编码单元,以将编码进程用于每个编码单元,该方法包括:接收输入数据进行所述自适应偏置,其中所述输入数据对应于所述图片的重建或重建去块编码单元;将所述输入数据划分为多个滤波器单元,其中所述滤波器单元的边缘对应于所述编码单元的边缘,且每个滤波器单元包括一个或多个编码单元,至少一个滤波器单元包括两个或更多编码单元;通过给每个滤波器单元的各像素加上各偏置值,对所述滤波器单元应用所述自适应偏置,以产生滤波后视频数据,其中当一个滤波器单元包括两个或更多编码单元时,所述对所述滤波器单元应用所述自适应偏置采用与该个滤波器单元中两个或更多编码单元的自适应偏置有关的相同信息;以及提供所述滤波后视频数据。

本发明另提供一种采用自适应偏置处理视频数据的装置,其中图片被划分为编码单元,以将编码进程用于每个编码单元,该装置包括:接收输入数据进行所述自适应偏置的模块,其中所述输入数据对应于所述图片的重建或重建去块编码单元;将所述输入数据划分为多个滤波器单元的模块,其中所述滤波器单元的边缘对应于所述编码单元的边缘,且每个滤波器单元包括一个或多个编码单元,至少一个滤波器单元包括两个或更多编码单元;通过给每个滤波器单元的各像素加上各偏置值,对所述滤波器单元应用所述自适应偏置,以产生滤波后视频数据的模块,其中当一个滤波器单元包括两个或更多编码单元时,所述对所述滤波器单元应用所述自适应偏置采用与该个滤波器单元中两个或更多编码单元的自适应偏置有关的相同信息;以及提供所述滤波后视频数据的模块。

通过利用本发明,可更好地进行自适应偏置处理。

附图说明

图1是基于运动补偿预测的视频编码系统的示范性方块示意图。

图2是基于运动补偿预测的视频编码系统的示范性方块示意图,其中系统中包含自适应回路滤波器以改进视频质量。

图3是基于四分树的编码单元划分的示范性示意图。

图4是每个块的ALF开启或关闭的传统自适应回路滤波器的示范性示意图。

图5是根据本发明一示范性实施例的自适应回路滤波器用于滤波器单元,且每个滤波器单元选择滤波器组的示意图。

图6是可动态合并以共享滤波器组的示范性滤波器的示意图。

图7是滤波器单元可根据块划分和四分树划分进一步划分为滤波器控制单元的示范性滤波器控制单元划分的示意图。

图8是滤波器单元中的所有滤波器控制单元共享相同候选滤波器组,且每个滤波器控制单元通过控制标记选择特定滤波器或决定滤波器开启/关闭的示范性滤波器单元划分和示范性滤波器控制单元划分的示意图。

图9是亮度分量和色度分量可共享进行自适应回路滤波的示范性滤波器形状的示意图。

图10是亮度分量和色度分量可共享进行自适应回路滤波的示范性滤波器控制区域的示意图。

图11是亮度分量和色度分量可共享进行自适应回路滤波的示范性滤波器控制标记的示意图。

图12是基于像素强度值的示范性分类的示意图,其中区域中的像素根据强度值被分成两个等级。

图13是基于边缘方向的示范性分类的示意图,其中重现视频中的像素根据边缘方向被分成多种类别。

图14是基于模式信息的示范性分类的示意图,其中每块根据编码模式被分为多种类别。

图15是基于量化参数的示范性分类的示意图,其中每块根据量化参数被分成多种类别。

图16是基于剩余能量的示范性分类的示意图,其中每块根据剩余能量被分成多种类别。

图17是基于边缘分类器和边缘强度/方向组合的示范性分类的示意图,其中像素首先根据边缘分类器被分成多种类别,并接下来通过边缘强度或方向进行划分。

图18是基于区域特性的示范性分类的示意图,其中每个区域的区域特性基于平均边缘强度得到。

具体实施方式

对于数字视频压缩来说,运动补偿帧间编码是一种有效的压缩技术,已广泛地用于多种编码标准中,如MPEG-1/2/4和H.261/H.263/H.264/AVC。在运动补偿系统中,运动估计/补偿和后续压缩通常基于块在块中进行。在压缩进程中,由于采用了如量化的有损操作,可能会出现编码噪声。在重建视频数据中,特别是在块边缘或边缘附近,会有明显的编码伪影。为了减小编码伪影的明显性,更新的编码系统中开始采用一种被称为去块的技术,其中上述系统如H.264/AVC以及HEVC系统。去块进程在块边缘自适应地应用滤波,以平滑编码噪声带来的边缘或边缘附近的突变,并维持图像的清晰度。此外,根据帧间编码的特性,回路内操作时配置去块进程。

图1是具有运动补偿视频压缩和去块的系统方块示意图。压缩系统100显示了典型的视频编码器与帧内/帧间(intra/inter-prediction)预测、离散余弦变换(Discrete Cosine Transform,DCT)和熵编码(entropy coding)进行结合,以产生压缩视频数据。输入视频数据通过输入接口112进入编码器,且由帧内/帧间预测模块110进行处理。在帧内预测模式中,输入视频数据通过相同帧内的周边数据或者已经被编码的区域进行预测。帧缓冲器140中输出的重建数据142(用来进行预测)对应于相同帧内的周边数据或者已经被编码的区域。在帧间预测模式中,预测是基于时域中先前的重建数据142进行的,其中重建数据142被存储在帧缓冲器140中。帧间预测可为向前预测模式(forward prediction mode),其中上述预测是基于当前图片之前的图片进行的。帧间预测还可为向后预测模式(backward prediction mode),其中上述预测是基于当前图片之后(按显示顺序)的图片进行的。在帧间预测模式中,帧内/帧间预测模块110将预测数据提供给加法器115,并减去原始视频数据112。加法器115的输出117称为预测误差,可由DCT/量化模块120进一步处理,其中DCT/量化模块120进行DCT和量化(可表示为Q)。DCT/量化模块120将预测误差117转换为编码符号,由熵编码模块130进一步处理以产生压缩比特流132,其中压缩比特流被存储或传送。为了提供用于帧内/帧间预测的预测数据,DCT/量化模块120处理的预测误差需通过逆DCT和逆量化(inverse DCT and inverse quantization,可表示为IDCT/IQ)模块160恢复,以获取重建预测误差162。在帧间预测模式中,重建模块150将重建预测误差162与存储在帧缓冲器140中的先前重建视频数据119相加,生成当前重建帧152。在帧内预测模式中,将重建预测误差162与储存在帧缓冲器140中的相同帧中先前重建周边数据相加,以生成当前重建帧152。帧内/帧间预测模块110用来将存储在帧缓冲器140中的重建数据119发送给重建模块150,其中重建数据119可根据帧内/帧间模式,对应于时域中的先前重建帧或者相同帧中的重建周边数据。

在编码系统中,由于采用了如量化的有损操作,重建视频数据152通常包含编码噪声。由于编码系统中基于块的处理,块边缘和边缘附近的编码伪影更明显。上述伪影可在帧与帧之间传播。相应地,更新的编码系统中开始采用回路内滤波,将块边缘和边缘附近的伪影进行“去块”,从而减小伪影的明显性并改进图片质量。图1中所示的去块模块170用来处理重建视频数据152。由于压缩系统中如DCT、量化、逆量化、IDCT、去块处理以及回路滤波的各种操作,重建视频数据的像素强度(pixel intensity)会发生平均电平位移(mean level shifted),以及/或者其强度范围可能会超过原始视频数据的强度范围。因此,重建视频数据还可采用自适应偏置(offset)以及/或者自适应限幅(clipping),其中图1中并未显示自适应偏置和自适应限幅。自适应偏置以及/或者自适应限幅可在去块之前/之后进行。

在当前的HEVC发展中,采用ALF来处理去块重建帧。在HEVC中,一帧或一片中的每个块均可选择进行传统ALF或不进行(开启/关闭)传统ALF。其中块的尺寸和形状均可为自适应的,且块的尺寸和形状信息可明确发送给译码器,或者可从译码器中暗中获取。在一实施例中,可将CU通过四分树(quadtree)划分成块。根据所选性能准则,每个块可作出是否进行ALF的决定。可采用ALF标记来表示每个块的开启/关闭决定,使得译码器可相应进行ALF。虽然目前已知ALF可改进重建视频的视觉质量,但前期ALF开发的ALF处理非常局限,仅采用一可开启/关闭的固定ALF。因此,亟需一种改进的ALF,可允许滤波器组进行选择,其中一组滤波器可用来自适应地重建视频数据。还需要一种新的处理单元,用来应用滤波进程,从而进行更灵活以及/或者局部的处理。此外,还需要允许译码器获取各自信息,以在没有边信息的前提下也能应用滤波进程。

相应地,基于HEVC的补偿系统与自适应回路滤波结合,进行除了去块之外的回路内滤波。由于去块滤波器用于块边缘,自适应回路滤波器用于空域中的像素。在HEVC中,传统的自适应回路滤波器仅用于可采用滤波器改进性能的块中。对于其它的无法通过自适应回路滤波器改进性能的块来说,并不采用自适应回路滤波。在本发明中,缩写ALF可表示自适应回路滤波器或自适应回路滤波。图2是编码系统与自适应回路滤波、去块相结合的系统方块示意图。重建帧152首先由去块模块170进行处理,其中去块模块170配置于回路内操作中。去块重建视频数据随后由自适应回路滤波模块210进行滤波。经去块和自适应回路滤波处理之后的重建数据随后存储在帧缓冲器140中,作为处理后续帧的参考视频数据。ALF处理可根据以下等式进行描述:

<mrow> <msup> <mi>s</mi> <mrow> <mo>&prime;</mo> <mo>&prime;</mo> <mo>&prime;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <msub> <mi>w</mi> <mi>i</mi> </msub> <mo>&CenterDot;</mo> <msubsup> <mi>s</mi> <mi>i</mi> <mrow> <mo>&prime;</mo> <mo>&prime;</mo> </mrow> </msubsup> <mo>+</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>M</mi> <mo>+</mo> <mi>i</mi> </mrow> </msub> <mo>&CenterDot;</mo> <msub> <mover> <mi>s</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>+</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>O</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>M</mi> <mo>+</mo> <mi>N</mi> <mo>+</mo> <mi>i</mi> </mrow> </msub> <mo>&CenterDot;</mo> <msubsup> <mi>e</mi> <mi>i</mi> <mo>&prime;</mo> </msubsup> <mo>+</mo> <mi>c</mi> <mo>,</mo> </mrow>

其中,s″′为ALF处理的输出,s″为去块视频数据,为预测数据,e′为重建预测误差,而c为常数。滤波器系数wi可根据如维纳-霍夫等式的优化算法获取,以优化性能。M、N和O分别表示与去块视频数据、预测数据和重建预测误差有关的滤波器分接头(filter tap)编号。如前面所述,自适应偏置以及/或者自适应限幅可用于去块模块170之前或之后。若采用自适应偏置以及/或者自适应限幅,s″为去块模块170之前或之后的处理视频数据,其中处理视频数据包括自适应偏置以及/或者自适应限幅。

根据HEVC中所采用的ALF,回路滤波自适应地基于块进行。若回路滤波有助于改进某个块的视频质量,则该块被相应标记,用来指示已应用回路滤波。否则,该块被相应标记来指示未应用回路滤波。滤波器系数通常进行优化设计,以与图片中所处理图像区域的特性相匹配。举例来说,滤波器系数可通过采用维纳滤波器(Wiener filter)设计为使均方误差最小,其中维纳滤波器是一种著名的最优线性滤波器,用来恢复高斯噪声(Gaussian noise)引起的衰落。在视频压缩系统中,主要的失真(distortion)来源于量化噪声,其中量化噪声可简单建模为高斯噪声。采用维纳滤波器的滤波器系数设计需要知道初始信号和重建信号。图2中并未显示用来获取滤波器系数的处理单元。滤波器系数需同图像区域和边信息一同传送,且图像区域中的所有块共享相同的滤波器系数。如此一来,图像区域需要足够大,以减少与滤波器系数有关的负荷信息。在当前的HEVC中,用来获取滤波器系数的图像区域通常是基于片或帧的。基于片获取滤波器系数时,滤波器系数信息可在片头(slice header)中携带。

ALF通常采用二维(two-dimensional,2D)滤波器。实践中所采用滤波器的维数如5×5、7×7或9×9。此外,ALF还可采用其它尺寸。为了降低实现成本,2D滤波器可设计为彼此分离,使得2D滤波器可通过两个单独的一维滤波器实现,其中一个一维滤波器用于水平方向,而另一个用于垂直方向。由于滤波器系数可能已被传送,可采用对称滤波器(symmetric filter)来节约所需的边信息。还可采用其他类型的滤波器来降低需被传送系数的数目。举例来说,可采用菱形(diamond-shaped)2D滤波器,其中水平坐标轴和垂直坐标轴上大多为非0系数,而非坐标轴处大多为0值系数。此外,滤波器系数可以以码元的形式传送,以节省带宽。

在传统的编码系统中,视频数据通常被分为宏块(macroblock),而编码进程用于图像区域的宏块中。其中,图像区域可为表示图片中子集的片,可被单独编码和译码。在如H.264/AVC的新式编码标准中,片的尺寸是灵活可变的。按照以前的编码标准(如MPEG-1和MPEG-2),图像区域还可为帧或者图片。传统编码系统的运动估计/补偿通常基于宏块。运动补偿宏块随后被分为4个8×8的块,且每个块采用8×8的DCT。在H.264编码标准中,宏块的编码进程变得更灵活,其中16×16的宏块可被自适应地划分为小至4×4像素的块,以用于运动估计/补偿和编码。在当前的HEVC中,已采用更灵活的编码结构,其中编码单元(Coding Unit,CU)被定义为处理单元,且编码单元可被递归划分为更小的编码单元。编码单元的概念类似于传统视频编码中宏块和子宏块(sub-macro-block)的概念。可采用自适应编码单元,以基于H.264/AVC压缩标准改进宏块的性能。

图3是基于四分树的编码单元划分的示范性示意图。在深度(Depth)0,包含128×128像素的初始编码单元CU0 312为最大的CU。其中,如块310中所示,初始编码单元CU0 312进行四分树划分。划分标记0表示该CU并未被划分,而划分标记1表示该CU通过四分树被划分为4个更小的编码单元322。形成的4个编码单元被标记为0、1、2和3,且每个形成的编码单元可用于下一深度的进一步划分。从编码单元CU0 312获取的的编码单元可表示为CU1 322。编码单元通过四分树进行划分后,除非形成的编码单元已达到预定义的最小CU尺寸,否则形成的编码单元需要进一步通过四分树划分。如此一来,在深度1中,如块320中所示,编码单元CU1 322进行四分树划分。类似地,划分标记0表示该CU并未被划分,而划分标记1表示该CU通过四分树被划分为4个更小的编码单元CU2 332。编码单元CU2的尺寸为32×32,四分树划分进程可继续,直到得到预定义的最小编码单元。举例来说,若最小编码单元被设定为8×8,则如块330中所示,深度4中,编码单元CU4 342并不进行进一步划分。图像进行四分树划分而形成的多尺寸编码单元可组成划分图(partition map),用于编码器相应处理输入图像区域。划分图也会发送给译码器,从而相应进行译码进程。

在HEVC中,可基于块在像素上进行自适应回路滤波。若ALF可改进块的质量,则该块的滤波器被设置为开启,否则该块的滤波器被设置为关闭。由于将图像区域进行划分,ALF的固定块尺寸易于实现,且不需要将边信息发送给译码器。然而,在Chujoh等人在ITU Study Group 16–Contribution 181,COM16-C181-E的2009年1月2日的题为“基于四分树的自适应回路滤波器”的研究中,提出一种基于四分树的ALF,可进一步改进固定的基于块的ALF的性能。ALF的划分信息应发送给译码器,以用于同步处理。McCann等人在2012年4月15-23日文件JCTVC-A124的“视频压缩技术中三星的呼叫响应”中,提出了另一种用于ALF的图像区域划分。McCann等人通过四分树将CU进行划分,并在形成的块上进行ALF。基于四分树的CU的划分信息用于ALF划分,并不需要ALF的任何附加边信息。由于ALF划分与CU划分一致,基于CU划分的ALF划分被称为CU-同步(CU-synchronous或CU-synchronized)ALF划分。如图4所示,早期的ALF设计仅为块提供ALF开启或ALF关闭的选择。若ALF基于单独划分的块,则需要传送与ALF划分有关的边信息、块尺寸和块位置。通过采用与CU结构相同的ALF结构,CU-同步ALF划分可减少所需的边信息。因此,CU-同步ALF的滤波器控制信息为与每个CU有关的控制标记,用来指明滤波器是开启还是关闭。因此,需要一种先进ALF,用来提供更灵活的滤波器控制以及/或者更多的滤波器自适应性,而不是仅提供开启/关闭选择。

为了进一步增强灵活性以及改进传统ALF的性能,先进ALF可从多个滤波器组中自适应地选择候选滤波器组,以根据ALF组选择采用自适应回路滤波,来重建视频数据。上述重建视频数据可为图2中重建模块150所提供的重建视频数据。此外,附加的自适应偏置以及/或者自适应限幅可在去块模块170之前或之后采用。在本发明的一实施例中,先进ALF用于被称为滤波器单元(Filter Unit,FU)的新的处理单元,其中FU可与CU不同。然而,FU划分也可与CU划分相同,如此便不需要单独的边信息来传送与FU划分有关的信息。在一实施例中,滤波器单元的边缘为编码单元的边缘,且每个滤波器单元包含至少一个编码单元。此外,先进ALF允许每个FU选择一个滤波器组作为候选滤波器,以通过候选滤波器进行回路滤波。

图5是根据本发明一示范性实施例的重建视频被划分为滤波器单元且为每个FU选择候选滤波器的示意图。滤波器组可包含单个滤波器或多个滤波器,每个FU均进行ALF组选择,以选择出候选滤波器进行回路滤波。本示范例中的FU1 510包含4个CU,FU2 520包含一个CU。每个FU选择其自己的候选滤波器,即FU1 510选择滤波器1,而FU2 520选择滤波器2。采用ALF组选择索引可提供简单指示,以减少与采用滤波器有关的边信息。为了进一步减少与每个FU有关的信息,不同FU可共享滤波器信息,如一FU可与其相邻FU具有相似特性。举例来说,图6中显示了16个FU,其中相邻FU可合并(merge),以共享相同的候选滤波器。二维FU可转换为采用扫描样式(scanning pattern)的一维FU。可检查相邻FU以测定相邻FU是否进行合并以共享相同的候选滤波器。扫描样式可为水平排序,如此一来一维FU的索引顺序为[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16];扫描样式可为垂直顺序,如此一来一维FU的索引顺序为[1,5,9,13,2,6,10,14,3,7,11,15,4,8,12,16];扫描样式还可为z扫描(z-scan)顺序,如此一来一维FU的索引顺序为[1,2,5,6,3,7,4,8,9,10,13,14,11,12,15,16]。还可采用其它的扫描样式,如本领域技术人员所知的蛇形扫描(snake scan)或希尔伯特扫描(Hilbert scan)。当然,还可采用其它预定义的扫描样式。此外,扫描样式还可由用户进行设计。用户定义的扫描样式可设计为与视频数据的特性相匹配以获取更好的性能,还可设计为其他样式用于其它目的。

每个FU从滤波器组中选择候选滤波器进行ALF,FU可被划分为滤波器控制单元(Filter Control Unit,FCU),其中FU中所有的FCU均共享相同的候选滤波器组,而候选滤波器组可包含单个滤波器或多个滤波器。若FU的候选滤波器组具有多个滤波器,则FU中的每个FCU可从候选滤波器组中,为FCU选择各自的滤波器。FCU可通过四分树划分、块划分形成,也可与预测单元(Prediction Unit,PU)或变换单元(Transform Unit,TU)同步。每个FCU可具有各自的控制标记,若候选滤波器组包含多个滤波器,可通过滤波器选择索引(filter_sel_idx)从候选滤波器组的多个滤波器中选择一个滤波器,若候选滤波器组包含一个滤波器,可通过滤波器选择索引指示滤波器开启/关闭。FCU的采用允许更精细的控制,以改进编码效率。图7显示了将FU划分为FCU的示范例,其中FU710通过块划分被划分成FCU,而FU720通过四分树划分被划分成FCU。当采用块划分或四分树划分时,需要边信息来传送与FCU划分有关的信息。可采用划分标记滤波器划分标记(fliter_split_flag)来指示当前FU是否划分成FCU。若采用块划分,标记滤波器划分标记=0指示没有进行划分,而标记滤波器划分标记=1指示将FU划分为FCU块。若采用四分树划分,标记滤波器划分标记=0指示没有进行划分,而标记滤波器划分标记=1指示将按照四分树划分将FU进行划分。

FU的候选滤波器组中的每个滤波器可为与FU有关的新的滤波器。不过,有时FU的最优设计可能会与先前图片的FU相似。因此,先前图片中FU的滤波器信息可重复使用,而上述滤波器可称为时间延迟(time-delayed)滤波器。类似地,当前FU可采用相同图片中先前编码FU的经优化设计的滤波器,上述滤波器成为空间延迟滤波器(space-delayed filter)。UE被划分为FCU后,每个FCU的滤波器决定根据滤波器控制标记滤波器选择索引来测定。举例来说,若FU的候选滤波器组包含两个滤波器,每个FCU可采用滤波器选择索引,从两个滤波器中选择一个滤波器,如滤波器选择索引=0表示选择滤波器2,而滤波器选择索引=1表示选择滤波器1。若候选滤波器组仅包含一个滤波器,则滤波器选择索引=0可表示FCU的滤波器关闭,而滤波器选择索引=1表示FCU的滤波器开启。图8是如上所述每个FCU进行滤波器选择的示范性示意图。重建视频被划分为包含FU 800的FU。FU 800进一步划分成16个FCU。FU 810对应于候选滤波器组仅包含一个滤波器的滤波器选择,而FU820对应于候选滤波器组包含两个滤波器的滤波器选择。

ALF组选择信息可被明确传送,或可设定为允许译码器隐含获取信息。在本发明的一实施例中,允许明确或隐含传送ALF组选择信息。可采用自适应方案来选择明确模式或隐含模式。可采用ALF方法选择索引方法选择标记(method_selection_flag)指明采用的是明确方法还是隐含方法。ALF方法选择信息可在序列级、图片级、片级、CU级、FU级或FCU级携带。因此,仅需要方法选择标记用于对应的序列、图片、片、CU、FU或FCU,以指明采用的是明确方法还是隐含方法。举例来说,方法选择标记=0指示选择明确模式,而方法选择标记=1指示选择隐含模式。若选择明确模式,则采用合适的语法来指明当前块的滤波器选择。若选择隐含模式,译码器基于先前编码信息测定ALF组选择信息,从而在没有边信息的情况下获取相同的ALF组选择信息。

为了进一步改进与ALF有关的压缩效率,本发明的一实施例允许视频数据的亮度(luma)和色度(chroma)分量共享滤波器信息。共享的滤波器信息可为滤波器控制区域划分、滤波器选择或滤波器开启/关闭、滤波器特性、滤波器系数或者以上信息的组合。亮度和色度分量共享滤波器信息的途径之一是从其它分量中获取该分量的滤波器信息。此外,亮度/色度信息共享可自适应进行,以优化性能。共享开关(sharing switch)可在序列级、图片级、片级、CU级、FU级或FCU级采用,以指示是否进行亮度/色度信息共享。滤波器形状和滤波器尺寸(如滤波器长度)可当作共享的亮度/色度分量的部分滤波器特性。举例来说,如图9所示,亮度和色度分量可采用菱形滤波器910或另一形状滤波器920。若采用相同形状,则滤波器尺寸需进行适当标度,以考虑到亮度分量和色度分量的不同的信号特性。

若亮度和色度分量共享滤波器控制区域,如上述滤波器单元划分的滤波器控制单元,则可为亮度和色度分量设计公用滤波器控制区域。或者,如图10所示,色度分量的滤波器控制区域划分1020可从亮度分量的滤波器控制区域划分1010中获取。若亮度和色度分量共享滤波器选择,则可为亮度和色度分量设计公用滤波器选择。其中,滤波器选择如采用上述滤波器控制标记的滤波器选择。或者,如图11所示,色度分量的滤波器选择1120可从亮度分量的滤波器选择1110中获取。若亮度和色度分量共享滤波器系数,亮度分量的滤波器系数可用来获取色度分量的滤波器系数。若根据一个分量的滤波器信息来获取另一分量的滤波器信息,则上述示范例通常根据亮度分量的信息来获取色度分量的信息。不过,也可根据色度分量的信息来获取亮度分量的信息。

滤波器选择还可基于重建视频数据的分类。若涉及的重建视频数据仅与先前编码数据有关,则基于分类的滤波器选择对于采用隐含模式的ALF选择十分有用,因为译码器不需要边信息即可获取相同的分类。若采用基于分类的滤波器选择,编码视频数据基于重建视频数据的测量特性被分成多个类别。测量特性可与像素强度水平、边缘方向(edge orientation)、边缘强度、模式信息、量化参数、剩余能量(residual energy)、区域位置、运动信息或以上的组合有关。举例来说,若特性与强度水平有关,像素强度水平的等级1可定义为从0到127,而等级2可定义为从128到255。换句话说,如图12所示,强度水平为0到127的像素1212被量化为等级1222,而强度水平为128到255的像素被量化为另一等级1224。图片1210为具有初始强度的图片,而图片1220为具有量化强度的相应图片。相应地,滤波器1基于等级1 1222的像素设计,而滤波器2基于等级2 1224的像素设计。设计好滤波器1和滤波器2后,区域1212中对应于等级1的像素采用滤波器1进行滤波,而区域1214中对应于等级2的像素采用滤波器2进行滤波。上述强度水平映射仅作为示范例,本发明可采用对应于不同强度范围或更多等级的映射。测量特性也可基于如运动向量的运动信息。

若滤波器选择根据边缘方向进行分类,可如图13所示,采用3×3像素窗口来检测边缘或线的方向是0°、45°、90°还是135°。本领域技术人员可知存在几种已知边缘检测(edge-detection)和线检测(line-detection)运营商。边缘方向可由边缘活动、相邻像素之间的关系或者拉普拉斯算子(Laplacian)的总和进行测量。在图13所示的示范例中,像素根据四个边缘方向进行分类,从而形成五个等级,其中一种情况是没有检测到边缘。相应地,可根据分成的五个种类设计五个滤波器。尽管上述以4个方向为例,本发明还可采用更多或更少的边缘方向。此外,不但可采用边缘方向进行分类,还可根据边缘强度进行分类。边缘强度可由边缘活动、相邻像素之间的关系或者拉普拉斯算子的总和进行测量。可基于边缘强度的特性进行分类,其中边缘强度的特性如边缘、低谷、高峰或上述情况均未出现。还可通过将边缘强度量化为多个范围来进行分类。举例来说,边缘强度可量化为4个等级,并为每个等级设计一个滤波器。

每个块的编码模式也可用于分类。举例来说,可根据帧内/帧间模式将图片分成多个区域,并为具有相同编码模式的区域分配专用滤波器。帧间模式可进一步根据进一步的模式(如P模式和B模式)分类分成更多区域。举例来说,图14是根据本发明一示范性实施例的通过模式信息分类而进行滤波器选择的示意图。图片被分为多个区域,且每个区域与编码模式有关。上述区域根据四种模式(即模式0到模式3)进行分类。举例来说,模式0为帧内模式,模式1为帧间模式,模式2为跳跃模式(skip mode),而模式3为直接模式。每个分类的区域采用相应的滤波器。类似地,还可采用量化参数(Quantization Parameter,QP)进行分类。图15是根据本发明一示范性实施例的基于量化参数进行分类后选择滤波器的示意图。在本示范例中,图片被分为多个区域,且每个区域采用3个量化参数(即QP22到QP24)之一。相应地,上述区域被分成3类,每类设计一滤波器,且该滤波器用于该类的所有区域。若上述图片由更多或更少的QP进行编码,则图片可被分为更多或更少的类。某些类别可融合以形成更少的类别。与预测误差有关的剩余能量也可用于分类。在一示范例中,区域的剩余能量可被量化为N个间隔之一,以为该区域测定出N类中的一类,其中N为整数。在另一示范例中,剩余能量可与阈值进行比较,其中一类对应于所有剩余能量均低于阈值的区域,另一类对应于至少一剩余能量高于阈值的区域。如此一来,如图16所示,两个类别可各自采用一滤波器,其中cbf表示编码块标记(coded block flag),而标记为cbf0的区域表示预测进程后剩余能量为0,而标记为cbf0的区域表示预测进程需被编码的剩余能量为非0。

重建视频数据的特性结合也可用于分类。举例来说,可首先采用边缘分类将像素分为多个组。通过采用如边缘强度或边缘方向的另一特性,分成的组可进一步分类。在本发明的一示范性实施例中,首先通过边缘分类将图片或区域中的像素分为多个组。如图17所示,边缘活动索引GroupIdx由当前像素C的强度和其周围像素P1,P2,…,P8的强度计算出来:

GroupIdx=f(C,P1)+f(C,P2)+…+f(C,P8)+8.

其中,函数f(x,y)可将像素强度(x,y)映射为+1、0或-1。若x>y,则f(x,y)=1;若x=y,则f(x,y)=0;若x<y,则f(x,y)=-1。因此,GroupIdx的范围为0到16。图片或区域中的像素可通过映射函数Index2ClassTable分成9组,其中Index2ClassTable[17]={1,1,2,2,3,3,4,0,0,0,5,5,6,6,7,7,8}。ClassIdx所指示的计算GroupIdx到组的映射是根据以下等式:

ClassIdx=Index2ClassTable(GroupIdx).

通过边缘分类得到的9组中一组的像素可根据边缘强度或边缘方向分成更多类别。举例来说,组0可根据边缘强度进一步划分为多个组,其中边缘强度通过拉普拉斯方法的综合测量而得,Activity=abs(2C–P4–P5)+abs(2C–P2–P7)。举例来说,Activity可分为7个范围,以将组0分成7个单独的组。相应地,通过采用边缘分类和边缘强度的组合,像素可分为15个类别。上述边缘分类和边缘强度的组合仅作为将重建视频数据分为更多种类的组合特性的示范例,本发明还可采用其他组合特性。此外,尽管在上述示范例中,第一分类可获取9个组,第二次分类可获得15类,本发明第一次分类的组数和第二次分类的组数可为其它数值。

在采用先进ALF实现本发明的另一示范例中,可基于区域特性支持自适应,其中区域特性基于与区域中像素有关的特性获取。举例来说,区域特性可基于区域的平均边缘强度(活动)来产生基于块的类别。在另一示范例中,区域特性可基于区域的平均边缘方向来产生基于块的类别。相应地,图片区域可基于区域特性分成多个类别。图18是采用先进ALF实现本发明的另一示范例的示意图,其中区域特性与区域中像素的平均边缘强度有关。可采用阈值th来将区域分成两类,其中平均边缘强度≥th的区域被分为类别0,而平均边缘强度<th的区域被分为类别1。尽管图18中以两种类别为例,平均边缘强度还可被分成更多类。此外,尽管上述实施例将边缘特性和边缘方向作为区域特性,该区域中像素的其它特性也可用来获取区域特性。

由于基于不同特性的不同分类器可组起来,将像素分成多个类别以自适应地应用ALF,其中多个特性还可根据标记选择性地应用。举例来说,可选择性地采用基于区域特性的分类器或基于区域强度的分类器。可采用标记来指示图片是否根据区域特性或边缘强度特性来分类。此外,图片可分为多个区域,且每个区域可各自进行分类选择。相同类别的区域可共享同一滤波器。区域可为滤波器单元或编码单元。此外,区域还可基于像素位置进行。举例来说,偶数列(even column)中的像素可分为一类,奇数列(odd column)中的像素可分为另一类。类似地,偶数行中的像素可分为一类,而奇数行中的像素可分为另一类。尽管上述自适应选择分类器是以区域特性和边缘强度特性为例,本发明还可采用其它分类器组或者多个分类器组。

上述自适应回路滤波器可用于视频编码器和视频译码器。无论是视频编码器还是视频译码器,重建视频数据都与编码伪影有关。上述的自适应回路滤波方案可有助于改进重建视频的视觉质量。上述根据本发明的实施例具有先进ALF的编码系统可通过多种硬件、软件码或上述结合实现。举例来说,本发明的一实施例可为电路集成到视频压缩芯片,或者程序码集成到视频压缩系统,以进行相应处理。本发明的另一实施例可为程序码在数字信号处理器(Digital Signal Processor,DSP)上执行以进行相应处理。本发明还可包含一系列功能,并由电脑处理器、数字信号处理器、微处理器、现场可编程门阵列(Field Programmable Gate Array,FPGA)执行。通过执行定义本发明实施例的机器可读软件码或韧件码,上述处理器可根据本发明执行特定任务。软件码或韧件码可在不同程序语言和不同格式或方式中进行。软件码可编译成不同的目标平台。不过,不同的编码格式、方式和软件码语言,以及与本发明有关的使码执行任务的其它方法均符合本发明的精神,落入本发明的保护范围。

虽然本发明已就较佳实施例揭露如上,然其并非用以限制本发明。本发明所属技术领域中普通技术人员,在不脱离本发明的精神和范围内,当可作各种的变更和润饰。因此,本发明的保护范围当视之前的权利要求书所界定为准。

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