转自: http://www.douban.com/note/76361504/
YUV是编译true-color颜色空间(color space)的种类,Y'UV, YUV, YCbCr,YPbPr等
专有名词都可以称为YUV,彼此有重叠。“Y”表示明亮度(Luminance、Luma),
“U”和“V”则是色度、浓度(Chrominance、Chroma),Y'UV, YUV, YCbCr, YPbPr 常常
有些混用的情况,其中 YUV 和 Y'UV 通常用来描述类比讯号,而相反的 YCbCr 与 YPbPr
则是用来描述数位的影像讯号,例如在一些压缩格式内 MPEG、JPEG 中,但在现今,
YUV 通常已经在电脑系统上广泛使用。YUV Formats分成两个格式:
紧缩格式(packed format)中的YUV是混合在一起的,对于YUV4:4:4格式而言,用紧缩格式
很合适的,因此就有了UYVY、YUYV等。平面格式(planar formats)是指每Y份量,U份量
和V份量都是以独立的平面组织的,也就是说所有的U份量必须在Y份量后面,而V份量在所有
的U份量后面,此一格式适用于采样(subsample)。平面格式(planar format)有I420(4:2:0)、
YV12、IYUV等。
Y'UV 的发明是由于彩色电视与黑白电视的过渡时期[1]。黑白视讯只有 Y(Luma,Luminance)
视讯,也就是灰阶值。到了彩色电视规格的制定,是以 YUV/YIQ 的格式来处理彩色电视图像,
把 UV 视作表示彩度的 C(Chrominance或Chroma),如果忽略 C 讯号,那么剩下的 Y(Luma)
讯号就跟之前的黑白电视讯号相同,这样一来便解决彩色电视机与黑白电视机的相容问题。
Y'UV 最大的优点在于只需占用极少的带宽。
彩色图像记录的格式,常见的有 RGB、YUV、CMYK等。彩色电视最早的构想是使用RGB
三原色来同时传输。这种设计方式是原来黑白带宽的3倍,在当时并不是很好的设计。RGB
诉求于人眼对色彩的感应,YUV则着重于视觉对于亮度的敏感程度,Y 代表的是亮度,UV
代表的是彩度(因此黑白电影可省略UV,相近于RGB),分别用Cr和CB来表示,因此YUV
的记录通常以 Y:UV 的格式呈现。
常用的YUV格式
为节省带宽起见,大多数 YUV 格式平均使用的每像素位数都少于24位元。主要的采样(subsample)
格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1和 YCbCr 4:4:4。YUV的表示法称为 A:B:C 表示法:
* 4:4:4 表示完全取样。
* 4:2:2 表示 2:1 的水平取样,没有垂直下采样。
* 4:2:0 表示 2:1 的水平取样,2:1 的垂直下采样。
* 4:1:1 表示 4:1 的水平取样,没有垂直下采样。
最常用Y:UV记录的比重通常 1:1 或 2:1,DVD-Video 是以 YUV 4:2:0 的方式记录,也就是我们
俗称的I420,YUV4:2:0 并不是说只有U(即 Cb), V(即 Cr)一定为 0,而是指U:V互相援引,
时见时隐,也就是说对于每一个行,只有一个U或者V份量,如果一行是4:2:0的话,下一行就是
4:0:2,再下一行是 4:2:0...以此类推。至于其他常见的YUV格式有YUY2、YUYV、YVYU、UYVY、
AYUV、Y41P、Y411、Y211、IF09、 IYUV、YV12、YVU9、YUV411、YUV420等。
YUY2
YUY2(和YUYV)格式为像素保留 Y,而 UV 在水平空间上相隔二个像素采样一次。
YVYU, UYVY格式跟YUY2类似,只是排列顺序有所不同。Y211格式是Y每2个像素采样一次,
而UV每4个像素采样一次。AYUV格式则有一 Alpha通道。
YV12
YV12格式与IYUV类似,每个像素都提取Y,在UV提取时,将图像2 x 2的矩阵,每个元素中
提取一个U和一个V。YV12格式和I420格式的不同处在V平面和U平面的位置不同。在I420格式中,
U平面紧跟在Y平面之后,然后才是V平面(即:YUV);但YV12则是相反(即:YVU)。NV12
与YV12类似,效果一样,YV12中 U 和 V 是连续排列的,而在NV12中,U 和 V 就交错排列的。