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

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

Implementation of image operators interface. More...

#include <ImageOperatorsImpl.h>

Inheritance diagram for eLynx::Image::ImageOperatorsImpl< Pixel >:
eLynx::Image::IImageOperators

List of all members.

Public Member Functions

Generic virtual services
virtual bool Operator (AbstractImage &ioImage, EImageOperator iOperator, double iValue, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
 Apply operator with const value.
virtual bool Operator (AbstractImage &ioImage, EImageOperator iOperator, const AbstractImage &iImage, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
 Apply operator with another image, ioImage = ioImage (operator) iImage ioImage and iImage must have the same format and size.
virtual bool Operator (AbstractImage &ioImage, EImageOperator iOperator, const AbstractImage &iImage, const ImageLub &iImageMask, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
 Apply operator with another image, ioImage = ioImage (operator) iImage ioImage and iImage must have the same format and size.
virtual bool Operator (AbstractImage &ioImage, EImageOperator iOperator, const std::vector< const AbstractImage * > &iImageList, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL) const
 Apply operator on image list, oImage = operator iImageList.
virtual boost::shared_ptr
< AbstractImage
CreateImage (EImageListOperator iOperator, const std::vector< const AbstractImage * > &iImageList, uint32 iChannelMask, ProgressNotifier &iNotifier) const
 Image factory.
virtual boost::shared_ptr
< AbstractImage
CreateClipped (EImageListOperator iOperator, const std::vector< const AbstractImage * > &iImageList, uint32 iIteration, double iKappa, uint32 iChannelMask, ProgressNotifier &iNotifier) const
 Creates an image from the list of images by using one of the following methods:

  • Kappa-sigma clipping where first extreme values are rejected iteratively then the remaining values are averaged,
  • Median Kappa-sigma clipping is the same as the first one but instead of averaging remaining values, the median of the remaining values is used,
  • Auto Adaptive weighted average where extreme values are not rejected but instead assigned a very low weight.

virtual boost::shared_ptr
< AbstractImage
CreateWeightedEntropy (const std::vector< const AbstractImage * > &iImageList, uint32 iW, uint32 iH, uint32 iChannelMask, ProgressNotifier &iNotifier) const
 Creates an image from the list of images by using Weighted Entropy method.

Static Public Member Functions

Specialized static services
static bool Operator (ImageImpl< Pixel > &ioImage, EImageOperator iOperator, const ImageImpl< Pixel > &iImage, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool OperatorMedian (AbstractImage &oImage, const std::vector< const AbstractImage * > &iImageList, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)
static bool OperatorMean (AbstractImage &oImage, const std::vector< const AbstractImage * > &iImageList, uint32 iChannelMask=CM_All, ProgressNotifier &iNotifier=ProgressNotifier_NULL)

Detailed Description

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

Implementation of image operators interface.


Member Function Documentation

template<class Pixel >
virtual boost::shared_ptr< AbstractImage > eLynx::Image::ImageOperatorsImpl< Pixel >::CreateClipped ( EImageListOperator  iOperator,
const std::vector< const AbstractImage * > &  iImageList,
uint32  iIteration,
double  iKappa,
uint32  iChannelMask,
ProgressNotifier iNotifier 
) const [virtual]

Creates an image from the list of images by using one of the following methods:

  • Kappa-sigma clipping where first extreme values are rejected iteratively then the remaining values are averaged,
  • Median Kappa-sigma clipping is the same as the first one but instead of averaging remaining values, the median of the remaining values is used,
  • Auto Adaptive weighted average where extreme values are not rejected but instead assigned a very low weight.

So all the values are kept but the weight of each value depends on how far the value is from the mean.

Parameters:
iOperatorMethod to apply.
iImageListVector of pointers to input images.
iIterationNumber of iterations.
iKappaKappa parameter.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
new clipped image.

Implements eLynx::Image::IImageOperators.

template<class Pixel >
virtual boost::shared_ptr< AbstractImage > eLynx::Image::ImageOperatorsImpl< Pixel >::CreateWeightedEntropy ( const std::vector< const AbstractImage * > &  iImageList,
uint32  iW,
uint32  iH,
uint32  iChannelMask,
ProgressNotifier iNotifier 
) const [virtual]

Creates an image from the list of images by using Weighted Entropy method.

Parameters:
iImageListVector of pointers to input images.
iWWidth of the window to calculate the entropy.
iHHeight of the window to calculate the entropy.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
new averaged image.

Implements eLynx::Image::IImageOperators.

template<class Pixel >
virtual bool eLynx::Image::ImageOperatorsImpl< Pixel >::Operator ( AbstractImage ioImage,
EImageOperator  iOperator,
double  iValue,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Apply operator with const value.

Parameters:
ioImageimage to process.
iOperatorOperator to apply.
iValuedouble value as argument of operator.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImageOperators.

template<class Pixel >
virtual bool eLynx::Image::ImageOperatorsImpl< Pixel >::Operator ( AbstractImage ioImage,
EImageOperator  iOperator,
const std::vector< const AbstractImage * > &  iImageList,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Apply operator on image list, oImage = operator iImageList.

All images including the output one must have the same format and size.

Parameters:
ioImageimage to process.
iOperatorOperator to apply.
iImageListcollection of the input images to compute the average.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImageOperators.

template<class Pixel >
virtual bool eLynx::Image::ImageOperatorsImpl< Pixel >::Operator ( AbstractImage ioImage,
EImageOperator  iOperator,
const AbstractImage iImage,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Apply operator with another image, ioImage = ioImage (operator) iImage ioImage and iImage must have the same format and size.

Parameters:
ioImageimage to process.
iOperatorOperator to apply.
iImage2nd image as operator argument.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImageOperators.

template<class Pixel >
virtual bool eLynx::Image::ImageOperatorsImpl< Pixel >::Operator ( AbstractImage ioImage,
EImageOperator  iOperator,
const AbstractImage iImage,
const ImageLub iImageMask,
uint32  iChannelMask = CM_All,
ProgressNotifier iNotifier = ProgressNotifier_NULL 
) const [virtual]

Apply operator with another image, ioImage = ioImage (operator) iImage ioImage and iImage must have the same format and size.

Parameters:
ioImageimage to process.
iOperatorOperator to apply.
iImage2nd image as operator argument.
iImageMaskimage mask, operator is not applied where value is 0.
iChannelMaskselected channels to be processed. Default is all.
iNotifiera notifier for progression, log and cancel.
Returns:
Method running status.

Implements eLynx::Image::IImageOperators.


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

Generated on Thu Dec 9 2010 by doxygen 1.7.2