YUV学习文档
第一幅是Y分量描述黑白图像
第二幅是U(V)分量描述
第三幅是V(U)分量描述
第四幅是YUV三幅合成后得到的正常图像
1. YUV简介
YUV是一种颜色编码方法,它和我们熟知的RGB红绿蓝颜色体系相对应,它们之间能通过公式相互转换。而YUV区别于RGB的重要一点是采用YUV色彩空间亮度信号Y和色度信号U、V是分离的,这样就使得亮度Y和色差UV三个信号分别进行编码,用同一信道发送出去。
在摄像头之类编程经常是会碰到YUV格式,研究证明,人眼对亮度的敏感超过色度。利用这个原理,可以把色度信息减少一点,人眼也无法查觉这一点。这样操作达到的效果就是对于一张图片使用YUV格式保存将更少的占用存储空间。
I420: YYYYYYYY UU VV =>YUV420P
YV12: YYYYYYYY VV UU =>YUV420P
NV12: YYYYYYYY UVUV =>YUV420SP
NV21: YYYYYYYY VUVU =>YUV420SP
2. YUV的存储格式
RGB格式中,一个像素点要占用4字节空间32比特位。并且RGB格式每个点的数据是连继保存在一起的。而YUV格式根据采样方式的不同,每个像素点所占用的空间是不同的。YUV格式的每个点不是连续保存的,可以根据UV分量的保存类型可以把YUV存储格式分为:
紧缩格式(packedformats):将Y、U、V值储存成Macro Pixels阵列,和RGB的存放方式类似。
平面格式(planarformats):将Y、U、V的三个分量分别存放在不同的矩阵中。
--------Planar类型存储格式