HSV颜色模型

HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。、这个模型中颜色的参数分别是:色调(H),饱和度(S),亮度(V)。

色调H:用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°;

饱和度S:取值范围为0.0~1.0;

亮度V:取值范围为0.0(黑色)~1.0(白色)。

RGB和CMY颜色模型都是面向硬件的,而HSV(Hue Saturation Value)颜色模型是面向用户的。

HSV模型的三维表示从RGB立方体演化而来。设想从RGB沿立方体对角线的白色顶点向黑色顶点观察,就可以看到立方体的六边形外形。六边形边界表示色彩,水平轴表示纯度,明度沿垂直轴测量。

HSV颜色分量范围

一般对颜色空间的图像进行有效处理都是在HSV空间进行的,然后对于基本色中对应的HSV分量需要给定一个严格的范围,下面是通过实验计算的模糊范围(准确的范围在网上都没有给出)。

H:  0— 180

S:  0— 255

V:  0— 255

此处把部分红色归为紫色范围:

HSV六棱锥

H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别纯度S为一比例值,范围从0到1,它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S=0时,只有灰度。相隔120度。互补色分别相差180度。

V表示色彩的明亮程度,范围从0到1。有一点要注意:它和光强度之间并没有直接的联系。

1、RGB转化到HSV的算法:

max=max(R,G,B)min=min(R,G,B)V=max(R,G,B)S=(max-min)/maxifR = max,H =(G-B)/(max-min)* 60ifG = max,H = 120+(B-R)/(max-min)* 60ifB = max,H = 240 +(R-G)/(max-min)* 60ifH < 0,H = H+ 360

2、HSV转化到RGB的算法:

if s = 0R=G=B=VelseH /= 60;i = INTEGER(H)f = H - ia = V * ( 1 - s )b = V * ( 1 - s * f )c = V * ( 1 - s * (1 - f ) )switch(i)case 0: R = V; G = c; B = a;case 1: R = b; G = v; B = a;case 2: R = a; G = v; B = c;case 3: R = a; G = b; B = v;case 4: R = c; G = a; B = v;case 5: R = v; G = a; B = b;

  HSV对用户来说是一种直观的颜色模型。我们可以从一种纯色彩开始,即指定色彩角H,并让V=S=1,然后我们可以通过向其中加入黑色和白色来得到我们需要的颜色。增加黑色可以减小V而S不变,同样增加白色可以减小S而V不变。例如,要得到深蓝色,V=0.4 S=1 H=240度。要得到淡蓝色,V=1 S=0.4 H=240度。

  一般说来,人眼最大能区分128种不同的色彩,130种色饱和度,23种明暗度。如果我们用16Bit表示HSV的话,可以用7位存放H,4位存放S,5位存放V,即745或者655就可以满足我们的需要了。

  由于HSV是一种比较直观的颜色模型,所以在许多图像编辑工具中应用比较广泛,如Photoshop(在Photoshop中叫HSB)等等,但这也决定了它不适合使用在光照模型中,许多光线混合运算、光强运算等都无法直接使用HSV来实现。

OpenCV中HSV颜色模型及颜色分量范围相关推荐

  1. easyX库颜色模型和颜色及样式设置相关函数(注释版)

    0.颜色模型和颜色及样式设置相关函数概览 本次我给您带了easyX库系列的颜色模型和样式设置的相关函数,希望您能看得开心. 函数或数据类型 描述 LINESTYLE 画线样式对象. FILLSTYLE ...

  2. OpenCV中HSV与PS中HSB对应关系

    OpenCV中HSV范围: H:  0- 180 S:  0- 255 V:  0- 255 PS中: HSB又称HSV,表示一种颜色bai模式:在HSB模式中,H(hues)表示zhi色相,S(sa ...

  3. HSV颜色模型及颜色分量范围

    转载于:https://www.cnblogs.com/wangyblzu/p/5710715.html (如侵权请联系删除) HSV颜色模型 HSV(Hue, Saturation, Value)是 ...

  4. opencv 中HSV的颜色值对照表

    [opencv]HSV颜色值对照表 今天踩了深坑. opencv中的hsv值域是[ 0 , 255 ] 注意:每个程序定义的HSV中h,s,v 三个值的值域可能不相同. 此处仅代表opencv的.

  5. OpenCV: BGR、HSV、HLS、颜色空间、颜色模型、颜色识别、颜色对应数值查询

    一.BGR 二.HSV 三.HLS

  6. C4D卡死和运行中一点击模型填充颜色就卡退出

    之前用过C4D做一些模型,不太清楚一些其他卡住的原因,自己当初只遇到了用一会就卡退出来崩溃的原因. 这个原因在这里贴出,估计出现这个原因的人很多都放弃C4D了,现在就写一下. 这个错误是我把错误发给C ...

  7. 颜色模型和颜色应用---颜色选择及其应用

    2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2877020

  8. 颜色模型和颜色应用---小结

    为什么80%的码农都做不了架构师?>>>    转载于:https://my.oschina.net/liyangke/blog/2877023

  9. 颜色模型与颜色应用---RGB颜色模型

    2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2876997

最新文章

  1. 2. Add Two Numbers
  2. Bifrost微前端框架及其在美团闪购中的实践
  3. 2019北京理工大学计算机专硕经验分享
  4. CentOS 7 安装 Python 3.6
  5. CSS实现水平垂直居中的方法总结
  6. 用原生js做单页应用
  7. c语言双人贪吃蛇小游戏代码,关于C 双人贪吃蛇显示的问题
  8. matlab数组从小到大排序,matlab数组排序
  9. 龙芯2f灵珑一体机debian6系统重装
  10. 微信小程序云开发--云存储的使用(一)
  11. Blend 混合模式
  12. 计算机底层架构(偏硬件)综述
  13. 适合生产制造企业用的ERP系统有哪些?
  14. 用户画像 用户画像表
  15. 关于C++ STL中的upper_bound()
  16. 【技术分享】如何通过PPPOE拨号上网
  17. jzoj 4805. 【NOIP2016提高A组模拟9.28】跟踪 {树+dfs}
  18. vb中自动调整控件的大小
  19. 初识C++案例三只小猪猪称体重
  20. devops实践-开篇感想

热门文章

  1. android手机耗电量测试
  2. c修改linux 用户密码,Linux修改用户密码实用案例
  3. 椭圆、双曲线、抛物线
  4. Python爬虫入门推荐案例:学会爬虫_表情包手到擒来~
  5. 职场如戏,全靠表情!我们天搜科技人人都是行走的表情包
  6. 苹果6s如何设置QQ邮箱收发服务器,iphone6s自带邮箱设置 iphone6s自带邮箱收发邮件设置教程...
  7. 简约灰色调毕业论文开题报告PPT模板
  8. 如何将多个视频合并并添加转场特效?怎么制作视频转场效果
  9. 工业乙醇的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  10. “联邦对抗技术大赛”9月开战 微众银行呼唤开发者共同“AI创新”