colour.XYZ_to_Oklab#

colour.XYZ_to_Oklab(XYZ: Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 1]) Annotated[ndarray[tuple[Any, ...], dtype[float16 | float32 | float64]], 1][source]#

Convert from CIE XYZ tristimulus values to Oklab colourspace.

Parameters:

XYZ (Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 1]) – CIE XYZ tristimulus values.

Returns:

Oklab colourspace array.

Return type:

numpy.ndarray

Notes

Domain

Scale - Reference

Scale - 1

XYZ

1

1

Range

Scale - Reference

Scale - 1

Lab

1

1

  • Input CIE XYZ tristimulus values must be adapted to CIE Standard Illuminant D Series D65.

References

[Ott20]

Examples

>>> XYZ = np.array([0.20654008, 0.12197225, 0.05136952])
>>> XYZ_to_Oklab(XYZ)
array([0.5163401..., 0.154695..., 0.0628957...])