色彩空间
1)RGB颜色空间
RGB(红绿蓝)是依据人眼识别的颜色定义出的空间,是通过对红、绿、蓝三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的。
优点:可表示大部分颜色。
缺点:在科学研究一般不采用RGB颜色空间,因为它的细节难以进行数字化的调整。它将色调,亮度,饱和度三个量放在一起表示,很难分开。
用的地点:它是最通用的面向硬件的彩色模型。该模型用于彩色监视器和一大类彩色视频摄像。
要注意的细节:
(1)在(1,1,1)是白色,(0,0,0)是黑色
(2)R(Red:红)、G(Green:绿)、B(Blue:蓝) A(Alpha 透明度)
(3)多通道:RGB三原色,每个像素点有三个字节byte来表示(RGB),分别最大取值范围是0-255,RGB的每个元素在计算机内存中占用1个字节byte,1个字节byte等于8个bit位,所以RGB每个元素的取值范围为:0~256(2的8次方)
(4)存储类型
1)RGB555(高彩色):16位的RGB格式,各分量都用5位表示,剩下的一位不用。
高字节 -> 低字节(根据内存大小端) XRRRRRGGGGGBBBBB(X代表不用)
2)RGB565(高彩色):16位的RGB格式,但是R占用5位,G占用6位,B占用5位。
3)RGB24(真彩色):24位的RGB格式,各分量占用8位,取值范围为0-255。
4)RGB32(真彩色):32位的RGB格式,各分量占用8位,剩下的8位作Alpha通道或者不用。
5)RGB222:8位的RGB格式,各分量占用2bit位,剩下的2bit位不用!
我理解的是不同的储存格式能表示的颜色数量是不一样的,比如RGB555是2的五次方 *2的5次方* 2的五次方
2)CMY/CMYK颜色空间
CMY是工业印刷采用的颜色空间。C. 青色(Cyan) M. 洋红色(Magenta) Y. 黄色(Yellow) K. 黑色(blacK)。它与RGB对应。青,品红,和黄色是作为红、绿、蓝的互补色光而存,也可以作为颜料的一组三原色。简单的类比RGB来源于是物体发光,而CMY是依据反射光得到的。由于他们是通过从白光中分别减去 RGB 三原色而得到,故常把青、品红和蓝称为三减色。但CMY模型不能产生真正的黑色。故实际应用中我们通常模型中额外加入第四种颜色黑色,用 K 表示。以此 CMY 模型进而提升为CMYK 模,市面上常用的也是CMYK 模型。
具体应用:如打印机一般采用四色墨盒,即CMY加黑色墨盒。CMYK模型针对印刷媒介,即基于油墨的光吸收/反射特性,眼睛看到颜色实际上是物体吸收白光中特定频率的光而反射其余的光的颜色。
来源:人们用白色光照射分别涂有青、品红、黄色的物体表面时,发现它们对应的反射光中分别不包含红、绿和蓝色,且也能组合成其他颜色,于是基于此提出来 CMY 色度模型。
转换:与 RGB 色度模型的转换
3)HSV/HSB颜色空间
4)HSI/HSL颜色空间
哦my god,我已经晕了。傻傻分不清楚了
Q1:为什么要有hsi hsl hsv hsb呢?
RGB 是对机器很友好的色彩模式,但并不够人性化,因为我们对色彩的认识往往是”什么颜色?鲜艳不鲜艳?亮还是暗?”。HSL 模式和 HSV(HSB) 都是基于 RGB 的,是作为一个更方便友好的方法创建出来的。也就是说仿照人的感觉创建的颜色空间,对人非常友好~~
Q2:HSV HSB HSI HSL分别是啥意思呢?
H是色调,S是饱和度,
B是明度V是明度
L是亮度I是亮度
Q3:可以说人话解释一下什么是色调什么是饱和度什么是亮度什么是明度吗?
色调:啥颜色。
饱和度:表示颜色的纯度,纯光谱色是完全饱和的,加入白光会稀释饱和度。饱和度越大,颜色看起来就会越鲜艳,反之亦然。
**亮度:**对应成像亮度和图像灰度,是颜色的明亮程度。亮还是暗。
明度:眼睛对光源和物体表面的明暗程度的感觉,主要是由光线强弱决定的一种视觉经验。一般来说,光线越强,看上去越亮;光线越弱,看上去越暗。
我根本分不清亮度和明度。。就这样吧。
Q4:我还需要知道什么知识?
1、用六角形锥体表示自己的颜色模型。
2、转换,随便看看吧。
1.RGB转HSI
2.hsi转rgb
3、应用场景
暂时不知道~~
5)Lab颜色空间
只需要看看。
Lab颜色模型是由CIE([国际照明委员会)制定的一种色彩模式。自然界中任何一点色都可以在Lab空间中表达出来,它的色彩空间比RGB空间还要大。另外,这种模式是以数字化方式来描述人的视觉感应, 与设备无关,所以它弥补了RGB和CMYK模式必须依赖于设备色彩特性的不足。由于Lab的色彩空间要比RGB模式和CMYK模式的色彩空间大。这就意味着RGB以及CMYK所能描述的色彩信息在Lab空间中都能 得以影射。Lab颜色模型取坐标Lab,其中L亮度;a的正数代表红色,负端代表绿色;b的正数代表黄色, 负端代表兰色(a,b)有L=116f(y)-16, a=500[f(x/0.982)-f(y)], b=200[f(y)-f(z/1.183 )];其中: f(x)=7.787x+0.138, x<0.008856; f(x)=(x)1/3,x>0.008856
6)YUV/YCbCr颜色空间
YUV是通过亮度-色差来描述颜色的颜色空间。(Y代表亮度,C代表颜色,b代表蓝色,r代表红色)
Y:明亮度(Luminance或Luma),也就是灰阶值。“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。
U&V:色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。“色度”则定义了颜色的两个方面─色调与饱和度,分别用Cr和CB来表示。
Cb:反映的是RGB输入信号蓝色部分与RGB信号亮度值之间的差异。
Cr:反映了RGB输入信号红色部分与RGB信号亮度值之间的差异。
亮度信号经常被称作Y,色度信号是由两个互相独立的信号组成(Cb和Cr)。YUV/YCbCr两个基本一样。
**为什么要出现YUV?**一个是为了让彩色信号兼容黑白电视机,另外一个原因是为了减少传输的带宽。YUV中,Y表示亮度,U和V表示色度,总之它是将RGB信号进行了一种处理,根据人对亮度更敏感些,增加亮度的信号,减少颜色的信号,以这样“欺骗”人的眼睛的手段来节省空间。
**转换:**YUV到RGB颜色空间转换关系是:随便看看。
R = Y + 1.042*(V-128);
G = Y - 0.34414*(U-128) - 0.71414*(V-128);
B = Y + 1.772*(U-128);
R = 1.164*(Y-16)+1.596*(Cr-128)
G = 1.164*(Y-16)-0.392*(Cb-128)-0.813*(Cr-128)
B = 1.164*(Y-16)+2.017*(Cb-128)
Y = 0.257*R+0.564*G+0.098*B+16
Cb = -0.148*R-0.291*G+0.439*B+128
Cr = 0.439*R-0.368*G-0.071*B+128
|R| |298.082 0 408.58 | |Y -16 |
|G| = (1/256) * |298.082 -100.291 -208.12 | * |Cb-128 |
|B| |298.082 516.411 0 | |Cr -128 |
|Y | |16 | |65.738 129.057 25.06 | |R|
|Cb | = |128| + (1/256) * |-37.945 -74.494 112.43| *|G|
|Cr | |128| |112.439 -94.154 -18.28| |B|
应用场景:人脸肤色检测时候看看。