colour.difference.delta_E_CIE2000

colour.difference.delta_E_CIE2000(Lab_1, Lab_2, textiles=False)[source]

Returns the difference \(\Delta E_{00}\) between two given CIE L*a*b* colourspace arrays using CIE 2000 recommendation.

Parameters:
  • Lab_1 (array_like) – CIE L*a*b* colourspace array 1.
  • Lab_2 (array_like) – CIE L*a*b* colourspace array 2.
  • textiles (bool, optional) – Textiles application specific parametric factors \(k_L=2,\ k_C=k_H=1\) weights are used instead of \(k_L=k_C=k_H=1\).
Returns:

Colour difference \(\Delta E_{00}\).

Return type:

numeric or ndarray

Notes

Domain Scale - Reference Scale - 1
Lab_1

L_1 : [0, 100]

a_1 : [-100, 100]

b_1 : [-100, 100]

L_1 : [0, 1]

a_1 : [-1, 1]

b_1 : [-1, 1]

Lab_2

L_2 : [0, 100]

a_2 : [-100, 100]

b_2 : [-100, 100]

L_2 : [0, 1]

a_2 : [-1, 1]

b_2 : [-1, 1]

  • CIE 2000 colour differences are not symmetrical: difference between Lab_1 and Lab_2 may not be the same as difference between Lab_2 and Lab_1 thus one colour must be understood to be the reference against which a sample colour is compared.
  • Parametric factors \(k_L=k_C=k_H=1\) weights under reference conditions:
    • Illumination: D65 source
    • Illuminance: 1000 lx
    • Observer: Normal colour vision
    • Background field: Uniform, neutral gray with \(L^*=50\)
    • Viewing mode: Object
    • Sample size: Greater than 4 degrees
    • Sample separation: Direct edge contact
    • Sample colour-difference magnitude: Lower than 5.0 \(\Delta E_{00}\)
    • Sample structure: Homogeneous (without texture)

References

[Lindbloom2009e], [Melgosa2013b]

Examples

>>> Lab_1 = np.array([100.00000000, 21.57210357, 272.22819350])
>>> Lab_2 = np.array([100.00000000, 426.67945353, 72.39590835])
>>> delta_E_CIE2000(Lab_1, Lab_2)  # doctest: +ELLIPSIS
94.0356490...
>>> Lab_2 = np.array([50.00000000, 426.67945353, 72.39590835])
>>> delta_E_CIE2000(Lab_1, Lab_2)  # doctest: +ELLIPSIS
100.8779470...
>>> delta_E_CIE2000(Lab_1, Lab_2, textiles=True)  # doctest: +ELLIPSIS
95.7920535...