RGB、CMY、HSV、HSL颜色空间
1.颜色空间(又称彩色模型、色彩空间、 彩色系统等)是对色彩的一种描述方式,定义有很多种,区别在于面向不同的应用背景。
颜色空间的应用背景:
显示器中采用的RGB颜色空间是基于物体发光定义的(RGB对应光的三原色:Red,Green,Blue);
工业印刷中常用的CMY颜色空间是基于光反射定义的(CMY对应了绘画中的三原色:Cyan,Magenta,Yellow);
HSV、HSL两个颜色空间都是从人视觉的直观反映而提出来的(H是色调,S是饱和度,I是强度)。
2.RGB颜色空间
基于颜色的加法混色原理,从黑色不断叠加Red,Green,Blue的颜色,最终可以得到白色光。
如图:
在RGB颜色空间中,任意色光F都可以用R、G、B三色不同分量的相加混合而成:F=r[R]+r[G]+r[B]。RGB色彩空间还可以用一个三维的立方体来描述。当三基色分量都为0(最弱)时混合为黑色光;当三基色都为k(最大,值由存储空间决定)时混合为白色光。
3.CMY(CMYK)颜色空间
相比于RGB,CMY(CMYK)颜色空间是另一种基于颜色减法混色原理的颜色模型。在工业印刷中它描述的是需要在白色介质上使用何种油墨,通过光的反射显示出颜色的模型。CMYK描述的是青,品红,黄和黑四种油墨的数值。如图3:
图:减法混色
CMYK颜色空间的颜色值与RGB颜色空间中的取值可以通过线性变换相互转换
4.HSV颜色空间
由色调(Hue)、饱和度(Saturation)、亮度(Value)三个分量构成,HSV更接近于人眼的主观感受。我们可以通过下面的图来展示HSV颜色分布情况:
HSV的优势:
对于图像而言,识别相应的颜色在RGB空间、HSV空间或者其它颜色空间都是可行的。之所以选择HSV,是因为H代表的色调基本上可以确定某种颜色,再结合饱和度和亮度信息判断大于某一个阈值(这里是40到255)。而RGB由三个分量构成,需要判断每种分量的贡献比例。比如:R = 200, G = 20, B = 30,可以看到R值很大,所以是红色,再看GB值相对较小,可以判断为深红色。但如果变成:R = 200, G = 190, B = 180,实际上颜色已经接近灰色。
5.HSL颜色空间
与HSV类似,只不过把V:Value替换为了L:Lightness。这两种表示在用目的上类似,但在方法上有区别。二者在数学上都是圆柱,但HSV(色相,饱和度,色调)在概念上可以被认为是颜色的倒圆锥体(黑点在下顶点,白色在上底面圆心),HSL在概念上表示了一个双圆锥体和圆球体(白色在上顶点,黑色在下顶点,最大横切面的圆心是半程灰色)。注意尽管在HSL和HSV中“色相”指称相同的性质,它们的“饱和度”的定义是明显不同的。对于一些人,HSL更好的反映了“饱和度”和“亮度”作为两个独立参数的直觉观念,但是对于另一些人,它的饱和度定义是错误的,因为非常柔和的几乎白色的颜色在HSL可以被定义为是完全饱和的。对于HSV还是HSL更适合于人类用户界面是有争议的。
参考文章:
http://lib.csdn.net/article/opencv/30171
http://www.xuebuyuan.com/2067734.html
转载于:https://www.cnblogs.com/starryxsky/p/7261008.html
RGB、CMY、HSV、HSL颜色空间相关推荐
- HSV(HSL)颜色空间及其应用
from:http://nkwavelet.blog.163.com/blog/static/22775603820147851726816/ [摘要] 本文首先阐述HSV 和 HSL颜色模式的基本特 ...
- 颜色空间RGB与HSV HSL 的转换
一般的3D编程只需要使用RGB颜色空间就好了,但其实美术人员更多的是使用HSV(HSL),因为可以方便的调整饱和度和亮度. 有时候美术需要程序帮助调整饱和度来达到特定风格的渲染效果,这时候就需要转换颜 ...
- 【颜色空间】RGB、HSV、Lab、YUV颜色空间模型
颜色通常用三个相对独立的属性来描述,三个独立变量综合作用,自然就构成一个空间坐标,这就是颜色空间.而颜色可以由不同的角度,用三个一组的不同属性加以描述,就产生了不同的颜色空间.但被描述的颜色对象本 ...
- HSV(HSB)和HSL颜色空间
RGB原理 RGB色彩模式是工业界的一种颜色标准,是通过对红(R).绿(G).蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即代表红.绿.蓝三个通道的颜色,这个标准几乎 ...
- 【C# / Algorithm】RGB、HSV、HSL颜色模型的互相转换
RGB.HSV.HSL颜色模型的含义本文就不赘述了,大家可以直接百度到. 在此提供一个封装好的可以对三种颜色模型进行互相转换的辅助类. 以上是使用该类写出的程序示例. 以下是颜色模型类的描述 #reg ...
- RGB、HSV、HSL和YUV颜色空间
1. RGB 适合于显示系统,却并不适合于图像处理 (1) RGB是什么? RGB 是最常用于显示器的色彩空间,R(red)是红色通道,G(green)是绿色,B(blue)是蓝色通道.这三种颜色以不 ...
- RGB、HSV和HSL颜色空间
目录: RGB 的局限性 HSV 颜色空间 HSL 颜色空间 HSV 应用例子 使用 HSV 图像分割 RGB 的局限性 RGB 是我们接触最多的颜色空间,由三个通道表示一幅图像,分别为红色(R),绿 ...
- RGB、Lab、YUV、HSI、HSV等颜色空间的区别
文章主要来源于百度文库:http://wenku.baidu.com/view/f38c04e69b89680203d82513.html RGB颜色空间 RGB(red,green,blue)颜色空 ...
- matlab中rgb转hsv,matlab实现RGB与HSV(HSB)、HSL和HSI的色彩空间互转
rgb2hsv,hsv2rgb RGB(HSL) 1. RGB→HSL的算法描述 步骤1: 把RGB值转换成[0,1]中数值 例:R=0.83, G=0.07, B=0.07 步骤2: 找出R, G和 ...
最新文章
- 42 Ansible配置
- 为什么python安装不了numpy库_python 安装与numpy matplotlib 等库安装
- 百练1089:数字反转
- 11月碎碎念-谈职场礼貌
- Java EE 6示例– Galleria
- 利用veiw建立Centos5.5 双机智能DNS手册
- 【蜕变之路】第31天 Spring Tool Suite和IntelliJ (2019年3月21日)
- FPGA TestBench 计数
- Designing With Web Standard(一)
- # 创业计划书-样例参考五千套(二)
- Web表单设计:点石成金的艺术(美)罗博乌斯基pdf
- 机器学习入门-用Java实现简单感知机
- 为Springboot工作流版本myabaits的xml 建表
- 最受中国人欢迎的10种日本药
- android 最新 九宫格,Android开发中怎么显示一个九宫格图片
- 武大计算机专业薪酬,2018大学毕业生薪酬排行榜公布:武大输给华科,更意想不到的高校是它...
- java高级后端研发工程师JD,京东资深后端JAVA研发工程师工资待遇怎么样 - JD京东商城 - 职友集...
- Matlab 矩阵的LU分解矩阵(公开代码)
- 供应链管理问题会否导致小米在印度市场受挫?
- 深入探讨——信道利用率[停止-等待协议、回退N帧的ARQ协议]