关闭

去方块滤波技术简述

1266人阅读 评论(0) 收藏 举报

去方块滤波技术简述

      ——基于H.264

1、引入去方块滤波技术的动机:消除方块效应

方块效应的产生:a、基于块的帧内和帧间预测残差的DCT变换,其量化过程相对粗糙,因而反量化过程恢复的变换系数带有误差,会造成在图像块边界上的视觉不连续;

                                b、运动补偿预测造成的复制块边界上数据不连续。

 

2H.264标准中使用的去方块滤波器:环路滤波器

3H.264去方块滤波器的自适应特性

   3.1、片级,全局滤波强度能根据视频序列个体的特征进行调节

   程序体现:

code_a_picture()

{

        …………

        if (input->rdopt == 2 && (img->type != B_SLICE))

           for (j = 0; j < input->NoOfDecoders; j++)

              DeblockFrame (img, decs->decY_best[j], NULL);

 

       DeblockFrame (img, enc_picture->imgY, enc_picture->imgUV);

       …………

}

 

3.2、图像块边界级,滤波强度依赖于边界两边图像块的帧间/帧内预测、运动矢量差别及变换量化是否为对残差编码

强度bS的定义与判断:标准文档8.7.2.1规定了bS=4,3,2,1,0时各图像块需要满足的条件

程序体现:调用DeblockMb( img, imgY, imgUV, i )下的子函数GetStrength()

注:色度块边界滤波的bS值不另外单独计算,而是从相应亮度块边界的bS值复制而成。

 

3.3、图像样点级,样点值及与量化参数相关的阈值可以决定是否对每个样点进行滤波

    标准文档8.7.2.2部分.

程序体现:调用DeblockMb( img, imgY, imgUV, i )下的子函数EdgeLoop()

4、具体滤波过程

        可参阅标准文档8.7.2.3-8.7.2.4部分

  程序实现:调用DeblockMb( img, imgY, imgUV, i )下的子函数EdgeLoop()

 

5、相关程序中比较重要的变量,结构

   注:程序中比较重要的变量,结构,已经在相对应的源文件loopFilter.c中进行了注释

 

6、阅读后的感受

   标准对去块滤波的强度划分相对比较细致,代码的实现也很巧妙。去块滤波技术,对图像的主观质量有着一定的改善。通过该部分的学习,为我们更加有效的设计基于HVS的滤波器,提供了一定的参考。  

 

7、主要参考学习资料

[1]标准文档;

[2] 新一代视频压缩编码标准——H.264/AVC  毕厚杰;

[3]JM86校验模型。

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14883次
    • 积分:237
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:0篇
    • 译文:0篇
    • 评论:9条
    最新评论