ITK  4.1.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes
itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType > Class Template Reference

#include <itkNarrowBandThresholdSegmentationLevelSetImageFilter.h>

+ Inheritance diagram for itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >:
+ Collaboration diagram for itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::FeatureImageType 
FeatureImageType
typedef Superclass::OutputImageType OutputImageType
typedef SmartPointer< SelfPointer
typedef
NarrowBandThresholdSegmentationLevelSetImageFilter 
Self
typedef
NarrowBandLevelSetImageFilter
< TInputImage, TFeatureImage,
TOutputPixelType, Image
< TOutputPixelType,::itk::GetImageDimension
< TInputImage >
::ImageDimension > > 
Superclass
typedef
ThresholdFunctionType::Pointer 
ThresholdFunctionPointer
typedef
ThresholdSegmentationLevelSetFunction
< OutputImageType,
FeatureImageType
ThresholdFunctionType
typedef Superclass::ValueType ValueType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
ValueType GetEdgeWeight () const
ValueType GetLowerThreshold () const
virtual const char * GetNameOfClass () const
ValueType GetSmoothingConductance () const
int GetSmoothingIterations () const
ValueType GetSmoothingTimeStep () const
ValueType GetUpperThreshold () const
void SetLowerThreshold (ValueType v)
 typedef (Concept::HasNumericTraits< TOutputPixelType >) OutputHasNumericTraitsCheck
void SetUpperThreshold (ValueType v)
void SetEdgeWeight (ValueType v)
void SetSmoothingIterations (int v)
void SetSmoothingTimeStep (ValueType v)
void SetSmoothingConductance (ValueType v)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

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

Private Attributes

ThresholdFunctionPointer m_ThresholdFunction

Detailed Description

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

Segments structures in images based on intensity values.

IMPORTANT
The SegmentationLevelSetImageFilter class and the ThresholdSegmentationLevelSetFunction class contain additional information necessary to the full understanding of how to use this filter.
OVERVIEW
This class is a level set method segmentation filter. It constructs a speed function which is close to zero at the upper and lower bounds of an intensity window, effectively locking the propagating front onto those edges. Elsewhere, the front will propagate quickly.
INPUTS
This filter requires two inputs. The first input is a seed image. This seed image must contain an isosurface that you want to use as the seed for your segmentation. It can be a binary, graylevel, or floating point image. The only requirement is that it contain a closed isosurface that you will identify as the seed by setting the IsosurfaceValue parameter of the filter. For a binary image you will want to set your isosurface value halfway between your on and off values (i.e. for 0's and 1's, use an isosurface value of 0.5).
The second input is the feature image. This is the image from which the speed function will be calculated. For most applications, this is the image that you want to segment. The desired isosurface in your seed image should lie within the region of your feature image that you are trying to segment. Note that this filter does no preprocessing of the feature image before thresholding.
See SegmentationLevelSetImageFilter for more information on Inputs.
OUTPUTS
The filter outputs a single, scalar, real-valued image. Positive values in the output image are inside the segmentated region and negative values in the image are outside of the inside region. The zero crossings of the image correspond to the position of the level set front.
See SparseFieldLevelSetImageFilter and SegmentationLevelSetImageFilter for more information.
PARAMETERS
In addition to parameters described in SegmentationLevelSetImageFilter, this filter adds the UpperThreshold and LowerThreshold. See ThresholdSegmentationLevelSetFunction for a description of how these values affect the segmentation.
See also:
SegmentationLevelSetImageFilter
ThresholdSegmentationLevelSetFunction,
SparseFieldLevelSetImageFilter

Definition at line 86 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.


Member Typedef Documentation

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SmartPointer< const Self > itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ConstPointer
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::FeatureImageType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::FeatureImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef Superclass::OutputImageType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::OutputImageType
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef SmartPointer< Self > itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Pointer
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef NarrowBandThresholdSegmentationLevelSetImageFilter itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Self
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, ::itk::GetImageDimension< TInputImage >::ImageDimension > > itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::Superclass
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef ThresholdFunctionType::Pointer itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ThresholdFunctionPointer
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
typedef ThresholdSegmentationLevelSetFunction< OutputImageType, FeatureImageType > itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::ThresholdFunctionType

Type of the segmentation function

Definition at line 109 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

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

Constructor & Destructor Documentation

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

End concept checking

Definition at line 210 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

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

Member Function Documentation

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual::itk::LightObject::Pointer itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ValueType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetEdgeWeight ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ValueType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetLowerThreshold ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual const char* itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetNameOfClass ( ) const [virtual]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ValueType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSmoothingConductance ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
int itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSmoothingIterations ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ValueType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetSmoothingTimeStep ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ValueType itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::GetUpperThreshold ( ) const [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
static Pointer itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::New ( ) [static]

Method for creation through the object factory

Reimplemented from itk::Object.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::operator= ( const Self ) [protected]

PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.

Reimplemented from itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
virtual void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< 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::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType,::itk::GetImageDimension< TInputImage >::ImageDimension > >.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetEdgeWeight ( ValueType  v) [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 145 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetLowerThreshold ( ValueType  v) [inline]
template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSmoothingConductance ( ValueType  v) [inline]

Anisotropic diffusion is applied to the FeatureImage before calculatign the Laplacian (edge) term. This method sets/gets the smoothing conductance.

Definition at line 190 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSmoothingIterations ( int  v) [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 160 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetSmoothingTimeStep ( ValueType  v) [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 175 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
void itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::SetUpperThreshold ( ValueType  v) [inline]

Get/Set the threshold values that will be used to calculate the speed function.

Definition at line 120 of file itkNarrowBandThresholdSegmentationLevelSetImageFilter.h.

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

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


Member Data Documentation

template<class TInputImage , class TFeatureImage , class TOutputPixelType = float>
ThresholdFunctionPointer itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >::m_ThresholdFunction [private]

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