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

details XYZ2RGBFunctor< T > Class Template Reference VIGRA

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

#include <vigra/colorconversions.hxx>

Public Types

typedef TinyVector< T, 3 > argument_type
 
typedef TinyVector< T, 3 > result_type
 
typedef TinyVector< T, 3 > value_type
 

Public Member Functions

template<class V >
result_type operator() (V const &xyz) const
 
 XYZ2RGBFunctor ()
 
 XYZ2RGBFunctor (component_type max)
 

Detailed Description

template<class T>
class vigra::XYZ2RGBFunctor< T >

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

#include <vigra/colorconversions.hxx>
Namespace: vigra

According to ITU-R Recommendation BT.709, the functor realizes the transformation

\[ \begin{array}{rcl} R & = & R_{max} (3.2404813432\enspace X - 1.5371515163\enspace Y - 0.4985363262\enspace Z) \\ G & = & G_{max} (-0.9692549500\enspace X + 1.8759900015\enspace Y + 0.0415559266\enspace Z) \\ B & = & B_{max} (0.0556466391\enspace X - 0.2040413384\enspace Y + 1.0573110696\enspace Z) \end{array} \]

By default, $ R_{max} = G_{max} = B_{max} = 255 $. This default can be overridden in the constructor. This is the inverse transform of vigra::RGB2XYZFunctor.

Traits defined:

FunctorTraits::isUnaryFunctor is true (VigraTrueType)

Member Typedef Documentation

typedef TinyVector<T, 3> argument_type

the functor's argument type. (Actually, the argument type is more general: V with arbitrary V. But this cannot be expressed in a typedef.)

typedef TinyVector<T, 3> result_type

the functor's result type

typedef TinyVector<T, 3> value_type
Deprecated:
use argument_type and result_type

Constructor & Destructor Documentation

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

XYZ2RGBFunctor ( component_type  max)

constructor

  • max - the maximum value for each RGB component

Member Function Documentation

result_type operator() ( V const &  xyz) 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.11.1 (Fri May 19 2017)