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

itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage > Class Template Reference
[Level Set-Based Segmentation Filters]

Edge based shape detection using geodesic active contours. More...

#include <itkGeodesicActiveContourImageFilter.h>

Inheritance diagram for itk::GeodesicActiveContourImageFilter:

Inheritance graph
[legend]
Collaboration diagram for itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef GeodesicActiveContourImageFilter Self
typedef ShapeDetectionLevelSetFilter<
TLevelSet, TEdgeImage > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef LevelSetTypeDefault<
TLevelSet > 
LevelSetType
typedef LevelSetType::LevelSetImageType LevelSetImageType
typedef LevelSetType::LevelSetPointer LevelSetPointer
typedef LevelSetType::PixelType PixelType
typedef LevelSetType::NodeType NodeType
typedef LevelSetType::NodeContainer NodeContainer
typedef LevelSetType::NodeContainerPointer NodeContainerPointer
typedef TEdgeImage EdgeImageType
typedef EdgeImageType::Pointer EdgeImagePointer
typedef TDerivImage DerivImageType
typedef DerivImageType::Pointer DerivImagePointer

Public Methods

virtual const char * GetClassName () const
 itkStaticConstMacro (SetDimension, unsigned int, TLevelSet::ImageDimension)
virtual void SetInflationStrength (double _arg)
virtual double GetInflationStrength ()
void SetDerivativeImage (TDerivImage *ptr, unsigned int idx=0)
DerivImageTypeGetDerivativeImage (unsigned int idx)

Static Public Methods

Pointer New ()

Protected Methods

 GeodesicActiveContourImageFilter ()
 ~GeodesicActiveContourImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual void GenerateDataFull ()
virtual void GenerateDataNarrowBand ()
virtual void GenerateInputRequestedRegion ()

Detailed Description

template<class TLevelSet, class TEdgeImage, class TDerivImage>
class itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >

Edge based shape detection using geodesic active contours.

GeodesicActiveContourImageFilter is a level set approach for boundary detection. An initial contour is evolved to minimise a weighted curve length functional, where the weight depends on the edge potential function.

The advantage of this approach over ShapeDetectionLevelSetFilter is that the evolution equation has an addition term which acts like a doublet and attracts the contour to the shape boundaries. This improves boundary detection in cases where edge features are weak.

This class requires three inputs: an initial level set, a edge potential map and the derivatives of the edge potential.

The initial level set is a floating point image which contains the initial contour as the zero level set. For example, a signed distance function from the initial front is typically used.

The edge potential image has values close to zero in regions of high image gradient and values close to one in regions with relatively constant intensity.

This class is templated on the image type which represent the level set, the type of the edge potential image and the type oft the edge potential derivatives.

This class supports narrowbanding, where at each iteration only a narrow band surrounding the propagating front is updated.

Implementation of this class is based on: "Geodesic Active Contours", V. Caselles, R. Kimmel and G. Sapiro. International Journal on Computer Vision, Vol 22, No. 1, pp 61-97, 1997

See also:
ShapeDetection
Possible improvements: Note: this filter will eventually be re-implemented as part of the Finite Difference Solver framework.

Definition at line 89 of file itkGeodesicActiveContourImageFilter.h.


Member Typedef Documentation

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef SmartPointer<const Self> itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::ConstPointer
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 97 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef DerivImageType::Pointer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::DerivImagePointer
 

DerivImagePointer typedef support.

Definition at line 124 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef TDerivImage itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::DerivImageType
 

DerivImage typedef support.

Definition at line 121 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef EdgeImageType::Pointer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::EdgeImagePointer
 

EdgeImagePointer typedef support.

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 118 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef TEdgeImage itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::EdgeImageType
 

Typedef support for the EdgeImageType.

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 115 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::LevelSetImageType itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::LevelSetImageType
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 107 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::LevelSetPointer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::LevelSetPointer
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 108 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetTypeDefault<TLevelSet> itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::LevelSetType
 

Typedef support for level set related types.

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 106 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::NodeContainer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::NodeContainer
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 111 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::NodeContainerPointer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::NodeContainerPointer
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 112 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::NodeType itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::NodeType
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 110 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef LevelSetType::PixelType itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::PixelType
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 109 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef SmartPointer<Self> itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::Pointer
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 96 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef GeodesicActiveContourImageFilter itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 94 of file itkGeodesicActiveContourImageFilter.h.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
typedef ShapeDetectionLevelSetFilter<TLevelSet,TEdgeImage> itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::Superclass
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

Definition at line 95 of file itkGeodesicActiveContourImageFilter.h.


Constructor & Destructor Documentation

template<class TLevelSet, class TEdgeImage, class TDerivImage>
itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GeodesicActiveContourImageFilter   [protected]
 

template<class TLevelSet, class TEdgeImage, class TDerivImage>
itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::~GeodesicActiveContourImageFilter   [inline, protected]
 

Definition at line 150 of file itkGeodesicActiveContourImageFilter.h.


Member Function Documentation

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GenerateDataFull   [protected, virtual]
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GenerateDataNarrowBand   [protected, virtual]
 

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GenerateInputRequestedRegion   [protected, virtual]
 

Specify the required input region to satisfiy the output request. The default is to request for the largest possible region for any output. Subclasses should override this method if a different input size is desired.

See also:
ProcessObject::GenerateInputRequestedRegion()

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual const char* itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GetClassName   const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
DerivImageType* itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GetDerivativeImage unsigned int    idx
 

Get the input derivative images.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual double itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::GetInflationStrength   [virtual]
 

Get the inflation strength.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::itkStaticConstMacro SetDimension   ,
unsigned    int,
TLevelSet::ImageDimension   
 

Determine the image dimension.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
Pointer itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::New   [static]
 

Method for creation through the object factory.

Reimplemented from itk::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::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::ShapeDetectionLevelSetFilter< TLevelSet, TEdgeImage >.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::SetDerivativeImage TDerivImage *    ptr,
unsigned int    idx = 0
 

Set the input derivative images.

template<class TLevelSet, class TEdgeImage, class TDerivImage>
virtual void itk::GeodesicActiveContourImageFilter< TLevelSet, TEdgeImage, TDerivImage >::SetInflationStrength double    _arg [virtual]
 

Set the inflation strength. The parameter control the the strength of the optional ballon force. If PropagateOutward is set to false, this controls the strength of the optional contraction force. Typically, the value is application dependent (e.g. noise level, shape complexity, intensity range). Default value 0.0.


The documentation for this class was generated from the following file:
Generated at Wed Mar 12 01:21:26 2003 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000