[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

RGB2XYZFunctor< T > Class Template Reference
[Color Space Conversions]

Convert linear (raw) RGB into standardized tri-stimulus XYZ. More...

#include <vigra/colorconversions.hxx>

List of all members.

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 (component_type max)
 RGB2XYZFunctor ()

Detailed Description

template<class T>
class vigra::RGB2XYZFunctor< T >

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

\[ \begin{array}{rcl} X & = & 0.412453\enspace R / R_{max} + 0.357580\enspace G / G_{max} + 0.180423\enspace B / B_{max}\\ Y & = & 0.212671\enspace R / R_{max} + 0.715160\enspace G / G_{max} + 0.072169\enspace B / B_{max} \\ Z & = & 0.019334\enspace R / R_{max} + 0.119193\enspace G / G_{max} + 0.950227\enspace B / B_{max} \end{array} \]

By default, $ R_{max} = G_{max} = B_{max} = 255 $. 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.

Traits defined:

FunctorTraits::isUnaryFunctor is true (VigraTrueType)


Member Typedef Documentation

typedef NumericTraits<T>::RealPromote component_type

the result's component type

typedef TinyVector<T, 3> argument_type

the functor's argument type

the functor's result type

Deprecated:
use argument_type and result_type

Constructor & Destructor Documentation

RGB2XYZFunctor (  ) 

default constructor. The maximum value for each RGB component defaults to 255.

constructor

  • max - the maximum value for each RGB component

Member Function Documentation

result_type operator() ( argument_type const &  rgb  )  const

apply the transformation


The documentation for this class was generated from the following file:

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de)
Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany

html generated using doxygen and Python
VIGRA 1.6.0 (5 Nov 2009)