一种环路滤波方法和环路滤波器的制作方法

文档序号:7589680阅读:183来源:国知局
专利名称:一种环路滤波方法和环路滤波器的制作方法
技术领域
本发明属于视频编码技术领域,具体为一种环路滤波方法和环路滤波器。
背景技术
在视频编码中,图像都作分块处理,每块在变换及量化之后都会不同程度的出现块效应和振铃效应。块效应的典型后果是出现格形噪声和梯形噪声。此类噪声将使图像边缘明显甚至出现块状区域。振铃噪声会导致图像从块的左上角到块的右下角出现环状效应,使得多个被显示的图像重叠起来。
块效应的出现主要是由于量化时分块处理造成的量化误差引起的,它随分块范围内图像内容的不同,有两种不同的表现形式,主要为梯形噪声和格形噪声。
梯形噪声出现在图像的强边缘处。由于DCT(离散余弦变换)的许多高频系数被量化为零,使得强边缘在变换域内不能被完全数字化,又由于图像的分块处理,使得穿过块边界的强边缘的连续性不能得到保证,从而在图像强边缘处出现锯齿状噪声,使得视觉上有不自然的数据块边缘,称之为梯形噪声。
格形噪声出现在图像的平坦区域。在图像的平坦区域,亮度有递增或者递减的情况下,由于量化取整时进行了四舍五入,可能导致变换域的DC(直流)系数越过了相邻量化级的判决门限,造成在重建图像中相邻两个块出现亮度突变,使得视觉上出现片状轮廓,称之为格形噪声。
为了避免块效应和振铃效应,在图像编码完,存储起来作为后一帧的参考帧之前,需要对图像做去方块效应的处理。环路滤波器的目的在于降低图像编码中产生的块效应和振铃效应。它可以减小块效应,部分消除振铃效应。它对块边界两边相邻像素的像素值进行平滑滤波,达到了该目的。
1997年,由samsung公司提出了一种环路滤波算法,并被加入到H.264最新的国际编码标准之中。2002年至今,中国开始制订国家视音频编码标准,现在正在制定的高清数字电视视频编码标准。由samsung公司提出的算法仅适用于低码率标准下,不适合于高清电视标准,其结构也不适合于当前的AVS(中国数字视音频编码标准)编码器。

发明内容
本发明的目的在于提供一种环路滤波方法和环路滤波器,它可以在AVS视频编码器中有效去除方块效应,使得解码后图像的主观质量提高,客观上峰值信噪比提高,码率下降。
一种环路滤波方法,包括以下步骤步骤(1) 计算块效应值和像素差值,并加以判断按照宏块编码信息计算块效应值Bs,如果宏块为帧内编码类型,则Bs=2,如果宏块为帧间编码类型,且运动矢量和参考帧在块边界处有差异,则Bs=1,否则Bs=0;根据量化系数QP创建两个相邻像素对差值的阈值表,将相邻像素对的差值大小与阈值表进行比较,判断图像边缘信息;步骤(2) 滤波处理如果当前滤波处理的一条边的块效应值为2,并且块边界处的像素对的差值小于阈值表中定义的值,则用数对滤波器窗口对应的像素值作均值滤波,产生两对新像素值;如果当前滤波处理的的一条边的块效应值为1,并且块边界处的像素对的差值小于阈值表中定义的值,则将原像素值增加或减去一个差值,产生两对新像素值;如果块效应值为0,或者块边界处的像素对的差值大于阈值表中定义的值,则不作滤波。
实现上述方法的环路滤波器,包括滤波判别区和滤波执行区;滤波判别区用于计算块效应值和像素差值,它包括图像存储单元、门限值确定单元、像素差值单元、滤波判别单元和块效应值计算单元;图像存储单元用于缓存输入的图像编码信息,并分别传送给门限值确定单元,像素差值单元和块效应值计算单元,门限值确定单元用于计算判决强边缘的门限值,并将结果传送给滤波判别单元;像素差值单元用于计算相邻像素的差值,也将结果传送给滤波判别单元,由滤波判别单元根据二个差值进行比较判别;块效应值计算单元用于计算相邻方块的块效应值;滤波执行区用于滤波处理,它包括激发单元、滤波确定器、均值滤波器和差值滤波器;激发单元根据块效应值计算单元和滤波判别单元的结果,仅将需要滤波的信号传送给滤波确定器,滤波确定器将块效应值为的信号送入均值滤波器进行滤波处理,将块效应值为的信号送入差值滤波器进行滤波处理。
本发明可以有效的去除视频编码之后的块效应,主观图像质量改善明显。客观上图像的信噪比psnr实验证明平均提高0.20dB,比特率平均下降2%,且该发明可稳定应用于AVS视频编码器中。


图1为整个编码器的结构示意图;图2为本发明环路滤波方法的流程图;图3为一次滤波像素的分布图,图中,a为当前滤波操作方块的相邻块,b为垂直边界上某一行滤波的像素窗口,c为当前滤波操作的8×8方块,d为当前滤波处理的一条垂直边界;图4为环路滤波器的结构示意图。
具体实施例方式
为更清楚地描述环路滤波方法的步骤和环路滤波器的结构,先对环路滤波器在整个编码器中的位置以及作用加以说明。
如图1所示,一视频信号输入到减法器100,第一开关105和预测编码器145。该减法器100从该输入视频信号中减去前向预测值(即运动估算误差信号),得到预测误差,并将此预测误差提供给第一开关。第一开关105根据编码控制器120选择该输入信号,要么为预测误差,要么为原视频信号。第一开关的输出进入离散余弦变换器110(DCT),DCT负责对信号进行离散余弦变换,这是在图像编码中运用最多的编码方式。经离散余弦变换的信号在量化器125中量化变成编码端输出信号。编码信号经逆量化器115后通过逆余弦变换器130(IDCT)。由IDCT输出的信号和由第二开关150所转换的前向预测值在加法器135相加即恢复出了原输入信号。此信号将作为环路滤波器的输入,环路滤波器消除了信号的块效应和振铃效应,被滤噪后的信号将经过预测编码器执行前向预测估计。
该预测编码器145的输入信号被提供给减法器100和第二开关150。第二开关150由编码器150和控制器120控制。编码控制器120控制第二开关150使得通过该预测编码器145所处理的信号的应用不是以内部编码模式提供给加法器135,而是以中间编码模式提供给加法器135。编码控制器120产生一信息标志位P,一量化特征标志位qz,一控制传送或非传送的标志位t,还有控制量化器115的量化等级的一变换系数信号q,其中标志位P表示是执行帧内编码还是帧间编码。
本发明方法的流程如图2所示,下面以8×8方块为例,对本发明作进一步详细的说明。
首先是块效应值计算,输出块效应值。滤波在相邻宏块的边界像素上进行,操作时按不同的块效应值选择不同的滤波方式。如果效应值为2,说明块效应明显,应该强力度滤波,即进行均值滤波;如果块效应值为1,说明块效应不明显,只需较弱力度的滤波,即执行差值滤波;如果块效应值为0,那说明无块效应,就不执行滤波。
根据宏块类型、宏块中8×8方块的运动矢量,按如下方法计算块效应值Bs①如果边界两边的两个8×8方块有一个或两个都属于帧内预测宏块,Bs等于2;②否则,如果满足以下两个条件中的任一个,Bs等于1;a.两个块的参考图像不同。
b.两个块的参考图像相同,但是两个运动向量分量中任一个分量的差值大于一个整像素。
③否则,Bs等于0。
滤波判决函数还包括图像边缘的判断。首先计算块边界两边的像素差值,判断该差值是否大于某一设定的阈值。如果大于,则存在图像强边缘,不需要进行滤波。
计算像素差值用预先设定的一维线性算子。其操作对象为预先设定的一维窗口。在本方法实现中,设定块边界两边的一对点,如图3所示的R0和L0,以及小块内部两对点L0和L1,R0和R1。
预先设定的门限值包含两个表,分别是α,β表,α表记录了块边界两边像素的差值的门限,β表记录了块内部两个点的差值的门限,它们是两个一维数组,其长度都是量化值的取值范围,在默认状态下即64。
门限表的取值依赖于方块量化的量化步长QP,同时为了方便调整滤波执行的力度,人为设定了两个调整滤波的偏移量。阈值表的数组索引值就是量化值加上偏移量,默认状态下,这两个偏移量的取值都是0。在查表时,用QP和偏移量的和得到两个值,后作一个约束,得到两个索引值indexA和indexB。我们根据这两个值在α,β表中找出相应的α,β值作为判别的门限值。
如图3,以水平方向上的例子说明。用R0和L0相减,得到一差值C1;用R0减R1,得到一差值C2;用L0减L1,得到一差值C3。在最终的判别公式中,如果C1小于α,C2小于β且C3小于β,则认为图像的特征边缘不处于块的边缘,可以进行滤波;反之则不滤。
均值滤波将对块边界两对像素(总共4个点)重新赋值,用窗口滤波公式实现对像素值的调整,缘输入值由图3中的8个点共同决定;差值滤波也对四个点作调整,它将原始像素值加上或者减去一个差值,从而将两个像素值的差距缩小,使得视觉上块效应消除。
例如图3,均值滤波需要计算的滤波像素窗口为包括块边界两边的两对像素,包括L1、L0、R0和R1,计算R0的值时,用(R1+2*R0+L0)/4。计算L1、L0和R1的值采用同样加权系数对。
差值滤波也对块边界处两对像素处理。它对预先设定的一维像素作平均处理,处理过程为将相邻两个像素加上或者减去一个差值。差值的计算过程用一个一维窗口滤波操作,其权重系数对为(1,-3,3,-1);然后,一对像素中的一个点加上这个差值,另一个点减去这个差值。
如计算R0,L0,其公式如下delta=((r0-l0)×3+(l1-r1)+4)>>3;l0=l0+delta;r0=r0-delta;滤波在横向和纵向两个方向上进行。先在水平方向上滤波,然后在竖直方向上滤波。
下面我们将对环路滤波器的结构进行说明。
如图4所示,环路滤波器可分为两个部分,滤波判别区和滤波执行区。
滤波判别区包括图像存储单元401、门限值确定单元402,像素差值单元403,滤波判别单元404,块效应值计算单元405。
整个系统的输入是待处理图像像素值以及分块的编码信息,包括编码类型,运动矢量和参考帧信息。图像将在图像存储单元401缓存下来。
门限值确定单元402将计算出判决强边缘的门限值,即α,β值。计算过程为根据块边界两边两个块的量化步长取平均得到一个量化步长,再加上预先设定的偏移量,得到一个索引值,由此索引值查预先设定的两个门限表得到两个门限值。
像素差值单元403的功能是计算相邻像素的差值。该差值有三个,一个是用(1,-1)的梯度算符对块边界两边的一对像素作梯度操作得到的结果;另两个是用(1,-1)的梯度算符对块内部的两对像素作梯度操作得到的结果。在应用到水平方向的滤波的时候,是对水平方向的像素作梯度操作;在应用到垂直方向的滤波的时候,是对垂直方向的像素作梯度操作。例如由块边界两边的像素作差取绝对值得到C1,由块内部的像素作差取绝对值得到C2,C3。
滤波判别单元404将确定最终的判别公式是否成立,只有当所有差值均小于门限值的时候,才输出真。例若C1小于α,C2小于β且C3小于β。则输出为真;反之为假。
块效应值计算单元405计算相邻方块的块效应值,块效应值的取值有三个,即0、1和2。块效应值Bs是根据宏块编码类型、宏块中8×8亮度块的运动矢量以及参考帧信息来取值得。
滤波执行区由激发单元406,滤波确定器407,均值滤波器408和差值滤波器409组成。
激发单元406将保证当且仅当滤波判别单元404的输出为真时,才传递块效应值并且激发滤波确定器工作。如果滤波判别单元404的输出为假,那么信号就不会通过激发单元,也就不滤波。
滤波确定器407对输入的边缘值进行检测。如果块效应值为2,那么滤波确定器将激发均值滤波器408工作;如果块效应值为1,那么滤波确定器就激发差值滤波器409工作。
均值滤波器408执行强力度滤波,其输入为原图像和前面滤波可能已经处理过的图像,输出为滤波后的图像。
本发明结合视频编码器对实施过程作了详细说明。本发明的环路滤波器140可以用于一解码器。本发明针对8×8方块的编解码器设置作了专门的实现,且该实现已经应用于当前正在申报国家标准的AVS视频编码器和解码器中。本发明也可以应用于H.263和MPEG-4等视频编解码器中。
权利要求
1.一种环路滤波方法,包括以下步骤步骤(1) 计算块效应值和像素差值,并加以判断按照宏块编码信息计算块效应值Bs,如果宏块为帧内编码类型,则Bs=2,如果宏块为帧间编码类型,且运动矢量和参考帧在块边界处有差异,则Bs=1,否则Bs=0;根据量化系数QP创建两个相邻像素对差值的阈值表,将相邻像素对的差值大小与阈值表进行比较,判断图像边缘信息;步骤(2) 滤波处理如果当前滤波处理的一条边的块效应值为2,并且块边界处的像素对的差值小于阈值表中定义的值,则用数对滤波器窗口对应的像素值作均值滤波,产生两对新像素值;如果当前滤波处理的的一条边的块效应值为1,并且块边界处的像素对的差值小于阈值表中定义的值,则将原像素值增加或减去一个差值,产生两对新像素值;如果块效应值为0,或者块边界处的像素对的差值大于阈值表中定义的值,则不作滤波。
2.根据权利要求1所述的方法1,其特征在于其中步骤(1)中块边界处的运动矢量的差值门限预先设定为1个整像素,边界两边两个块的任一方向上的参考帧块不一样则称为参考帧有差异。
3.根据权利要求1或2所述的方法1,其特征在于其中步骤(1)中阈值表为两个一维数组,其长度为量化值的范围,阈值表的数组索引值为量化值与偏移量的和,在默认状态下,偏移量设置为0,数组的长度为64。
4.根据权利要求1或2所述的方法1,其特征在于其中步骤(2)中,判断时首先比较边缘信息的三组差值和各自的阈值,得到三个判断结果,然后将这三个判断结果作“and”运算,得到最后结果。
5.根据权利要求1或2所述的方法1,其特征在于其中步骤(2)中在做均值滤波的时候,对当前改变的像素值以及左右两个像素共三个像素采用(1,2,1)的权重系数对作窗口滤波。
6.根据权利要求1或2所述的方法1,其特征在于其中步骤(2)中在步骤二中,在做差值滤波的时候,对当前改变的像素值加上或者减去其与相邻像素的差值。差值的计算公式采用(1,-3,3,-1)的权重系数对。
7.根据权利要求5所述的方法1,其特征在于其中步骤(2)中在步骤二中,在做差值滤波的时候,对当前改变的像素值加上或者减去其与相邻像素的差值。差值的计算公式采用(1,-3,3,-1)的权重系数对。
8.一种实现权利要求1所述方法的环路滤波器,其特征在于,该滤波器包括滤波判别区和滤波执行区;滤波判别区用于计算块效应值和像素差值,它包括图像存储单元(401)、门限值确定单元(402),像素差值单元(403),滤波判别单元(404),块效应值计算单元(405);图像存储单元(401)用于缓存输入的图像编码信息, 并分别传送给门限值确定单元(402),像素差值单元(403)和块效应值计算单元(405),门限值确定单元(402)用于计算判决强边缘的门限值,并将结果传送给滤波判别单元(404);像素差值单(403)用于计算相邻像素的差值,也将结果传送给滤波判别单元(404),由滤波判别单元(404)根据二个差值进行比较判别;块效应值计算单元(405)用于计算相邻方块的块效应值;滤波执行区用于滤波处理,它包括激发单元(406),滤波确定器(407),均值滤波器(408)和差值滤波器(409);激发单元(406)根据块效应值计算单元(405)和滤波判别单元(404)的结果,只将需要滤波的信号传送给滤波确定器(407),滤波确定器(407)将块效应值为2的信号送入均值滤波器(408)进行滤波处理,将块效应值为1的信号送入差值滤波器(409)进行滤波处理。
全文摘要
本发明公开了一种环路滤波方法,其步骤为①计算块效应值和像素差值,并加以判断,②根据判断结果,分别进行均值滤波、差值滤波或不滤波。环路滤波器,包括滤波判别区和滤波执行区;前者包括图像存储单元、门限值确定单元、像素差值单元、滤波判别单元和块效应值计算单元,用于计算块效应值和像素差值;后者包括激发单元、滤波确定器、均值滤波器和差值滤波器,用于滤波处理。本发明可以有效的去除视频编码之后的块效应,主观图像质量改善明显。客观上图像的信噪比psnr实验证明平均提高0.20dB,比特率平均下降2%,且该发明可稳定应用于AVS视频编码器中。
文档编号H04N11/04GK1535019SQ200410012658
公开日2004年10月6日 申请日期2004年1月14日 优先权日2004年1月14日
发明者朱光喜, 文强, 田晓华, 金欣, 刘文予, 喻莉, 王曜 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1