颜色空间:RGB,CMY,HSV,HSL,Lab详解(转载)
颜色空间(彩色模型、色彩空间、 彩色系统etc)是对色彩的一种描述方式,定义有很多种,区别在于面向不同的应用背景。
例如显示器中采用的RGB颜色空间是基于物体发光定义的(RGB正好对应光的三原色:Red,Green,Blue);工业印刷中常用的CMY颜色空间是基于光反射定义的(CMY对应了绘画中的三原色:Cyan,Magenta,Yellow);HSV、HSL两个颜色空间都是从人视觉的直观反映而提出来的(H是色调,S是饱和度,I是强度)。
RGB颜色空间 基于颜色的加法混色原理,从黑色不断叠加Red,Green,Blue的颜色,最终可以得到白色光。
如图1:
、
图1:加法混色
将R、G、B三个通道作为笛卡尔坐标系中的X、Y、Z轴,就得到了一种对于颜色的空间描述,如图2。
图2:RGB颜色空间
在计算机中编程RGB每一个分量值都用8位(bit)表示,可以产生256*256*256=16777216中颜色,这就是经常所说的“24位真彩色”。
相比于RGB,CMY(CMYK)颜色空间是另一种基于颜色减法混色原理的颜色模型。在工业印刷中它描述的是需要在白色介质上使用何种油墨,通过光的反射显示出颜色的模型。CMYK描述的是青,品红,黄和黑四种油墨的数值。如图3:
图3:减法混色
CMYK颜色空间的颜色值与RGB颜色空间中的取值可以通过线性变换相互转换。
HSV颜色空间是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。RGB和CMY颜色模型都是面向硬件的,而HSV(Hue Saturation Value)颜色模型是面向用户的。
这个模型中颜色的参数分别是:色调(H:hue),饱和度(S:saturation),亮度(V:value)。这是根据人观察色彩的生理特征而提出的颜色模型(人的视觉系统对亮度的敏感度要强于色彩值,这也是为什么计算机视觉中通常使用灰度即亮度图像来处理的原因之一)。
色调H:用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;
饱和度S:取值范围为0.0~1.0;
亮度V:取值范围为0.0(黑色)~1.0(白色)。如图4、5:
图4:HSV坐标系
HSV模型的三维表示从RGB立方体演化而来。设想从RGB沿立方体对角线的白色顶点向黑色顶点观察,就可以看到立方体的六边形外形。六边形边界表示色彩,水平轴表示纯度,明度沿垂直轴测量。与加法减法混色的术语相比,使用色相,饱和度等概念描述色彩更自然直观。
HSL颜色空间与HSV类似,只不过把V:Value替换为了L:Lightness。这两种表示在用目的上类似,但在方法上有区别。二者在数学上都是圆柱,但HSV(色相,饱和度,色调)在概念上可以被认为是颜色的倒圆锥体(黑点在下顶点,白色在上底面圆心),HSL在概念上表示了一个双圆锥体和圆球体(白色在上顶点,黑色在下顶点,最大横切面的圆心是半程灰色)。注意尽管在HSL和HSV中“色相”指称相同的性质,它们的“饱和度”的定义是明显不同的。对于一些人,HSL更好的反映了“饱和度”和“亮度”作为两个独立参数的直觉观念,但是对于另一些人,它的饱和度定义是错误的,因为非常柔和的几乎白色的颜色在HSL可以被定义为是完全饱和的。对于HSV还是HSL更适合于人类用户界面是有争议的。
Lab颜色空间是由CIE(国际照明委员会)制定的一种色彩模式。自然界中任何一点色都可以在Lab空间中表达出来,它的色彩空间比RGB空间还要大。另外,这种模式是以数字化方式来描述人的视觉感应, 与设备无关,所以它弥补了RGB和CMYK模式必须依赖于设备色彩特性的不足。 由于Lab的色彩空间要 比RGB模式和CMYK模式的色彩空间大。这就意味着RGB以及CMYK所能描述的色彩信息在Lab空间中都能得以影射。Lab颜色空间取坐标Lab,其中L亮度;a的正数代表红色,负端代表绿色;b的正数代表黄色,负端代表兰色。不像RGB和CMYK色彩空间,Lab颜色被设计来接近人类视觉。它致力于感知均匀性,它的L分量密切匹配人类亮度感知。因此可以被用来通过修改a和b分量的输出色阶来做精确的颜色平衡,或使用L分量来调整亮度对比。
颜色空间:RGB,CMY,HSV,HSL,Lab详解(转载)相关推荐
- 由RGB到HSV的转换详解
由RGB到HSV的转换详解 1RGB色彩空间 在图像处理中,最常见的就是RGB色彩模型.在RGB模型中,每种颜色出现在红.绿.蓝的原色光谱分量中.该模型基于笛卡尔坐标系.如图1所示,RGB原色值位于3 ...
- 颜色空间RGB与HSV HSL 的转换
一般的3D编程只需要使用RGB颜色空间就好了,但其实美术人员更多的是使用HSV(HSL),因为可以方便的调整饱和度和亮度. 有时候美术需要程序帮助调整饱和度来达到特定风格的渲染效果,这时候就需要转换颜 ...
- 【颜色空间】RGB、HSV、Lab、YUV颜色空间模型
颜色通常用三个相对独立的属性来描述,三个独立变量综合作用,自然就构成一个空间坐标,这就是颜色空间.而颜色可以由不同的角度,用三个一组的不同属性加以描述,就产生了不同的颜色空间.但被描述的颜色对象本 ...
- python中颜色空间直方图_OpenCV—python 颜色空间(RGB,HSV,Lab)与 颜色直方图
一.图像分类的过程 image.png 图片必须经过标注 图片的类别为有限的集合,如{猫.狗.牛.马.狼} 每个类别的图片数量接近,如果不同类别图片的数量差异很大,训练出来的分类器容易倾向于图片数量多 ...
- OpenCV—python 颜色空间(RGB,HSV,Lab)与 颜色直方图
文章目录 一.图像分类的过程 二.开发环境:(安装)OpenCV 计算机视觉库 三.颜色空间(颜色模型:RGB,HSV,Lab) 3.1 opencv--HSV颜色空间 四.OpenCV处理图片 4. ...
- 机器学习图像特征提取—颜色(RGB、HSV、Lab)特征提取并绘制直方图
目录 1 颜色特征 1.1 RGB色彩空间 1.2 HSV色彩空间 1.3 Lab色彩空间 2 使用opencv-python对图像颜色特征提取并绘制直方图 2.1 RGB颜色特征和直方图 2.2 H ...
- 2021-01-07 Python Opencv转换颜色空间 RGB转为HSV
Python Opencv转换颜色空间 RGB转为HSV 举个例子,通过摄像头把视频中的蓝色区域凸显出来,剩余的颜色均为黑色 import numpy as npcap = cv2.VideoCapt ...
- 【转载】NeurIPS 2018 | 腾讯AI Lab详解3大热点:模型压缩、机器学习及最优化算法...
原文:NeurIPS 2018 | 腾讯AI Lab详解3大热点:模型压缩.机器学习及最优化算法 导读 AI领域顶会NeurIPS正在加拿大蒙特利尔举办.本文针对实验室关注的几个研究热点,模型压缩.自 ...
- spring依赖注入原理详解(转载)
spring依赖注入原理详解----转载 所谓依赖注入就是指:在运行期,由外部容器动态地将依赖对象注入到组件中.当spring容器启动后,spring容器初始化,创建并管理bean对象,以及销毁它.所 ...
- 深入理解计算机系统(CSAPP)含lab详解 完结
文章目录 深入理解计算机操作系统-第一章 1.1 信息就是位 + 上下文 1.2 程序被其他程序翻译成不同的格式 1.3 了解编译系统如何工作是大有益处的 1.4 处理器读并解释储存在内存中的指令 1 ...
最新文章
- Python Excel 操作 | xlrd+xlwt 模块笔记
- oracle rman异地备份,Rman 异地备份 - markGao的个人空间 - OSCHINA - 中文开源技术交流社区...
- 避免需求分析与定义误区的7个招式:作为产品新人,我所遇到的坑(续)
- 关于cocostudio动态添加控件触摸响应无效的学习
- 编程语言之父谈语言设计,龟叔大赞TypeScript
- html生成1-32位随机数,如何生成一个32位的随机数 | 求索阁
- OpenCV学习笔记(五):线性滤波-方框、均值、高斯:boxFilter(),blur(),GaussianBlur()
- mouseup 左键_javascript中mouseup事件丢失的原因与解决办法
- java类成员和实例成员,Java 实例成员和类成员
- 本周四直播预告(内含福利)丨 经典知识库:MGR原理介绍与案例分享
- SQL基础之 基本属性和运算 (一)
- 解析xml文件的几种技术
- 独立的定义有多重等价表述方式
- mac下 eclipse支持magic mouse/Trackpad 操作
- Android混淆篇 ijkplayer混淆
- html的日期插件标签,CaretTab - 新式可以显示时间和日期的标签
- 小白怎么入行网络安全?看这一篇就够啦!
- GCDLCM 【米勒_拉宾素数检验 (判断大素数)】
- centos安装oracle报错,CentOS安装oracle和rsh服务报错处理
- 解决 shiro 多次调用 redis 的问题