LTI-Lib latest version v1.9 - last update 24 Nov 2005
Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

lti::splitImage Class Reference
[Color Analysis]

Parent for all classes that split image into differen color spaces components (color channels). More...

#include <ltiSplitImage.h>

Inheritance diagram for lti::splitImage:

Inheritance graph
[legend]
Collaboration diagram for lti::splitImage:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 splitImage ()
virtual ~splitImage ()
virtual bool apply (const image &img, channel &c1, channel &c2, channel &c3) const =0
virtual bool apply (const image &img, channel8 &c1, channel8 &c2, channel8 &c3) const =0
virtual bool apply (const rgbPixel &pixel, float &c1, float &c2, float &c3) const =0
virtual bool apply (const rgbPixel &pixel, ubyte &c1, ubyte &c2, ubyte &c3) const =0
virtual const char * getTypeName () const
virtual bool getFirst (const image &img, channel &c1) const
virtual bool getFirst (const image &img, channel8 &c1) const
virtual bool getSecond (const image &img, channel &c2) const
virtual bool getSecond (const image &img, channel8 &c2) const
virtual bool getThird (const image &img, channel &c3) const
virtual bool getThird (const image &img, channel8 &c3) const

Protected Member Functions

virtual int maximum (const int a, const int b, const int c) const
virtual int minimum (const int a, const int b, const int c) const

Detailed Description

Parent for all classes that split image into differen color spaces components (color channels).

#include "ltiSplitImage.h"

Split color image into color-channels.


Constructor & Destructor Documentation

lti::splitImage::splitImage  )  [inline]
 

default constructor

virtual lti::splitImage::~splitImage  )  [inline, virtual]
 

destructor


Member Function Documentation

virtual bool lti::splitImage::apply const rgbPixel pixel,
ubyte c1,
ubyte c2,
ubyte c3
const [pure virtual]
 

on-copy operator for 8-bit values

Implemented in lti::splitImageToCIELuv, lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHLS, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToOCP, lti::splitImageToRGB, lti::splitImageTorgI, lti::splitImageToxyY, lti::splitImageToXYZ, lti::splitImageToYIQ, and lti::splitImageToYUV.

virtual bool lti::splitImage::apply const rgbPixel pixel,
float &  c1,
float &  c2,
float &  c3
const [pure virtual]
 

on-copy operator for 32-bit floating point values

Implemented in lti::splitImageToCIELuv, lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHLS, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToOCP, lti::splitImageToRGB, lti::splitImageTorgI, lti::splitImageToxyY, lti::splitImageToXYZ, lti::splitImageToYIQ, and lti::splitImageToYUV.

virtual bool lti::splitImage::apply const image img,
channel8 c1,
channel8 c2,
channel8 c3
const [pure virtual]
 

on-copy operator for 8-bit channels

Implemented in lti::splitImageToCIELuv, lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHLS, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToOCP, lti::splitImageToRGB, lti::splitImageTorgI, lti::splitImageToxyY, lti::splitImageToXYZ, lti::splitImageToYIQ, and lti::splitImageToYUV.

virtual bool lti::splitImage::apply const image img,
channel c1,
channel c2,
channel c3
const [pure virtual]
 

on-copy operator for 32-bit "floating point" channels

Implemented in lti::splitImageToCIELuv, lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHLS, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToOCP, lti::splitImageToRGB, lti::splitImageTorgI, lti::splitImageToxyY, lti::splitImageToXYZ, lti::splitImageToYIQ, and lti::splitImageToYUV.

virtual bool lti::splitImage::getFirst const image img,
channel8 c1
const [virtual]
 

Returns the first of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c1 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual bool lti::splitImage::getFirst const image img,
channel c1
const [virtual]
 

Returns the first of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c1 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual bool lti::splitImage::getSecond const image img,
channel8 c2
const [virtual]
 

Returns the second of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c2 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual bool lti::splitImage::getSecond const image img,
channel c2
const [virtual]
 

Returns the second of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c2 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual bool lti::splitImage::getThird const image img,
channel8 c3
const [virtual]
 

Returns the third of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c3 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual bool lti::splitImage::getThird const image img,
channel c3
const [virtual]
 

Returns the third of the three channels into which the image is split.

If you need only one channel, this might be faster than calling apply().

Parameters:
img the source image
c3 the extracted channel

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToHSV, lti::splitImageToRGB, and lti::splitImageTorgI.

virtual const char* lti::splitImage::getTypeName  )  const [virtual]
 

returns the name of this type

Reimplemented from lti::functor.

Reimplemented in lti::splitImageToGSC, lti::splitImageToGSL, lti::splitImageToHSI, lti::splitImageToRGB, lti::splitImageTorgI, and lti::splitImageToYUV.

virtual int lti::splitImage::maximum const int  a,
const int  b,
const int  c
const [protected, virtual]
 

return the minimum of three integers

virtual int lti::splitImage::minimum const int  a,
const int  b,
const int  c
const [protected, virtual]
 

return the maximum of three integers


The documentation for this class was generated from the following file:
Generated on Thu Nov 24 16:50:31 2005 for LTI-Lib by Doxygen 1.4.4