eLynx SDK v3.0.1
C++ image processing API reference

eLynx::Image::ImagePointProcessingImpl< Pixel > Class Template Reference

#include <ImagePointProcessingImpl.h>

Inheritance diagram for eLynx::Image::ImagePointProcessingImpl< Pixel >:

eLynx::Image::IImagePointProcessing

List of all members.


Public Types

typedef Pixel Pixel_t

Public Member Functions

virtual bool AdjustBrightness (AbstractImage &ioImage, double iBrightness, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustContrast (AbstractImage &ioImage, double iContrast, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustGamma (AbstractImage &ioImage, double iGamma, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustBCG (AbstractImage &ioImage, double iBrightness, double iContrast, double iGamma, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustMidtone (AbstractImage &ioImage, double iMidtone, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustSigmoid (AbstractImage &ioImage, double iAlpha, double iBeta, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool AdjustHueSaturation (AbstractImage &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier) const
virtual bool Balance (AbstractImage &ioImage, double iChannel0, double iChannel1, double iChannel2, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool Posterize (AbstractImage &ioImage, uint32 iLevels, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool Solarize (AbstractImage &ioImage, double iThreshold, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
virtual bool Colorize (AbstractImage &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier) const
virtual bool Desaturate (AbstractImage &ioImage, double iFactor, uint32 iChannelMask, ProgressNotifier &iNotifier) const
virtual bool Blend (AbstractImage &ioImage, const AbstractImage &iImage, double iScalar, uint32 iChannelMask, ProgressNotifier &iNotifier) const
virtual boost::shared_ptr
< AbstractImage
CreateBinarized (const AbstractImage &iImage, double iThreshold, bool ibNegative, uint32 iChannelMask, ProgressNotifier &iNotifier) const
 Image factory.

Static Public Member Functions

Specialized static services
static bool AdjustBrightness (ImageImpl< Pixel > &ioImage, double iBrightness, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustContrast (ImageImpl< Pixel > &ioImage, double iContrast, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustGamma (ImageImpl< Pixel > &ioImage, double iGamma, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustBCG (ImageImpl< Pixel > &ioImage, double iBrightness, double iContrast, double iGamma, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustHue (ImageImpl< Pixel > &ioImage, double iHue, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustSaturation (ImageImpl< Pixel > &ioImage, double iSaturation, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustHueSaturation (ImageImpl< Pixel > &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustMidtone (ImageImpl< Pixel > &ioImage, double iMidtone, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool AdjustSigmoid (ImageImpl< Pixel > &ioImage, double iAlpha, double iBeta, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Balance (ImageImpl< Pixel > &ioImage, double iChannel0, double iChannel1, double iChannel2, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Posterize (ImageImpl< Pixel > &ioImage, uint32 iLevels, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Solarize (ImageImpl< Pixel > &ioImage, double iThreshold, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Colorize (ImageImpl< Pixel > &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Desaturate (ImageImpl< Pixel > &ioImage, double iFactor=0.3, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool Blend (ImageImpl< Pixel > &ioImage, const ImageImpl< Pixel > &iImage, double iScalar, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)

Detailed Description

template<class Pixel>
class eLynx::Image::ImagePointProcessingImpl< Pixel >

Implementation of point to point image processing interface.

IImagePointProcessing.png

Definition at line 31 of file ImagePointProcessingImpl.h.


Member Typedef Documentation

template<class Pixel >
typedef Pixel eLynx::Image::ImagePointProcessingImpl< Pixel >::Pixel_t

Definition at line 34 of file ImagePointProcessingImpl.h.


Member Function Documentation

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBrightness ( AbstractImage ioImage,
double  iBrightness,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Change brightness on selected channels

color.AdjustBrightnessLess.png

ramps.AdjustBrightnessLess.png

less brightness(-0.3)
color.original.png

ramps.original.png

original
color.AdjustBrightnessMore.png

ramps.AdjustBrightnessMore.png

more brightness(+0.3)
Parameters:
ioImage image to process.
iBrightness brightness coefficient in range -1.0, +1.0. 0.0 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustContrast ( AbstractImage ioImage,
double  iContrast,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Change contrast on selected channels

color.AdjustContrastLess.png

ramps.AdjustContrastLess.png

less contrast(-0.4)
color.original.png

ramps.original.png

original
color.AdjustContrastMore.png

ramps.AdjustContrastMore.png

more contrast(+0.4)
Parameters:
ioImage image to process.
iContrast contrast coefficient in range -1.0, +1.0. 0.0 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustGamma ( AbstractImage ioImage,
double  iGamma,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Gamma correction on selected channels

color.AdjustGammaLess.png

ramps.AdjustGammaLess.png

gamma(0.5)
color.original.png

ramps.original.png

original
color.AdjustGammaMore.png

ramps.AdjustGammaMore.png

gamma(3.0)
Parameters:
ioImage image to process.
iGamma gamma value in range 0.001, +4.0. 1.0 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBCG ( AbstractImage ioImage,
double  iBrightness,
double  iContrast,
double  iGamma,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Change brightness + contrast + gamma correction on selected channels

Parameters:
ioImage image to process.
iBrightness brightness coefficient in range -1.0, +1.0. 0.0 is neutral value.
iContrast contrast coefficient in range -1.0, +1.0. 0.0 is neutral value.
iGamma gamma value in range 0.001, +4.0. 1.0 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustMidtone ( AbstractImage ioImage,
double  iMidtone,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Midtone correction on selected channels

color.AdjustMidtoneLess.png

ramps.AdjustMidtoneLess.png

Midtone(0.2)
color.original.png

ramps.original.png

original
color.AdjustMidtoneMore.png

ramps.AdjustMidtoneMore.png

Midtone(0.7)
Parameters:
ioImage image to process.
iMidtone value in range 0.001, 0.999. 0.5 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustSigmoid ( AbstractImage ioImage,
double  iAlpha,
double  iBeta,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Adjust Sigmoid on selected channels

color.AdjustSigmoid1.png

ramps.AdjustSigmoid1.png

Sigmoid(2.0, 0.25)
color.original.png

ramps.original.png

original
color.AdjustSigmoid2.png

ramps.AdjustSigmoid2.png

Sigmoid(0.5, 0.75)
Parameters:
ioImage image to process.
iAlpha scale factor in range [0.0, 10.0], 1.0 is neutral value.
iBeta offset in range [0.0, 1.0], 0.5 is neutral value.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustHueSaturation ( AbstractImage ioImage,
double  iHue,
double  iSaturation,
ProgressNotifier iNotifier 
) const [virtual]

Hue and Saturation adjustment.

Parameters:
ioImage image to process.
iHue hue adjustment in range [0..1].
iSaturation Saturation adjustment in range [0..1].
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Balance ( AbstractImage ioImage,
double  iChannel0,
double  iChannel1,
double  iChannel2,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

The Color Balance allows you to adjust the overall mixture of the colors.

color.original.png

ramps.original.png

original
color.Balance.png

ramps.Balance.png

Balance(0.8, 1.1, 0.5)
In example with RGB image: red channel is scaled by 0.8, green by 1.1 and blue by 0.5.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Posterize ( AbstractImage ioImage,
uint32  iLevels,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

The Posterize effect lets you adjust the number of brightness levels of the image.

color.original.png

ramps.original.png

original
color.Posterize.png

ramps.Posterize.png

Posterize(3)
Parameters:
ioImage image to process.
iLevels numbers of levels for all image dynamic range.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Solarize ( AbstractImage ioImage,
double  iThreshold,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

The Solarize effect blends an image by inverting all color data when intensity value is greater than a threshold.

color.original.png

ramps.original.png

original
color.Solarize.png

ramps.Solarize.png

Solarize(0.6)
Parameters:
ioImage image to process.
iThreshold level in range [0, 1] when negative occurs.
iChannelMask selected channels to be processed. Default is all.
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Colorize ( AbstractImage ioImage,
double  iHue,
double  iSaturation,
ProgressNotifier iNotifier 
) const [virtual]

Colorize an image setting a hue and saturation.

color.original.png

ramps.original.png

original
color.Colorize.png

ramps.Colorize.png

Colorize(0.10, 0.54) with Sepia tone
Parameters:
ioImage image to process.
iHue Hue in normalised range [0.0, 1.0].
iSaturation Saturation in normalised range [0.0, 1.0].
iNotifier a notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImagePointProcessing.

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Desaturate ( AbstractImage ioImage,
double  iFactor,
uint32  iChannelMask,
ProgressNotifier iNotifier 
) const [virtual]

template<class Pixel >
virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Blend ( AbstractImage ioImage,
const AbstractImage iImage,
double  iScalar,
uint32  iChannelMask,
ProgressNotifier iNotifier 
) const [virtual]

template<class Pixel >
virtual boost::shared_ptr< AbstractImage > eLynx::Image::ImagePointProcessingImpl< Pixel >::CreateBinarized ( const AbstractImage iImage,
double  iThreshold,
bool  ibNegative,
uint32  iChannelMask,
ProgressNotifier iNotifier 
) const [virtual]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBrightness ( ImageImpl< Pixel > &  ioImage,
double  iBrightness,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustContrast ( ImageImpl< Pixel > &  ioImage,
double  iContrast,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustGamma ( ImageImpl< Pixel > &  ioImage,
double  iGamma,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBCG ( ImageImpl< Pixel > &  ioImage,
double  iBrightness,
double  iContrast,
double  iGamma,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustHue ( ImageImpl< Pixel > &  ioImage,
double  iHue,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustSaturation ( ImageImpl< Pixel > &  ioImage,
double  iSaturation,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustHueSaturation ( ImageImpl< Pixel > &  ioImage,
double  iHue,
double  iSaturation,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustMidtone ( ImageImpl< Pixel > &  ioImage,
double  iMidtone,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustSigmoid ( ImageImpl< Pixel > &  ioImage,
double  iAlpha,
double  iBeta,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Balance ( ImageImpl< Pixel > &  ioImage,
double  iChannel0,
double  iChannel1,
double  iChannel2,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Posterize ( ImageImpl< Pixel > &  ioImage,
uint32  iLevels,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Solarize ( ImageImpl< Pixel > &  ioImage,
double  iThreshold,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Colorize ( ImageImpl< Pixel > &  ioImage,
double  iHue,
double  iSaturation,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Desaturate ( ImageImpl< Pixel > &  ioImage,
double  iFactor = 0.3,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]

template<class Pixel >
static bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Blend ( ImageImpl< Pixel > &  ioImage,
const ImageImpl< Pixel > &  iImage,
double  iScalar,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) [static]


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

Generated on 14 Apr 2009 by doxygen 1.5.8