openCV與HSV顏色空間結合

 

1.openCV中經常將RGB圖像轉換成HSV圖像然後進行顏色的辨別和處理

我們能夠查到一般HSV的範圍是
H: [0,360]
S: [0,100]
V: [0,100]

但是在openCV中,HSV的範圍卻是
H: [0,180]
S: [0,255]
V: [0,255]

那是因爲openCV做了如下的變換

h= H/2;  
s = (float)S/100*255;  
v = (float)v/100*255;

所以在openCV中

一般顏色的HSV分佈如下:

image.png

如果要對應正常的HSV,那麼
h要 x2
s要 /2.55
v要 /2.55

===========================

 

2.互相轉換:

1、RGB轉化到HSV的算法:

max=max(R,G,B)

min=min(R,G,B)

V=max(R,G,B)

S=(max-min)/max

ifR = max,H =(G-B)/(max-min)* 60

ifG = max,H = 120+(B-R)/(max-min)* 60

ifB = max,H = 240 +(R-G)/(max-min)* 60

ifH < 0,H = H+ 360

 

2、HSV轉化到RGB的算法:

if s = 0

R=G=B=V

else

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)

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;

3.轉換工具

https://c.runoob.com/front-end/868

4.顏色對照表一級顏色的英文名稱

https://tool.oschina.net/commons?type=3

顏色中文分類以及顏色範圍

https://www.baishitou.cn/webcolor/colorlist.html

5.顏色調節工具

https://en.m.fontke.com/tool/rgb/800080/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章