
这是什么颜色?
在我看来大概是一种草绿色,草绿色并不是一个量化的词语,只是一种感受,描述了一种大概是绿色,但又不全是绿色,有些偏黄偏暖的绿色。世界上还有千千万万种颜色,我们不可能靠感受逐个去起名字,我们需要量化他。我们可以以这样的方式表示它:
一定比例的红(R) + 一定比例的绿(G) +一定比例的蓝(B) = “草绿色”
那么如果红,绿,蓝我们取值范围都是0~255,那么就可以表示为:
165(R) + 220(G) + 22(B) = “草绿色”
这里RGB就是一种色彩空间,使用不同的RGB参数就可以表示不同颜色。所以色彩空间是对颜色的一种表示方式。我们既然可以用RGB作为变量,那么我们一定也有其他方式对颜色进行表示,所以,色彩空间不止一种。
我们除了可以用RGB表示颜色外,还有什么其他方式呢?
我们也可以用青色(C),品红色(M),黄色(Y),黑色(K)四种颜色的量化混合来表示这个“草绿色”。这就叫做“CMYK”色彩空间。
除了用各种颜色的混合,我们还可以用颜色的其他性质来表示一个颜色,比如我们可以用用色相(H),饱和度(S),亮度(L)来量化组合,从而表示某一个颜色。这就叫做HSL色彩空间。
或者我们还可以用亮度(Y),蓝色色度(U),红色色度(V)来表示颜色,这就叫做YUV。
YUV是一种色彩空间格式,是一种颜色的表示方式。在不同应用场合还有很多其他的色彩空间,每种色彩空间有自己的特点,使用时往往会根据不同的应用场合选择最合适的色彩空间。
每个像素的颜色可以用一个Y,一个U,一个V来表示。也就是说YUV表示一个像素点。每一个Y对应一组UV分量。研究发现,相邻像素的U和V差别不大,如果共用,那么还可以缩小图像存储空间。类似这种表达方式就有了多种YUV格式:
YUV 4:4:4采样,每一个Y对应一组UV分量。
YUV 4:2:2采样,每两个Y共用一组UV分量。
YUV 4:2:0采样,每四个Y共用一组UV分量。
Packed:YUV的值按照出现的顺序,以交错的方式,以一组一组的方式进行存储的方式,我们称为打包格式。
Planar:YUV的值每个分量被单独组合在一起,形成三个平面进行单独存储的方式,我们成为平面格式。
Converting Between YUV and RGB (Windows Embedded CE 6.0) | Microsoft Learn
