YUV

title: 历史.
content: Y'UV的发明是由于彩色电视与黑白电视的过渡时期。黑白视讯只有Y(Luma,Luminance)视讯,也就是灰阶值。到了彩色电视规格的制定,是以YUV/YIQ的格式来处理彩色电视图像,把UV视作表示彩度的C(Chrominance或Chroma),如果忽略C讯号,那么剩下的Y(Luma)讯号就跟之前的黑白电视讯号相同,这样一来便解决彩色电视机与黑白电视机的相容问题。Y'UV最大的优点在于只需占用极少的带宽。  因为UV分别代表不同颜色讯号,所以直接使用R与B讯号表示色度的UV。 也就是说UV讯号告诉了电视要偏移某象素的的颜色,而不改变其亮度。 或者UV讯号告诉了显示器使得某个颜色亮度依某个基准偏移。 UV的值越高,代表该像素会有更饱和的颜色。  彩色图像记录的格式,常见的有RGB、YUV、CMYK等。彩色电视最早的构想是使用RGB三原色来同时传输。这种设计方式是原来黑白带宽的3倍,在当时并不是很好的设计。RGB诉求于人眼对色彩的感应,YUV则着重于视觉对于亮度的敏感程度,Y代表的是亮度,UV代表的是彩度(因此黑白电影可省略UV,相近于RGB),分别用Cr和Cb来表示,因此YUV的记录通常以Y:UV的格式呈现。
title: 常用的YUV格式.
content: 为节省带宽起见,大多数YUV格式平均使用的每像素位数都少于24位元。主要的抽样(subsample)格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1和YCbCr 4:4:4。YUV的表示法称为A:B:C表示法: 最常用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等。
title: YUY2及常见表示方法.
content: YUY2(和YUYV)格式为像素保留Y,而UV在水平空间上相隔二个像素采样一次(Y0 U0 Y1 V0),(Y2 U2 Y3 V2)...其中,(Y0 U0 Y1 V0)就是一个macro-pixel(宏像素),它表示了2个像素,(Y2 U2 Y3 V2)是另外的2个像素。 以此类推,再如:Y41P(和Y411)格式为每个像素保留Y分量,而UV分量在水平方向上每4个像素采样一次。一个宏像素为12个字节,实际表示8个像素。图像数据中YUV分量排列顺序如下:(U0 Y0 V0 Y1 U4 Y2 V4 Y3 Y4 Y5 Y6 Y7)...
title: YVYU UYVY.
content: YVYU, UYVY格式跟YUY2类似,只是排列顺序有所不同。Y211格式是Y每2个像素采样一次,而UV每4个像素采样一次。AYUV格式则有一Alpha通道。
title: YV12.
content: YV12格式与IYUV类似,每个像素都提取Y,在UV提取时,将图像2 x 2的矩阵,每个矩阵提取一个U和一个V。YV12格式和I420格式的不同处在V平面和U平面的位置不同。在YV12格式中,V平面紧跟在Y平面之后,然后才是U平面(即:YVU);但I420则是相反(即:YUV)。NV12与YV12类似,效果一样,YV12中U和V是连续排列的,而在NV12中,U和V就交错排列的。  排列举例: 2*2图像YYYYVU; 4*4图像YYYYYYYYYYYYYYYYVVVVUUUU
title: 转换.
content: YUV与RGB的转换公式:  U和V元件可以被表示成原始的R,G,和B(R,G,B为γ预校正后的):  formula_1  如一般顺序,转移元件的范围可得到:  formula_2  在逆转关系上,从YUV到RGB,可得  formula_3  取而代之,以矩阵表示法(matrix representation),可得到公式:  formula_4  formula_5
title: YUV转RGB.
content: function RGB* YUV444toRGB888(Y, U, V);将YUV format移转成简单的RGB format并可以用浮点运算实作:
title: Y'UV444.
content: 大多数YUV格式平均使用的每像素位数都少于24位元。YUV444是最逼真的格式,一格不删(24 bits),即每4个Y,配上4个U,还有4个V;YUV422则是在UV格式上减半,即每4个Y,配2个U,2个V;YUV420则是在UV上减至1/4之格式,即每4个Y,配1个U,再配1个V。  这些公式是基于NTSC standard;  在早期的非SIMD(non-SIMD)构造中,floating point arithmetic会比fixed-point arithmetic稍慢,所以有一替代公式如下:  使用前面的系数并且用clip()注明切割的值域是0至255,如下的公式是从Y'UV到RGB (NTSC version):  注意:上述的公式多暗示为YCbCr. 虽然称为YUV,但应该严格区分YUV和YCbCr这两个专有名词有时并非完全相同。  ITU-R版本的公式差异:  ITU-R标准YCbCr(每一通道8位元)至RGB888:  Cr = Cr - 128; Cb = Cb - 128;
title: Y'UV422.
content: u = yuv[0]; 以此一资讯可以剖析出regular Y'UV444格式而成为2 RGB pixels info:  Y'UV422可被表达成Y'UY'2 FourCC格式码。意思是2 pixels将被定义成each macropixel (four bytes) treated in the image.
title: Y'UV411.
content: // Extract YUV components  所以结果会得到4 RGB像素的值 (4*3 bytes) from 6 bytes. This means reducing size of transferred data to half and with quite good loss of quality.
title: YV12.
content: The Y'V12的格式相当类似Y'UV420p,但U与V资料反转:Y'跟随着V, U殿后。Y'UV420p与Y'V12使用相同算法。许多重要的编码器都采用YV12空间存储视频:MPEG-4(x264,XviD,DivX),DVD-Video存储格式MPEG-2,MPEG-1以及MJPEG。  将Y'UV420p转换成RGB

Summary: YUV,是一种颜色编码方法。常使用在各个影像处理元件中。 YUV在对照片或影片编码时,考虑到人类的感知能力,允许降低色度的带宽。

YUV: YUV je barevný model používaný v televizním vysílání v normě PAL a HDTV. Model k popisu barvy používá tříprvkový vektor [Y,U,V], kde Y je jasová složka a U a V jsou barevné složky. U je také někdy označováno jako B-Y a V odpovídá R-Y. Barevné složky se používají v rozsahu od −0.5 do +0.5, jasová složka má rozsah od 0 do 1. Výhodou YUV je oddělení jasové složky, kterou člověk přesněji vnímá. Pak je možné vyhradit pro chromatickou složku menší šířku přenosového pásma.