Opencv颜色空间最全

**

Opencv颜色空间最全

**

颜色空间也称彩色模型(又称彩色空间或彩色系统)本质上,彩色模型是坐标系统和子空间的阐述。位于系统的每种颜色都有单个点表示。采用的大多数颜色模型都是面向硬件或面向应用的。颜色空间从提出到现在已经有上百种,大部分只是局部的改变或专用于某一领域。科学研究中有不少逻辑性等方面比HSХ更高的颜色空间。
颜色空间有许多种,常用有RGB,CMY,HSV,HSI等

下面看opencv一张图:
Opencv颜色空间最全_第1张图片
Opencv颜色空间最全_第2张图片

RGB

RGB是通过红绿蓝三原色来描述颜色的颜色空间,R=Red、G=Green、B=Blue。
RGB颜色空间以R(Red红)、G(Green绿)、B(Blue蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。在大自然中有无穷多种不同的颜色,而人眼只能分辨有限种不同的颜色,RGB模式可表示一千六百多万种不同的颜色,在人眼看来它非常接近大自然的颜色,故又称为自然色彩模式。

色度学规则:
  (1)通过R,G,B这三种颜色能产生任何颜色,并且这三种颜色混合后产生的颜色是唯一的。
  (2)如果两个颜色相等,这三个颜色分量再乘以或者除以相同的数,得到的颜色仍然相等。
  (3)混合色的亮度等于每种颜色亮度的和。

YUV/Ycbcr

YUV空间中,每一个颜色有一个亮度信号 Y,和两个色度信号 U 和V。亮度信号是强度的感觉,它和色度信号断开,这样的话强度就可以在不影响颜色的情况下改变。
YUV使用RGB的信息,但它从全彩色图像中产生一个黑白图像,然后提取出三个主要的颜色变成两个额外的信号来描述颜色。把这三个信号组合回来就可以产生一个全彩色图像。
YUV和RGB的转换:
Y = 0.299 R + 0.587 G + 0.114 B
U = -0.1687 R - 0.3313 G + 0.5 B + 128
V = 0.5 R - 0.4187 G - 0.0813 B + 128

YCbCr 是在世界数字组织视频标准研制过程中作为ITU - R BT1601 建议的一部分,其实是YUV经过缩放和偏移的翻版。其中Y与YUV 中的Y含义一致, Cb , Cr 同样都指色彩, 只是在表示方法上不同而已。在YUV家族中, YCbCr 是在计算机系统中应用最多的成员,其应用领域很广泛,JPEG、MPEG均采用此格式。一般人们所讲的YUV大多是指YCbCr。
YCbCr与RGB的相互转换
   Y=0.299R+0.587G+0.114B
   Cb=0.564(B-Y)
   Cr=0.713(R-Y)
YCbCr主要的采样格式有YCbCr 4:2:0、YCbCr 4:2:2、YCbCr 4:1:1和 YCbCr 4:4:4。其中YCbCr4:1:1 比较常用,其含义为:每个点保存一个 8bit 的亮度值(也就是Y值), 每 2 x 2 个点保存一个 Cr和Cb值,图像在肉眼中的感觉不会起太大的变化。所以, 原来用 RGB(R,G,B 都是 8bit unsigned) 模型, 每个点需要8x3=24 bits, 而现在仅需要 8+(8/4)+(8/4)=12bits,平均每个点占12bits。这样就把图像的数据压缩了一半。

HSV/HLS

Opencv颜色空间最全_第3张图片
HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间,
色调H用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;
饱和度S饱和度S表示颜色接近光谱色的程度。一种颜色,可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例愈大,颜色接近光谱色的程度就愈高,颜色的饱和度也就愈高。饱和度高,颜色则深而艳。光谱色的白光成分为0,饱和度达到最高。通常取值范围为0%~100%,值越大,颜色越饱和。
明度V明度表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,此值和物体的透射比或反射比有关。通常取值范围为0%(黑)到100%(白)。

RGB转化到HSV的算法:
Opencv颜色空间最全_第4张图片

HLS颜色空间,三个分量分别是色相(H)、亮度(L)、饱和度(S),这三个分量进行数字化处理,取值范围为:
0<=H<=360,0<=S<=1,0<=L<=1

RGB转化到HLS的算法:
Opencv颜色空间最全_第5张图片

Lab/LUV

Lab的全称是CIELAB,有时候也写成CIE Lab*

Lab是由一个亮度通道(channel)和两个颜色通道组成的。在Lab颜色空间中,每个颜色用L、a、b三个数字表示,各个分量的含义是这样的:

  • L*代表亮度
  • a*代表从绿色到红色的分量
  • b*代表从蓝色到黄色的分量

Lab相较于RGB与CMYK等颜色空间更符合人类视觉,也更容易调整:想要调节亮度(不考虑Helmholtz–Kohlrausch effect,见下注)就调节L通道,想要调节只色彩平衡就分别调a和b

理论上说,L*、a*、b*都是实数,不过实际一般限定在一个整数范围内:

  • L越大,亮度越高。L为0时代表黑色,为100时代表白色。
  • a和b为0时都代表灰色。
  • a*从负数变到正数,对应颜色从绿色变到红色。
  • b*从负数变到正数,对应颜色从蓝色变到黄色。
  • 我们在实际应用中常常将颜色通道的范围-100+100或-128127之间。

LUV色彩空间全称CIE 1976(L*,u*,v*)(也作CIELUV)色彩空间,L表示物体亮度,u和v是色度。于1976年由国际照明委员会(International Commission on Illumination)提出,由CIE XYZ空间经简单变换得到,具视觉统一性。类似的色彩空间有CIELAB。对于一般的图像,u和v*的取值范围为-100到+100,亮度为0到100。

CMYK/CMY

这个颜色模型常用于印刷出版。CMYK表示青(Cyan)品红(Magenta)黄(Yellow)黑(BlacK)四种颜料。由于颜料的特性,该模型也是与设备相关的。相对于RGB的加色混色模型,CMY是减色混色模型,颜色混在一起,亮度会降低。之所以加入黑色是因为打印时由品红、黄、青构成的黑色不够纯粹。

CIEXYZ

在颜色感知的研究中,CIE 1931 XYZ 色彩空间(也叫做 CIE 1931 色彩空间)是其中一个最先采用数学方式来定义的色彩空间,它由国际照明委员会(CIE)于1931年创立。CIE XYZ 色彩空间是从 1920 年代后期 W. David Wright (Wright 1928) 和 John Guild (Guild 1931) 做的一系列实验中得出的。他们的实验结果合并到了 CIE RGB 色彩空间的规定中,CIE XYZ 色彩空间再从它得出
转换公式:

  [X]        [0.433953    0.376219    0.189828]    [R]

  [Y]    =  [0.212671    0.715160    0.072169]    [G]     

  [Z]        [0.017758    0.109477    0.872765]    [B]

结语:粗糙整理,将就看看吧,最后,感谢观看

你可能感兴趣的:(Opencv,颜色空间)