YUV介绍

YUV444与YUV422下采样。

一、YUV介绍

YUV有三个分量:Y(Luminance/Luma:亮度)、U和V表示色差,体现的是图片的色彩信息。相对于RGB彩色空间,将亮度信息和色彩信息分离。这种编码模式也更加适应于人眼,据研究表明,人眼对亮度信息比色彩信息更加敏感。而YUV下采样就是根据人眼的特点,将人眼相对不敏感的色彩信息进行压缩采样,得到相对小的文件进行播放和传输。
与YUV相像YCbCr其实与其有少许不同,体现在参数的大小上,本质上都是将亮度信息与色彩信息相分开。

二、采集方式

YUV有三种采集方式,分别是4:4:4采样、4:2:2采样和4:2:0采样。

4:4:4采样:每一个Y对应一个U和一个V。大小为3*width*height(width和height是一帧的大小)。

4:2:2采样:每两个Y共用一对U和V。大小为2*width*height(其中U分量和V分量各占1/2个帧大小)。

4:2:0采样:每四个Y共用一对U和V。大小为3/2*width*height(其中U分量和V分量各站1/4个帧大小)。

三、存储格式

(一)平面格式与打包格式

YUV有打包格式(packed)和平面格式(planar)两种。
打包格式:将YUV三个分量放在同一个数组中,通常是几个相邻像素组成一个宏像素。例如YUV422中的YUVY(存储顺序为Y1->Cb->Y2->Cr)。
 
平面格式:使用三个数组分开存放YUV三个分量(每一帧)。其中YUV444p、YUV422p、YUV420p和YUV420sp使用的都是这种存储方式,格式末尾的p代表平面模式。下图是YUV422p。
 

(二)各种格式

1、YUV444

(1)YUV444p:YYYYYYYYY VVVVVVVVV UUUUUUUU

2、YUV422

(1)YUV422p:YYYYYYYY VVVV UUUU
(2)YUVY:YCbYCr YCbYCr YCbYCr
(3)UYVY:CbYCrYCbYCrYCbYCrY

3、YUV420

(1)YUV420p:
YV12:YYYYYYYY VV UU
I420:YYYYYYYY UU VV
(2)YUV420sp:
NV12:YYYYYYYY UVUV
NV21:YYYYYYYY VUVU
上一篇:day7


下一篇:秋招C++开发学习之路day7