重建滤波器
1.介绍
2.重建滤波器的描述
滤波器是为了对每个解码宏块进行去块效应。在编码器中,去块滤波器在反变换之后(在为了将来的预测而重建和存储之前),在解码器中,它在重建和显示该宏块之前。该滤波器有两个便利:(1)对块的边缘进行平滑处理,提高解码图像的显示效果(特别是高压缩比的图像)(2)把滤波后的宏块用于将来帧的运动补偿预测,可以得到更小的残差。(注意:帧内编码宏块被滤波,但帧内预测是使用非滤波重建宏块来形成预测的。)。图片的边缘不会被预测。
滤波被应用于宏块的4x4块的水平或垂直边缘,有以下步骤:
1.对亮度块的4个水平边缘进行滤波。(按图1的a,b,c,d顺序)
2.对亮度块的4个垂直边缘进行滤波》(按图1的e,f,g,h,顺序)
3.对色度块的2个水平边缘进行滤波。(i, j)
4.对色度块的2个垂直边缘进行滤波。(k, l)
每个滤波操作影响边缘左右两边多达三个像素。图2显示与p块和q块的水平或垂直边界邻近的两边的4个像素(p0,p1,p2,p3 and q0,q1,q2,q3 )。根据当前所用的量化器,和邻近块和跨越边界的渐变图像采样值的编码模式,有多种可能的输出,输出结果可能是没有一个像素被滤波,也可以输出滤波结果P0, P1, P2, Q0, Q1 and Q2.
![](https://img.haomeiwen.com/i5994163/87665de424bae7da.png)
///
![](https://img.haomeiwen.com/i5994163/3b5662a4fc460977.png)
3.边界强度(Boundary strength)
滤波输出的效果取决于边界强度和图像边缘采样的梯度。边缘强度参数Bs的选择是根据下面规则:
1.p和q是帧内编码,边缘是一个宏块的边缘:Bs=4
2.p和q是帧内编码,边缘不是一个宏块边缘:Bs=3
3.p和q都不是帧内编码,p和q包含编码系数:Bs=2
4.p和q都不是帧内编码,p和q都不包含编码系数,p和q有不同的参考帧,或者不同的参考帧个数,或不同的运动向量值:Bs=1
5.p和q都不是帧内编码,p和q都不包含编码系数,p和q有相同的参考帧和确定的运动向量。:Bs=0
滤波器的强度在块效应很强的地方很可能会更强,例如在一个帧内编码宏块的边缘,或者两个块之间的包含编码系数的边界。
4.滤波判定(Filter decision)
在集合p2,p1,p0,q0,q1,q2中的采样值只有在如下情况才会被滤波:
a.Bs>0和
b.|p0-q0|, |p1-p0| and |q1-q0| 比一个阈值alpha或beta小。
阈值alpha和beta随着块p和q的QP平均值的增加而增加。滤波判定的目的是,当原图像的内容重大的变化正好出现在块的边界时,关闭滤波器。如何定义重大的变化取决于QP。当QP很小时,跨越块的边界的渐变很可能来自于图像本身的内容(而不是块效应),这个是应该保留的,因此alpha和beta很低。当QP很大时,块效应影响的可能性更高,因此更可能需要过滤。
5.滤波器的实现
(a)Bs{1, 2, 3}:
一个4抽头线性滤波器被应用,输入p1, p0, q0 and q1 的,输出P0和Q0(0<Bs<4) .
另外,如果|p2-p0| 小于阈值beta, 一个4抽头线性滤波器被应用,输入p2, p1, p0 and q0 ,产生滤波输出P1。如果|q2-q0| 小于阈值beta,一个4抽头线性滤波器被应用,输入q2, q1, q0 and p0 ,产生输出Q1.(p1和q1在色度中从来不会被滤波,只有在亮度数据上)。
(b)Bs=4:
If |p2-p0|<beta and |p0-q0|<round(alpha /4):
P0 is produced by 5-tap filtering of p2, p1, p0, q0 and q1P1 is produced by 4-tap filtering of p2, p1, p0 and q0(Luma only) P2 is produced by 5-tap filtering of p3, p2, p1, p0 and q0.
else:P0 is produced by 3-tap filtering of p1, p0 and q1.
If |q2-q0|<beta and |p0-q0|<round(alpha /4):Q0 is produced by 5-tap filtering of q2, q1, q0, p0 and p1Q1 is produced by 4-tap filtering of q2, q1, q0 and p0(Luma only) Q2 is produced by 5-tap filtering of q3, q2, q1, q0 and p0.
else:Q0 is produced by 3-tap filtering of q1, q0 and p1.
网友评论