视听编解码器的滤波方法和滤波设备的制作方法

文档序号:7622254阅读:169来源:国知局
专利名称:视听编解码器的滤波方法和滤波设备的制作方法
技术领域
本发明涉及一种视听编解码器,并且尤其涉及一种视听编解码器的滤波方法和滤波设备。
背景技术
近日,微软公司向作为国际标准化团体之一的电影电视工程师学会(SMPTE)提交了与VC-1(以前称为VC9)相关的信息,所述VC-1是运动图像压缩标准草案。目前,正在积极地审查VC-1标准草案,并且期待最终将其采纳作为国际标准。
除了每个都已经被采纳作为运动图像压缩标准并被广泛应用的运动图像专家组(MPEG)-2、MPEG-4和H.264标准之外,也期待VC-1变为领先的运动图像压缩标准。由于它的压缩效率近似具备最佳压缩效率的H.264的压缩效率的80%,而且它的实现复杂度相当于H.264的实现复杂度的约60%,因此VC-1被认为具有良好的复杂度性能比(complexity-to-performance ratio)。同样,就图像质量而言,VC-1也被认为具备比MPEG-2或MPEG-4更好的品质。
根据上述的运动图像压缩标准,以块为单位来对数字图像进行编码和解码。在此时,在通过解码过程再现的数字图像中,发生这样一种现象,即块的边界看起来是不同的。这种现象称为成块伪像(blocking artifact),并且为了消除成块伪像,使用环路滤波器。即,环路滤波器是一种插入到编解码器(编码器和解码器)的编码环路中以便消除(去成块)成块现象的滤波器。
在下文中,将更详细地解释VC-1的解码过程。
图1是vC-1解码器的框图。参照图1,所述VC-1解码器包括位流解析单元、逆可变长编码(vLC)单元、逆量化单元、逆变换单元、运动补偿单元、重叠平滑和环路滤波单元、强度补偿和范围缩放单元、以及存储器。具体来讲,本发明的一个实施例涉及解码器的元件中的环路滤波器。
如果在vC-1解码器中将LOOPFILTER序列参数设置为1,则对通过逆vLC单元、逆量化单元和逆变换单元处理的重构图像执行滤波过程。应该在重构图像被用作用于运动补偿的参考帧之前施加这一滤波过程。这样一来,由于在滤波过程之后将重构图像用作用于运动补偿的参考帧,因而解码器应当严格地遵循由标准规定的滤波过程。由于一幅图像通常是由多个切片(slice)形成的,因而对每一个切片独立地执行环路滤波。
环路滤波的主要目的就是要减少或消除因量化而在块边界上产生的成块现象。在此时,在I图像的情况下,以8×8的块为单位执行变换,并且由此,以8个像素为单位水平地和垂直地执行滤波。也就是,在8个像素、16个像素和24个像素中的每一个上执行滤波。
同时,在P图像的情况下,依赖于变换类型是8×8、8×4还是4×8,块边界可能垂直地或水平地出现在每个4像素单元上。由此,在每个4像素单元上垂直地和水平地执行滤波。也就是,在4个像素、8个像素和12个像素中的每一个上执行滤波。现在将更具体地对此进行解释。
1)I图像中的环路滤波在I图像中,对全部8×9块边界执行去成块滤波以消除成块伪像。图2A和2B是示出在I图像中滤波后的水平/垂直块边界中的像素的图。
参照图2A和2B,示出了由元素Y、Cb、Cr形成的图像的最左手侧部分。十字(+)表示像素,而圆形(o)表示已滤波的像素。如图2A和2B所示,不对顶部上的第一水平线和左手侧的第一垂直线进行滤波。同样,不对位于底部上的第一水平线和右手侧上的最后的垂直线(未示出)进行滤波。也就是说,假定在一帧中,N表示在水平方向上的8×8的块的数量,而M表示在垂直方向上的8×8的块的数量,在水平方向上只对水平线(7,8)、(15,16)...((N-1)*8,(N-1)*8)进行滤波。同样,在垂直方向上只对垂直线(7,8)、(15,16)...((M-1)*8,(M-1)*8)进行滤波。
此外,滤波的顺序也是非常重要的。也就是说,在一个完整的帧中,仅在所有水平边界线都被滤波之后,才对所有垂直边界线进行滤波。所以,为了对一帧进行滤波,对水平方向上的所有边界线进行滤波,并将结果存储在存储器中,然后对垂直方向上的所有边界线进行滤波。由于这种非因果关系滤波方法(non-causal filtering method),对一帧进行滤波需要大的带宽,并且由于应该结束在水平方向和垂直方向这两个方向上进行的滤波以便完成滤波,从而可能会出现帧延迟。
2)P图像中的环路滤波在P图像中,块可能处于内模式(intra mode)下或中间模式(inter mode)下。由于处于内模式下的块总是采用8×8的变换,因此只对8×8的块边界进行滤波。同时,处于中间模式下的块采用8×8、8×4、4×8或4×4的逆变换,以便对残留误差进行解码。所以,根据相邻块的情况,可以对当前块和相邻块之间的边界进行滤波或不对其进行滤波。按照下列标准来判断应该对哪一个块边界(8×8)或子块边界(8×4、4×8或4×4)进行滤波。
(1)无条件地对8×8的块中的编码子块(8×4、4×8或4×4)的边界进行滤波。
(2)如果块(或子块)和相邻块(或子块)具有相同的运动向量并且两者都没有残留误差,则不对所述块边界进行滤波。除此之外,对所有其它的块边界进行滤波。
图3是示出在P图像中被滤波的块边界的示例的图。参照图3,示出了在相邻块的边界中执行的滤波。假定块的运动向量是相同的(如果不相同,则无条件地执行滤波),用灰色表示的块(或子块)是具有变换系数的编码块。白色的块(或子块)是不具有任何变换系数的块。粗线表示已滤波的边界,而细线表示未滤波的边界。根据上述的两个标准,确定要被滤波的块或子块的边界。尽管图3中的示例仅仅示出了两个块水平相邻的情况,但是也可以将相同方法应用于两个块垂直相邻的情况。
图4A和4B是示出在P图像中滤波的块水平和/或垂直边界中的像素的图。参照图4A,示出了能被滤波的水平边界。
由于能够对8×8和8×4的水平边界进行滤波,因此每个第四和第五、第八和第九、以及第十二和第十三线可以是能够被滤波的边界像素。
同时,参照图4B,示出了能被滤波的垂直边界。由于能够对8×8和4×8的垂直边界进行滤波,因此每个第四和第五、第八和第九、以及第十二和第十三线可以是能被滤波的边界像素。类似于I图像,不对第一和最后的垂直线和水平线进行滤波。
此外,同样在P图像的情况下,滤波顺序也是非常重要的。首先,对于整个帧来说,从上面的线开始连续地对所有8×8块的水平边界进行滤波。将8×8块的水平边界的滤波结果存储在存储器中。其次,对于整个帧来说,同样从上面的线开始连续地对所有8×4块的水平边界进行滤波。滤波结果同样也被存储在存储器中。第三,对于垂直方向上的整个帧来说,从左手侧开始对所有8×8的垂直边界进行滤波,并将结果存储在存储器中。最后,对于整个帧来说,同样从左手侧开始对所有4×8的块边界进行滤波,并将结果存储在存储器中。即,对于一整个帧来说,通过两个步骤来对所有水平边界进行滤波,然后通过两个步骤来对所有垂直边界进行滤波。由此,由于非因果关系滤波方法,为了对一帧进行滤波,应当执行滤波的四个步骤,所以可能出现帧延迟。
3)B图像中的环路滤波B图像的滤波与上述I图像的滤波相同。现在将更详细地解释在每一块(或子块)的边界中执行滤波的过程。图5A和5B是示出在相邻块的边界中滤波后的像素的示例的图。
无论垂直方向或水平方向,应被滤波的连续像素的最小数量为4,而垂直线或水平线中的全部像素的数量为4的倍数。所以,能够以4个像素为单位执行滤波过程。参照图5A,例如,如果两个块的边界是由一对8个像素形成,则将每一个8个像素划分成两个4像素的段。在每一个4像素的段中,首先对如图所示的由X标记的第三对像素进行滤波。同样,根据滤波的结果,确定是否执行对其余三对像素的滤波。如果第三对由X标记的像素的比较结果表明没有出现成块,因此不需要进行滤波,那么就能够省略对其余三对像素的滤波。
参照图5B,示出了在第三对像素中执行的滤波过程。像素P4和P5是能够在滤波过程中被互换的像素。获得向其应用了从像素P4和P5开始左手侧上的像素(P1至P4)与右手侧上的像素(P5至P8)之间的权值的、平均值的预定补偿值,并且通过将所述值加到像素P4和P5的每一个上,就能够消除或减少在块的边界中的像素值中的突变的出现。在这种情况下,正如上述图5A中所示,如果第三对像素需要进行滤波,那么同样也执行对其余三对像素的滤波,否则的话省略对其余三对像素的滤波,然后处理下一个4像素的段。
如上所述,在消除VC-1的成块伪像的滤波过程中,以帧或切片为单位水平地执行滤波,并且随后垂直地执行滤波,因此应该将先前水平滤波的结果存储在存储器中。所以,存在这样的问题需要大的存储带宽,出现不必要的帧延迟,而且帧存储器增加。由于VC环路滤波的这种非因果关系,因此难以实现硬件编解码器。

发明内容
本发明提供了一种滤波方法和一种滤波设备,其中利用所述方法,通过改善视听编解码器中的非因果关系环路滤波来有效地执行滤波而不增加存储器或带宽。
根据本发明的一个方面,提供了一种视听编解码器的滤波方法,包括确定以宏块为单位的滤波区域;进一步将宏块和前一相邻宏块的边界区域上的预定区域包含到滤波区域中;以及按照时间顺序,来有因果关系地(causally)执行对增补后的滤波区域的去成块滤波,所述增补后的滤波区域进一步包括宏块之间的边界区域的预定区域。
所述宏块的边界区域上的预定区域可以包括具有最少4个像素单位的多个像素。
所述去成块滤波是通过使用从宏块的边界区域开始的两个方向中的每一个方向上的最少4个像素值来执行的,相对于作为中心线的宏块的边界区域对称地设置像素值。
所述去成块滤波可以按照因果关系方法来执行,利用所述方法,在水平方向上对一个滤波区域执行滤波,然后在垂直方向上执行滤波,然后对下一个滤波区域进行滤波。
所述去成块滤波可以被执行,使得在水平方向上对8×8的块边界部分进行滤波,然后对8×4的块边界部分进行滤波,而在垂直方向上对8×8的块边界部分进行滤波,然后对4×8的块边界部分进行滤波。
所述视听编解码器符合电影电视工程师学会(SMPTE)的VC-1标准。
根据本发明的另一方面,提供了一种视听编解码器的滤波设备,包括缓冲器单元,其以宏块为单位存储滤波区域;行缓冲器和列缓冲器,其存储缓冲器单元中所存储的宏块和与该所存储的宏块相邻的前一个宏块的边界部分的预定区域;和滤波单元,其按照时间顺序,来有因果关系地执行对存储在缓冲器单元、行缓冲器和列缓冲器中的滤波区域以及边界部分的预定区域的去成块滤波。
本发明的其他方面和/或优点的一部分将在随后的说明中阐述,并且一部分可从所述说明中清楚地得知,或者通过实践本发明来获知。


通过下面结合附图对实施例的说明,本发明的这些和/或其它方面和优点将变得清楚和更容易理解,在所述附图中图1是VC-1解码器的框图;图2A和2B是示出在I图像中被滤波的水平/垂直块边界中的像素的图;图3是示出在P图像中被滤波的块边界的示例的图;图4A和4B是示出在P图像中被滤波的块水平和/或垂直边界中的像素的图;图5A和5B是示出在相邻块的边界中被滤波的像素的示例的图;图6是根据本发明的实施例的滤波设备的框图;图7是示出根据本发明的实施例的、将要对其执行滤波的帧的图;图8是示出根据本发明的实施例的、在图7所示的第1种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图;图9是示出根据本发明的实施例的、在图7所示的第2种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图;图10A和10B是示出根据本发明的实施例的、在图7所示的第3种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图;图11A和11B是示出根据本发明的实施例的、在图7所示的第4种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图;和图12是示出根据本发明的替换实施例的、在水平和垂直划分之后以块为单位按其执行滤波的滤波顺序的图。
具体实施例方式
现在将详细参考本发明的实施例,在附图中举例说明本发明的示例,其中相同的附图标记始终指代相同的元件。下面通过参照附图来描述这些实施例以便解释本发明。
图6是根据本发明的实施例的滤波设备的框图。参照图6,同以帧为单位进行滤波的常规vC-1滤波器比较起来,根据本发明的实施例的滤波设备的特征在于以宏块为单位执行滤波。为此,进一步设置有用于临时存储有关前一宏块的边界部分的像素信息的单独的行缓冲器630和单独的列缓冲器640。
也就是,根据本发明的实施例的滤波设备具有用于消除成块伪像的滤波单元610、用于存储要被滤波的数据和滤波结果的缓冲器单元(L_BUF)620、和用于存储有关前一宏块的边界部分的像素信息的行缓冲器(ROW_BUF)630和列缓冲器(COL_BUF)640。
VC-1编解码器的基本处理单元是16×16像素大小的宏块。因此,也以16×16的宏块为单位执行环路滤波。缓冲器单元620具有16×16像素的大小,并且存储对16×16的宏块进行滤波的中间结果和最终结果。
列缓冲器630具有20×8像素的最小大小,并且存储位于当前正被滤波的宏块顶部的块的边界部分的水平方向上的像素,还存储已滤波的像素的中间结果和最终结果。
行缓冲器640具有8×16像素的最小大小,并且存储位于当前正被滤波的宏块的左手侧上的块的边界部分的垂直方向上的像素,还存储已滤波的像素的中间结果和最终结果。
在本发明的实施例中,为宏块指定滤波区域。然后,对滤波区域进行增补和滤波。增补操作可以包括在与该宏块的边界区域相邻的滤波区域中的像素。与该边界相邻的像素至少包括边界像素和与边界像素相邻的像素,并且如图6所描绘的,可以包括三行/列与边界像素相邻的像素。此外或者可选地,增补操作可以包括滤波区域中的前次被滤波的宏块。
为了解释根据本发明的实施例的滤波设备的操作,假设存在在水平方向上4个宏块大小而在垂直方向上3个宏块大小的一帧。图7是示出根据本发明的实施例的、将对其执行滤波的帧的图。
参照图7,每个宏块都具有编号。为了根据本发明的实施例以宏块为单位执行滤波,现在将解释宏块滤波操作的4种情况。具体来讲,将解释在水平方向上,在如宏块MB1的滤波区域的第一种情况区域中和在如宏块MB2的滤波区域的第二种情况区域中进行的滤波操作。同样,将解释在垂直方向上,在如宏块MB5的滤波区域的第三种情况区域中和在如宏块MB6的滤波区域的第四种情况区域中进行的滤波操作。
图8是示出根据本发明的实施例的、在图7所示的第1种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图。
如果一个宏块的运动补偿(参照图1)结束,则执行宏块的环路滤波。第一种情况示出了宏块MB1的环路滤波过程。
参照图6和8,将运动补偿后的宏块MB1存储在缓冲器单元(L_BUF)620中。依赖于是哪一种情况,将在运动补偿之后其重叠的变换已结束的宏块MB1存储在缓冲器单元(L_BUF)620中。图8(A)示出了第一种情况的滤波目标区域。由于宏块MB1是第一切片的第一宏块,因此行缓冲器630和列缓冲器640都为空。
参照图8(B),示出了水平方向8×8的块边界的滤波过程。对标记为黑色圆形的宏块MB1中的水平方向8×8的块边界上的像素进行滤波。当宏块MB5被滤波时,对MB1下面的、宏块MB1和宏块MB5的边界部分进行滤波。同样,当相邻宏块MB2被滤波时,对宏块MB1的右手侧上的4个像素列进行滤波。因此,由粗虚线表示的部分上的像素是用于对黑色圆形像素进行滤波的像素。
在由粗虚线表示的部分中,将作为所有12个垂直方向像素列的列向量顺续输入到图6中所示的p0、p1、p2、p3、q0、q1、q2、q3锁存器中。每列都有8个像素。也就是说,如图所示,将上面的4个像素输入到p3、p2、p1和p0中,而将下面的4个像素输入到q0、q1、q2和q3中。
同样,在图8(B)的顶部,示出了12个列向量的输入顺序。
也就是,如图5中所述,由于首先对4像素的段中的第三对像素进行处理,所以首先在每个4像素的段中对第一、第五和第九个列向量进行滤波。根据滤波结果,确定是否对4像素的段中的其余像素对进行滤波。将输入到p3、p2、p1、p0、q0、q1、q2和q3中的像素输入到图6中所示的滤波单元610,并在一个周期内对其进行滤波。执行实际环路滤波的过程正如参照图5所描述的那样。在执行实际环路滤波的过程中,能够应用包括由VC-1建议的滤波方法在内的任意滤波方法。在滤波结果中,仅将与标记为黑色圆形的块边界相对应的像素输入到图6的P0和Q0中。当确定需要进行滤波时,也就是,当确定块边界部分不是图像的轮廓,而是出现成块伪像的部分时,则用P0和Q0中的值更新缓冲器单元(L_BUF)620中的相应值。
以同样方式,执行对第五、第六、第七和第八个列向量的滤波,然后执行对第九、第十、第十一和第十二个列向量的滤波。如上所述,尽管对目标区域中所包含的所有列向量执行滤波,但是实际只对块的边界上的像素执行存储器更新。例如,在I图像的情况下,仅仅在8×8的块的边界上执行更新,而在P图像的情况下,仅仅在编码块之间的边界上执行更新。
同时,参照图8(C),示出了垂直方向8×4的块边界的滤波过程。对由黑色圆形标记的宏块MB1中的垂直方向8×4的块边界上的像素进行滤波。实际的滤波过程与图8(B)中所描述的相同。
如果对宏块MB1中的水平方向块边界上的像素的滤波结束,那么执行对宏块MB1中的垂直方向块边界上的像素的滤波。首先,如图8(D)所示,对宏块MB1中的垂直方向8×8的块边界上的像素进行滤波。在此时,当宏块MB5被滤波时,执行对块边界上的下面的8个像素行的滤波。同样,当相邻宏块MB2被滤波时,对宏块MB1的右手侧上的4个像素列进行滤波。因此,由粗虚线表示的部分中的像素是用来对黑色圆形像素进行滤波的像素。接下来,如图8(E)所示,对宏块MB1中的垂直方向4×8的块边界上的像素进行滤波。
尽管仅仅改变了垂直方向和水平方向,但是实际滤波过程与参照图8(B)和8(C)所描述的滤波过程相同。将滤波结果临时存储在缓冲器单元620中,并且记录在外部帧存储器中。在宏块MB1的情况下,由于仅仅改变了图8(A)中所示的区域中的像素,因而将图8(A)中所示的区域的数据记录在外部帧存储器中。图8(F)示出了将要作为滤波的结果记录在外部帧存储器中的内容。然后,为了执行对作为下一宏块的MB2的滤波,将与两个块的边界部分相对应的宏块MB1的右手侧上的像素的8×16部分装载到列缓冲器640中。同样,将要被滤波的宏块MB2的像素的16×16部分装载到缓冲器单元620中(参照图6)。
同时,图9是示出根据本发明实施例的、在图7所示的第二种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图。参照图9,示出了宏块MB2的滤波过程。图9(A)示出了滤波目标区域。除宏块MB2之外,当宏块MB1被滤波时,临时存储在列缓冲器640中的像素的8×16部分也包含在目标区域中。
首先,在图9(B)中将水平方向8×8的块边界上的、要被滤波的像素标记为黑色圆形。当下一切片或下一宏块被滤波时,对像素的下面的8×8部分和右手侧上的4个像素列进行处理,并且只有由粗虚线标记的部分中的像素被用来对被标记为黑色圆形的像素进行滤波。也就是说,将总共16个列向量连续地输入到图6中所示的p和q个锁存器中并加以滤波,所述16个列向量的每一个都是由8像素的列形成的。具体的滤波过程与参照图8描述的相同。接下来,如图9(C)所示,执行8×4的水平边界的滤波。所述滤波过程与上述相同。
同时,在垂直方向上,分别在图9(D)和9(E)中示出了8×8垂直边界滤波和4×8垂直边界滤波。参照图9(D),根据在左手侧上示出的顺序连续地输入由虚线表示的区域中的8个行向量并加以滤波。也就是说,分别将每个向量的8个像素输入到p3、p2、p1、p0、q0、q1、q2和q3锁存器中并加以滤波。尽管仅仅改变了垂直方向和水平方向,但是以与参照图5所描述的方式相同的方式来对每个4像素的段执行滤波过程。接下来,如图9(E)所示,对4×8垂直边界像素进行滤波。此外,同样地,分别在图9(F)和9(G)中示出了对其余8×8的垂直边界和4×8的垂直边界的滤波过程。图9(H)示出了作为滤波结果要被记录在外部帧存储器中的内容。然后,为了对下一宏块MB3进行滤波,将与两个块的边界相对应的宏块MB2的左手侧上的像素的8×16部分装载到列缓冲器640中。此外,将要被滤波的宏块MB3的像素的16×16部分装载到缓冲器单元620中(参照图6)。由此,执行对第一切片中水平方向上的宏块MB1至MB4的滤波。
图10A和10B是示出根据本发明的实施例的、在图7所示的第三种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图。参照图10A和10B,示出了第二切片的第一宏块MB5的滤波过程。在对宏块MB4进行滤波之后,将宏块MB1的下面的16×8像素装载到行缓冲器630中。此外,将要被滤波的宏块MB5的16×16数据装载到缓冲器单元620中。
在图10(B)至10(E)中示出了对宏块MB5中的水平方向8×8的边界像素和8×4的边界像素的滤波。尽管仅仅改变了目标像素,但是滤波原理与参照图8或9所描述的相同。此外,在图10(F)和10(G)中示出了对垂直方向8×8的边界像素和4×8的边界像素的滤波。在图10(H)中示出了滤波结果,并且将滤波的结果值记录在外部存储器中。
然后,为了对下一个宏块进行滤波,更新缓冲器单元620、行缓冲器630和列缓冲器640的内容。应当注意的是在此时,要被更新的像素不是滤波之前的前面的像素,而是进行滤波所得到的像素。
图11A和11B是示出根据本发明的实施例的、在图7所示的第四种情况区域中以块为单位按其执行滤波的滤波顺序的实施例的图。参照图11A和11B,(B)至(E)示出了对水平方向块边界像素的滤波过程,而(F)至(I)示出了对垂直方向块边界像素的滤波过程。将粗虚线中的像素记录在外部帧存储器中。根据相同的原理来执行其余宏块的滤波过程。
由此,与以帧为单位进行滤波的常规VC-1滤波器相比,根据本发明的实施例的滤波设备特征在于以宏块为单元执行滤波。为此,进一步包括单独的行缓冲器630和列缓冲器640,以便临时存储有关前一宏块的边界部分的像素信息。
也就是,以宏块为单位执行水平8×8和8×4的块边界部分的滤波,并执行垂直方向8×8和4×8的块边界部分的滤波。把要用来对下一宏块进行滤波的边界部分上的像素存储在行缓冲器或列缓冲器中,以便所述像素能被用在对下一宏块进行滤波中。
因此,使得能够按照时间顺序来进行因果关系滤波,其中利用所述因果关系滤波来按宏块的顺序执行滤波。结果,与以帧为单位进行滤波相比,所需的存储带宽减小,并且还能够防止帧延迟。
参照图8至11B描述的实施例是以宏块为单位进行处理的滤波方法(方法1),所述方法适合于减小存储带宽。然而,方法1需要更为复杂的控制。将要参照图12解释的替换方法(方法2)稍微增加了存储带宽,但是相对于方法1需要较不复杂的控制。
图12是示出根据本发明的替换实施例的、在水平和垂直划分之后以块为单位按其执行滤波的滤波顺序的图。参照图12,在方法2中,水平滤波和垂直滤波被分开。
也就是,对于宏块MB1,如图8(C)和(D)所示的那样执行滤波,而对于相同切片中的其余宏块而言,以同样方式执行滤波。
对于下一切片的宏块MB5,如图10(B)和(C)所示的那样执行滤波,而对于第二切片中所包含的宏块,以同样方式执行滤波。对其余切片进行的滤波与对第二切片进行的滤波相同。然而,在最后一个切片中,还需要用于对底部的16×8部分进行滤波的过程。
如果如此结束了在水平方向上进行的滤波,则在垂直方向上以同样方式执行滤波。也就是说,只有方向是不同的,而滤波方法是相同的。如果结束对每个宏块进行的滤波,则应将结果记录在外部帧存储器中。
为了便于解释起见,缓冲器单元、行缓冲器和列缓冲器的尺寸被限制为预定尺寸,但是在实际的实施中,能够自由确定该尺寸。例如,缓冲器单元和行缓冲器的水平方向尺寸最大能被扩展为一个切片的大小。
在这种情况下,行缓冲器的数据被装载到存储器中的带宽得以减小。也就是,由于存储带宽随着缓冲器尺寸的增大而减小,因此能够适当地执行这两者之间的调节。
上面描述了VC-1编解码器中的滤波方法和设备。然而,能够将所述方法和设备以多种方式应用于包括环路滤波器在内的其它标准。也就是,应该仅把所述实施例视作为是说明性的而非为了限制的目的,并且本领域普通技术人员将理解在不脱离如权利要求所限定的本发明的精神和范围的情况下,可以作出形式和细节上的各种改变。
根据如上所述的本发明的实施例,提供了一种在视听编解码器中的滤波方法及其滤波设备,所述方法按照时间顺序以宏块为单位有因果关系地进行滤波。也就是说,通过修改VC-1所采用的非因果关系环路滤波器并且进一步设置预定缓冲器,能够有效地对成块伪像进行滤波而不增加存储带宽或导致帧延迟。
尽管已经示出和描述了本发明的几个实施例,但是本领域的技术人员将会认识到在不脱离本发明的原理和精神的情况下可以对这些实施例作出改变,本发明的范围是在权利要求及其等效物中限定。
权利要求
1.一种视听编解码器的滤波方法,包括确定以宏块为单位的滤波区域;进一步将宏块和前一相邻宏块的边界区域上的预定区域包含到该滤波区域中;以及按照时间顺序来有因果关系地执行滤波区域的去成块滤波,所述滤波区域进一步包括宏块之间的边界区域的预定区域。
2.如权利要求1所述的方法,其中,所述宏块的边界区域上的预定区域包括具有最少4个像素单位的多个像素。
3.如权利要求1所述的方法,其中,通过使用从宏块的边界区域开始的两个方向中的每一个方向上的最少4个像素值来执行所述去成块滤波,相对于作为中心线的宏块的边界部分来对称地设置像素值。
4.如权利要求3所述的方法,其中,按因果关系方法来执行所述去成块滤波,其中利用所述因果关系方法,在水平方向上对一个滤波区域执行滤波,然后在垂直方向上对其执行滤波,然后对下一滤波区域进行滤波。
5.如权利要求4所述的方法,其中,在去成块滤波中,在水平方向上,对8×8的块边界部分进行滤波,然后对8×4的块边界部分进行滤波,而在垂直方向上,对8×8的块边界部分进行滤波,然后对4×8的块边界部分进行滤波。
6.如权利要求1所述的方法,其中,所述视听编解码器符合电影电视工程师学会(SMPTE)的VC-1标准。
7.一种视听编解码器的滤波设备,包括缓冲器单元,其以宏块为单位存储滤波区域;行缓冲器和列缓冲器,其存储缓冲器单元中所存储的宏块和与该所存储的宏块相邻的前一宏块的边界部分的预定区域;和滤波单元,其按照时间顺序来有因果关系地执行对存储在缓冲器单元、行缓冲器和列缓冲器中的滤波区域和边界部分的预定区域的去成块滤波。
8.如权利要求7所述的设备,其中,至少一个所述宏块的边界区域的预定区域包括具有最少4个像素单位的多个像素。
9.如权利要求7所述的设备,其中,通过使用从宏块的边界部分开始的两个方向中的每一个方向上的最少4个像素值来执行所述去成块滤波,相对于作为中心线的宏块的边界部分来对称地设置像素值。
10.如权利要求9所述的设备,其中,所述滤波单元按因果关系方法来执行滤波,其中利用所述因果关系方法,在水平方向上对一个滤波区域执行滤波,然后在垂直方向上对其执行滤波,然后对下一滤波区域进行滤波。
11.如权利要求10所述的设备,其中,所述滤波单元执行滤波,以便在水平方向上,对8×8的块边界部分进行滤波,然后对8×4的块边界部分进行滤波,而在垂直方向上,对8×8的块边界部分进行滤波,然后对4×8的块边界部分进行滤波。
12.如权利要求12所述的设备,其中,所述视听编解码器符合电影电视工程师学会(SMPTE)的VC-1标准。
13.一种视听编解码器滤波设备,包括缓冲器,用于存储第一滤波区域;行和列缓冲器,用于存储第二滤波区域;和滤波器,用于按照时间顺序来执行对第一滤波区域和第二滤波区域的去成块滤波。
14.如权利要求13所述的视听编解码器滤波设备,其中所述行和列缓冲器包括单独的行缓冲器;和单独的列缓冲器。
15.如权利要求13所述的视听编解码器滤波设备,其中,所述第一滤波区域包括宏块。
16.如权利要求15所述的视听编解码器滤波设备,其中,所述第二滤波区域包括所述宏块和第二宏块之间的边界区域。
17.如权利要求13所述的视听编解码器滤波设备,其中,所述视听编解码器符合电影电视工程师学会(SMPTE)的VC-1标准。
18.一种用于根据滤波方法控制视听编解码器的编解码器可读存储器,所述方法包括确定要被滤波的多个宏块;执行对滤波区域的去成块滤波,所述滤波区域包括多个宏块中的至少一个以及多个宏块中的一个和前一滤波后的宏块的边界区域。
19.如权利要求18所述的编解码器可读存储器,其中,所述视听编解码器符合电影电视工程师学会(SMPTE)的VC-1标准。
20.一种视听编解码器滤波方法,包括为宏块指定滤波区域;增补所述滤波区域;和对增补后的滤波区域进行滤波。
21.如权利要求20所述的方法,其中,所述滤波区域的增补包括将与该宏块的边界像素相邻的像素包含在该滤波区域中。
22.如权利要求21所述的方法,其中,所述滤波区域的增补包括将先前滤波的宏块包含在该滤波区域中。
全文摘要
关于视听编解码器,提供了一种视听编解码器的滤波方法和滤波设备。所述视听编解码器的滤波方法包括确定以宏块为单位的滤波区域;进一步将确定为滤波区域的宏块和前一相邻宏块的边界区域上的预定区域包含到该滤波区域中;以及按照时间顺序来有因果关系地执行滤波区域的去成块滤波。因此,通过修改VC-1所采用的非因果关系环路滤波器并且进一步设置预定的缓冲器,能够有效地对成块伪像进行滤波而不增加存储带宽或导致帧延迟。
文档编号H04N7/24GK1722842SQ20051009221
公开日2006年1月18日 申请日期2005年6月22日 优先权日2004年6月22日
发明者宋秉哲 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1