[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
Convert linear (raw) RGB into perceptual uniform CIE L*a*b*. More...
#include <vigra/colorconversions.hxx>
Public Types | |
| typedef TinyVector< T, 3 > | argument_type |
| typedef NumericTraits< T >::RealPromote | component_type |
| typedef XYZ2LabFunctor< component_type >::result_type | result_type |
| typedef XYZ2LabFunctor< component_type >::result_type | value_type |
Public Member Functions | |
| template<class V> | |
| result_type | operator() (V const &rgb) const |
| RGB2LabFunctor () | |
| RGB2LabFunctor (component_type max) | |
Convert linear (raw) RGB into perceptual uniform CIE L*a*b*.
#include <vigra/colorconversions.hxx>
Namespace: vigra
The functor realizes the transformation
![\[ RGB \Rightarrow XYZ \Rightarrow L^*a^*b^*
\]](form_44.png)
See vigra::RGB2XYZFunctor and vigra::XYZ2LabFunctor for a description of the two steps. The resulting color components will have the following bounds:
![\[ \begin{array}{rcl}
0 \leq & L^* & \leq 100 \\
-86.1813 \leq & u^* & \leq 98.2352 \\
-107.862 \leq & v^* & \leq 94.4758
\end{array}
\]](form_45.png)
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 XYZ2LabFunctor<component_type>::result_type result_type |
the functor's result type
| typedef XYZ2LabFunctor<component_type>::result_type value_type |
| RGB2LabFunctor | ( | ) |
default constructor. The maximum value for each RGB component defaults to 255.
| RGB2LabFunctor | ( | component_type | max | ) |
constructor
apply the transformation
|
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |