ELECARD 视频压缩手册第五章:HEVC中的后处理

本文是对 ELECARD Video Compression Book 第五章的翻译,本章节主要介绍如何对解码图像实施后处理,以减少HEVC中量化效应的影响。

标题:Post-processing in HEVC
链接:https://www.elecard.com/page/post_processing_in_hevc
整理人:陈予诺,原标题:[强基固本-视频压缩] 第五章:HEVC中的后处理

HEVC中的视频帧处理流程

HEVC算法旨在对视频帧进行块处理,以消除视频数据中的空间或时间冗余,本质上是通过对被编码块中的样本值进行预测来消除冗余。帧内预测主要进行空间处理,涉及从相邻块的像素值中预测当前块内的像素值,帧间预测通过使用先前编码帧的图像区域进行预测来消除时间冗余。残差信号,即编码图像与预测图像之间的差值,经过离散二维傅立叶变换(DFT),得到的频谱系数按级别进行量化。在最终编码阶段,量化后的频谱系数值序列与相关的预测、频谱变换和量化信息一起进行熵编码。编码器中的空间和时间预测使用解码图像进行,这确保了编码器和解码器之间的预测结果相同。解码过程包括对频谱系数进行反量化和进行逆离散傅立叶变换(IDFT),恢复的差异信号被加到预测结果中。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图1

编解码过程可能会显著扭曲原始图像。当频谱系数被量化时,就会引入失真。HEVC标准提供了一种选择,对解码图像应用额外的后处理,以减少量化效应。这种后处理可以包括去块效应滤波器(deblocking filter, DBF)和取样自适应偏移(Sample Adaptive Offset, SAO)过程。

HEVC中的视频图像后处理算法——去块效应滤波器

第一个后处理阶段,去块效应滤波器,旨在减少边缘效应(也称为块效应)。在编码过程中,每个视频帧被分成大小相等的正方形块,称为最大编码单元(Largest Coding Units, LCU)。每个LCU可以分成四个正方形编码单元(Coding Units, CU),每个CU又可以分成四个更多的CU。这些划分形成了一个CTU(Coding Tree Unit)四叉树。在编码过程中,CTU中的最低级CU会被划分为称为预测单元(Prediction Unit, PU)的块。

之后,对从正在编码的图像减去预测结果得到的2D差异信号应用2D频谱变换。频谱变换矩阵的大小由变换单元(Transform Unit, TU)的大小确定。HEVC规定了4种可能的变换单元大小:4×4、8×8、16×16和32×32。频谱系数的量化导致了解码图像中的块效应,这在下图中清晰可见。该图显示了在应用去块滤波器之前的解码图像的一部分。由于明显的原因,这种效应会同时在PU和TU边界处显现。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图 2

去块效应滤波过程修改了位于变换单元或预测单元 垂直和水平边界线 附近的像素值,这些边界线形成了一个间距为8像素的等距网格。滤波首先应用于垂直线,然后应用于水平线。

在进行滤波之前,为每个4像素线段选择一个边界强度(Boundary Strength, BS)参数值。该值由用于线段两侧图像区域的预测模式确定。如果其中至少一个是使用帧内预测编码的,则为BS分配数值2。如果两个区域都是基于先前编码图像的一个连续区域进行互预测的,则该线段的BS参数值为0。否则,BS等于1。在BS = 0的4个像素段周围的区域被排除在滤波之外。

下一步涉及选择滤波器类型以及要进行滤波的区域的宽度和位置,这里的标准是左右边界周围的3×4像素表面与平面偏离的程度。让我们通过使用传统符号分析靠近垂直线段的图像区域来考虑选择过程的示例。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图 3

如果区域P位于边界的左侧,并且第零线和第三线的样本强度值在水平坐标(距离边界的距离)上表现出近线性依赖关系,则被认为是“足够平坦”的。

ELECARD 视频压缩手册第五章:HEVC中的后处理

根据将各种组合的量dp0,dp3,dq0和dq3与相应的阈值进行比较,决定要使用的滤波器类型以及在边界附近平滑的区域的宽度和位置。阈值是从标准中以表格形式指定的β(Qp)和tc(Qp=2(Bs-1))的值获得的,其中每个量化参数的值确定了频谱系数的量化步长,表中的阈值的索引包含BS参数。

当边界附近的样本强度变化很大,即下列条件未满足时:

ELECARD 视频压缩手册第五章:HEVC中的后处理

将要平滑的区域的宽度设置为零,并且边界附近的像素不被处理。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图 4

另外,当

ELECARD 视频压缩手册第五章:HEVC中的后处理

需要在“强”和“弱”filter之间做出选择。当满足以下条件时:

ELECARD 视频压缩手册第五章:HEVC中的后处理

强滤波被应用于边界附近,在这种情况下,要平滑的区域跨越边界线每一侧的3个样本。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图 5
ELECARD 视频压缩手册第五章:HEVC中的后处理

当一个或多个条件不满足时,即强滤波不适用时,将计算要滤波的区域的宽度,并逐行验证弱滤波的适用性。要使用弱滤波进行平滑处理的样本数量在区域 P 和 Q 中是独立确定的。

如果 dp0 + dp3 < 3/16β,则对于 P 区域中的每一行,最靠近边界的两个样本会改变它们的值。否则,在过滤期间,每行只会改变一个 p0j 样本的值。

必须在 Q 区域中验证相应的条件。如果 dp0 + dp3 < 3/16β,则对于 Q 区域中的每一行,最靠近边界的两个样本会改变它们的值。如果不满足此条件,则在过滤期间每行只会改变一个 q0j 样本的值。

ELECARD 视频压缩手册第五章:HEVC中的后处理

In-depth analysis

上述关于应用去块效应滤波器过程的描述并没有真正解释用于强滤波的系数 ak,i、 bk,i、 ck,i 和  dk,i 的性质,以及在弱滤波情况下用于计算样本值的量∆j 。我在文献中找不到这些系数的推导,它们为什么是这样的呢?我们可以在这里进行一些推测。

让我们从 ∆j 开始。将笛卡尔坐标系的原点放在样本 p0j 和 q0j 之间的中点,使得这些样本的坐标分别变为 x = -1 / 2 和 x = 1 / 2。在这种情况下,样本 p1j  的坐标为 x = -3 / 2,样本q1j  的坐标为 x = 3 / 2。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图 6
ELECARD 视频压缩手册第五章:HEVC中的后处理

解这个方程组得到 a 和 b:

ELECARD 视频压缩手册第五章:HEVC中的后处理

对解码图像的第二阶段后处理

这个阶段称为取样自适应偏移(SAO),旨在部分补偿由于光谱系数量化而导致的损失。为此,在解码后添加偏移量到某些图像像素的值。这些偏移量在编码阶段计算,并作为每个LCU的表传输到编码流中。通过它们的强度选择要更改的像素,因此这种转换是非线性的。在HEVC中有两种可能的SAO类型:带偏移(Band Offset, BO)和边缘偏移(Edge Offset, EO)。

对于BO后处理,所有LCU中的像素值在编码阶段被分为32个均匀间隔的带。计算每个带中原始和解码图像像素之间的平均偏移。视频编码器保存四个连续带的偏移值以及这个四元组中第一个带的编号在编码流中。在SAO阶段解码图像后,将偏移添加到由编码器选择的带中的像素值。

对于EO后处理,编码器根据对解码图像像素的值进行分类,选择四个模板之一。可能的模板如下图所示。要分类的样本被指定为p,两个相邻样本的值被指定为n0和n1。每个LCU的编码流中添加所选择模板的编号。

ELECARD 视频压缩手册第五章:HEVC中的后处理
图7

后处理是否有效?

对大量测试视频序列的编码结果说明HEVC视频编码系统中的去块效应滤波器绝对有效。这项技术在量化参数值较高时、当边缘效应特别强时尤其有用。减小量化参数值使得解码图像更少出现方块效果,从而降低了去块效应滤波器的有效性。

然而,关于第二个后处理阶段的有效性,却无法得出如此明确的结论。当使用SAO时,编码器会向编码流中插入描述用于校正解码图像像素值的偏移所使用的额外数据,这在任何情况下都会略微降低压缩比。另一方面,启用SAO可以改善图像质量。因此,有时使用SAO在压缩比与图像质量方面提供了一定的、适度的收益。然而,也会出现由SAO引起的 比特率增加 却没有被 图像质量的提高 所补偿的情况。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论