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

itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType > Class Template Reference

A base class which defines the API for implementing a special class of image segmentation filters using level set methods. More...

#include <itkSegmentationLevelSetImageFilter.h>

Inheritance diagram for itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >:

Inheritance graph
[legend]
Collaboration diagram for itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef SegmentationLevelSetImageFilter Self
typedef Image< TOutputPixelType,
itkGetStaticConstMacro(InputImageDimension) 
OutputImageType )
typedef SparseFieldLevelSetImageFilter<
TInputImage, OutputImageType
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::ValueType ValueType
typedef Superclass::IndexType IndexType
typedef Superclass::TimeStepType TimeStepType
typedef Superclass::InputImageType InputImageType
typedef TFeatureImage FeatureImageType
typedef SegmentationLevelSetFunction<
OutputImageType, FeatureImageType
SegmentationFunctionType
typedef SegmentationFunctionType::VectorImageType VectorImageType
typedef SegmentationFunctionType::ImageType SpeedImageType

Public Member Functions

 itkStaticConstMacro (InputImageDimension, unsigned int, TInputImage::ImageDimension)
virtual const char * GetNameOfClass () const
virtual void SetInitialImage (InputImageType *f)
void SetSpeedImage (SpeedImageType *s)
void SetAdvectionImage (VectorImageType *v)
virtual const SpeedImageTypeGetSpeedImage () const
virtual const VectorImageTypeGetAdvectionImage () const
virtual void SetSegmentationFunction (SegmentationFunctionType *s)
virtual SegmentationFunctionTypeGetSegmentationFunction ()
void GenerateSpeedImage ()
void GenerateAdvectionImage ()
void SetMaximumIterations (unsigned int i)
unsigned int GetMaximumIterations ()
virtual void SetFeatureImage (const FeatureImageType *f)
virtual FeatureImageTypeGetFeatureImage ()
void SetUseNegativeFeaturesOn ()
void SetUseNegativeFeaturesOff ()
void SetUseNegativeFeatures (bool u)
bool GetUseNegativeFeatures () const
virtual void SetReverseExpansionDirection (bool _arg)
virtual bool GetReverseExpansionDirection ()
virtual void ReverseExpansionDirectionOn ()
virtual void ReverseExpansionDirectionOff ()
virtual void SetAutoGenerateSpeedAdvection (bool _arg)
virtual bool GetAutoGenerateSpeedAdvection ()
virtual void AutoGenerateSpeedAdvectionOn ()
virtual void AutoGenerateSpeedAdvectionOff ()
void SetFeatureScaling (ValueType v)
void SetPropagationScaling (ValueType v)
ValueType GetPropagationScaling () const
void SetAdvectionScaling (ValueType v)
ValueType GetAdvectionScaling () const
void SetCurvatureScaling (ValueType v)
ValueType GetCurvatureScaling () const
void SetUseMinimalCurvature (bool b)
bool GetUseMinimalCurvature () const
void UseMinimalCurvatureOn ()
void UseMinimalCurvatureOff ()
void SetMaximumCurvatureTimeStep (double n)
double GetMaximumCurvatureTimeStep () const
void SetMaximumPropagationTimeStep (double n)
double GetMaximumPropagationTimeStep () const

Protected Member Functions

virtual ~SegmentationLevelSetImageFilter ()
 SegmentationLevelSetImageFilter (const Self &)
 SegmentationLevelSetImageFilter ()
virtual void PrintSelf (std::ostream &os, Indent indent) const
void GenerateData ()
virtual void InitializeIteration ()

Protected Attributes

bool m_ReverseExpansionDirection
bool m_AutoGenerateSpeedAdvection

Detailed Description

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
class itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >

A base class which defines the API for implementing a special class of image segmentation filters using level set methods.

OVERVIEW
This object defines the framework for a class of segmentation filters which use level set methods. These filters work by constructing a ``feature image'' onto which the evolving level set locks as it moves. In the feature image, values that are close to zero are associated with object boundaries. An original (or preprocessed) image is given to the filter as the feature image and a seed for the level set is given as the input of the filter. The seed is converted into a level set embedding which propagates according to the features calculated from the original image.
TEMPLATE PARAMETERS
There are two required and one optional template parameter for these filters.
TInputImage is the image type of the initial model you will input to the filter using SetInput() or SetInitialImage().

TFeatureImage is the image type of the image from which the filter will calculate the speed term for segmentation (see INPUTS).

TOutputPixelType is the data type used for the output image phi, the implicit level set image. This should really only ever be set as float (default) or double.

INPUTS
The input to any subclass of this filter is the seed image for the initial level set embedding. As with other subclasses of the SparseLevelSetImageFilter, the type of the input image is is not important. The (RequestedRegion) size of the seed image must, however, match the (RequestedRegion) size of the feature image.
You must identify the initial front (surface) in the input image. You do this by specifying its isovalue through the method SetIsoSurfaceValue(float f). The algorithm will then initialize its solution using the front represented by value f. Note that the front is always represented by isosurface zero in the output and not the isosurface you specified for the input. This is because, for simplicity, the filter will shift your input image so that the active front has zero values.

A NOTE ON DATA SPACING
Input data with anisotropic spacing should be resampled to isotropic voxels for use in this filter. Interpolation has not been built into the underlying p.d.e. solver.
Depending on the particular application and filter that you are using, the feature image should be preprocessed with some type of noise reduction filtering. The feature image input can be of any type, but it will be cast to floating point before calculations are done.
OUTPUTS
The output of any subclass of this filter is a level set embedding as described in SparseFieldLevelSetImageFilter. The zero crossings of the output image give the pixels closest to the level set boundary. By ITK convention, NEGATIVE values are pixels INSIDE the segmented region and POSITIVE values are pixels OUTSIDE the segmented region.
PARAMETERS
The MaximumRMSChange parameter is used to determine when the solution has converged. A lower value will result in a tighter-fitting solution, but will require more computations. Too low a value could put the solver into an infinite loop unless a reasonable NumberOfIterations parameter is set. Values should always be greater than 0.0 and less than 1.0.
The NumberOfIterations parameter can be used to halt the solution after a specified number of iterations, overriding the MaximumRMSChange halting criteria.
The standard convention for ITK level-set segmentation filters is that POSITIVE propagation (speed) and advection terms cause the surface to EXPAND while negative terms cause the surface to CONTRACT. When the ReverseExpansionDirection parameter is set to TRUE (on), it tells the function object to reverse the standard ITK convention so that NEGATIVE terms cause EXPANSION and positive terms cause CONTRACTION.
This parameter can be safely changed as appropriate for a particular application or data set to achieve the desired behavior.

The FeatureScaling parameter controls the magnitude of the features calculated for use in the level set propagation and advection speeds. This value simply sets both parameters to equal values at once. Some filters may only use on of these two terms and this method is a generic way to set either or both without having to know which is in use.
The CurvatureScaling parameter controls the magnitude of the curvature values which are calculated on the evolving isophote. This is important in controlling the relative effect of curvature in the calculation. Default value is 1.0. Higher values relative to the other level set equation terms (propagation and advection) will give a smoother result.
The PropagationScaling parameter controls the scaling of the scalar propagation (speed) term relative to other terms in the level set equation. Setting this value will override any value already set by FeatureScaling.
The AdvectionScaling parameter controls the scaling of the vector advection field term relative to other terms in the level set equation. Setting this value will override any value already set by FeatureScaling.
See LevelSetFunction for more information.

Definition at line 143 of file itkSegmentationLevelSetImageFilter.h.


Member Typedef Documentation

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SmartPointer<const Self> itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ConstPointer
 

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 163 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef TFeatureImage itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::FeatureImageType
 

Local image typedefs

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 172 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef Superclass::IndexType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::IndexType
 

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

Definition at line 167 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef Superclass::InputImageType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InputImageType
 

Information derived from the image types.

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

Definition at line 169 of file itkSegmentationLevelSetImageFilter.h.

Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetFeatureImage().

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef Image<TOutputPixelType, itkGetStaticConstMacro(InputImageDimension) itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::OutputImageType)
 

Output image type typedefs

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 158 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SmartPointer<Self> itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Pointer
 

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 162 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SegmentationLevelSetFunction<OutputImageType, FeatureImageType> itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationFunctionType
 

The generic level set function type

Definition at line 176 of file itkSegmentationLevelSetImageFilter.h.

Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InitializeIteration(), itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSegmentationFunction(), and itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::UseMinimalCurvatureOff().

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SegmentationLevelSetImageFilter itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Self
 

Inherited typedef from the superclass. Needs to be placed befroe the next macro.

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 151 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SegmentationFunctionType::ImageType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SpeedImageType
 

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 180 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SparseFieldLevelSetImageFilter<TInputImage, OutputImageType> itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Superclass
 

Standard class typedefs

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 161 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef Superclass::TimeStepType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::TimeStepType
 

Typedefs from the superclass

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

Definition at line 168 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef Superclass::ValueType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ValueType
 

Inherited typedef from the superclass.

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 166 of file itkSegmentationLevelSetImageFilter.h.

Referenced by itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetPropagationScaling().

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
typedef SegmentationFunctionType::VectorImageType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::VectorImageType
 

The type used for the advection field

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 179 of file itkSegmentationLevelSetImageFilter.h.


Constructor & Destructor Documentation

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::~SegmentationLevelSetImageFilter  )  [inline, protected, virtual]
 

Definition at line 464 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationLevelSetImageFilter const Self  )  [protected]
 

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationLevelSetImageFilter  )  [protected]
 


Member Function Documentation

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::AutoGenerateSpeedAdvectionOff  )  [virtual]
 

Turn On/Off automatic generation of Speed and Advection terms when Update is called. If set to Off, the Speed and Advection images must be set explicitly using SetSpeedImage, SetAdvectionImage OR the methods GenerateSpeedImage() and GenerateAdvectionImage() should be called prior to updating the filter.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::AutoGenerateSpeedAdvectionOn  )  [virtual]
 

Turn On/Off automatic generation of Speed and Advection terms when Update is called. If set to Off, the Speed and Advection images must be set explicitly using SetSpeedImage, SetAdvectionImage OR the methods GenerateSpeedImage() and GenerateAdvectionImage() should be called prior to updating the filter.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GenerateAdvectionImage  ) 
 

Allocate and calculate the advection term image in the SegmentationFunction object This method is called automatically on filter execution unless AutoGenerateSpeedAdvection is set to Off.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GenerateData  )  [protected, virtual]
 

Overridden from ProcessObject to set certain values before starting the finite difference solver and then create an appropriate output

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

Reimplemented in itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GenerateSpeedImage  ) 
 

Allocate and calculate the speed term image in the SegmentationFunction object. This method is called automatically on filter execution unless AutoGenerateSpeedAdvection is set to Off.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual const VectorImageType* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetAdvectionImage  )  const [inline, virtual]
 

Return a pointer to the image sampled as the advection term of the segmentation algorithm.

Definition at line 236 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
ValueType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetAdvectionScaling  )  const [inline]
 

Set/Get the scaling of the advection field. Setting the FeatureScaling parameter will override any existing value for AdvectionScaling.

Definition at line 348 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetAutoGenerateSpeedAdvection  )  [virtual]
 

Turn On/Off automatic generation of Speed and Advection terms when Update is called. If set to Off, the Speed and Advection images must be set explicitly using SetSpeedImage, SetAdvectionImage OR the methods GenerateSpeedImage() and GenerateAdvectionImage() should be called prior to updating the filter.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
ValueType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetCurvatureScaling  )  const [inline]
 

Set/Get the scaling of the curvature. Use this parameter to increase the influence of curvature on the movement of the surface. Higher values relative to Advection and Propagation values will give smoother surfaces.

Definition at line 365 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual FeatureImageType* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetFeatureImage  )  [inline, virtual]
 

Set/Get the feature image to be used for speed function of the level set equation. Equivalent to calling Set/GetInput(1, ..)

Definition at line 206 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InputImageType.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
double itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetMaximumCurvatureTimeStep  )  const [inline]
 

Set/Get the maximum constraint for the curvature term factor in the time step calculation. Changing this value from the default is not recommended or necessary but could be used to speed up the surface evolution at the risk of creating an unstable solution.

Definition at line 429 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
unsigned int itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetMaximumIterations  )  [inline]
 

Set/Get the maximum number of iterations allowed for the solver. This prevents infinite loops if a solution "bounces".

Definition at line 192 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
double itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetMaximumPropagationTimeStep  )  const [inline]
 

Set/Get the maximum constraint for the scalar/vector term factor of the time step calculation. Changing this value from the default is not recommended or necessary but could be used to speed up the surface evolution at the risk of creating an unstable solution.

Definition at line 447 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual const char* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

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

Reimplemented in itk::CannySegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
ValueType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetPropagationScaling  )  const [inline]
 

Set/Get the scaling of the propagation speed. Setting the FeatureScaling parameter overrides any previous values set for PropagationScaling.

Definition at line 332 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetReverseExpansionDirection  )  [virtual]
 

Turn On/Off the flag which determines whether Positive or Negative speed terms will cause surface expansion. If set to TRUE then negative speed terms will cause the surface to expand and positive speed terms will cause the surface to contract. If set to FALSE (default) then positive speed terms will cause the surface to expand and negative speed terms will cause the surface to contract. This method can be safely used to reverse the expansion/contraction as appropriate to a particular application or data set.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual SegmentationFunctionType* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSegmentationFunction  )  [inline, virtual]
 

Definition at line 413 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual const SpeedImageType* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSpeedImage  )  const [inline, virtual]
 

Return a pointer to the image sampled as the speed term of the segmentation algorithm.

Definition at line 231 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetUseMinimalCurvature  )  const [inline]
 

Definition at line 381 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetUseNegativeFeatures  )  const [inline]
 

THIS METHOD IS DEPRECATED AND SHOULD NOT BE USED. Set/Get the value of the UseNegativeFeatures flag. This method is deprecated. Use Set/Get ReverseExpansionDirection instead.

Definition at line 268 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InitializeIteration  )  [inline, protected, virtual]
 

Overrides parent implementation

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

Reimplemented in itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

Definition at line 471 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationFunctionType.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::itkStaticConstMacro InputImageDimension  ,
unsigned  int,
TInputImage::ImageDimension 
 

Repeat definition from Superclass to satisfy Borland compiler quirks

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

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::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::SparseFieldLevelSetImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::CurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::GeodesicActiveContourShapePriorLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::LaplacianSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapeDetectionLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ShapePriorSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, itk::ThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::VectorThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ReverseExpansionDirectionOff  )  [virtual]
 

Turn On/Off the flag which determines whether Positive or Negative speed terms will cause surface expansion. If set to TRUE then negative speed terms will cause the surface to expand and positive speed terms will cause the surface to contract. If set to FALSE (default) then positive speed terms will cause the surface to expand and negative speed terms will cause the surface to contract. This method can be safely used to reverse the expansion/contraction as appropriate to a particular application or data set.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ReverseExpansionDirectionOn  )  [virtual]
 

Turn On/Off the flag which determines whether Positive or Negative speed terms will cause surface expansion. If set to TRUE then negative speed terms will cause the surface to expand and positive speed terms will cause the surface to contract. If set to FALSE (default) then positive speed terms will cause the surface to expand and negative speed terms will cause the surface to contract. This method can be safely used to reverse the expansion/contraction as appropriate to a particular application or data set.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetAdvectionImage VectorImageType v  )  [inline]
 

This function is for advanced applications. Set the image sampled as the advection term of this segmentation method. In general, the advection image is generated automatically by a subclass of this filter.

Definition at line 226 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetAdvectionScaling ValueType  v  )  [inline]
 

Set/Get the scaling of the advection field. Setting the FeatureScaling parameter will override any existing value for AdvectionScaling.

Definition at line 340 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetAutoGenerateSpeedAdvection bool  _arg  )  [virtual]
 

Turn On/Off automatic generation of Speed and Advection terms when Update is called. If set to Off, the Speed and Advection images must be set explicitly using SetSpeedImage, SetAdvectionImage OR the methods GenerateSpeedImage() and GenerateAdvectionImage() should be called prior to updating the filter.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetCurvatureScaling ValueType  v  )  [inline]
 

Set/Get the scaling of the curvature. Use this parameter to increase the influence of curvature on the movement of the surface. Higher values relative to Advection and Propagation values will give smoother surfaces.

Definition at line 357 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetFeatureImage const FeatureImageType f  )  [inline, virtual]
 

Set/Get the feature image to be used for speed function of the level set equation. Equivalent to calling Set/GetInput(1, ..)

Definition at line 201 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetFeatureScaling ValueType  v  )  [inline]
 

Combined scaling of the propagation and advection speed terms. You should use either this -or- Get/SetPropagationScaling and Get/SetAdvectionScaling (if appropriate). See subclasses for details on when and whether to set these parameters.

Definition at line 309 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetInitialImage InputImageType f  )  [inline, virtual]
 

Set/Get the initial level set model. Equivalent to calling SetInput(..)

Definition at line 212 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetMaximumCurvatureTimeStep double  n  )  [inline]
 

Set/Get the maximum constraint for the curvature term factor in the time step calculation. Changing this value from the default is not recommended or necessary but could be used to speed up the surface evolution at the risk of creating an unstable solution.

Definition at line 421 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetMaximumIterations unsigned int  i  )  [inline]
 

Set/Get the maximum number of iterations allowed for the solver. This prevents infinite loops if a solution "bounces".

Definition at line 187 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetMaximumPropagationTimeStep double  n  )  [inline]
 

Set/Get the maximum constraint for the scalar/vector term factor of the time step calculation. Changing this value from the default is not recommended or necessary but could be used to speed up the surface evolution at the risk of creating an unstable solution.

Definition at line 439 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetPropagationScaling ValueType  v  )  [inline]
 

Set/Get the scaling of the propagation speed. Setting the FeatureScaling parameter overrides any previous values set for PropagationScaling.

Definition at line 324 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ValueType.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetReverseExpansionDirection bool  _arg  )  [virtual]
 

Turn On/Off the flag which determines whether Positive or Negative speed terms will cause surface expansion. If set to TRUE then negative speed terms will cause the surface to expand and positive speed terms will cause the surface to contract. If set to FALSE (default) then positive speed terms will cause the surface to expand and negative speed terms will cause the surface to contract. This method can be safely used to reverse the expansion/contraction as appropriate to a particular application or data set.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSegmentationFunction SegmentationFunctionType s  )  [inline, virtual]
 

Set the segmentation function. In general, this should only be called by a subclass of this object. It is made public to allow itk::Command objects access. The method is inline to avoid a problem with the gcc 2.95 compiler matching the declaration with the definition.

Definition at line 401 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationFunctionType.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSpeedImage SpeedImageType s  )  [inline]
 

This function is for advanced applications. Set the image sampled as the speed term of this segmentation method. In general, the speed image is generated automatically by a subclass of this filter.

Definition at line 220 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetUseMinimalCurvature bool  b  )  [inline]
 

Definition at line 373 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetUseNegativeFeatures bool  u  )  [inline]
 

THIS METHOD IS DEPRECATED AND SHOULD NOT BE USED. Set/Get the value of the UseNegativeFeatures flag. This method is deprecated. Use Set/Get ReverseExpansionDirection instead.

Definition at line 256 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetUseNegativeFeaturesOff  )  [inline]
 

THIS METHOD IS DEPRECATED AND SHOULD NOT BE USED. This method reverses the speed function direction, effectively changing inside feature values to outside feature values and vice versa.

Definition at line 247 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetUseNegativeFeaturesOn  )  [inline]
 

THIS METHOD IS DEPRECATED AND SHOULD NOT BE USED. This method reverses the speed function direction, effectively changing inside feature values to outside feature values and vice versa.

Definition at line 242 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::UseMinimalCurvatureOff  )  [inline]
 

Definition at line 389 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SegmentationFunctionType.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::UseMinimalCurvatureOn  )  [inline]
 

Definition at line 385 of file itkSegmentationLevelSetImageFilter.h.


Member Data Documentation

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::m_AutoGenerateSpeedAdvection [protected]
 

Flag to indicate whether Speed and Advection images are automatically generated when running the filter. Otherwise, a pointer to images must be explicitly set or GenerateSpeedImage() and/or GenerateAdvectionImage() called directly before updating the filter

Definition at line 492 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage, class TFeatureImage, class TOutputPixelType = float>
bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::m_ReverseExpansionDirection [protected]
 

Flag which sets the inward/outward direction of propagation speed. See SetReverseExpansionDirection for more information.

Definition at line 486 of file itkSegmentationLevelSetImageFilter.h.


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