H.264/AVC 变换量化

先说一句,在传统的混合编码框架中,预测和变换是不会产生失真的,只有量化才会导致失真。

貌似264没有把变换和量化分的很清楚,没有特别明显的界限感,下面实际看看。

264的basic transform或者说是core transform是4x4或者8x8的整数变换,是DCT的近似。

首先聊聊亮度的变换量化

除了(a)使用16x16Intra Prediction进行编码的宏块和(b)在High profile打开用于宏块的8x8整数变换两种情况,都是使用下图的流程进行亮度分量的变换量化的:

 图中每一个小块尺寸为4x4,使用4x4的变换核进行变换,在缩放和量化之后,按照z顺序扫描。

 如果出现前面说的(a)情况,那么流程会有一些变化,如下所示:

 在4x4的小块使用4x4的变换核进行变化之后,每个4x4小块的DC系数拼起来,得到一个4x4的DC系数组成的块,再进行一次哈达玛变换。这是因为这些直流系数是高度相关的,使用两次变换可以更彻底的去除频域冗余,提高编码性能。反变换过程如下所示:

 如果出现前面说的(b)情况,就是使用8x8的变换核,对于那些使用8x8Intra Prediction或者是任一Inter Prediction的宏块,变换流程如下所示:

 再聊聊色度的变换量化

 现在假设是YUV420格式,对应16x16大小的亮度宏块,有两个8x8大小的色度宏块。色度的变换量化过程和亮度的(a)情况相似,流程如下所示:

 反流程如下所示:

 

先建立一个对264的变换量化的整体认识,具体细节比如量化步长、变换核什么的等实际用到了再看。。。

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值