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

itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension > Class Template Reference
[Watershed-based Segmentation Filters]

#include <itkWatershedEquivalenceRelabeler.h>

Inheritance diagram for itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >:

Inheritance graph
[legend]
Collaboration diagram for itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >:

Collaboration graph
[legend]
List of all members.

[NOHEADER]

typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
virtual const char * GetClassName () const
Pointer New ()

Public Types

typedef Image< unsigned long,
TImageDimension > 
ImageType
typedef EquivalenceRelabeler Self
typedef ProcessObject Superclass
typedef TScalarType ScalarType
typedef EquivalencyTable EquivalencyTableType
typedef Segmenter< Image<
ScalarType, TImageDimension > > 
SegmenterType
typedef DataObject::Pointer DataObjectPointer

Public Member Functions

 itkStaticConstMacro (ImageDimension, unsigned int, TImageDimension)
void GenerateData ()
virtual DataObjectPointer MakeOutput (unsigned int idx)
void SetInputImage (ImageType *img)
const ImageTypeGetInputImage (void)
void SetOutputImage (ImageType *img)
ImageType::Pointer GetOutputImage ()
void SetEquivalencyTable (EquivalencyTableType *et)
EquivalencyTableType::Pointer GetEquivalencyTable ()

Protected Member Functions

 EquivalenceRelabeler ()
virtual ~EquivalenceRelabeler ()
 EquivalenceRelabeler (const Self &)
void operator= (const Self &)
void PrintSelf (std::ostream &os, Indent indent) const
void GenerateOutputRequestedRegion (DataObject *output)
void GenerateInputRequestedRegion ()

Detailed Description

template<class TScalarType, unsigned int TImageDimension>
class itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >

This class is part of the set of watershed segmentation component objects. It is an image-to-image filter that relabels its input according to a set of equivalencies defined in a table. The filter is used in itk::WatershedImageFilter, for example, to relabel a segmented image at different hierarchies in the merge tree (see itk::WatershedImageFilter for documentation on terminology). It simply takes its input and changes any values found in the equivalency table.

Inputs
There are two inputs to this filter, an unsigned long itk::Image of arbitrary dimension, and an itk::EquivalencyTable. The input image is the image to be relabeled and copied to the output, and the EquivalencyTable identifies how to relabel the values.
Output
The output of this filter is the relabeled unsigned long itk::Image of same dimension and size as the input.
See also:
itk::WatershedImageFilter

EquivalencyTable

Definition at line 52 of file itkWatershedEquivalenceRelabeler.h.


Member Typedef Documentation

template<class TScalarType, unsigned int TImageDimension>
typedef SmartPointer<const Self> itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::ConstPointer
 

Define smart pointers for this object.

Reimplemented from itk::ProcessObject.

Definition at line 70 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef DataObject::Pointer itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::DataObjectPointer
 

Smart Pointer type to a DataObject.

Reimplemented from itk::ProcessObject.

Definition at line 66 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef EquivalencyTable itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::EquivalencyTableType
 

Definition at line 64 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef Image<unsigned long, TImageDimension> itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::ImageType
 

Some convenient typedefs. Definition at line 60 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef SmartPointer<Self> itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::Pointer
 

Define smart pointers for this object.

Reimplemented from itk::ProcessObject.

Definition at line 69 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef TScalarType itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::ScalarType
 

Definition at line 63 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef Segmenter<Image<ScalarType, TImageDimension> > itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::SegmenterType
 

Definition at line 65 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef EquivalenceRelabeler itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::Self
 

Standard class typedefs.

Reimplemented from itk::ProcessObject.

Definition at line 61 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
typedef ProcessObject itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::Superclass
 

Reimplemented from itk::ProcessObject.

Definition at line 62 of file itkWatershedEquivalenceRelabeler.h.


Constructor & Destructor Documentation

template<class TScalarType, unsigned int TImageDimension>
itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::EquivalenceRelabeler  )  [inline, protected]
 

Definition at line 114 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
virtual itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::~EquivalenceRelabeler  )  [inline, protected, virtual]
 

Definition at line 121 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::EquivalenceRelabeler const Self  )  [inline, protected]
 

Definition at line 122 of file itkWatershedEquivalenceRelabeler.h.


Member Function Documentation

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GenerateData  )  [virtual]
 

Standard non-threaded pipeline method

Reimplemented from itk::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GenerateInputRequestedRegion  )  [protected, virtual]
 

What is the input requested region that is required to produce the output requested region? By default, the largest possible region is always required but this is overridden in many subclasses. For instance, for an image processing filter where an output pixel is a simple function of an input pixel, the input requested region will be set to the output requested region. For an image processing filter where an output pixel is a function of the pixels in a neighborhood of an input pixel, then the input requested region will need to be larger than the output requested region (to avoid introducing artificial boundary conditions). This function should never request an input region that is outside the the input largest possible region (i.e. implementations of this method should crop the input requested region at the boundaries of the input largest possible region).

Reimplemented from itk::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GenerateOutputRequestedRegion DataObject output  )  [protected, virtual]
 

Given one output whose requested region has been set, how should the requested regions for the remaining outputs of the process object be set? By default, all the outputs are set to the same requested region. If a filter needs to produce different requested regions for each output, for instance an image processing filter producing several outputs at different resolutions, then that filter may override this method and set the requested regions appropriatedly.

Note that a filter producing multiple outputs of different types is required to override this method. The default implementation can only correctly handle multiple outputs of the same type.

Reimplemented from itk::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
virtual const char* itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GetClassName  )  const [virtual]
 

Define smart pointers for this object.

Reimplemented from itk::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
EquivalencyTableType::Pointer itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GetEquivalencyTable  )  [inline]
 

Set/Get the table to use in relabeling the input image. Definition at line 100 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
const ImageType* itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GetInputImage void   )  [inline]
 

Set/Get the image to relabel. Definition at line 78 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
ImageType::Pointer itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::GetOutputImage  )  [inline]
 

Set/Get the output image Definition at line 90 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
TImageDimension 
 

Expose templated image dimension parameter at run time

template<class TScalarType, unsigned int TImageDimension>
virtual DataObjectPointer itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::MakeOutput unsigned int  idx  )  [virtual]
 

Standard itk::ProcessObject subclass method.

Reimplemented from itk::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
Pointer itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::New  )  [static]
 

Define smart pointers for this object.

Reimplemented from itk::Object.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::operator= const Self  )  [inline, protected]
 

Reimplemented from itk::ProcessObject.

Definition at line 123 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::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::ProcessObject.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::SetEquivalencyTable EquivalencyTableType et  )  [inline]
 

Set/Get the table to use in relabeling the input image. Definition at line 96 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::SetInputImage ImageType img  )  [inline]
 

Set/Get the image to relabel. Definition at line 76 of file itkWatershedEquivalenceRelabeler.h.

template<class TScalarType, unsigned int TImageDimension>
void itk::watershed::EquivalenceRelabeler< TScalarType, TImageDimension >::SetOutputImage ImageType img  )  [inline]
 

Set/Get the output image Definition at line 86 of file itkWatershedEquivalenceRelabeler.h.


The documentation for this class was generated from the following file:
Generated at Sat Mar 31 03:14:06 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000