colour.XYZ_to_UVW

colour.XYZ_to_UVW(XYZ, illuminant=array([0.3127, 0.329]))[source]

Converts from CIE XYZ tristimulus values to CIE 1964 U*V*W* colourspace.

Parameters
  • XYZ (array_like) – CIE XYZ tristimulus values.

  • illuminant (array_like, optional) – Reference illuminant CIE xy chromaticity coordinates or CIE xyY colourspace array.

Returns

CIE 1964 U*V*W* colourspace array.

Return type

ndarray

Warning

The input domain and output range of that definition are non standard!

Notes

Domain

Scale - Reference

Scale - 1

XYZ

[0, 1]

[0, 1]

illuminant

[0, 1]

[0, 1]

Range

Scale - Reference

Scale - 1

UVW

U : [-100, 100]

V : [-100, 100]

W : [0, 100]

U : [-1, 1]

V : [-1, 1]

W : [0, 1]

References

[Wikipedia08b]

Examples

>>> import numpy as np
>>> XYZ = np.array([0.20654008, 0.12197225, 0.05136952]) * 100
>>> XYZ_to_UVW(XYZ)  
array([ 94.5503572...,  11.5553652...,  40.5475740...])