[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
XYZ2LuvFunctor< T > Class Template Reference |
Convert standardized tri-stimulus XYZ into perceptual uniform CIE L*u*v*. More...
#include <vigra/colorconversions.hxx>
Public Types | |
typedef TinyVector< T, 3 > | argument_type |
typedef NumericTraits< T > ::RealPromote | component_type |
typedef TinyVector < component_type, 3 > | result_type |
typedef TinyVector < component_type, 3 > | value_type |
Convert standardized tri-stimulus XYZ into perceptual uniform CIE L*u*v*.
#include <vigra/colorconversions.hxx>
Namespace: vigra
The functor realizes the transformation
where is the reference white point of standard illuminant D65, and are the quantities calculated for this point. represents the lightness ("brightness") of the color, and code the chromaticity. (Instead of the rationals and , the original standard gives the rounded values 0.008856 and 903.3. As Bruce Lindbloom points out, the rounded values give raise to a discontinuity which is removed by the accurate rationals. This bug will be fixed in future versions of the CIE Luv standard.)
Traits defined:
FunctorTraits::isUnaryFunctor
is true (VigraTrueType
)
typedef NumericTraits<T>::RealPromote component_type |
the result's component type
typedef TinyVector<T, 3> argument_type |
the functor's argument type
typedef TinyVector<component_type, 3> result_type |
the functor's result type
typedef TinyVector<component_type, 3> value_type |
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|