欢迎来到天天文库
浏览记录
ID:49767771
大小:15.83 KB
页数:2页
时间:2020-03-04
《HSV颜色空间.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、HSV颜色模型 这个模型中颜色的参数分别是:色彩(H),纯度(S),明度(V)。 HSV模型的三维表示从RGB立方体演化而来。设想从RGB沿立方体对角线的白色顶点向黑色顶点观察,就可以看到立方体的六边形外形。六边形边界表示色彩,水平轴表示纯度,明度沿垂直轴测量。 HSV六棱锥 H参数表示色彩信息,即所处的光谱颜色的位置。该参数用一角度量来表示,红、绿、蓝分别相隔120度。互补色分别相差180度。 纯度S为一比例值,范围从0到1,它表示成所选颜色的纯度和该颜色最大的纯度之间的比率。S=0时,只有灰度。
2、V表示色彩的明亮程度,范围从0到1。有一点要注意:它和光强度之间并没有直接的联系。 RGB转化到HSV的算法 max=max(R,G,B) min=min(R,G,B) ifR=max,H=(G-B)/(max-min) ifG=max,H=2+(B-R)/(max-min) ifB=max,H=4+(R-G)/(max-min) H=H*60 ifH<0,H=H+360 V=max(R,G,B) S=(max-min)/max HSV转化到RGB的算法 ifs=0 R=G=B=V e
3、lse H/=60; i=INTEGER(H) f=H-i a=V*(1-s) b=V*(1-s*f) c=V*(1-s*(1-f)) switch(i) case0:R=V;G=c;B=a; case1:R=b;G=v;B=a; case2:R=a;G=v;B=c; case3:R=a;G=b;B=v; case4:R=c;G=a;B=v; case5:R=v;G=a;B=b; HSV对用户来说是一种直观的颜色模型。我们可以从一种纯色彩开始,即指定色彩角H,并让V=S=1,然后我们可
4、以通过向其中加入黑色和白色来得到我们需要的颜色。增加黑色可以减小V而S不变,同样增加白色可以减小S而V不变。例如,要得到深蓝色,V=0.4S=1H=240度。要得到淡蓝色,V=1S=0.4H=240度。 一般说来,人眼最大能区分128种不同的色彩,130种色饱和度,23种明暗度。如果我们用16Bit表示HSV的话,可以用7位存放H,4位存放S,5位存放V,即745或者655就可以满足我们的需要了。 由于HSV是一种比较直观的颜色模型,所以在许多图像编辑工具中应用比较广泛,如Photoshop(在Photosh
5、op中叫HSB)等等,但这也决定了它不适合使用在光照模型中,许多光线混合运算、光强运算等都无法直接使用HSV来实现。 顺便提一下,另外一种直观颜色模型是HSL模型,该模型中前两个参数和HSV一样,而L表示亮度。它的三维表示为一双棱锥。因为用的不多,这里就不详细讲了。
此文档下载收益归作者所有