ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
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 >:
Collaboration diagram for itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >:

List of all members.

Public Types

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

Public Member Functions

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

Protected Member Functions

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

Protected Attributes

bool m_ReverseExpansionDirection

Private Attributes

SegmentationFunctionTypem_SegmentationFunction
bool m_AutoGenerateSpeedAdvection
 SegmentationLevelSetImageFilter (const Self &)
void operator= (const Self &)

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.

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.
Warning:
This is an abstract class. It is not intended to be instantiated by itself. Instead, you should use the derived classes. This is the reason why the New() operator (itkNewMacro) is missing from the class API.
See LevelSetFunction for more information.

Definition at line 145 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
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef TFeatureImage itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::FeatureImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::IndexType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::IndexType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::InputImageType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InputImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Image< TOutputPixelType, itkGetStaticConstMacro(InputImageDimension) > itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::OutputImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SmartPointer< Self > itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Pointer
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 175 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SegmentationLevelSetImageFilter itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Self
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SegmentationFunctionType::ImageType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SpeedImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SparseFieldLevelSetImageFilter< TInputImage, OutputImageType > itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Superclass
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::TimeStepType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::TimeStepType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::ValueType itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ValueType
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 178 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]

End concept checking

Definition at line 488 of file itkSegmentationLevelSetImageFilter.h.

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

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


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]
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 243 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 362 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetAutoGenerateSpeedAdvection ( ) const [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]

Definition at line 381 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 446 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 193 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

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

Definition at line 465 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 345 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual bool itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetReverseExpansionDirection ( ) const [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 429 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 238 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 397 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 280 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::InitializeIteration ( ) [inline, protected, virtual]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::operator= ( const Self ) [private]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]
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 233 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 352 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 371 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.

References itk::ProcessObject::SetNthInput().

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 320 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 213 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetInput2 ( const FeatureImageType input) [inline]

Set the feature image

Definition at line 219 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 436 of file itkSegmentationLevelSetImageFilter.h.

References itk::LevelSetFunction< TImageType >::SetMaximumCurvatureTimeStep().

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 186 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 455 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 335 of file itkSegmentationLevelSetImageFilter.h.

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 417 of file itkSegmentationLevelSetImageFilter.h.

References itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize().

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 227 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 387 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 266 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

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

Definition at line 257 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

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 249 of file itkSegmentationLevelSetImageFilter.h.

References itkWarningMacro.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::typedef ( Concept::HasNumericTraits< TOutputPixelType >  )

Begin concept checking This class requires OutputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< TOutputPixelType > )

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

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

Definition at line 407 of file itkSegmentationLevelSetImageFilter.h.

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

Definition at line 402 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 515 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 509 of file itkSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
SegmentationFunctionType* itk::SegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::m_SegmentationFunction [private]

Definition at line 521 of file itkSegmentationLevelSetImageFilter.h.


The documentation for this class was generated from the following file: