色度抽样(4:2:0)到底怎么理解?

之前看了好多资料,国内的国外的。对于色度抽样4:2:0介绍的都差不多,老感觉还有哪些细节问题没有介绍清楚,通过不断的摸索翻阅资料算是彻底弄清楚了,相信我能以很简短的方式告诉同样被该问题困惑的你。

如:我们打算采取如图1所示的16个像素点信息(每个数字代表一个像素点)。

色度抽样(4:2:0)到底怎么理解?_第1张图片

如果以RGB24方式存储,我们知道每个像素点需要用3个字节来存储,如图3所示:

色度抽样(4:2:0)到底怎么理解?_第2张图片

图3展示了我们在内存中对图1所示的像素点信息的存储方式,需要16x3=48字节来存储,如果以yuv420方式才存储,我们看一下,到底是怎么存?按照4:2:0的抽样比例,对于1,2,9,10四个像素点,我们取其全部Y信息,然后只取1,2像素点的U信息,不取V信息,(即4:2:0)。对于紧接着的3,4,11,12四个像素点,我们取其全部Y信息,然后只取11,12像素点的V信息,不取U信息,依次类推。最终我们得到的结果如图2所示(yuv420p中先存Y再存U最后存V,各类型的数据是连续存放的):

色度抽样(4:2:0)到底怎么理解?_第3张图片

这样我们就用24个字节存储了图1所示的16个像素点的颜色信息,相比于图3所示的RGB24方式整整节省了一半的空间。

希望对你有所帮助,图1、图2、图3是我用Excel画的,想要在此基础上进行一些更深研究的同志,我下面把该Excel文件附上,方便大家使用

Excel下载链接:"https://download.csdn.net/download/heibao111728/10675721"

你可能感兴趣的:(音视频)