Om  1.0.0
A universal framework for multimedia simulation
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
om::images::base::ColorSpace Class Reference

A class that describes the space where color is represented in an image. More...

#include <omImageColorSpace.h>

Public Types

enum  Enum {
  UNDEFINED, RGB, sRGB, LINEAR_RGB,
  ADOBE_RGB, CIE_RGB, scRGB, CMYK,
  HSV, HSL, HSI, YUV,
  YIQ, YPbPr, xvYCC, CIE_XYZ,
  CIE_LAB, CIE_LUV, CIE_UVW
}
 

Public Member Functions

 ColorSpace ()
 Create a color space object with an UNDEFINED color space. More...
 
 ColorSpace (ColorSpace::Enum newType)
 Create a color space object from the specified color space Enum. More...
 
 operator Enum () const
 Convert this color space to an enum value. More...
 
String toString () const
 Return a string representation of the color space. More...
 
 operator String () const
 Convert this color space into a string representation. More...
 

Static Public Member Functions

template<typename T >
static Color3D< T > convert (const Color3D< T > &input, const ColorSpace &inputSpace, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in one color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB (const Color3D< T > &srgb, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the sRGB color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_RGB (const Color3D< T > &srgb)
 Convert from the sRGB color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_HSV (const Color3D< T > &srgb)
 Convert from the sRGB color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_HSL (const Color3D< T > &srgb)
 Convert from the sRGB color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_HSI (const Color3D< T > &srgb)
 Convert from the sRGB color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_YUV (const Color3D< T > &srgb)
 Convert from the sRGB color space to the Y'UV color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_XYZ (const Color3D< T > &srgb)
 Convert from the sRGB color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_sRGB_LAB (const Color3D< T > &srgb, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the sRGB color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_RGB (const Color3D< T > &rgb, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the RGB color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_sRGB (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_HSV (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_HSL (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_HSI (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_YUV (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the Y'UV color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_XYZ (const Color3D< T > &rgb)
 Convert from the linear RGB color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_RGB_LAB (const Color3D< T > &rgb, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the linear RGB color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_HSV (const Color3D< T > &hsv, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the HSV color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_sRGB (const Color3D< T > &hsv)
 Convert from the HSV color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_RGB (const Color3D< T > &hsv)
 Convert from the HSV color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_HSL (const Color3D< T > &hsv)
 Convert from the HSV color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_HSI (const Color3D< T > &hsv)
 Convert from the HSV color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_YUV (const Color3D< T > &hsv)
 Convert from the HSV color space to the Y'UV color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_XYZ (const Color3D< T > &hsv)
 Convert from the HSV color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_HSV_LAB (const Color3D< T > &hsv, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the HSV color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_HSL (const Color3D< T > &hsl, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the HSL color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_sRGB (const Color3D< T > &hsl)
 Convert from the HSL color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_RGB (const Color3D< T > &hsl)
 Convert from the HSL color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_HSV (const Color3D< T > &hsl)
 Convert from the HSL color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_HSI (const Color3D< T > &hsl)
 Convert from the HSL color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_YUV (const Color3D< T > &hsl)
 Convert from the HSL color space to the YUV color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_XYZ (const Color3D< T > &hsl)
 Convert from the HSL color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_HSL_LAB (const Color3D< T > &hsl, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the HSL color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_HSI (const Color3D< T > &hsi, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the HSI color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_sRGB (const Color3D< T > &hsi)
 Convert from the HSI color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_RGB (const Color3D< T > &hsi)
 Convert from the HSI color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_HSV (const Color3D< T > &hsi)
 Convert from the HSI color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_HSL (const Color3D< T > &hsi)
 Convert from the HSI color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_YUV (const Color3D< T > &hsi)
 Convert from the HSI color space to the YUV color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_XYZ (const Color3D< T > &hsi)
 Convert from the HSI color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_HSI_LAB (const Color3D< T > &hsi, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the HSI color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_YUV (const Color3D< T > &yuv, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the YUV color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_sRGB (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_RGB (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_HSV (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_HSL (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_HSI (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_XYZ (const Color3D< T > &yuv)
 Convert from the Y'UV color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_YUV_LAB (const Color3D< T > &yuv, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the Y'UV color space to the XYZ color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ (const Color3D< T > &xyz, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the XYZ color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_sRGB (const Color3D< T > &xyz)
 Convert from the XYZ color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_RGB (const Color3D< T > &xyz)
 Convert from the XYZ color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_HSV (const Color3D< T > &xyz)
 Convert from the XYZ color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_HSL (const Color3D< T > &xyz)
 Convert from the XYZ color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_HSI (const Color3D< T > &xyz)
 Convert from the XYZ color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_YUV (const Color3D< T > &xyz)
 Convert from the XYZ color space to the Y'UV color space. More...
 
template<typename T >
static Color3D< T > convert_XYZ_LAB (const Color3D< T > &xyz, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the XYZ color space to the CIE LAB color space. More...
 
template<typename T >
static Color3D< T > convert_LAB (const Color3D< T > &lab, const ColorSpace &outputSpace, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert an input color in the CIE LAB color space to an output color in another color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_sRGB (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the sRGB color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_RGB (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the linear RGB color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_HSV (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the HSV color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_HSL (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the HSL color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_HSI (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the HSI color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_YUV (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the Y'UV color space. More...
 
template<typename T >
static Color3D< T > convert_LAB_XYZ (const Color3D< T > &lab, const Color3D< T > &whitePoint=WHITE_POINT_D65)
 Convert from the CIE LAB color space to the XYZ color space. More...
 

Static Public Attributes

static const Color3f WHITE_POINT_A
 The XYZ color value of the CIE A (incandescent) standard illuminant white point. More...
 
static const Color3f WHITE_POINT_C
 The XYZ color value of the CIE C standard illuminant white point. More...
 
static const Color3f WHITE_POINT_D50
 The XYZ color value of the CIE D50 standard illuminant white point. More...
 
static const Color3f WHITE_POINT_D55
 The XYZ color value of the CIE D55 standard illuminant white point. More...
 
static const Color3f WHITE_POINT_D65
 The XYZ color value of the CIE D65 (daylight) standard illuminant white point. More...
 
static const Color3f WHITE_POINT_D75
 The XYZ color value of the CIE D75 standard illuminant white point. More...
 
static const Color3f WHITE_POINT_F2
 The XYZ color value of the CIE F2 (fluorescent) standard illuminant white point. More...
 
static const Color3f WHITE_POINT_F7
 The XYZ color value of the CIE F7 (fluorescent) standard illuminant white point. More...
 
static const Color3f WHITE_POINT_F11
 The XYZ color value of the CIE F11 (fluorescent) standard illuminant white point. More...
 

Detailed Description

A class that describes the space where color is represented in an image.

Member Enumeration Documentation

Enumerator
UNDEFINED 

An undefined color space.

RGB 

The RGB color space with unspecified gamma.

The user should usually interpret this as sRGB, since most images are created to look good in that color space. However, the image data for some applications may be specified in linear RGB space.

sRGB 

The sRGB color space with standard gamma.

LINEAR_RGB 

The RGB color space with values on a linear scale.

This is a color space where intensity values are spaced linearly from dark to light. Unless your images are known to be in a linear color space, it is best to use sRGB.

ADOBE_RGB 

The Adobe RGB color space.

CIE_RGB 

The CIE RGB color space.

scRGB 

The scRGB color space.

CMYK 

The Cyan-Magenta-Yellow-Black color space for subtractive color mixing.

HSV 

The Hue-Saturation-Value color space.

HSL 

The Hue-Saturation-Lightness color space.

HSI 

The Hue-Saturation-Intensity color space.

YUV 

The YUV color space.

YIQ 

THe YIQ color space.

YPbPr 

The YPbPr color space.

xvYCC 

The xvYCC color space.

CIE_XYZ 

The CIE XYZ color space.

CIE_LAB 

The CIE LAB color space.

CIE_LUV 

The CIE LUV color space.

CIE_UVW 

The CIE UVW color space.

Constructor & Destructor Documentation

om::images::base::ColorSpace::ColorSpace ( )
inline

Create a color space object with an UNDEFINED color space.

om::images::base::ColorSpace::ColorSpace ( ColorSpace::Enum  newType)
inline

Create a color space object from the specified color space Enum.

Member Function Documentation

om::images::base::ColorSpace::operator Enum ( ) const
inline

Convert this color space to an enum value.

String om::images::base::ColorSpace::toString ( ) const

Return a string representation of the color space.

om::images::base::ColorSpace::operator String ( ) const
inline

Convert this color space into a string representation.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert ( const Color3D< T > &  input,
const ColorSpace inputSpace,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in one color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB ( const Color3D< T > &  srgb,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the sRGB color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_RGB ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_HSV ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_HSL ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_HSI ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_YUV ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the Y'UV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_XYZ ( const Color3D< T > &  srgb)
inlinestatic

Convert from the sRGB color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_sRGB_LAB ( const Color3D< T > &  srgb,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the sRGB color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB ( const Color3D< T > &  rgb,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the RGB color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_sRGB ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_HSV ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_HSL ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_HSI ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_YUV ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the Y'UV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_XYZ ( const Color3D< T > &  rgb)
inlinestatic

Convert from the linear RGB color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_RGB_LAB ( const Color3D< T > &  rgb,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the linear RGB color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV ( const Color3D< T > &  hsv,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the HSV color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_sRGB ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_RGB ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_HSL ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_HSI ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_YUV ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the Y'UV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_XYZ ( const Color3D< T > &  hsv)
inlinestatic

Convert from the HSV color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSV_LAB ( const Color3D< T > &  hsv,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the HSV color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL ( const Color3D< T > &  hsl,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the HSL color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_sRGB ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_RGB ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_HSV ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_HSI ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_YUV ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the YUV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_XYZ ( const Color3D< T > &  hsl)
inlinestatic

Convert from the HSL color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSL_LAB ( const Color3D< T > &  hsl,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the HSL color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI ( const Color3D< T > &  hsi,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the HSI color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_sRGB ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_RGB ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_HSV ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_HSL ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_YUV ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the YUV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_XYZ ( const Color3D< T > &  hsi)
inlinestatic

Convert from the HSI color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_HSI_LAB ( const Color3D< T > &  hsi,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the HSI color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV ( const Color3D< T > &  yuv,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the YUV color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_sRGB ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_RGB ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_HSV ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_HSL ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_HSI ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_XYZ ( const Color3D< T > &  yuv)
inlinestatic

Convert from the Y'UV color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_YUV_LAB ( const Color3D< T > &  yuv,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the Y'UV color space to the XYZ color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ ( const Color3D< T > &  xyz,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the XYZ color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_sRGB ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_RGB ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_HSV ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_HSL ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_HSI ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_YUV ( const Color3D< T > &  xyz)
inlinestatic

Convert from the XYZ color space to the Y'UV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_XYZ_LAB ( const Color3D< T > &  xyz,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the XYZ color space to the CIE LAB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB ( const Color3D< T > &  lab,
const ColorSpace outputSpace,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert an input color in the CIE LAB color space to an output color in another color space.

If a conversion is not supported, the result is all zero.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_sRGB ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the sRGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_RGB ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the linear RGB color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_HSV ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the HSV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_HSL ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the HSL color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_HSI ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the HSI color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_YUV ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the Y'UV color space.

template<typename T >
static Color3D<T> om::images::base::ColorSpace::convert_LAB_XYZ ( const Color3D< T > &  lab,
const Color3D< T > &  whitePoint = WHITE_POINT_D65 
)
inlinestatic

Convert from the CIE LAB color space to the XYZ color space.

Member Data Documentation

const Color3f om::images::base::ColorSpace::WHITE_POINT_A
static

The XYZ color value of the CIE A (incandescent) standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_C
static

The XYZ color value of the CIE C standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_D50
static

The XYZ color value of the CIE D50 standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_D55
static

The XYZ color value of the CIE D55 standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_D65
static

The XYZ color value of the CIE D65 (daylight) standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_D75
static

The XYZ color value of the CIE D75 standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_F2
static

The XYZ color value of the CIE F2 (fluorescent) standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_F7
static

The XYZ color value of the CIE F7 (fluorescent) standard illuminant white point.

const Color3f om::images::base::ColorSpace::WHITE_POINT_F11
static

The XYZ color value of the CIE F11 (fluorescent) standard illuminant white point.


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