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

itk::CollidingFrontsImageFilter< TInputImage, TOutputImage > Class Template Reference

Selects a region of space where two independent fronts run towards each other. More...

#include <itkCollidingFrontsImageFilter.h>

Inheritance diagram for itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >:

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef CollidingFrontsImageFilter Self
typedef ImageToImageFilter<
TInputImage, TOutputImage > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TOutputImage::PixelType OutputPixelType
typedef TInputImage::PixelType InputPixelType
typedef NumericTraits< InputPixelType
>::RealType 
RealType
typedef TInputImage InputImageType
typedef TOutputImage OutputImageType
typedef InputImageType::Pointer InputImagePointer
typedef OutputImageType::Pointer OutputImagePointer
typedef Superclass::OutputImageRegionType OutputImageRegionType
typedef itk::FastMarchingUpwindGradientImageFilter<
TInputImage, TOutputImage > 
FastMarchingUpwindGradientImageFilterType
typedef FastMarchingUpwindGradientImageFilterType::PixelType PixelType
typedef FastMarchingUpwindGradientImageFilterType::NodeType NodeType
typedef FastMarchingUpwindGradientImageFilterType::NodeContainer NodeContainer
typedef FastMarchingUpwindGradientImageFilterType::NodeContainerPointer NodeContainerPointer
typedef FastMarchingUpwindGradientImageFilterType::GradientImageType GradientImageType
typedef FastMarchingUpwindGradientImageFilterType::IndexType IndexType

Public Member Functions

virtual const char * GetNameOfClass () const
 itkStaticConstMacro (ImageDimension, unsigned int, TOutputImage::ImageDimension)
NodeContainerPointer GetSeedPoints1 ()
NodeContainerPointer GetSeedPoints2 ()
virtual void SetNegativeEpsilon (double _arg)
virtual double GetNegativeEpsilon ()
virtual void SetApplyConnectivity (bool _arg)
virtual bool GetApplyConnectivity ()
virtual void ApplyConnectivityOn ()
virtual void ApplyConnectivityOff ()
void SetSeedPoints1 (NodeContainer *points)
void SetSeedPoints2 (NodeContainer *points)

Static Public Member Functions

Pointer New ()

Protected Member Functions

 CollidingFrontsImageFilter ()
virtual ~CollidingFrontsImageFilter ()
void GenerateData ()
void PrintSelf (std::ostream &, Indent) const

Detailed Description

template<typename TInputImage, typename TOutputImage>
class itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >

Selects a region of space where two independent fronts run towards each other.

The filter can be used to quickly segment anatomical structures (e.g. for level set initialization).

The filter uses two instances of FastMarchingUpwindGradientImageFilter to compute the gradients of arrival times of two wavefronts propagating from two sets of seeds. The input of the filter is used as the speed of the two wavefronts. The output is the dot product between the two gradient vector fields.

The filter works on the following basic idea. In the regions where the dot product between the two gradient fields is negative, the two fronts propagate in opposite directions. In the regions where the dot product is positive, the two fronts propagate in the same direction. This can be used to extract the region of space between two sets of points.

Optionally, a connectivity criterion can be applied to the resulting dot product image. In this case, the only negative region in the output image is the one connected to the seeds.

Author:
Luca Antiga Ph.D. Biomedical Technologies Laboratory, Bioengineering Deparment, Mario Negri Institute, Italy.

Definition at line 56 of file itkCollidingFrontsImageFilter.h.


Member Typedef Documentation

template<typename TInputImage, typename TOutputImage>
typedef SmartPointer<const Self> itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::ConstPointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 64 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef itk::FastMarchingUpwindGradientImageFilter<TInputImage,TOutputImage> itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::FastMarchingUpwindGradientImageFilterType
 

FastMarchingUpwindGradientImageFilter typedefs.

Definition at line 93 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::GradientImageType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GradientImageType
 

Definition at line 100 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::IndexType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::IndexType
 

Definition at line 101 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef InputImageType::Pointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::InputImagePointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 86 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef TInputImage itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::InputImageType
 

Image typedef support

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 84 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef TInputImage::PixelType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::InputPixelType
 

Definition at line 75 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::NodeContainer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::NodeContainer
 

Definition at line 98 of file itkCollidingFrontsImageFilter.h.

Referenced by itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::SetSeedPoints1().

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::NodeContainerPointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::NodeContainerPointer
 

Definition at line 99 of file itkCollidingFrontsImageFilter.h.

Referenced by itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::~CollidingFrontsImageFilter().

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::NodeType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::NodeType
 

Definition at line 97 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef OutputImageType::Pointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::OutputImagePointer
 

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 87 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef Superclass::OutputImageRegionType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::OutputImageRegionType
 

Superclass typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 90 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef TOutputImage itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::OutputImageType
 

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 85 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef TOutputImage::PixelType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::OutputPixelType
 

Extract some information from the image types. Dimensionality of the two images is assumed to be the same.

Definition at line 74 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef FastMarchingUpwindGradientImageFilterType::PixelType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::PixelType
 

Typedef support of level set method types.

Definition at line 96 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef SmartPointer<Self> itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::Pointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 63 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef NumericTraits<InputPixelType>::RealType itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::RealType
 

Definition at line 76 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
typedef CollidingFrontsImageFilter itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 61 of file itkCollidingFrontsImageFilter.h.

Referenced by itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::~CollidingFrontsImageFilter().

template<typename TInputImage, typename TOutputImage>
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::Superclass
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 62 of file itkCollidingFrontsImageFilter.h.


Constructor & Destructor Documentation

template<typename TInputImage, typename TOutputImage>
itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::CollidingFrontsImageFilter  )  [protected]
 

template<typename TInputImage, typename TOutputImage>
virtual itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::~CollidingFrontsImageFilter  )  [inline, protected, virtual]
 

Definition at line 138 of file itkCollidingFrontsImageFilter.h.

References itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::NodeContainerPointer, and itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::Self.


Member Function Documentation

template<typename TInputImage, typename TOutputImage>
virtual void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::ApplyConnectivityOff  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
virtual void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::ApplyConnectivityOn  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GenerateData  )  [protected, virtual]
 

A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.

See also:
ThreadedGenerateData()

Reimplemented from itk::ImageSource< TOutputImage >.

template<typename TInputImage, typename TOutputImage>
virtual bool itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GetApplyConnectivity  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
virtual const char* itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods)

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<typename TInputImage, typename TOutputImage>
virtual double itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GetNegativeEpsilon  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
NodeContainerPointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GetSeedPoints1  )  [inline]
 

Get the container of Seed Points representing the first initial front.

Definition at line 113 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
NodeContainerPointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::GetSeedPoints2  )  [inline]
 

Get the container of Seed Points representing the second initial front.

Definition at line 126 of file itkCollidingFrontsImageFilter.h.

template<typename TInputImage, typename TOutputImage>
itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
TOutputImage::ImageDimension 
 

Extract some information from the image types. Dimensionality of the two images is assumed to be the same.

template<typename TInputImage, typename TOutputImage>
Pointer itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<typename TInputImage, typename TOutputImage>
void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::PrintSelf std::ostream &  ,
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::ImageToImageFilter< TInputImage, TOutputImage >.

template<typename TInputImage, typename TOutputImage>
virtual void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::SetApplyConnectivity bool  _arg  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
virtual void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::SetNegativeEpsilon double  _arg  )  [virtual]
 

template<typename TInputImage, typename TOutputImage>
void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::SetSeedPoints1 NodeContainer points  )  [inline]
 

Set the container of Seed Points representing the first initial front. Seed points are represented as a VectorContainer of LevelSetNodes.

Definition at line 105 of file itkCollidingFrontsImageFilter.h.

References itk::Object::Modified(), and itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::NodeContainer.

template<typename TInputImage, typename TOutputImage>
void itk::CollidingFrontsImageFilter< TInputImage, TOutputImage >::SetSeedPoints2 NodeContainer points  )  [inline]
 

Set the container of Seed Points representing the second initial front. Seed points are represented as a VectorContainer of LevelSetNodes.

Definition at line 118 of file itkCollidingFrontsImageFilter.h.

References itk::Object::Modified().


The documentation for this class was generated from the following file:
Generated at Thu May 25 00:37:10 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000