RGB至其它顏色空間轉換公式

RGB不同彩色空間的轉換公式

 

彩圖與灰度圖的相互轉換 RGB <-> GRAY:
RGB[A]->Gray: Y=0.212671*R + 0.715160*G + 0.072169*B
Gray->RGB[A]: R=Y G=Y B=Y A=0

其它的所有可能的圖像色彩空間的相互變換公式列舉如下:

 

RGB<=>XYZ :
|X|   |0.412411  0.357585  0.180454| |R|
|Y| = |0.212649  0.715169  0.072182|*|G|
|Z|   |0.019332  0.119195  0.950390| |B|

|R|   | 3.240479  -1.53715  -0.498535| |X|
|G| = |-0.969256   1.875991  0.041556|*|Y|
|B|   | 0.055648  -0.204043  1.057311| |Z|
RGB<=>YCrCb 
Y=0.299*R + 0.587*G + 0.114*B
Cr=(R-Y)*0.713 + 128
Cb=(B-Y)*0.564 + 128

R=Y + 1.403*(Cr - 128)
G=Y - 0.344*(Cr - 128) - 0.714*(Cb - 128)
B=Y + 1.773*(Cb - 128)

 

RGB=>HSV 
V=max(R,G,B)
S=(V-min(R,G,B))*255/V   if V!=0, 0 otherwise

       (G - B)*60/S,  if V=R
H= 180+(B - R)*60/S,  if V=G
   240+(R - G)*60/S,  if V=B

若 H<0,則 H=H+360

使用上面從 0° 到 360° 變化的公式計算色調( hue)值,確保它們被 2 除後能試用於8位。

 

RGB=>Lab
|X|   |0.433910  0.376220  0.189860| |R/255|
|Y| = |0.212649  0.715169  0.072182|*|G/255|
|Z|   |0.017756  0.109478  0.872915| |B/255|

L = 116*Y1/3      for Y>0.008856
L = 903.3*Y      for Y<=0.008856

a = 500*(f(X)-f(Y))
b = 200*(f(Y)-f(Z))
其中  f(t)=t1/3              for t>0.008856
      f(t)=7.787*t+16/116    for t<=0.008856
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章