[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
RGB2XYZFunctor< T > Class Template Reference |
Convert linear (raw) RGB into standardized tri-stimulus XYZ. 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 |
Public Member Functions | |
result_type | operator() (argument_type const &rgb) const |
RGB2XYZFunctor () | |
RGB2XYZFunctor (component_type max) | |
Convert linear (raw) RGB into standardized tri-stimulus XYZ.
#include <vigra/colorconversions.hxx>
Namespace: vigra
According to ITU-R Recommendation BT.709, the functor realizes the transformation
By default, . This default can be overridden in the constructor. X, Y, and Z are always positive and reach their maximum for white. The white point is obtained by transforming RGB(255, 255, 255). It corresponds to the D65 illuminant. Y represents the luminance ("brightness") of the color. The above transformation is officially defined in connection with the sRGB color space (i.e. when the RGB values are obtained by inverse gamma correction of sRGB), other color spaces use slightly different numbers or another standard illuminant (which gives raise to significantly different numbers).
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 |
RGB2XYZFunctor | ( | ) |
default constructor. The maximum value for each RGB component defaults to 255.
RGB2XYZFunctor | ( | component_type | max | ) |
constructor
result_type operator() | ( | argument_type const & | rgb | ) | const |
apply the transformation
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|