colour.difference.delta_E_CIE1994#

colour.difference.delta_E_CIE1994(Lab_1: Domain100, Lab_2: Domain100, textiles: bool = False, *, additional_data: Literal[False] = False) NDArrayFloat[source]#
colour.difference.delta_E_CIE1994(Lab_1: Domain100, Lab_2: Domain100, textiles: bool = False, *, additional_data: Literal[True]) DeltaE_Specification_CIE1994

Compute the colour difference \(\Delta E_{94}\) between two specified CIE L*a*b* colourspace arrays using the CIE 1994 recommendation.

Parameters:
  • Lab_1 (Domain100) – CIE L*a*b* colourspace array 1.

  • Lab_2 (Domain100) – CIE L*a*b* colourspace array 2.

  • textiles (bool) – Textiles application specific parametric factors, \(k_L=2,\ k_C=k_H=1,\ k_1=0.048,\ k_2=0.014\) weights are used instead of \(k_L=k_C=k_H=1,\ k_1=0.045,\ k_2=0.015\).

  • additional_data (bool) – Whether to output additional data.

Returns:

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

Return type:

numpy.ndarray or DeltaE_Specification_CIE1994

Notes

Domain

Scale - Reference

Scale - 1

Lab_1

100

1

Lab_2

100

1

  • CIE 1994 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.

References

[Lin11]

Examples

>>> Lab_1 = np.array([48.99183622, -0.10561667, 400.65619925])
>>> Lab_2 = np.array([50.65907324, -0.11671910, 402.82235718])
>>> delta_E_CIE1994(Lab_1, Lab_2)
np.float64(1.6711191...)
>>> delta_E_CIE1994(
...     Lab_1,
...     Lab_2,
...     additional_data=True,
... )
DeltaE_Specification_CIE1994(dE=np.float64(1.6711191...), dL=np.float64(-1.6672370...), dC=np.float64(-0.1138315...), dH=np.float64(0.0014983...))
>>> delta_E_CIE1994(Lab_1, Lab_2, textiles=True)
np.float64(0.8404677...)
>>> delta_E_CIE1994(
...     Lab_1,
...     Lab_2,
...     textiles=True,
...     additional_data=True,
... )
DeltaE_Specification_CIE1994(dE=np.float64(0.8404677...), dL=np.float64(-0.8336185...), dC=np.float64(-0.1070687...), dH=np.float64(0.0015891...))