[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
|   | RGBPrime2YPrimeUVFunctor [Color Space Conversions] |  | 
Convert non-linear (gamma corrected) R'G'B' into Y'UV components. 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 | |
| template<class V> | |
| result_type | operator() (V const &rgb) const | 
| RGBPrime2YPrimeUVFunctor (component_type max) | |
| RGBPrime2YPrimeUVFunctor () | |
#include <vigra/colorconversions.hxx>
 Namespace: vigra
According to the NTSC analog videa standard, the functor realizes the transformation
![\[ \begin{array}{rcl} Y' & = & 0.299\enspace R / R_{max} + 0.587\enspace G / G_{max} + 0.114\enspace B / B_{max}\\ U & = & -0.147\enspace R / R_{max} - 0.289\enspace G / G_{max} + 0.436\enspace B / B_{max} \\ V & = & 0.615\enspace R / R_{max} - 0.515\enspace G / G_{max} - 0.100\enspace B / B_{max} \end{array} \]](form_33.png) 
By default,  . This default can be overridden in the constructor. Y' represents the luminance ("brightness") of the color. The transformation is scaled so that the following bounds apply:
. This default can be overridden in the constructor. Y' represents the luminance ("brightness") of the color. The transformation is scaled so that the following bounds apply:
![\[ \begin{array}{rcl} 0 \leq & Y' & \leq 1 \\ -0.436 \leq & U & \leq 0.436 \\ -0.615 \leq & V & \leq 0.615 \end{array} \]](form_34.png) 
Traits defined:
FunctorTraits::isUnaryFunctor is true (VigraTrueType) 
| typedef TinyVector<T, 3> argument_type | 
the functor's argument type
| typedef NumericTraits<T>::RealPromote component_type | 
the result's component type
| typedef TinyVector<component_type, 3> result_type | 
the functor's result type
| typedef TinyVector<component_type, 3> value_type | 
default constructor. The maximum value for each RGB component defaults to 255.
constructor
| result_type operator() | ( | V const & | rgb | ) | const | 
apply the transformation
| 
© Ullrich Köthe     (ullrich.koethe@iwr.uni-heidelberg.de)  | 
html generated using doxygen and Python
 |