|
eLynx SDK
v3.3.0 C++ image processing API reference |
Implementation of point to point image processing interface. More...
#include <ImagePointProcessingImpl.h>
Public Member Functions | |
| virtual bool | AdjustBrightness (AbstractImage &ioImage, double iBrightness, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Change brightness on selected channels, based on the RGB color model. | |
| virtual bool | AdjustContrast (AbstractImage &ioImage, double iContrast, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Change contrast on selected channels, based on the RGB color model. | |
| virtual bool | AdjustGamma (AbstractImage &ioImage, double iGamma, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Gamma correction on selected channels, based on the RGB color model. | |
| virtual bool | AdjustBCG (AbstractImage &ioImage, double iBrightness, double iContrast, double iGamma, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Change brightness + contrast + gamma correction, based on the RGB color model. | |
| virtual bool | AdjustMidtone (AbstractImage &ioImage, double iMidtone, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Midtone correction on selected channels. | |
| virtual bool | AdjustSigmoid (AbstractImage &ioImage, double iAlpha, double iBeta, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| Adjust Sigmoid on selected channels. | |
| virtual bool | AdjustHueSaturation (AbstractImage &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier) const |
| Hue and Saturation adjustment, based on the HLS color model. | |
| virtual bool | AdjustShadowHighlight (AbstractImage &ioImage, double iShadow, double iHighlight, uint32 iChannelMask, ProgressNotifier &iNotifier) const |
| Shadow and highlight adjustment. | |
| virtual bool | Balance (AbstractImage &ioImage, double iRed, double iGreen, double iBlue, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| The Color Balance allows you to adjust the overall mixture of the colors, based on the RGB color model. | |
| virtual bool | Posterize (AbstractImage &ioImage, uint32 iLevels, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| The Posterize effect lets you adjust the number of brightness levels of the image. | |
| virtual bool | Solarize (AbstractImage &ioImage, double iThreshold, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const |
| The Solarize effect blends an image by inverting all color data when intensity value is greater than a threshold. | |
| virtual bool | Colorize (AbstractImage &ioImage, double iHue, double iSaturation, ProgressNotifier &iNotifier) const |
| Colorize an image setting a hue and saturation, based on the HLS color model. | |
| virtual bool | Desaturate (AbstractImage &ioImage, double iFactor, uint32 iChannelMask, ProgressNotifier &iNotifier) const |
| Adjust the Saturation by a multiplier factor, based on the HLS color model. | |
| virtual bool | Blend (AbstractImage &ioImage, const AbstractImage &iImage, double iScalar, uint32 iChannelMask, ProgressNotifier &iNotifier) const |
| Blend two images by a scalar in range [0..1]. | |
|
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, ProgressNotifier &iNotifier=ProgressNotifier_NULL) |
| static bool | AdjustContrast (ImageImpl< Pixel > &ioImage, double iContrast, ProgressNotifier &iNotifier=ProgressNotifier_NULL) |
| static bool | AdjustGamma (ImageImpl< Pixel > &ioImage, double iGamma, ProgressNotifier &iNotifier=ProgressNotifier_NULL) |
| static bool | AdjustBCG (ImageImpl< Pixel > &ioImage, double iBrightness, double iContrast, double iGamma, 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 | AdjustShadowHighlight (ImageImpl< Pixel > &ioImage, double iShadow=0.0, double iHighlight=1.0, uint32 iChannelMask=CM_All, 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, 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) |
Implementation of point to point image processing interface.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBCG | ( | AbstractImage & | ioImage, |
| double | iBrightness, | ||
| double | iContrast, | ||
| double | iGamma, | ||
| ProgressNotifier & | iNotifier = ProgressNotifier_NULL |
||
| ) | const [virtual] |
Change brightness + contrast + gamma correction, based on the RGB color model.
Optimizations: multicore, look up table.
| 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. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustBrightness | ( | AbstractImage & | ioImage, |
| double | iBrightness, | ||
| ProgressNotifier & | iNotifier = ProgressNotifier_NULL |
||
| ) | const [virtual] |
Change brightness on selected channels, based on the RGB color model.
Optimizations: multicore, look up table.
less brightness(-0.3) |
original |
more brightness(+0.3) |
| ioImage | image to process. |
| iBrightness | brightness coefficient in range -1.0, +1.0. 0.0 is the neutral value. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustContrast | ( | AbstractImage & | ioImage, |
| double | iContrast, | ||
| ProgressNotifier & | iNotifier = ProgressNotifier_NULL |
||
| ) | const [virtual] |
Change contrast on selected channels, based on the RGB color model.
Optimizations: multicore, look up table.
less contrast(-0.4) |
original |
more contrast(+0.4) |
| ioImage | image to process. |
| iContrast | contrast coefficient in range -1.0, +1.0. 0.0 is the neutral value. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustGamma | ( | AbstractImage & | ioImage, |
| double | iGamma, | ||
| ProgressNotifier & | iNotifier = ProgressNotifier_NULL |
||
| ) | const [virtual] |
Gamma correction on selected channels, based on the RGB color model.
Optimizations: multicore, look up table.
gamma(0.5) |
original |
gamma(3.0) |
| ioImage | image to process. |
| iGamma | gamma value in range 0.001, +4.0. 1.0 is neutral value. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustHueSaturation | ( | AbstractImage & | ioImage, |
| double | iHue, | ||
| double | iSaturation, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Hue and Saturation adjustment, based on the HLS color model.
Optimizations: multicore.
| 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. |
Implements eLynx::Image::IImagePointProcessing.
| 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.
Optimizations: multicore, look up table.
Midtone(0.2) |
original |
Midtone(0.7) |
| 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 channels. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::AdjustShadowHighlight | ( | AbstractImage & | ioImage, |
| double | iShadow, | ||
| double | iHighlight, | ||
| uint32 | iChannelMask, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Shadow and highlight adjustment.
Optimizations: multicore, look up table.
| ioImage | image to process. |
| iShadow | adjustment in range [0..1]. |
| iHighlight | adjustment in range [0..1]. |
| iChannelMask | selected channels to be processed. Default is all. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| 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.
Optimizations: multicore, look up table.
Sigmoid(2.0, 0.25) |
original |
Sigmoid(0.5, 0.75) |
| 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. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Balance | ( | AbstractImage & | ioImage, |
| double | iRed, | ||
| double | iGreen, | ||
| double | iBlue, | ||
| ProgressNotifier & | iNotifier = ProgressNotifier_NULL |
||
| ) | const [virtual] |
The Color Balance allows you to adjust the overall mixture of the colors, based on the RGB color model.
Optimizations: multicore, look up table.
original |
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.
| ioImage | image to process. |
| iRed | the red factor. |
| iGreen | the green factor. |
| iBlue | the blue factor. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Blend | ( | AbstractImage & | ioImage, |
| const AbstractImage & | iImage, | ||
| double | iScalar, | ||
| uint32 | iChannelMask, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Blend two images by a scalar in range [0..1].
Resulting image is computed as: Notes that images should have the same sizes and same format otherwise it fails and the ioImage is kept unchanged. Optimizations: multicore.
| ioImage | first and output image. |
| iImage | second image to be blend with the first. |
| iScalar | Blending scalar in range [0..1]. |
| iChannelMask | selected channels to be processed. Default is all. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| 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, based on the HLS color model.
Optimizations: multicore.
original |
Colorize(0.10, 0.54) with Sepia tone |
| 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. |
Implements eLynx::Image::IImagePointProcessing.
| virtual bool eLynx::Image::ImagePointProcessingImpl< Pixel >::Desaturate | ( | AbstractImage & | ioImage, |
| double | iFactor, | ||
| uint32 | iChannelMask, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Adjust the Saturation by a multiplier factor, based on the HLS color model.
Optimizations: multicore.
| ioImage | image to process. |
| iFactor | saturation multiplier factor. |
| iChannelMask | selected channels to be processed. Default is all channels. |
| iNotifier | a notifier for progression, log and cancel. |
Implements eLynx::Image::IImagePointProcessing.
| 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.
Optimizations: look up table.
original |
Posterize(3) |
| 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. |
Implements eLynx::Image::IImagePointProcessing.
| 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.
Optimizations: multicore, look up table.
original |
Solarize(0.6) |
| 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. |
Implements eLynx::Image::IImagePointProcessing.