Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

qgar::DericheGradientImage Class Reference
[Gradients and Laplacians]

#include <qgarlib/DericheGradientImage.H>

Inheritance diagram for qgar::DericheGradientImage:

qgar::AbstractGradientImage qgar::AbstractMultiImage List of all members.

Detailed Description

Deriche's optimal edge detector.

The code is based on a previous implementation by Djemel Ziou and Salvatore Tabbone, as described in [Deriche, 1987].

Author:
Karl Tombre
Date:
July 3, 2001 11:15
Since:
Qgar 1.0

Definition at line 67 of file DericheGradientImage.H.

Public Types

Types
typedef float value_type
 Type of the elements stored in the pixmaps.
typedef value_typereference
 Reference to qgar::AbstractGradientImage::value_type.
typedef const value_typeconst_reference
 Constant reference to qgar::AbstractGradientImage::value_type.
typedef value_typepointer
 Pointer to qgar::AbstractGradientImage::value_type.
typedef const value_typeconst_pointer
 Constant pointer to qgar::AbstractGradientImage::value_type.

Public Member Functions

Constructors
 DericheGradientImage (const GreyLevelImage &img, float alpha=1.0, float w=.01, int normalized=0)
 Construct from given grey-level image.
 DericheGradientImage (const FloatImage &img, float alpha=1.0, float w=.01, int normalized=0)
 Construct from a float image.
Access
FloatImage dxImg () const
 Get copy of x derivatives image.
const FloatImageaccessDxImg () const
 Get image of x derivatives.
FloatImage dyImg () const
 Get copy of y derivatives image.
const FloatImageaccessDyImg () const
 Get copy of y derivatives image.
float dxPixel (int aX, int aY) const
 Get x derivative value of a pixel.
float dyPixel (int aX, int aY) const
 Get y derivative value of a pixel.
float gradientModule (int aX, int aY) const
 Get the gradient module of a pixel.
Copy the current image
AbstractGradientImage shallowCopy ()
 Shallow copy: The x and y pixel maps of the deritave images (qgar::AbstractGradientImage::_dxImg and qgar::AbstractGradientImage::_dyImg) of the given image are not duplicated.
Access to image characteristics
int width () const
 Get the image width.
int height () const
 Get the image height.

Protected Attributes

Parameters (see Deriche's paper)
float _alpha
 The alpha parameter.
float _w
 The w parameter.
Representation of a gradient image
FloatImage _dxImg
 Image of x derivatives.
FloatImage _dyImg
 Image of y derivatives.
Representation of an image
int _width
 Width of the image.
int _height
 Height of the image.

Private Member Functions

Filtering
void dfilterX ()
 X filter.
void dfilterY ()
Auxiliaries
void PRIVATEbuildDericheImage (int normalized)
 The effective computation of the contour image.

Private Attributes

Parameters to implement the IIR filter
float a
float a0
float a1
float a2
float a3
float b1
float b2


Member Typedef Documentation

typedef const value_type* qgar::AbstractGradientImage::const_pointer [inherited]
 

Constant pointer to qgar::AbstractGradientImage::value_type.

Reimplemented in qgar::CannyGradientImage.

Definition at line 112 of file AbstractGradientImage.H.

typedef const value_type& qgar::AbstractGradientImage::const_reference [inherited]
 

Constant reference to qgar::AbstractGradientImage::value_type.

Reimplemented in qgar::CannyGradientImage.

Definition at line 102 of file AbstractGradientImage.H.

typedef value_type* qgar::AbstractGradientImage::pointer [inherited]
 

Pointer to qgar::AbstractGradientImage::value_type.

Reimplemented in qgar::CannyGradientImage.

Definition at line 107 of file AbstractGradientImage.H.

typedef value_type& qgar::AbstractGradientImage::reference [inherited]
 

Reference to qgar::AbstractGradientImage::value_type.

Reimplemented in qgar::CannyGradientImage.

Definition at line 97 of file AbstractGradientImage.H.

typedef float qgar::AbstractGradientImage::value_type [inherited]
 

Type of the elements stored in the pixmaps.

Reimplemented in qgar::CannyGradientImage.

Definition at line 92 of file AbstractGradientImage.H.


Constructor & Destructor Documentation

qgar::DericheGradientImage::DericheGradientImage const GreyLevelImage img,
float  alpha = 1.0,
float  w = .01,
int  normalized = 0
 

Construct from given grey-level image.

Parameters:
img grey-level image to derive
alpha parameter of the Deriche filter (default 1.0)
w parameter of the Deriche filter (default 0.01)
normalized = 1 if filter is normalized to have a surface of 1. Default is 0: In this case, the filter preserves the height of the step edge.

Definition at line 58 of file DericheGradientImage.C.

References PRIVATEbuildDericheImage().

qgar::DericheGradientImage::DericheGradientImage const FloatImage img,
float  alpha = 1.0,
float  w = .01,
int  normalized = 0
 

Construct from a float image.

Parameters:
img float image to derive
alpha parameter of the Deriche filter (default 1.0)
w parameter of the Deriche filter (default 0.01)
normalized = 1 if filter is normalized to have a surface of 1. Default is 0: In this case, the filter preserves the height of the step edge.

Definition at line 74 of file DericheGradientImage.C.

References PRIVATEbuildDericheImage().


Member Function Documentation

const FloatImage & qgar::AbstractGradientImage::accessDxImg  )  const [inline, inherited]
 

Get image of x derivatives.

Definition at line 339 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dxImg.

Referenced by qgar::GradientLocalMaxImage::GradientLocalMaxImage().

const FloatImage & qgar::AbstractGradientImage::accessDyImg  )  const [inline, inherited]
 

Get copy of y derivatives image.

Definition at line 351 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dyImg.

Referenced by qgar::GradientLocalMaxImage::GradientLocalMaxImage().

void qgar::DericheGradientImage::dfilterX  )  [private]
 

X filter.

Definition at line 143 of file DericheGradientImage.C.

References qgar::AbstractGradientImage::_dxImg, qgar::AbstractMultiImage::_height, qgar::AbstractMultiImage::_width, a, a0, a1, a2, a3, b1, b2, and qgar::GenImage< T, CheckPolicy >::pPixMap().

Referenced by PRIVATEbuildDericheImage().

void qgar::DericheGradientImage::dfilterY  )  [private]
 

Y filter.

Definition at line 264 of file DericheGradientImage.C.

References qgar::AbstractGradientImage::_dyImg, qgar::AbstractMultiImage::_height, qgar::AbstractMultiImage::_width, a, a0, a1, a2, a3, b1, b2, and qgar::GenImage< T, CheckPolicy >::pPixMap().

Referenced by PRIVATEbuildDericheImage().

FloatImage qgar::AbstractGradientImage::dxImg  )  const [inline, inherited]
 

Get copy of x derivatives image.

Definition at line 333 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dxImg.

Referenced by qgar::GradientModuleImage::GradientModuleImage().

float qgar::AbstractGradientImage::dxPixel int  aX,
int  aY
const [inline, inherited]
 

Get x derivative value of a pixel.

Parameters:
aX X coordinate (column index) of the pixel
aY Y coordinate (row index) of the pixel

Definition at line 357 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dxImg, and qgar::GenImage< T, CheckPolicy >::pixel().

Referenced by qgar::AbstractGradientImage::gradientModule().

FloatImage qgar::AbstractGradientImage::dyImg  )  const [inline, inherited]
 

Get copy of y derivatives image.

Definition at line 345 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dyImg.

Referenced by qgar::GradientModuleImage::GradientModuleImage().

float qgar::AbstractGradientImage::dyPixel int  aX,
int  aY
const [inline, inherited]
 

Get y derivative value of a pixel.

Parameters:
aX X coordinate (column index) of the pixel
aY Y coordinate (row index) of the pixel

Definition at line 363 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dyImg, and qgar::GenImage< T, CheckPolicy >::pixel().

Referenced by qgar::AbstractGradientImage::gradientModule().

float qgar::AbstractGradientImage::gradientModule int  aX,
int  aY
const [inline, inherited]
 

Get the gradient module of a pixel.

Parameters:
aX X coordinate (column index) of the pixel
aY Y coordinate (row index) of the pixel

Definition at line 369 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::dxPixel(), and qgar::AbstractGradientImage::dyPixel().

int qgar::AbstractMultiImage::height  )  const [inline, inherited]
 

Get the image height.

Definition at line 191 of file AbstractMultiImage.H.

References qgar::AbstractMultiImage::_height.

void qgar::DericheGradientImage::PRIVATEbuildDericheImage int  normalized  )  [private]
 

The effective computation of the contour image.

Definition at line 94 of file DericheGradientImage.C.

References _alpha, _w, a, a0, a1, a2, a3, b1, b2, dfilterX(), and dfilterY().

Referenced by DericheGradientImage().

AbstractGradientImage qgar::AbstractGradientImage::shallowCopy  )  [inline, inherited]
 

Shallow copy: The x and y pixel maps of the deritave images (qgar::AbstractGradientImage::_dxImg and qgar::AbstractGradientImage::_dyImg) of the given image are not duplicated.

See also:
qgar::AbstractGradientImage::operator= and copy constructor.
Warning:
When the copy is completed, the x and y pixel maps of the deritave images of the new image share their memory space with the pixel maps of the current image.

Definition at line 381 of file AbstractGradientImage.H.

References qgar::AbstractGradientImage::_dxImg, qgar::AbstractGradientImage::_dyImg, qgar::AbstractMultiImage::_height, qgar::AbstractMultiImage::_width, qgar::AbstractGradientImage::AbstractGradientImage(), and qgar::GenImage< T, CheckPolicy >::shallowCopy().

int qgar::AbstractMultiImage::width  )  const [inline, inherited]
 

Get the image width.

Definition at line 182 of file AbstractMultiImage.H.

References qgar::AbstractMultiImage::_width.


Member Data Documentation

float qgar::DericheGradientImage::_alpha [protected]
 

The alpha parameter.

Definition at line 122 of file DericheGradientImage.H.

Referenced by PRIVATEbuildDericheImage().

FloatImage qgar::AbstractGradientImage::_dxImg [protected, inherited]
 

Image of x derivatives.

Definition at line 308 of file AbstractGradientImage.H.

Referenced by qgar::AbstractGradientImage::AbstractGradientImage(), qgar::AbstractGradientImage::accessDxImg(), dfilterX(), qgar::AbstractGradientImage::dxImg(), qgar::AbstractGradientImage::dxPixel(), qgar::AbstractGradientImage::operator=(), qgar::CannyGradientImage::PRIVATE_CannyImage(), and qgar::AbstractGradientImage::shallowCopy().

FloatImage qgar::AbstractGradientImage::_dyImg [protected, inherited]
 

Image of y derivatives.

Definition at line 312 of file AbstractGradientImage.H.

Referenced by qgar::AbstractGradientImage::AbstractGradientImage(), qgar::AbstractGradientImage::accessDyImg(), dfilterY(), qgar::AbstractGradientImage::dyImg(), qgar::AbstractGradientImage::dyPixel(), qgar::AbstractGradientImage::operator=(), qgar::CannyGradientImage::PRIVATE_CannyImage(), and qgar::AbstractGradientImage::shallowCopy().

int qgar::AbstractMultiImage::_height [protected, inherited]
 

Height of the image.

Definition at line 159 of file AbstractMultiImage.H.

Referenced by qgar::AbstractGradientImage::AbstractGradientImage(), dfilterX(), dfilterY(), qgar::AbstractMultiImage::height(), qgar::AbstractMultiImage::operator=(), and qgar::AbstractGradientImage::shallowCopy().

float qgar::DericheGradientImage::_w [protected]
 

The w parameter.

Definition at line 127 of file DericheGradientImage.H.

Referenced by PRIVATEbuildDericheImage().

int qgar::AbstractMultiImage::_width [protected, inherited]
 

Width of the image.

Definition at line 154 of file AbstractMultiImage.H.

Referenced by qgar::AbstractGradientImage::AbstractGradientImage(), dfilterX(), dfilterY(), qgar::AbstractMultiImage::operator=(), qgar::AbstractGradientImage::shallowCopy(), and qgar::AbstractMultiImage::width().

float qgar::DericheGradientImage::a [private]
 

Definition at line 139 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::a0 [private]
 

Definition at line 141 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::a1 [private]
 

Definition at line 143 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::a2 [private]
 

Definition at line 145 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::a3 [private]
 

Definition at line 147 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::b1 [private]
 

Definition at line 149 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().

float qgar::DericheGradientImage::b2 [private]
 

Definition at line 151 of file DericheGradientImage.H.

Referenced by dfilterX(), dfilterY(), and PRIVATEbuildDericheImage().


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