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

details RGBPrime2RGBFunctor< From, To > Class Template Reference VIGRA

Convert non-linear (gamma corrected) R'G'B' into non-linear (raw) RGB. More...

#include <vigra/colorconversions.hxx>

Public Types

typedef TinyVector< From, 3 > argument_type
 
typedef NumericTraits< To >
::RealPromote 
component_type
 
typedef TinyVector< To, 3 > result_type
 
typedef TinyVector< To, 3 > value_type
 

Public Member Functions

result_type operator() (argument_type const &rgb) const
 
 RGBPrime2RGBFunctor ()
 
 RGBPrime2RGBFunctor (component_type max)
 

Detailed Description

template<class From, class To = From>
class vigra::RGBPrime2RGBFunctor< From, To >

Convert non-linear (gamma corrected) R'G'B' into non-linear (raw) RGB.

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

The functor realizes the transformation

\[ R = R_{max} \left(\frac{R'}{R_{max}} \right)^{1/0.45} \qquad G = G_{max} \left(\frac{G'}{G_{max}} \right)^{1/0.45} \qquad B = B_{max} \left(\frac{B'}{B_{max}} \right)^{1/0.45} \]

By default, $ R_{max} = G_{max} = B_{max} = 255 $. This default can be overridden in the constructor. If both source and target color components are stored as unsigned char, a look-up-table will be used to speed up the transformation.

Traits defined:

FunctorTraits::isUnaryFunctor is true (VigraTrueType)

Member Typedef Documentation

typedef TinyVector<From, 3> argument_type

the functor's argument type

typedef TinyVector<To, 3> result_type

the functor's result type

typedef TinyVector<To, 3> value_type
Deprecated:
use argument_type and result_type
typedef NumericTraits<To>::RealPromote component_type

the result component's promote type

Constructor & Destructor Documentation

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.11.1 (Fri May 19 2017)