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

#include <itkScalarRegionBasedLevelSetFunction.h>

+ Inheritance diagram for itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >:
+ Collaboration diagram for itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >:

List of all members.

Public Types

typedef
ImageRegionConstIterator
< FeatureImageType
ConstFeatureIteratorType
typedef
ImageRegionConstIteratorWithIndex
< InputImageType
ConstImageIteratorType
typedef SmartPointer< const SelfConstPointer
typedef
FeatureImageType::ConstPointer 
FeatureImageConstPointer
typedef
ImageRegionIteratorWithIndex
< FeatureImageType
FeatureImageIteratorType
typedef
Superclass::FeatureImageType 
FeatureImageType
typedef
Superclass::FeatureIndexType 
FeatureIndexType
typedef
Superclass::FeatureOffsetType 
FeatureOffsetType
typedef
Superclass::FeaturePixelType 
FeaturePixelType
typedef Superclass::FloatOffsetType FloatOffsetType
typedef
Superclass::GlobalDataStruct 
GlobalDataStruct
typedef
ImageRegionIteratorWithIndex
< InputImageType
ImageIteratorType
typedef
Superclass::InputImageConstPointer 
InputImageConstPointer
typedef
Superclass::InputImagePointer 
InputImagePointer
typedef Superclass::InputImageType InputImageType
typedef Superclass::InputIndexType InputIndexType
typedef
Superclass::InputIndexValueType 
InputIndexValueType
typedef Superclass::InputPixelType InputPixelType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputRegionType InputRegionType
typedef Superclass::InputSizeType InputSizeType
typedef
Superclass::InputSizeValueType 
InputSizeValueType
typedef Image< ListPixelType,
itkGetStaticConstMacro(ImageDimension) > 
ListImageType
typedef
ListPixelType::const_iterator 
ListPixelConstIterator
typedef ListPixelType::iterator ListPixelIterator
typedef std::list< unsigned int > ListPixelType
typedef
Superclass::NeighborhoodType 
NeighborhoodType
typedef Superclass::PixelType PixelType
typedef SmartPointer< SelfPointer
typedef Superclass::RadiusType RadiusType
typedef Superclass::ScalarValueType ScalarValueType
typedef
ScalarRegionBasedLevelSetFunction 
Self
typedef
Superclass::SharedDataPointer 
SharedDataPointer
typedef Superclass::SharedDataType SharedDataType
typedef
RegionBasedLevelSetFunction
< TInputImage, TFeatureImage,
TSharedData > 
Superclass
typedef Superclass::TimeStepType TimeStepType
typedef Superclass::VectorType VectorType

Public Member Functions

virtual const char * GetNameOfClass () const
void UpdatePixel (const unsigned int &idx, NeighborhoodIterator< TInputImage > &iterator, InputPixelType &newValue, bool &status)

Static Public Attributes

static const unsigned int ImageDimension = TFeatureImage::ImageDimension

Protected Member Functions

ScalarValueType ComputeOverlapParameters (const FeatureIndexType &featIndex, ScalarValueType &product)
 ScalarRegionBasedLevelSetFunction ()
virtual void UpdateSharedDataInsideParameters (const unsigned int &iId, const FeaturePixelType &iVal, const ScalarValueType &iChange)=0
virtual void UpdateSharedDataOutsideParameters (const unsigned int &iId, const FeaturePixelType &iVal, const ScalarValueType &iChange)=0
 ~ScalarRegionBasedLevelSetFunction ()

Private Member Functions

void operator= (const Self &)
 ScalarRegionBasedLevelSetFunction (const Self &)

Detailed Description

template<class TInputImage, class TFeatureImage, class TSharedData>
class itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >

LevelSet function that computes a speed image based on regional integrals.

This class implements a level set function that computes the speed image by integrating values on the image domain. NOTE: The convention followed is inside of the level-set function is negative and outside is positive.

Based on the paper:

"An active contour model without edges" T. Chan and L. Vese. In Scale-Space Theories in Computer Vision, pages 141-151, 1999.

Author:
Mosaliganti K., Smith B., Gelas A., Gouaillard A., Megason S.

This code was taken from the Insight Journal paper:

"Cell Tracking using Coupled Active Surfaces for Nuclei and Membranes" http://www.insight-journal.org/browse/publication/642 http://hdl.handle.net/10380/3055

That is based on the papers:

"Level Set Segmentation: Active Contours without edge" http://www.insight-journal.org/browse/publication/322 http://hdl.handle.net/1926/1532

and

"Level set segmentation using coupled active surfaces" http://www.insight-journal.org/browse/publication/323 http://hdl.handle.net/1926/1533

Definition at line 66 of file itkScalarRegionBasedLevelSetFunction.h.


Member Typedef Documentation

template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ImageRegionConstIterator< FeatureImageType > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ConstFeatureIteratorType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ImageRegionConstIteratorWithIndex< InputImageType > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ConstImageIteratorType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef SmartPointer< const Self > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ConstPointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef FeatureImageType::ConstPointer itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeatureImageConstPointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ImageRegionIteratorWithIndex< FeatureImageType > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeatureImageIteratorType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::FeatureImageType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeatureImageType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::FeatureIndexType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeatureIndexType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::FeatureOffsetType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeatureOffsetType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::FeaturePixelType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FeaturePixelType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::FloatOffsetType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::FloatOffsetType

A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.

Reimplemented from itk::RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >.

Reimplemented in itk::ScalarChanAndVeseLevelSetFunction< TInputImage, TFeatureImage, TSharedData >.

Definition at line 101 of file itkScalarRegionBasedLevelSetFunction.h.

template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::GlobalDataStruct itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::GlobalDataStruct
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ImageRegionIteratorWithIndex< InputImageType > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ImageIteratorType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputImageConstPointer itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputImageConstPointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputImagePointer itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputImagePointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputImageType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputImageType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputIndexType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputIndexType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputIndexValueType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputIndexValueType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputPixelType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputPixelType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputPointType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputPointType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputRegionType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputRegionType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputSizeType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputSizeType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::InputSizeValueType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::InputSizeValueType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Image< ListPixelType, itkGetStaticConstMacro(ImageDimension) > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ListImageType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ListPixelType::const_iterator itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ListPixelConstIterator
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ListPixelType::iterator itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ListPixelIterator
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef std::list< unsigned int > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ListPixelType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::NeighborhoodType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::NeighborhoodType

The type of data structure that is passed to this function object to evaluate at a pixel that does not lie on a data set boundary.

Reimplemented from itk::RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >.

Reimplemented in itk::ScalarChanAndVeseLevelSetFunction< TInputImage, TFeatureImage, TSharedData >.

Definition at line 100 of file itkScalarRegionBasedLevelSetFunction.h.

template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::PixelType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::PixelType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef SmartPointer< Self > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Pointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::RadiusType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::RadiusType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::ScalarValueType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ScalarValueType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef ScalarRegionBasedLevelSetFunction itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Self
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::SharedDataPointer itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::SharedDataPointer
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::SharedDataType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::SharedDataType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData > itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Superclass
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::TimeStepType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::TimeStepType
template<class TInputImage , class TFeatureImage , class TSharedData >
typedef Superclass::VectorType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::VectorType

Constructor & Destructor Documentation

template<class TInputImage , class TFeatureImage , class TSharedData >
itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ScalarRegionBasedLevelSetFunction ( ) [inline, protected]

Definition at line 132 of file itkScalarRegionBasedLevelSetFunction.h.

template<class TInputImage , class TFeatureImage , class TSharedData >
itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::~ScalarRegionBasedLevelSetFunction ( ) [inline, protected]

Definition at line 133 of file itkScalarRegionBasedLevelSetFunction.h.

template<class TInputImage , class TFeatureImage , class TSharedData >
itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ScalarRegionBasedLevelSetFunction ( const Self ) [private]

Member Function Documentation

template<class TInputImage , class TFeatureImage , class TSharedData >
ScalarValueType itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ComputeOverlapParameters ( const FeatureIndexType featIndex,
ScalarValueType product 
) [protected]
template<class TInputImage , class TFeatureImage , class TSharedData >
virtual const char* itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::GetNameOfClass ( ) const [virtual]
template<class TInputImage , class TFeatureImage , class TSharedData >
void itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::operator= ( const Self ) [private]
template<class TInputImage , class TFeatureImage , class TSharedData >
void itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::UpdatePixel ( const unsigned int &  idx,
NeighborhoodIterator< TInputImage > &  iterator,
InputPixelType newValue,
bool &  status 
)

Performs the narrow-band update of the Heaviside function for each voxel. The characteristic function of each region is recomputed (note the shared data which contains information from the other level sets). Using the new H values, the previous c_i are updated.

template<class TInputImage , class TFeatureImage , class TSharedData >
virtual void itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::UpdateSharedDataInsideParameters ( const unsigned int &  iId,
const FeaturePixelType iVal,
const ScalarValueType iChange 
) [protected, pure virtual]
template<class TInputImage , class TFeatureImage , class TSharedData >
virtual void itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::UpdateSharedDataOutsideParameters ( const unsigned int &  iId,
const FeaturePixelType iVal,
const ScalarValueType iChange 
) [protected, pure virtual]

Member Data Documentation

template<class TInputImage , class TFeatureImage , class TSharedData >
const unsigned int itk::ScalarRegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::ImageDimension = TFeatureImage::ImageDimension [static]

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