mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType > Class Template Reference

A derived physics class capable of carrying out deformations of a spring mass system. More...

#include <Phys_LevelSet.h>

Inheritance diagram for mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType >:

mial::Physics< Type, nDims, MType, VType > List of all members.

Public Types

typedef Phys_LevelSet Self
typedef itk::SmartPointer<
Self
Pointer
typedef itk::SmartPointer<
const Self
ConstPointer
typedef itk::WeakPointer<
const Self
ConstWeakPointer
typedef Physics< DataType,
nDims, MType, VType >::Error 
Error
typedef itk::Image< DataType,
nDims > 
InternalImageType
typedef Geometric< DataType,
nDims >::BinaryImageType 
BinaryImageType
typedef LevelSetDeformation<
DataType, nDims, InternalImageType
DeformationType
 The type of deformation's used. Notice they must be of the same internal storage types and dimension as the physics class.

Public Member Functions

virtual void initializeDistanceImg ()
virtual void initializeEdgePotentialImg ()
virtual bool simulate ()
 Simulate the deformation dynamics.
virtual bool runDeformation (const std::string defName, typename DeformationType::deformationIn *const i, std::stringstream *const s=NULL)
 Public member. Used by a behaviour to execute a particular deformation by name.
virtual void setExternalForces (void *)
 Public pure virtual function for setting the external forces used during simulations of the deformation dynamics.
virtual void setInput (typename InputImageType::ConstPointer img)
 Set the layer's input image.
virtual void setPropagationScaling (const double ps)
virtual void setCurvatureScaling (const double cs)
virtual void setAdvectionScaling (const double as)
virtual void setMaximumRMSError (const double me)
virtual void setNumIterations (const double ni)
virtual double getPropagationScaling ()
virtual double getCurvatureScaling ()
virtual double getAdvectionScaling ()
virtual double getMaximumRMSError ()
virtual double getNumIterations ()
void printInternalValues ()
InternalImageType::Pointer getDistanceImage ()
InternalImageType::Pointer getEdgePotentialImage ()
BinaryImageType::Pointer getOutputImage ()

Protected Member Functions

 Phys_LevelSet ()

Detailed Description

template<class DataType, class InputImageType, int nDims, class MType = vnl_matrix<DataType>, class VType = vnl_vector<DataType>>
class mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType >

A derived physics class capable of carrying out deformations of a spring mass system.

A derived class of the physical ABC, this class provides the framework with the ability to simulate deformation dynamics using a geodesic active contour approach[1]. This class is considered to be relatively stable, in that additional functionality may be added but current functionality will remain.

[1] Vincent Caselles, Ron Kimmel, and Guillermo Sapiro. Geodesic active contours. In ICCV, pages 694699, 1995.

Parameters:
DataType The data type to be used for internal storage.
InputImageType The data type used for the input image
nDims The number of dimensions used for simulations.
MType The type of matrix used for internal storage. Defaults to vnl_matrix<Type>, the only supported type at this time.
VType The type of vector used for internal storage. Defaults to vnl_vector<Type>, the only supported type at this time.

Definition at line 54 of file Phys_LevelSet.h.


Member Function Documentation

template<class DataType, class InputImageType, int nDims, class MType, class VType>
bool mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType >::runDeformation ( const std::string  defName,
typename DeformationType::deformationIn *const   i,
std::stringstream *const   s = NULL 
) [virtual]

Public member. Used by a behaviour to execute a particular deformation by name.

Runs a deformation on the attached geometric layer.

Parameters:
args The marshaled argument list.

Implements mial::Physics< Type, nDims, MType, VType >.

Definition at line 226 of file Phys_LevelSet.cxx.

References mial::Physics< Type, nDims, MType, VType >::Error::deformationError, mial::Physics< Type, nDims, MType, VType >::Error::deformationNumber, and mial::Physics< Type, nDims, MType, VType >::Error::msg.

template<class DataType, class InputImageType, int nDims, class MType, class VType>
void mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType >::setExternalForces ( void *   )  [virtual]

Public pure virtual function for setting the external forces used during simulations of the deformation dynamics.

The external force image is used to provide external forces to the organism during the deformation process. These could be gradient based, or a distance transform from a point of interest, etc.

Parameters:
img The image to be used as an external force. Derived classes must publicly define the expected type, and then typecast the input to this function.

Implements mial::Physics< Type, nDims, MType, VType >.

Definition at line 342 of file Phys_LevelSet.cxx.

template<class DataType, class InputImageType, int nDims, class MType = vnl_matrix<DataType>, class VType = vnl_vector<DataType>>
virtual void mial::Phys_LevelSet< DataType, InputImageType, nDims, MType, VType >::setInput ( typename InputImageType::ConstPointer  img  )  [inline, virtual]

Set the layer's input image.

Parameters:
img the image to be used by the layer for gradient magnitude calculations.

Definition at line 97 of file Phys_LevelSet.h.


The documentation for this class was generated from the following files:
Generated on Wed Jul 19 13:05:24 2006 for IDO by  doxygen 1.4.7