色差
色彩科学において、色差(しきさ)あるいは 色の距離 (いろのきょり)は、2つの色の間に定義される指標の一つである。色差が大きいほど区別しやすく、色差が小さいほど区別しにくくなる。 従来は官能評価することしかできなかった「色の差」の概念が、色差を用いることにより定量的に検討できるようになった。重要な色の判定等において、これら特性の定量化は極めて重要である。通常はデバイス非依存の色空間におけるユークリッド距離で定義される。
ほとんどの色差の定義は色空間における距離であり、距離の決定方法はユークリッド距離である。ある色空間がRGB (Red, Green, Blue) の組み合わせから構成され、そこで色差を計算する場合、R, G, Bからなる線形3次元空間で構成される色空間で計算する。
\mathrm{distance} = \sqrt{ (R_2-R_1)^2+(G_2-G_1)^2 + (B_2-B_1)^2 }
単純化のため、しばしば平方根を取り除いて計算が行われる:
\mathrm{distance}^2 = { (R_2-R_1)^2+(G_2-G_1)^2 + (B_2-B_1)^2 }
この式は、単一の色と色同士を比較し、近いかどうかを判断する目的で利用できる。しかし自乗された色差を加算していく場合、色差の分散値となってしまう。
RGB値をヒトの視覚に一致させる試みは、これまで数多く行われてきて、各成分は等しく重み付けされた(red 30%, green 59%, blue 11%)ものが考案された。しかしながら, これらの試みでは色の決定において良い結果は得られず、明るさの影響を受け、ヒトの視覚がこれらの色に対して少ない許容値を持つことがわかった。より近い近似式は係数2, 4, および 3を用いて: \sqrt{ 2 \times \Delta R^2 + 4 \times \Delta G^2 + 3 \times \Delta B^2 }  より簡単な近似式は、
\bar r =  C_{1,R}  - C_{2,R}
\Delta G = C_{1,G}  - C_{2,G}
\Delta B = C_{1,B}  - C_{2,B}
\Delta C = \sqrt {\left( {2 + \bar r} \over {256} \right) \times \Delta R^2  + 4 \times \Delta G^2  + \left( {2 + 255 - \bar r} \over {256} \right) \times \Delta B^2 }
他にもいくつかの色差に関する数式があり、例えばHSVのように色相を円状にしたり、円筒座標や三角錐座標に色を配置したりしている。しかしながらそれらはRGBの派生であり、単純なユークリッド距離に近い傾向を表すヒトの視覚特性を考慮していない。
国際照明委員会 (CIE) は、色差をΔE*ab (または ΔE*, dE*, dE, あるいは "delta E") と定義している。デルタはギリシャ文字で距離を表すことが多く、Eはドイツ語のEmpfindung (感覚)を意味する。ヘルマン・フォン・ヘルムホルツとエヴァルト・ヘリングの業績に因んで名付けられた。
様々な研究成果に基いて、複数の丁度可知差異と呼ばれるΔEの値が提案されている。この丁度可知差異の値は、経験論に基づかずに"1.0"という値が広く知られているが、近年の研究では、Mahy et al. (1994) の研究によると2.3 ΔEが丁度可知差異として確認されている。しかし、元となるCIE Lab色空間における知覚的非均一性があるため、より優れたCIE 1994および2000の計算式がCIEにより定義された。 これらの知覚的非均一性を考慮することは、ヒトの目が違う色同士よりも同じ色同士に対してより敏感に色覚することからも、重要である。丁度可知差異の概念が意味を成すためにも、この非均一性を考慮にいれるべきである。さもないと、ある2つの色の間で、目には知覚不可能でもスペクトル上は明確な差異がある場合においてΔEの値が意味を成さなくなってしまう。
CIE 1976色差計算式は、初めて定義された色差式であり、CIELAB座標におけるユークリッド距離として計算される。CIELAB色空間は設計当初の意図よりも、特に彩度の大きい領域で知覚的に非均一であることが明らかになってきたため、この計算式はCIE 1994 および 2000の計算式に置き換えられている。 すなわち、彩度が大きい領域では、色差が大きすぎるように計算されてしまう。
L*a*b*色空間において、2つの色 ({L^*_1},{a^*_1},{b^*_1}) および ({L^*_2},{a^*_2},{b^*_2})を用いて:
\Delta E_{ab}^* = \sqrt{ (L^*_2-L^*_1)^2+(a^*_2-a^*_1)^2 + (b^*_2-b^*_1)^2 }
\Delta E_{ab}^* \approx 2.3 が丁度可知差異に相当する。
CIE 1976計算式は、L*a*b*色空間はそのまま使用し、知覚的非均一性に対応するよう拡張されている。自動車用塗料の許容値から派生された、特定用途の重み付け係数を導入している。
ΔE (1994)は、L*a*b*色空間から計算される、L*C*h*色空間における明度、彩度、色相の差異から算出される。 基準色 を(L^*_1,a^*_1,b^*_1)、比較色を (L^*_2,a^*_2,b^*_2)とすると、色差は:
\Delta E_{94}^* = \sqrt{ \left(\frac{\Delta L^*}{k_L S_L}\right)^2 + \left(\frac{\Delta C^*_{ab{k_C S_C}\right)^2 + \left(\frac{\Delta H^*_{ab}{k_H S_H}\right)^2 }
ここで:
\Delta L^* = L^*_1 - L^*_2
C^*_1 = \sqrt{ {a^*_1}^2 + {b^*_1}^2 }
C^*_2 = \sqrt{ {a^*_2}^2 + {b^*_2}^2 }
\Delta C^*_{ab} = C^*_1 - C^*_2
\Delta H^*_{ab} = \sqrt{ {\Delta E^*_{ab}^2 - {\Delta L^*}^2 - {\Delta C^*_{ab}^2 } = \sqrt{ {\Delta a^*}^2 + {\Delta b^*}^2 - {\Delta C^*_{ab}^2 }
\Delta a^* = a^*_1 - a^*_2
\Delta b^* = b^*_1 - b^*_2
S_L = 1
S_C = 1+K_1 C^*_1
S_H = 1+K_2 C^*_1
kC および kH は、通常の同じ値をとり、重み係数 kL、K1 および K2 は、適用用途により異なる:
幾何学的には、\Delta H^*_{ab}は弦の長さに等しく対応する。
CIE 1994の定義は、知覚的均一性を十分に確保できていなかったため、CIEは定義を見直し、5箇所の訂正を追加した:
青色領域 (色相角度275°付近) における問題に対処するための色相回転項 (RT) :
中立色の補正項(L*C*h*の違いにおける最大値)
明度補正項 (SL)
彩度補正項 (SC)
色相補正項 (SH)
\Delta E_{00}^* = \sqrt{ \left(\frac{\Delta L'}{k_L S_L}\right)^2 + \left(\frac{\Delta C'}{k_C S_C}\right)^2 + \left(\frac{\Delta H'}{k_H S_H}\right)^2 + R_T \frac{\Delta C'}{k_C S_C}\frac{\Delta H'}{k_H S_H} }
注: 以下の式はラジアンでなく度を用いる; 特にRTへの影響が大きい。
kL、 kC および kH は、通常同一値。
\Delta L^\prime = L^*_2 - L^*_1
\bar{L} = \frac{L^*_1 + L^*_2}{2} \quad \bar{C} = \frac{C^*_1 + C^*_2}{2}
a_1^\prime = a_1^* + \frac{a_1^*}{2} \left( 1 - \sqrt{\frac{\bar{C}^7}{\bar{C}^7 + 25^7} \right) \quad
a_2^\prime = a_2^* + \frac{a_2^*}{2} \left( 1 - \sqrt{\frac{\bar{C}^7}{\bar{C}^7 + 25^7} \right)
\bar{C}^\prime = \frac{C_1^\prime + C_2^\prime}{2} \mbox{ and }
\Delta{C'}=C'_2-C'_1 \quad
\mbox{where }
C_1^\prime = \sqrt{a_1^{'^2} + b_1^{*^2} \quad
C_2^\prime = \sqrt{a_2^{'^2} + b_2^{*^2} \quad
h_1^\prime=\text{atan2} (b_1^*, a_1^\prime) \mod 360^\circ, \quad
h_2^\prime=\text{atan2} (b_2^*, a_2^\prime) \mod 360^\circ
注: 逆正接 (tan−1) は通常コンピューター上では、atan2用いて、−π から π ラジアンの範囲でのatan2(b,a') により計算できる。一方で色相は0から360度の範囲であるため、変換が必要である。a および b がゼロの場合、逆正接は不定値となる (すなわち対応する C もゼロとなる)。この場合、色相角はゼロを代入する。参照のこと。
\Delta h' = \begin{cases}
h_2^\prime - h_1^\prime & \left| h_1^\prime - h_2^\prime \right| \leq 180^\circ \\
h_2^\prime - h_1^\prime + 360^\circ & \left| h_1^\prime - h_2^\prime \right| > 180^\circ, h_2^\prime \leq h_1^\prime \\
h_2^\prime - h_1^\prime - 360^\circ & \left| h_1^\prime - h_2^\prime \right| > 180^\circ, h_2^\prime > h_1^\prime
\end{cases}
注: C′1 あるいは C′2 がゼロの場合、Δh′ は無関係となり、ゼロが代入される。 参照のこと。
\Delta H^\prime = 2 \sqrt{C_1^\prime C_2^\prime} \sin (\Delta h^\prime/2), \quad \bar{H}^\prime=\begin{cases}
(h_1^\prime + h_2^\prime)/2 & \left| h_1^\prime - h_2^\prime \right| \leq 180^\circ \\
(h_1^\prime + h_2^\prime + 360^\circ)/2 & \left| h_1^\prime - h_2^\prime \right| > 180^\circ, h_1^\prime + h_2^\prime < 360^\circ \\
(h_1^\prime + h_2^\prime - 360^\circ)/2 & \left| h_1^\prime - h_2^\prime \right| > 180^\circ, h_1^\prime + h_2^\prime \geq 360^\circ
\end{cases}
注: C′1 あるいは C′2 がゼロの場合、H′ は h′1+h′2 となる (2で除算しない; 本質的には、ひとつの角度が不定の場合、もう一方の角度を使って平均を取る。不定の角度がゼロであることを前提としている)。 参照のこと。インターネット上のほとんどの実装に、平均色相角の計算エラーがある、と述べている。
T = 1 - 0.17 \cos ( \bar{H}^\prime - 30^\circ )
+ 0.24 \cos (2\bar{H}^\prime)
+ 0.32 \cos (3\bar{H}^\prime + 6^\circ )
- 0.20 \cos (4\bar{H}^\prime - 63^\circ)
S_L = 1 + \frac{0.015 \left( \bar{L} - 50 \right)^2}{\sqrt{20 + {\left(\bar{L} - 50 \right)}^2} } \quad
S_C = 1+0.045 \bar{C}^\prime \quad
S_H = 1+0.015 \bar{C}^\prime T
R_T = -2 \sqrt{\frac{\bar{C}'^7}{\bar{C}'^7+25^7} \sin \left[ 60^\circ \cdot \exp \left( -\left[ \frac{\bar{H}'-275^\circ}{25^\circ} \right]^2 \right) \right]
許容値は、「基準色に対してどのような色が見分けがつかないほど近いか?」を定義する。もしも2色間の距離が知覚的均一であれば、答えは単純に「丁度可知差異以内のすべての色」である。 このことは色域内において知覚的均一であることを前提としている。 さもないと、許容値は参照値を含む関数となってしまい、複雑化してしまう。
例えばCIE 1931 色空間は、L* (明度) が一定の場合の許容値を表す線がマクアダムの楕円として定義されている。図で示すとおり、許容値を表す楕円のサイズは、場所によりバラバラであることがわかる。 このことにより、CIELUV と CIELAB色空間の定義へとつながった。
より一般的に、明度を変動させると、許容値は楕円体となる。上記のように距離の表現における重み付け係数を増加させると、各々の係数の軸において楕円体の体積を増やす方向に働く。