Image Component Library (ICL)
Public Types | Public Member Functions | Private Attributes | List of all members
icl::filter::GradientImage Class Reference

Class for calculation of gradient image information. More...

#include <GradientImage.h>

Public Types

enum  calculationMode { calculateXYOnly =0, calculateIntensity =1, calculateAngle =2, calculateAll =3 }
 flags to indicate which gradient information should be calculated More...
 

Public Member Functions

 GradientImage ()
 Empty constructor. More...
 
void update (const core::ImgBase *src, calculationMode mode=calculateAll)
 Main function calculates new gradient image information. More...
 
const core::Img16sgetGradXImage () const
 return current X-Gradient image More...
 
const core::Img16sgetGradYImage () const
 return current Y-Gradient image More...
 
const core::Img32fgetGradIntensityImage () const
 return current Gradient-Intensity image More...
 
const core::Img32fgetGradAngleImage () const
 return current Gradient-Angle image More...
 
void normalize ()
 internally normalizes all images to range [0,255] More...
 

Private Attributes

core::Img16s m_oBuf
 
core::Img16s m_oX
 
core::Img16s m_oY
 
core::Img32f m_oI
 
core::Img32f m_oA
 

Detailed Description

Class for calculation of gradient image information.

The GradientImage class provides functionalities for the calculation of the following gradient image information:

For best performance, the input image is restricted to be of type Img8u. The update function will firstly calculate X- and Y-Gradient information using a ConvolutionOp object. X- and Y-Gradient image have range [0,255] now (result of Sobel-Filter is internally scaled to the range of the used datatype icl8u. Further calculation of gradient intensity and gradient angle depends on the given calculation mode flag.

Member Enumeration Documentation

flags to indicate which gradient information should be calculated

Enumerator
calculateXYOnly 

only calculate X- and Y-Gradient

calculateIntensity 

X/Y-Gradient and intensity map.

calculateAngle 

X/Y-Gradient and angle map.

calculateAll 

X/Y-Gradient, intensity- and angle map.

Constructor & Destructor Documentation

icl::filter::GradientImage::GradientImage ( )
inline

Empty constructor.

Member Function Documentation

const core::Img32f& icl::filter::GradientImage::getGradAngleImage ( ) const
inline

return current Gradient-Angle image

const core::Img32f& icl::filter::GradientImage::getGradIntensityImage ( ) const
inline

return current Gradient-Intensity image

const core::Img16s& icl::filter::GradientImage::getGradXImage ( ) const
inline

return current X-Gradient image

const core::Img16s& icl::filter::GradientImage::getGradYImage ( ) const
inline

return current Y-Gradient image

void icl::filter::GradientImage::normalize ( )

internally normalizes all images to range [0,255]

void icl::filter::GradientImage::update ( const core::ImgBase src,
calculationMode  mode = calculateAll 
)

Main function calculates new gradient image information.

Member Data Documentation

core::Img32f icl::filter::GradientImage::m_oA
private
core::Img16s icl::filter::GradientImage::m_oBuf
private
core::Img32f icl::filter::GradientImage::m_oI
private
core::Img16s icl::filter::GradientImage::m_oX
private
core::Img16s icl::filter::GradientImage::m_oY
private

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