P(X,Y,Z)が色空間を表現する。
(RGBモデル)
P(X,Y,Z)=P-RGB(r,g,b)として、X=r(0≦r≦1),Y=g(0≦r≦1),Z=b(0≦r≦1)とする。
原点を(0,0,0)、X軸をrベクトル、Y軸をgベクトル、Z軸をbベクトルとする空間ベクトルの和で、色座標を表現できる。
黒、RGB原色、CMY原色、白を頂点とする立方体モデルとなる。
P(X,Y,Z)=P-RGB(r,g,b)=P(r,g,b)となる。
黒=P-RGB(0,0,0)=P(0,0,0)
赤=P-RGB(1,0,0)=P(1,0,0)
緑=P-RGB(0,1,0)=P(0,1,0)
青=P-RGB(0,0,1)=P(0,0,1)
シアン=P-RGB(0,1,1)=P(0,1,1)
マゼンタ=P-RGB(1,0,1)=P(1,0,1)
黄=P-RGB(1,1,0)=P(1,1,0)
白=P-RGB(1,1,1)=P(1,1,1)
(CMYモデル)
P(X,Y,Z)=P-CMY(c,m,y)として、X=1-c(0≦c≦1),Y=1-m(0≦m≦1),Z=1-y(0≦y≦1)とする。
原点を(1,1,1)、X軸はcベクトル(rベクトルの逆ベクトル)、Y軸はmベクトル(gベクトルの逆ベクトル)、Z軸はyベクトル(bベクトルの逆ベクトル)とする空間ベクトルの和で、色座標を表現できる。
黒、RGB原色、CMY原色、白を頂点とする立方体モデルとなる。
P(X,Y,Z)=P-CMY(c,m,y)=P(1-c,1-m,1-y)となる。
黒=P-CMY(1,1,1)=P(0,0,0)
赤=P-CMY(0,1,1)=P(1,0,0)
緑=P-CMY(1,0,1)=P(0,1,0)
青=P-CMY(1,1,0)=P(0,0,1)
シアン=P-CMY(1,0,0)=P(0,1,1)
マゼンタ=P-CMY(0,1,0)=P(1,0,1)
黄=P-CMY(0,0,1)=P(1,1,0)
白=P-CMY(0,0,0)=P(1,1,1)
(色の要素の設定)
①明度
色の座標から、立方体の対角線(白から黒を結ぶ無彩色軸)に垂線を下ろした場合の、無彩色軸上の位置。
1)明度=max(r,g,b)
最大値をとる方法では、白およびRGB原色およびCMY原色で明度最大となり、
黒で明度最低となり、単極性モデルとなる。
明度1となるのは、r,g,bのどれか1つ以上が1の時。
each(r,g,b)=1 ⇔ r=1 or g=1 or b=1
(1,1,1)
(1,1,?),(1,?,1),(1,1,?)
(1,?,?),(?,1,?),(?,?,1)
明度0となるのは、r=g=b=0の時。
(0,0,0)
つまり、(1,1,0),(1,0,1),(1,1,0),(1,0,0),(0,1,0),(0,0,1)の原色は、明度=1になる。
2)明度={max(r,g,b)+min(r,g,b)}/2
最大値と最小値の平均(中間値)をとる方法では、白で明度最大、黒で明度最低となり、
RGB原色およびCMY原色で明度中間となり、双極性モデルとなる。
明度1となるのは、r=g=b=1の時。
(1,1,1)
明度1/2となるのは、r=g=b=1/2の時。
(1/2,1/2,1/2)
明度1/2となるのは、r,g,bのどれか1つ以上が1で、r,g,bのどれか1つ以上が0の時。
each(r,g,b)=1 and each(r,g,b)=0
(1,0,?),(1,?,0),(0,1,?),(?,1,0),(0,?,1),(?,0,1)
明度0となるのは、r=g=b=0の時。
(0,0,0)
つまり、(1,0,0),(0,1,0),(0,0,1),(0,11),(1,0,1),(1,1,0)の原色は、明度=1/2になる。
3)明度=(r+g+b)/3
全ての平均(平均値)をとる方法では、白で明度最大、黒で明度最低となり、
RGB原色およびCMY原色で明度中間とならず、立方体の対角線モデルとなる。
RGB原色は明度1/3、CMY原色は明度2/3となる。
明度1となるのは、r=g=b=1の時。
(1,1,1)
明度1/2となるのは、r=g=b=1/2の時。
(1/2,1/2,1/2)
明度1/2となるのは、r+g+b=3/2より、r,g,bのどれか1つが1であれば、残りの和は1/2になる。
each(r,g,b)=1であれば、each(r,g,b)=1/2 and each(r,g,b)=0でも良い。
(1,1/2,0),(1,0,1/2),(1/2,1,0),(0,1,1/2),(1/2,0,1),(0,1/2,1)
each(r,g,b)=1であれば、others(r,g,b)=1/4でも良い。
(1,1/4,1/4),(1/4,1,1/4),(1/4,1/4,1)
明度0となるのは、r=g=b=0の時。
(0,0,0)
なお、(1,0,0),(0,1,0),(0,0,1)のRGB原色は、明度=1/3になる。
明度1/3となるのは、r=g=b=1/3の時。
(1/3,1/3,1/3)
明度1/3となるのは、r+g+b=1より、r,g,bのどれか1つが1/2であれば、残りの和は1/2になる。
each(r,g,b)=1/2であれば、others(r,g,b)=1/4でも良い。
(1/2,1/4,1/4),(1/4,1/2,1/4),(1/4,1/4,1/2)
さらに、(0,11),(1,0,1),(1,1,0)のCMY原色は、明度=2/3になる。
明度2/3となるのは、r=g=b=2/3の時。
(2/3,2/3,2/3)
明度2/3となるのは、r+g+b=2より、r,g,bのどれか1つが1であれば、残りの和は1になる。
each(r,g,b)=1であれば、others(r,g,b)=1/2でも良い。
(1,1/2,1/2),(1/2,1,1/2),(1/2,1/2,1)
②彩度
色の座標から、立方体の対角線(白から黒を結ぶ無彩色軸)に垂線を下ろした場合の、無彩色軸からの位置。
無彩色では彩度0となるため、r=g=bでは彩度0である。
純色では彩度が最大となる。
1)彩度=max(r,g,b)-min(r,g,b)
円錐(もしくは双円錐)モデルとなる。
彩度0は、max(r,g,b)=min(r,g,b)の時。
max(r,g,b)=0であれば、r=g=b=0であり、min(r,g,b)=0であり、彩度=0となる。
(k,k,k)
彩度が最大になるには、max(r,g,b)=1 and min(r,g,b)=0の時。
(1,0,?),(1,?,0),(0,1,?),(?,1,0),(0,?,1),(?,0,1)
これは、明度={max(r,g,b)+min(r,g,b)}/2=1/2の場合に一致する。
つまり、(1,0,0),(0,1,0),(0,0,1),(0,11),(1,0,1),(1,1,0)の原色は、彩度=1になる。
2-1)彩度={max(r,g,b)-min(r,g,b)}/max(r,g,b)=1-min(r,g,b)/max(r,g,b)
円柱モデルとなる。
彩度0は、max(r,g,b)=min(r,g,b)の時。
max(r,g,b)=0であれば、分母が0で定義できないが、r=g=b=0であり、彩度=0である。
(k,k,k)
彩度が最大になるには、min(r,g,b)=0の時であり、r,g,bのどれか1つ以上が0である。
each(r,g,b)=0 ⇔ r=0 or g=0 or b=0
(0,?,?),(?,0,?),(?,?,0)
これは、明度=max(r,g,b)/2 または 明度={other(r,g,b)+another(r,g,b)}/3の場合に一致する。
つまり、(1,0,0),(0,1,0),(0,0,1),(0,11),(1,0,1),(1,1,0)の原色は、彩度=1になる。
2-2)彩度={max(r,g,b)-min(r,g,b)}/ {1-|max(r,g,b)+min(r,g,b)-1|}
円柱モデルとなる。
彩度0は、max(r,g,b)=min(r,g,b)の時。
1-|max(r,g,b)+min(r,g,b)-1|=0、つまり、max(r,g,b)+min(r,g,b)=0 or 2であれば、
分母が0で定義できないが、r=g=b=0であり、彩度=0である。
③色相
色の座標から、立方体の対角線(白から黒を結ぶ無彩色軸)に垂線を下ろした場合の、無彩色軸を中心とした角度。
無彩色軸に対して垂直な平面において、無彩色軸を中心として、赤を0度、緑を120度、青を240度とする。
黒=色相なし
赤=0度
緑=120度
青=240度
シアン=180度
マゼンタ=300度
黄=60度
白=色相なし
1)色相環が六角形
r=max(r,g,b)
色相=60×(g-b)/{max(r,g,b)-min(r,g,b)}=60×(g-b)/r-min(r,g,b)}
g=max(r,g,b)
色相=60×(b-r)/{max(r,g,b)-min(r,g,b)}+120=60×(b-r)/g-min(r,g,b)}+120
b=max(r,g,b)
色相=60×(r-g)/{max(r,g,b)-min(r,g,b)}+240=60×(r-g)/b-min(r,g,b)}+240
2)色相環が円形
R軸基準のG軸周りの角度
色相=arctan [ {√3(g-b)} / {2r-(g+b)} ]
注意点
・無彩色では、軸上のため、角度を定義できない
・無彩色に近い色(彩度の低い色)は、R,G,Bが近接しており、わずかな数値の違いで色相が大きく変化する
・角度は周回するため、359度と0度は数値が離れていても、色相は近く、閾値処理に注意が必要
・角度は周回するため、色相をシフトする際は、360度で0度と一致し、境界線をまたぐ計算に注意が必要
x=S×cos H={2r-(g+b)} /2
y=S×sin H={√3(g-b)} /2
H=arctan (y/x)=arctan [ {√3(g-b)} / {2r-(g+b)} ]
S=√(x^2+y^2)
L
r=L+2x/3=L+2(S×cos H)/3
g=L-x/3+y/√3=L-(S×cos H)/3+(S×sin H)/√3
b=L-x/3-y/√3=L-(S×cos H)/3-(S×sin H)/√3
立方体モデル:x,y → r,g,b:(x,y)の色に使用
円モデル:x,y → H,S,L → r,g,b:(x,y)の色に使用
六角形モデル:x,y → H,S,L → r,g,b → x',y':(x',y')の色に使用
HSV(HSB)
明度=max(r,g,b)
彩度=max(r,g,b)-min(r,g,b)
HSL(HLS)
明度={max(r,g,b)+min(r,g,b)}/2
彩度=max(r,g,b)-min(r,g,b)
HSV(HSB)
明度=max(r,g,b)
彩度=max(r,g,b)-min(r,g,b)
HSL(HLS)
明度={max(r,g,b)+min(r,g,b)}/2
彩度=max(r,g,b)-min(r,g,b)
HSV(HSB)
明度=max(r,g,b)
彩度={max(r,g,b)-min(r,g,b)}/max(r,g,b)
HSL(HLS)
明度={max(r,g,b)+min(r,g,b)}/2
彩度={max(r,g,b)-min(r,g,b)}/ {1-|max(r,g,b)+min(r,g,b)-1|}
HSV(HSB)
明度=max(r,g,b)
彩度={max(r,g,b)-min(r,g,b)}/max(r,g,b)
HSL(HLS)
明度={max(r,g,b)+min(r,g,b)}/2
彩度={max(r,g,b)-min(r,g,b)}/ {1-|max(r,g,b)+min(r,g,b)-1|}
最終更新:2017年01月05日 19:14