ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer > Class Template Reference

#include <itkLevelSetEquationTermBase.h>

+ Inheritance diagram for itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >:
+ Collaboration diagram for itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >:

List of all members.

Public Types

typedef
LevelSetContainerType::CacheImageType 
CacheImageType
typedef SmartPointer< const SelfConstPointer
typedef
LevelSetContainerType::DomainMapImageFilterType 
DomainMapImageFilterType
typedef HeavisideType::ConstPointer HeavisideConstPointer
typedef
HeavisideStepFunctionBase
< LevelSetOutputRealType,
LevelSetOutputRealType
HeavisideType
typedef InputImageType::Pointer InputImagePointer
typedef TInputImage InputImageType
typedef NumericTraits
< InputPixelType >::RealType 
InputPixelRealType
typedef InputImageType::PixelType InputPixelType
typedef
LevelSetContainerType::Pointer 
LevelSetContainerPointer
typedef TLevelSetContainer LevelSetContainerType
typedef
LevelSetContainerType::LevelSetDataType 
LevelSetDataType
typedef
LevelSetContainerType::GradientType 
LevelSetGradientType
typedef
LevelSetContainerType::HessianType 
LevelSetHessianType
typedef
LevelSetContainerType::LevelSetIdentifierType 
LevelSetIdentifierType
typedef
LevelSetContainerType::InputIndexType 
LevelSetInputIndexType
typedef
LevelSetContainerType::OutputType 
LevelSetOutputPixelType
typedef
LevelSetContainerType::OutputRealType 
LevelSetOutputRealType
typedef
LevelSetContainerType::LevelSetPointer 
LevelSetPointer
typedef
LevelSetContainerType::LevelSetType 
LevelSetType
typedef SmartPointer< SelfPointer
typedef itksys::hash_set
< std::string > 
RequiredDataType
typedef LevelSetEquationTermBase Self
typedef Object Superclass
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual LevelSetOutputRealType Evaluate (const LevelSetInputIndexType &iP)
virtual LevelSetOutputRealType Evaluate (const LevelSetInputIndexType &iP, const LevelSetDataType &iData)
virtual LevelSetOutputRealType GetCFLContribution () const
virtual LevelSetOutputRealType GetCoefficient ()
virtual LevelSetIdentifierType GetCurrentLevelSetId ()
virtual LevelSetTypeGetCurrentLevelSetPointer ()
virtual LevelSetContainerTypeGetLevelSetContainer ()
virtual const char * GetNameOfClass () const
const RequiredDataTypeGetRequiredData () const
virtual void Initialize (const LevelSetInputIndexType &iP)=0
virtual void InitializeParameters ()=0
virtual void SetCoefficient (LevelSetOutputRealType _arg)
virtual void SetCurrentLevelSetId (LevelSetIdentifierType _arg)
virtual void SetLevelSetContainer (LevelSetContainerType *ptr)
virtual void Update ()=0
virtual void UpdatePixel (const LevelSetInputIndexType &iP, const LevelSetOutputRealType &oldValue, const LevelSetOutputRealType &newValue)=0
virtual void SetInput (InputImageType *_arg)
virtual InputImageTypeGetInput ()
virtual void SetTermName (const char *_arg)
virtual const char * GetTermName () const
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
unsigned long AddObserver (const EventObject &event, Command *) const
virtual LightObject::Pointer CreateAnother () const
virtual void DebugOff () const
virtual void DebugOn () const
CommandGetCommand (unsigned long tag)
bool GetDebug () const
MetaDataDictionaryGetMetaDataDictionary (void)
const MetaDataDictionaryGetMetaDataDictionary (void) const
virtual unsigned long GetMTime () const
virtual const TimeStampGetTimeStamp () const
bool HasObserver (const EventObject &event) const
void InvokeEvent (const EventObject &)
void InvokeEvent (const EventObject &) const
virtual void Modified () const
virtual void Register () const
void RemoveAllObservers ()
void RemoveObserver (unsigned long tag)
void SetDebug (bool debugFlag) const
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
virtual void SetReferenceCount (int)
virtual void UnRegister () const
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
virtual int GetReferenceCount () const
 itkCloneMacro (Self)
void Print (std::ostream &os, Indent indent=0) const

Protected Member Functions

 LevelSetEquationTermBase ()
void SetUp ()
virtual LevelSetOutputRealType Value (const LevelSetInputIndexType &iP)=0
virtual LevelSetOutputRealType Value (const LevelSetInputIndexType &iP, const LevelSetDataType &iData)=0
virtual ~LevelSetEquationTermBase ()
- Protected Member Functions inherited from itk::Object
 Object ()
bool PrintObservers (std::ostream &os, Indent indent) const
virtual void PrintSelf (std::ostream &os, Indent indent) const
virtual void SetTimeStamp (const TimeStamp &time)
virtual ~Object ()
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 LightObject ()
virtual void PrintHeader (std::ostream &os, Indent indent) const
virtual void PrintTrailer (std::ostream &os, Indent indent) const
virtual ~LightObject ()

Protected Attributes

LevelSetOutputRealType m_CFLContribution
LevelSetOutputRealType m_Coefficient
LevelSetIdentifierType m_CurrentLevelSetId
LevelSetPointer m_CurrentLevelSetPointer
HeavisideConstPointer m_Heaviside
InputImagePointer m_Input
LevelSetContainerPointer m_LevelSetContainer
RequiredDataType m_RequiredData
std::string m_TermName

Private Member Functions

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

Additional Inherited Members

- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
static void GlobalWarningDisplayOff ()
static void GlobalWarningDisplayOn ()
static Pointer New ()
static void SetGlobalWarningDisplay (bool flag)
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()

Detailed Description

template<class TInputImage, class TLevelSetContainer>
class itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >

Abstract class to represents a term in the level-set evolution PDE.

Template Parameters:
TInputInput Image Type
TLevelSetContainerLevel set function container type

Evolving single level-set function $ \phi $ can be expressed as follows:

\[ \frac{\partial \phi(p)}{\partial \tau} = \sum\limits_{i=1}^{N} \alpha_{i} \cdot \omega_i(p) \]

where $\omega_i$ is a term which could depend on the level-set function, the input image; and $\alpha_i$ is a weight to balance the contribution of each term in the PDE.

See also:
LevelSetEquationContainer

Definition at line 49 of file itkLevelSetEquationTermBase.h.


Member Typedef Documentation

template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::CacheImageType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::CacheImageType
template<class TInputImage, class TLevelSetContainer>
typedef SmartPointer< const Self > itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::ConstPointer
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::DomainMapImageFilterType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::DomainMapImageFilterType
template<class TInputImage, class TLevelSetContainer>
typedef HeavisideType::ConstPointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::HeavisideConstPointer
template<class TInputImage, class TLevelSetContainer>
typedef HeavisideStepFunctionBase< LevelSetOutputRealType, LevelSetOutputRealType > itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::HeavisideType
template<class TInputImage, class TLevelSetContainer>
typedef InputImageType::Pointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::InputImagePointer
template<class TInputImage, class TLevelSetContainer>
typedef TInputImage itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::InputImageType
template<class TInputImage, class TLevelSetContainer>
typedef NumericTraits< InputPixelType >::RealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::InputPixelRealType
template<class TInputImage, class TLevelSetContainer>
typedef InputImageType::PixelType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::InputPixelType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::Pointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetContainerPointer
template<class TInputImage, class TLevelSetContainer>
typedef TLevelSetContainer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetContainerType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::LevelSetDataType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetDataType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::GradientType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetGradientType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::HessianType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetHessianType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::LevelSetIdentifierType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetIdentifierType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::InputIndexType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetInputIndexType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::OutputType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetOutputPixelType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::OutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetOutputRealType
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::LevelSetPointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetPointer
template<class TInputImage, class TLevelSetContainer>
typedef LevelSetContainerType::LevelSetType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetType
template<class TInputImage, class TLevelSetContainer>
typedef SmartPointer< Self > itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Pointer
template<class TInputImage, class TLevelSetContainer>
typedef itksys::hash_set< std::string > itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::RequiredDataType

Definition at line 136 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
typedef LevelSetEquationTermBase itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Self
template<class TInputImage, class TLevelSetContainer>
typedef Object itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Superclass

Constructor & Destructor Documentation

template<class TInputImage, class TLevelSetContainer>
itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetEquationTermBase ( )
protected

Default Constructor

template<class TInputImage, class TLevelSetContainer>
virtual itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::~LevelSetEquationTermBase ( )
protectedvirtual

Destructor

template<class TInputImage, class TLevelSetContainer>
itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::LevelSetEquationTermBase ( const Self )
private

Member Function Documentation

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Evaluate ( const LevelSetInputIndexType iP)
virtual

Returns the weighted term contribution at the given location iP, i.e. $ \alpha_i \cdot \omega_i( p ) $

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Evaluate ( const LevelSetInputIndexType iP,
const LevelSetDataType iData 
)
virtual
template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetCFLContribution ( ) const
virtual

Get the CFL contribution for the given term

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetCoefficient ( )
virtual
template<class TInputImage, class TLevelSetContainer>
virtual LevelSetIdentifierType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetCurrentLevelSetId ( )
virtual
template<class TInputImage, class TLevelSetContainer>
virtual LevelSetType* itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetCurrentLevelSetPointer ( )
virtual
template<class TInputImage, class TLevelSetContainer>
virtual InputImageType* itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetInput ( )
virtual

Set/Get the image to be segmented

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetContainerType* itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetLevelSetContainer ( )
virtual
template<class TInputImage, class TLevelSetContainer>
virtual const char* itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetNameOfClass ( ) const
virtual
template<class TInputImage, class TLevelSetContainer>
const RequiredDataType& itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetRequiredData ( ) const
template<class TInputImage, class TLevelSetContainer>
virtual const char* itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::GetTermName ( ) const
virtual

Set/Get the term name

template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Initialize ( const LevelSetInputIndexType iP)
pure virtual
Todo:
to be documented.
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::InitializeParameters ( )
pure virtual
template<class TInputImage, class TLevelSetContainer>
void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::operator= ( const Self )
private
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetCoefficient ( LevelSetOutputRealType  _arg)
virtual
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetCurrentLevelSetId ( LevelSetIdentifierType  _arg)
virtual
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetInput ( InputImageType _arg)
virtual

Set/Get the image to be segmented

template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetLevelSetContainer ( LevelSetContainerType ptr)
virtual
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetTermName ( const char *  _arg)
virtual

Set/Get the term name

template<class TInputImage, class TLevelSetContainer>
void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::SetUp ( )
protected
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Update ( )
pure virtual
template<class TInputImage, class TLevelSetContainer>
virtual void itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::UpdatePixel ( const LevelSetInputIndexType iP,
const LevelSetOutputRealType oldValue,
const LevelSetOutputRealType newValue 
)
pure virtual

Supply updates at pixels to keep the term parameters always updated

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Value ( const LevelSetInputIndexType iP)
protectedpure virtual

Returns the term contribution for a given location iP, i.e. $ \omega_i( p ) $. This method must be implemented in all class which inherits from this class.

template<class TInputImage, class TLevelSetContainer>
virtual LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::Value ( const LevelSetInputIndexType iP,
const LevelSetDataType iData 
)
protectedpure virtual

Member Data Documentation

template<class TInputImage, class TLevelSetContainer>
LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_CFLContribution
protected

Contribution to the CFL condition (which will be used to compute the the time step at the next iteration

Definition at line 175 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
LevelSetOutputRealType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_Coefficient
protected

Coefficient $ \alpha_i $

Definition at line 170 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
LevelSetIdentifierType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_CurrentLevelSetId
protected

Id of the current level-set function

Definition at line 165 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
LevelSetPointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_CurrentLevelSetPointer
protected

Definition at line 167 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
HeavisideConstPointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_Heaviside
protected

Heaviside function to be used. Depending on the term expression, this one may need to be provided

Definition at line 180 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
InputImagePointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_Input
protected

Input image

Definition at line 159 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
LevelSetContainerPointer itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_LevelSetContainer
protected

Container of level-set function

Definition at line 162 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
RequiredDataType itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_RequiredData
protected

Definition at line 187 of file itkLevelSetEquationTermBase.h.

template<class TInputImage, class TLevelSetContainer>
std::string itk::LevelSetEquationTermBase< TInputImage, TLevelSetContainer >::m_TermName
protected

Name to be given to the term. Note by default, one name is provided, but end-users may rename differently each term.

Definition at line 185 of file itkLevelSetEquationTermBase.h.


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