Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel > Class Template Reference
[Image Enhancement FiltersMathematical Morphology Image Filters]

Binary dilation of an image. More...

#include <itkBinaryDilateImageFilter.h>

Inheritance diagram for itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >:

Inheritance graph
[legend]
Collaboration diagram for itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef BinaryDilateImageFilter Self
typedef MorphologyImageFilter<
TInputImage, TOutputImage,
TKernel > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::PixelType PixelType
typedef ConstNeighborhoodIterator<
TInputImage > 
NeighborhoodIteratorType
typedef TKernel KernelType
typedef KernelType::ConstIterator KernelIteratorType

Public Member Functions

virtual const char * GetClassName () const
virtual void SetDilateValue (PixelType _arg)
virtual PixelType GetDilateValue ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 BinaryDilateImageFilter ()
 ~BinaryDilateImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
PixelType Evaluate (const NeighborhoodIteratorType &nit, const KernelIteratorType kernelBegin, const KernelIteratorType kernelEnd)
virtual void BeforeThreadedGenerateData ()

Detailed Description

template<class TInputImage, class TOutputImage, class TKernel>
class itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >

Binary dilation of an image.

Dilate an image using binary morphology. Gray scale images can be processed as binary images by selecting a "DilateValue". Pixel values matching the dilate value are considered the "foreground" and all other pixels are "background". This is useful in processing segmented images where all pixels in segment #1 have value 1 and pixels in segment #2 have value 2, etc. A particular "segment number" can be processed. DilateValue defaults to the maximum possible value of the PixelType.

Binary dilation will set a pixel as the "DilateValue" if any of the pixels in the image under the structuring element have a value of "DilateValue" and that structuring element value is greater than 0.

The structuring element is assumed to be composed of binary values (zero or one). Only elements of the structuring element having values > 0 are candidates for affecting the center pixel. A reasonable choice of structuring element is itk::BinaryBallStructuringElement.

If none of the pixels under the structuring element have DilateValue, the pixel under the center pixel value of the structuring element is unchanged. If the center pixel is "in" the structuring element (value > 0), then leaving the pixel unchanged is the right things to do since that is most appropriate "background" value for the pixel. If the center pixel is not part of the structuring element (a rare designation), then leaving the pixel unchanged is not correct in the strict morphological definition (operating on an image with multiple background values is not defined in morphology). Under these conditions, the center pixel should be set to "a" background value. However, we do not know which background value to set it to.

For the each input image pixel,

See also:
MorphologyImageFilter

BinaryErodeImageFilter

Definition at line 69 of file itkBinaryDilateImageFilter.h.


Member Typedef Documentation

template<class TInputImage, class TOutputImage, class TKernel>
typedef SmartPointer<const Self> itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::ConstPointer
 

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 78 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef KernelType::ConstIterator itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::KernelIteratorType
 

Kernel (structuring element) iterator

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 97 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef TKernel itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::KernelType
 

Kernel typedef

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 94 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef ConstNeighborhoodIterator<TInputImage> itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::NeighborhoodIteratorType
 

Neighborhood iterator type

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 91 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef Superclass::PixelType itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::PixelType
 

Declaration of Pixel Type

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 87 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef SmartPointer<Self> itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Pointer
 

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 77 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef BinaryDilateImageFilter itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Self
 

Standard class typedefs.

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 74 of file itkBinaryDilateImageFilter.h.

template<class TInputImage, class TOutputImage, class TKernel>
typedef MorphologyImageFilter<TInputImage, TOutputImage, TKernel> itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Superclass
 

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

Definition at line 76 of file itkBinaryDilateImageFilter.h.


Constructor & Destructor Documentation

template<class TInputImage, class TOutputImage, class TKernel>
itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::BinaryDilateImageFilter  )  [protected]
 

template<class TInputImage, class TOutputImage, class TKernel>
itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::~BinaryDilateImageFilter  )  [inline, protected]
 

Definition at line 109 of file itkBinaryDilateImageFilter.h.


Member Function Documentation

template<class TInputImage, class TOutputImage, class TKernel>
virtual void itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::BeforeThreadedGenerateData  )  [protected, virtual]
 

Cache some information that can be used to by each thread and each call to Evaluate()

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage, class TOutputImage, class TKernel>
PixelType itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::Evaluate const NeighborhoodIteratorType nit,
const KernelIteratorType  kernelBegin,
const KernelIteratorType  kernelEnd
[protected, virtual]
 

Evaluate image neighborhood with kernel to find the new value for the center pixel value

It will return the DilateValue if any of the image pixels in the neighborhood have the DilateValue and that pixel's corresponding element in the structuring element is positive. This version of Evaluate is used for non-boundary pixels.

Implements itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

template<class TInputImage, class TOutputImage, class TKernel>
virtual const char* itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::GetClassName  )  const [virtual]
 

Runtime information support

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

template<class TInputImage, class TOutputImage, class TKernel>
virtual PixelType itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::GetDilateValue  )  [virtual]
 

Get the value in the image considered as "foreground". Defaults to maximum value of PixelType.

template<class TInputImage, class TOutputImage, class TKernel>
Pointer itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::New  )  [static]
 

Standard New method

Reimplemented from itk::Object.

template<class TInputImage, class TOutputImage, class TKernel>
void itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::MorphologyImageFilter< TInputImage, TOutputImage, TKernel >.

template<class TInputImage, class TOutputImage, class TKernel>
virtual void itk::BinaryDilateImageFilter< TInputImage, TOutputImage, TKernel >::SetDilateValue PixelType  _arg  )  [virtual]
 

Set the value in the image to consider as "foreground". Defaults to maximum value of PixelType.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 02:52:03 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000