OpenCV中HSV颜色模型及颜色分量范围
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颜色模型及颜色分量范围相关推荐
- easyX库颜色模型和颜色及样式设置相关函数(注释版)
0.颜色模型和颜色及样式设置相关函数概览 本次我给您带了easyX库系列的颜色模型和样式设置的相关函数,希望您能看得开心. 函数或数据类型 描述 LINESTYLE 画线样式对象. FILLSTYLE ...
- 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 ...
- HSV颜色模型及颜色分量范围
转载于:https://www.cnblogs.com/wangyblzu/p/5710715.html (如侵权请联系删除) HSV颜色模型 HSV(Hue, Saturation, Value)是 ...
- opencv 中HSV的颜色值对照表
[opencv]HSV颜色值对照表 今天踩了深坑. opencv中的hsv值域是[ 0 , 255 ] 注意:每个程序定义的HSV中h,s,v 三个值的值域可能不相同. 此处仅代表opencv的.
- OpenCV: BGR、HSV、HLS、颜色空间、颜色模型、颜色识别、颜色对应数值查询
一.BGR 二.HSV 三.HLS
- C4D卡死和运行中一点击模型填充颜色就卡退出
之前用过C4D做一些模型,不太清楚一些其他卡住的原因,自己当初只遇到了用一会就卡退出来崩溃的原因. 这个原因在这里贴出,估计出现这个原因的人很多都放弃C4D了,现在就写一下. 这个错误是我把错误发给C ...
- 颜色模型和颜色应用---颜色选择及其应用
2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2877020
- 颜色模型和颜色应用---小结
为什么80%的码农都做不了架构师?>>> 转载于:https://my.oschina.net/liyangke/blog/2877023
- 颜色模型与颜色应用---RGB颜色模型
2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/liyangke/blog/2876997
最新文章
- 2. Add Two Numbers
- Bifrost微前端框架及其在美团闪购中的实践
- 2019北京理工大学计算机专硕经验分享
- CentOS 7 安装 Python 3.6
- CSS实现水平垂直居中的方法总结
- 用原生js做单页应用
- c语言双人贪吃蛇小游戏代码,关于C 双人贪吃蛇显示的问题
- matlab数组从小到大排序,matlab数组排序
- 龙芯2f灵珑一体机debian6系统重装
- 微信小程序云开发--云存储的使用(一)
- Blend 混合模式
- 计算机底层架构(偏硬件)综述
- 适合生产制造企业用的ERP系统有哪些?
- 用户画像 用户画像表
- 关于C++ STL中的upper_bound()
- 【技术分享】如何通过PPPOE拨号上网
- jzoj 4805. 【NOIP2016提高A组模拟9.28】跟踪 {树+dfs}
- vb中自动调整控件的大小
- 初识C++案例三只小猪猪称体重
- devops实践-开篇感想
热门文章
- android手机耗电量测试
- c修改linux 用户密码,Linux修改用户密码实用案例
- 椭圆、双曲线、抛物线
- Python爬虫入门推荐案例:学会爬虫_表情包手到擒来~
- 职场如戏,全靠表情!我们天搜科技人人都是行走的表情包
- 苹果6s如何设置QQ邮箱收发服务器,iphone6s自带邮箱设置 iphone6s自带邮箱收发邮件设置教程...
- 简约灰色调毕业论文开题报告PPT模板
- 如何将多个视频合并并添加转场特效?怎么制作视频转场效果
- 工业乙醇的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- “联邦对抗技术大赛”9月开战 微众银行呼唤开发者共同“AI创新”