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

itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType > Class Template Reference

This function is used in ThresholdSegmentationLevelSetImageFilter to segment structures in images based on intensity values. More...

#include <itkThresholdSegmentationLevelSetFunction.h>

Inheritance diagram for itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >:

Inheritance graph
[legend]
Collaboration diagram for itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ThresholdSegmentationLevelSetFunction Self
typedef SegmentationLevelSetFunction<
TImageType, TFeatureImageType > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TFeatureImageType FeatureImageType
typedef Superclass::ImageType ImageType
typedef Superclass::ScalarValueType ScalarValueType
typedef Superclass::FeatureScalarType FeatureScalarType
typedef Superclass::RadiusType RadiusType

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension)
virtual void CalculateSpeedImage ()
virtual void Initialize (const RadiusType &r)
void SetUpperThreshold (FeatureScalarType f)
FeatureScalarType GetUpperThreshold () const
void SetLowerThreshold (FeatureScalarType f)
FeatureScalarType GetLowerThreshold () const
void SetEdgeWeight (const ScalarValueType p)
ScalarValueType GetEdgeWeight () const
void SetSmoothingConductance (const ScalarValueType p)
ScalarValueType GetSmoothingConductance () const
void SetSmoothingIterations (const int p)
int GetSmoothingIterations () const
void SetSmoothingTimeStep (const ScalarValueType i)
ScalarValueType GetSmoothingTimeStep () const

Static Public Member Functions

Pointer New ()

Protected Member Functions

 ThresholdSegmentationLevelSetFunction ()
virtual ~ThresholdSegmentationLevelSetFunction ()
 ThresholdSegmentationLevelSetFunction (const Self &)
void operator= (const Self &)
void PrintSelf (std::ostream &os, Indent indent) const

Protected Attributes

FeatureScalarType m_UpperThreshold
FeatureScalarType m_LowerThreshold
ScalarValueType m_EdgeWeight
ScalarValueType m_SmoothingConductance
int m_SmoothingIterations
ScalarValueType m_SmoothingTimeStep

Detailed Description

template<class TImageType, class TFeatureImageType = TImageType>
class itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >

This function is used in ThresholdSegmentationLevelSetImageFilter to segment structures in images based on intensity values.

SegmentationLevelSetFunction is a subclass of the generic LevelSetFunction.
It useful for segmentations based on intensity values in an image. It works by constructing a speed term (feature image) with positive values inside an intensity window (between a low and high threshold) and negative values outside that intensity window. The evolving level set front will lock onto regions that are at the edges of the intensity window.
You may optionally add a Laplacian calculation on the image to the threshold-based speed term by setting the EdgeWeight parameter to a non-zero value. The Laplacian term will cause the evolving surface to be more strongly attracted to image edges. Several parameters control a preprocessing FeatureImage smoothing stage applied only to the Laplacian calculation.

Image $f$ is thresholded pixel by pixel using upper threshold $U$ and lower threshold $L$ according to the following formula.
$ f(x) = \left\{ \begin{array}{ll} g(x) - L & \mbox{if $(g)x < (U-L)/2 + L$} \\ U - g(x) & \mbox{otherwise} \end{array} \right. $
See also:
SegmentationLevelSetImageFunction

ThresholdSegmentationLevelSetImageFilter

Definition at line 53 of file itkThresholdSegmentationLevelSetFunction.h.


Member Typedef Documentation

template<class TImageType, class TFeatureImageType = TImageType>
typedef SmartPointer<const Self> itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ConstPointer
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 61 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef TFeatureImageType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureImageType
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 62 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef Superclass::FeatureScalarType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 73 of file itkThresholdSegmentationLevelSetFunction.h.

Referenced by itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetLowerThreshold(), itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetUpperThreshold(), itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetLowerThreshold(), and itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetUpperThreshold().

template<class TImageType, class TFeatureImageType = TImageType>
typedef Superclass::ImageType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ImageType
 

Extract some parameters from the superclass.

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 71 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef SmartPointer<Self> itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Pointer
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 60 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef Superclass::RadiusType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::RadiusType
 

Neighborhood radius type

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 74 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef Superclass::ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ScalarValueType
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 72 of file itkThresholdSegmentationLevelSetFunction.h.

Referenced by itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSmoothingTimeStep().

template<class TImageType, class TFeatureImageType = TImageType>
typedef ThresholdSegmentationLevelSetFunction itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Self
 

Standard class typedefs.

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 58 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
typedef SegmentationLevelSetFunction<TImageType, TFeatureImageType> itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Superclass
 

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 59 of file itkThresholdSegmentationLevelSetFunction.h.


Constructor & Destructor Documentation

template<class TImageType, class TFeatureImageType = TImageType>
itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ThresholdSegmentationLevelSetFunction  )  [inline, protected]
 

Definition at line 154 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
virtual itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::~ThresholdSegmentationLevelSetFunction  )  [inline, protected, virtual]
 

Definition at line 166 of file itkThresholdSegmentationLevelSetFunction.h.

References HardConnectedComponentImageFilter::PrintSelf().

template<class TImageType, class TFeatureImageType = TImageType>
itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ThresholdSegmentationLevelSetFunction const Self  )  [protected]
 


Member Function Documentation

template<class TImageType, class TFeatureImageType = TImageType>
virtual void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::CalculateSpeedImage  )  [virtual]
 

This method must be defined in a subclass to implement a working function object. This method is called before the solver begins its work to produce the speed image used as the level set function's Propagation speed term. See LevelSetFunction for more information.

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

template<class TImageType, class TFeatureImageType = TImageType>
virtual const char* itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods)

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetEdgeWeight  )  const [inline]
 

Set/Get the weight applied to the edge (Laplacian) attractor in the speed term function. Zero will turn this term off. Definition at line 108 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
FeatureScalarType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetLowerThreshold  )  const [inline]
 

Set/Get threshold values Definition at line 87 of file itkThresholdSegmentationLevelSetFunction.h.

References itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType.

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetSmoothingConductance  )  const [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculatign the Laplacian (edge) term. This method sets/gets the smoothing conductance. Definition at line 121 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
int itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetSmoothingIterations  )  const [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculating the Laplacian (edge) term. This method sets/gets the number of diffusion iterations. Definition at line 134 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetSmoothingTimeStep  )  const [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculating the Laplacian (edge) term. This method sets/gets the diffusion time step. Definition at line 147 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
FeatureScalarType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::GetUpperThreshold  )  const [inline]
 

Set/Get threshold values Definition at line 83 of file itkThresholdSegmentationLevelSetFunction.h.

References itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType.

template<class TImageType, class TFeatureImageType = TImageType>
virtual void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::Initialize const RadiusType r  )  [inline, virtual]
 

This method creates the appropriate member variable operators for the level-set calculations. The argument to this function is a the radius necessary for performing the level-set calculations.

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

Definition at line 93 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
Superclass::ImageDimension 
 

Extract some parameters from the superclass.

Reimplemented from itk::SegmentationLevelSetFunction< TImageType, TFeatureImageType >.

template<class TImageType, class TFeatureImageType = TImageType>
Pointer itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::LevelSetFunction< TImageType >.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::operator= const Self  )  [protected]
 

Reimplemented from itk::LevelSetFunction< TImageType >.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::PrintSelf std::ostream &  os,
Indent  indent
const [inline, 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::LevelSetFunction< TImageType >.

Definition at line 171 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetEdgeWeight const ScalarValueType  p  )  [inline]
 

Set/Get the weight applied to the edge (Laplacian) attractor in the speed term function. Zero will turn this term off. Definition at line 104 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetLowerThreshold FeatureScalarType  f  )  [inline]
 

Set/Get threshold values Definition at line 85 of file itkThresholdSegmentationLevelSetFunction.h.

References itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSmoothingConductance const ScalarValueType  p  )  [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculatign the Laplacian (edge) term. This method sets/gets the smoothing conductance. Definition at line 117 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSmoothingIterations const int  p  )  [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculating the Laplacian (edge) term. This method sets/gets the number of diffusion iterations. Definition at line 130 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetSmoothingTimeStep const ScalarValueType  i  )  [inline]
 

Anisotropic diffusion is applied to the FeatureImage before calculating the Laplacian (edge) term. This method sets/gets the diffusion time step. Definition at line 143 of file itkThresholdSegmentationLevelSetFunction.h.

References itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::ScalarValueType.

template<class TImageType, class TFeatureImageType = TImageType>
void itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::SetUpperThreshold FeatureScalarType  f  )  [inline]
 

Set/Get threshold values Definition at line 81 of file itkThresholdSegmentationLevelSetFunction.h.

References itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::FeatureScalarType.


Member Data Documentation

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_EdgeWeight [protected]
 

Definition at line 184 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
FeatureScalarType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_LowerThreshold [protected]
 

Definition at line 183 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_SmoothingConductance [protected]
 

Definition at line 185 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
int itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_SmoothingIterations [protected]
 

Definition at line 186 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
ScalarValueType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_SmoothingTimeStep [protected]
 

Definition at line 187 of file itkThresholdSegmentationLevelSetFunction.h.

template<class TImageType, class TFeatureImageType = TImageType>
FeatureScalarType itk::ThresholdSegmentationLevelSetFunction< TImageType, TFeatureImageType >::m_UpperThreshold [protected]
 

Definition at line 182 of file itkThresholdSegmentationLevelSetFunction.h.


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