RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解

1.基于颜色加法混色原理的RGB RGB颜色模型即红绿蓝颜色模型。由模仿生物视网膜三种视锥细胞产生,之后通过三原色叠加来进行彩色图像显示。通过在黑色上不断叠加三原色来显示不同的颜色。在RGB颜色空间中,分别将RGB作为笛卡尔坐标系中XYZ坐标系产生。每一个颜色取值范围为[0,256)

RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
RGB颜色模型 RGB颜色对照表可参考【这里】
数字图像多采用RGB进行存储和显示,三个通道分别分开存储图像上每个像素的RGB值,单独每个通道显示均为灰度图像,通道为二维矩阵,opencv中存储通道顺序为BGR。三通道及多通道图像表示如下: RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
三通道及多通道图像表示 【RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解】
2.基于颜色减法混色原理的CMY/CMYK

CMY是青(Cyan)、洋红或品红(Magenta)和黄(Yellow)三种颜色,由于三原色得不到纯黑色,CMYK则是打印时加上墨色(black ink),例如青色可以通过蓝色和绿色光相加得到,则白色通过青色时,没有红色分量。底色为白色进行色彩减法可以得到各种颜色。 RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
CMY RGB与CMYK相互转换为:

R = 255*(100-C)*(100-K)/10000; G = 255*(100-M)*(100-K)/10000; B = 255*(100-Y)*(100-K)/10000;

3.YUV YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法。采用YUV色彩空间的重要性是它的亮度信号Y和色度信号U、V是分离的。如果只有Y信号分量而没有U、V信号分量,那么这样表示的图像就是黑白灰度图像。彩色电视采用YUV空间正是为了用亮度信号Y解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。其中“Y”表示明亮度(Luminance或Luma),也就是灰阶值;而“U”和“V” 表示的则是色度(Chrominance或Chroma,作用是描述影像色彩及饱和度,用于指定像素的颜色。“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。“色度”则定义了颜色的两个方面─色调与饱和度,分别用Cr和Cb来表示。其中,Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异。而Cb反映的是RGB输入信号蓝色部分与RGB信号亮度值之同的差异。YUV和RGB互相转换的公式如下:
Y = 0.299R + 0.587G + 0.114B  U = -0.147R - 0.289G + 0.436B  V = 0.615R - 0.515G - 0.100B  R = Y + 1.14V  G = Y - 0.39U - 0.58V  B = Y + 2.03U

4.HSV、HSI RGB可以方便的进行计算机存储和读取,但对人进行颜色判断十分不友好,因此有了HSV,HSI颜色空间。HSV即色相(Hue)、饱和度(Saturation)、明度(Value),又称HSB(B即Brightness)。
H色相是色彩的基本属性,就是平常说的颜色的名称,如红色、黄色等。饱和度,用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;
S是指色彩的纯度,越高色彩越纯,低则逐渐变灰,取0-100%的数值。饱和度S表示颜色接近光谱色的程度。一种颜色,可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例愈大,颜色接近光谱色的程度就愈高,颜色的饱和度也就愈高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常取值范围为0%~100%,值越大,颜色越饱和。


明度V,取0-max(计算机中HSV取值范围和存储的长度有关)。明度表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值和物体的透射比或反射比有关。通常取值范围为0%(黑)到100%(白)。HSV颜色空间可以用一个圆锥空间模型来描述。圆锥的顶点处,V=0,H和S无定义,代表黑色。圆锥的顶面中心处V=max,S=0,H无定义,代表白色。 RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
HSV 从RGB到HSV(设max等于r、g和b中的最大者,min为最小者。): RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
RGB-HSV 从HSV到RGB: RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
HSV-RGB HSL (HSI)类似于 HSV。对于一些人,HSL 更好的反映了“饱和度”和“亮度”作为两个独立参数的直觉观念,但是对于另一些人,它的饱和度定义是错误的,因为非常柔和的几乎白色的颜色在 HSL 可以被定义为是完全饱和的。对于 HSV 还是 HSL 更适合于人类用户界面是有争议的。在 HSL 中,饱和度分量总是从完全饱和色变化到等价的灰色(在 HSV 中,在极大值 V 的时候,饱和度从全饱和色变化到白色,这可以被认为是反直觉的)。在 HSL 中,亮度跨越从黑色过选择的色相到白色的完整范围(在 HSV 中,V 分量只走一半行程,从黑到选择的色相),强度I 是一个主观的描述,是人对彩色感觉的关键参数,实际上它是不可能测量的。HSI模型可从彩色图像中携带的彩色信息(色调和饱和度)里消去强度分量的影响。HSI模型的建立基于两个重要的事实: ① I分量与图像的彩色信息无关;② H和S分量与人感受颜色的方式是紧密相联的。这些特点使得HSI模型非常适合彩色特性检测与分析。
HSI与HSL使用相同的模型,仅在亮度的描述上不同。

HSL,HSV如下: RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
HSI-HSL 5.Lab Lab色彩空间(Lab color space)是颜色-对立空间,带有维度L表示亮度,a和b表示颜色对立维度,基于了非线性压缩的CIE XYZ色彩空间。Lab颜色被设计来接近人类视觉。它致力于感知均匀性,它的L分量密切匹配人类亮度感知。因此可以被用来通过修改a和b分量的输出色阶来做精确的颜色平衡,或使用L分量来调整亮度对比。这些变换在RGB或CMYK中是困难或不可能的——它们建模于物理设备的输出,而不是人类的视觉感知。因为Lab空间比电脑萤幕、印表机甚至比人类视觉的色域都要大,表示为Lab的位图比RGB或CMYK位图获得同样的精度要求更多的每像素数据。
Lab颜色空间中的L分量用于表示像素的亮度,取值范围是[0,100],表示从纯黑到纯白;a表示从红色到绿色的范围,取值范围是[127,-128];b表示从黄色到蓝色的范围,取值范围是[127,-128]。
RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
Lab
RGB-XYZ-Lab转换
RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片
image
RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片

RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片

XYZ转lab
RGB、CMY、CMYK、YUV、HSV、HSI、LAB颜色空间详解
文章图片

    推荐阅读