码迷,mamicode.com
首页 > 其他好文 > 详细

编码原理详解(三)---量化

时间:2018-01-31 11:18:21      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:简单   -o   压缩   注意   col   blog   images   --   image   

本节开始介绍编码过程中的量化环节。还记得上一篇的变换吗?变换之后得到了一个新的矩阵,一个经过从空域变换到频域的一个矩阵。那么,量化呢,就是基于变换后得到的矩阵,再做进一步的处理,本质也就是进一步的压缩。

一、原理

    量化的原理是把变换后的DCT系数除以一个常量,经过量化后的结果是量化步长的整数倍或者为更多的零值,从而达到了压缩的目的。

二、量化公式

    q(x, y) = round(F(x, y) / Q + 0.5);

公式说明:F(x, y)为经过DCT变换后的DCT系数, Q为量化步长,在x264中对应qp的值。round()函数返回四舍五入的整数值。q(x, y)则是经过量化之后的值喽。简单举个栗子:如果某个像素点经过DCT变换后的值为203, 量化步长QP 取28,辣么,q(x,y) = round(205 / 28 + 0.5) = round(7.8214) = 8. 有没有懂了呢,哈哈,还是来个图吧。

三、量化示意

技术分享图片

四、说明

    (1) 我的天哪,量化完之后肿么这么多零呢,哈哈,这个不正式咱们想要的结果吗,哈哈;
    (2) 从公式可以看粗来,量化值QP越大,那么量化的粒度越粗,相应的也会省更多的比特,但是画质相应的就会差很多;量化值QP越小,那么量化粒度越细,相应的会占用更多的比特,画质也就会好一些喽。
    (3) 从公式也可以看出,编码过程中,量化是一个有损的过程哦,这一点一定要注意哦。

    好了,量化就到这里喽,量化后的数据该怎么处理呢,敬请期待下一篇ZIG-ZAG之字形扫描喽。

编码原理详解(三)---量化

标签:简单   -o   压缩   注意   col   blog   images   --   image   

原文地址:http://blog.51cto.com/7335580/2067118

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!