20 #ifndef __itkLevelSetEvolution_h
21 #define __itkLevelSetEvolution_h
49 template<
typename TEquationContainer,
typename TLevelSet >
53 template<
typename TEquationContainer,
typename TImage >
77 typedef typename Superclass::TermType
TermType;
86 itkStaticConstMacro ( ImageDimension,
unsigned int, Superclass::ImageDimension );
132 virtual void AllocateUpdateBuffer();
135 virtual void ComputeIteration();
138 virtual void ComputeTimeStepForNextIteration();
141 virtual void UpdateLevelSets();
144 virtual void UpdateEquations();
147 void ReinitializeToSignedDistance();
153 typename SplitLevelSetComputeIterationThreaderType::Pointer m_SplitLevelSetComputeIterationThreader;
159 typename SplitDomainMapComputeIterationThreaderType::Pointer m_SplitDomainMapComputeIterationThreader;
163 typename SplitLevelSetUpdateLevelSetsThreaderType::Pointer m_SplitLevelSetUpdateLevelSetsThreader;
170 template< typename TEquationContainer, typename TOutput, unsigned int VDimension >
171 class
LevelSetEvolution< TEquationContainer, WhitakerSparseLevelSetImage< TOutput, VDimension > > :
172 public LevelSetEvolutionBase< TEquationContainer, WhitakerSparseLevelSetImage< TOutput, VDimension > >
202 itkStaticConstMacro ( ImageDimension,
unsigned int, Superclass::ImageDimension );
242 typedef std::pair< LevelSetInputType, LevelSetOutputType >
NodePairType;
249 virtual void AllocateUpdateBuffer();
252 virtual void ComputeIteration();
255 virtual void ComputeTimeStepForNextIteration();
258 virtual void UpdateLevelSets();
261 virtual void UpdateEquations();
270 void operator = (
const Self& );
275 template<
typename TEquationContainer,
unsigned int VDimension >
309 itkStaticConstMacro ( ImageDimension,
unsigned int, Superclass::ImageDimension );
344 virtual void UpdateLevelSets();
347 virtual void UpdateEquations();
351 void operator = (
const Self& );
355 template<
typename TEquationContainer,
unsigned int VDimension >
388 itkStaticConstMacro ( ImageDimension,
unsigned int, Superclass::ImageDimension );
423 virtual void UpdateLevelSets();
425 virtual void UpdateEquations();
429 void operator = (
const Self& );
433 #ifndef ITK_MANUAL_INSTANTIATION
434 #include "itkLevelSetEvolution.hxx"
437 #endif // __itkLevelSetEvolution_h
ImageRegionConstIteratorWithIndex< LevelSetImageType > LevelSetImageConstIteratorType
Superclass::InputImageType InputImageType
Superclass::StoppingCriterionPointer StoppingCriterionPointer
Superclass::InputImagePixelType InputImagePixelType
LevelSetType::LabelMapPointer LevelSetLabelMapPointer
Superclass::LevelSetOutputRealType LevelSetOutputRealType
LevelSetType::LayerType LevelSetLayerType
LevelSetType::LabelMapPointer LevelSetLabelMapPointer
Superclass::LevelSetInputType LevelSetInputType
Superclass::InputImageType InputImageType
LevelSetType::LabelMapType LevelSetLabelMapType
Superclass::EquationContainerPointer EquationContainerPointer
Superclass::IdListIterator IdListIterator
Superclass::LevelSetDataType LevelSetDataType
Superclass::EquationContainerPointer EquationContainerPointer
WhitakerSparseLevelSetImage< TOutput, VDimension > LevelSetType
Superclass::InputPixelRealType InputPixelRealType
UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
Light weight base class for most itk classes.
Superclass::TermPointer TermPointer
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
Superclass::IdListImageType IdListImageType
Threade the UpdateLevelSets method.
Superclass::CacheImageType CacheImageType
Superclass::InputPixelRealType InputPixelRealType
Superclass::InputImageConstPointer InputImageConstPointer
Derived class for the shi representation of level-set function.
Superclass::IdListImageType IdListImageType
TermContainerType::LevelSetContainerType LevelSetContainerType
BinaryThresholdImageFilter< LevelSetImageType, LevelSetImageType > ThresholdFilterType
Superclass::LevelSetIdentifierType LevelSetIdentifierType
LevelSetDenseImage< TImage > LevelSetType
SmartPointer< Self > Pointer
Superclass::InputPixelRealType InputPixelRealType
Superclass::LayerType LayerType
Superclass::LevelSetContainerType LevelSetContainerType
Superclass::TermPointer TermPointer
Superclass::StoppingCriterionType StoppingCriterionType
Superclass::InputImagePixelType InputImagePixelType
Superclass::LabelMapType LabelMapType
Superclass::IdListIterator IdListIterator
Superclass::IdListConstIterator IdListConstIterator
Superclass::CacheImageType CacheImageType
Superclass::TermContainerType TermContainerType
SignedMaurerDistanceMapImageFilter< LevelSetImageType, LevelSetImageType > MaurerType
Superclass::IdListType IdListType
Superclass::TermContainerType TermContainerType
Class for partitioning of an ImageRegion.
Superclass::InputImageRegionType InputImageRegionType
Superclass::LevelSetInputType LevelSetInputType
Superclass::InputImageType InputImageType
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
Superclass::IdListType IdListType
ShiSparseLevelSetImage< VDimension > LevelSetType
Superclass::StoppingCriterionPointer StoppingCriterionPointer
SmartPointer< const Self > ConstPointer
Superclass::IdListType IdListType
Superclass::IdListImageType IdListImageType
Superclass::IdListType IdListType
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
LevelSetContainerType::Pointer m_UpdateBuffer
Superclass::LevelSetContainerType LevelSetContainerType
Superclass::InputImagePixelType InputImagePixelType
Superclass::IdListIterator IdListIterator
Superclass::TermContainerPointer TermContainerPointer
A multi-dimensional iterator templated over image type that walks an image region and is specialized ...
Superclass::InputImageRegionType InputImageRegionType
Class for iterating and evolving the level-set function.
Superclass::TermContainerPointer TermContainerPointer
LevelSetType::LabelMapType LevelSetLabelMapType
This filter calculates the Euclidean distance transform of a binary image in linear time for arbitrar...
Binarize an input image by thresholding.
Superclass::LevelSetOutputRealType LevelSetOutputRealType
Thread the ComputeIteration method.
Superclass::TermType TermType
Superclass::LevelSetOutputType LevelSetOutputType
Superclass::InputPixelRealType InputPixelRealType
Derived class for the shi representation of level-set function.
Superclass::DomainMapImageFilterType DomainMapImageFilterType
ImageRegionIteratorWithIndex< LevelSetImageType > LevelSetImageIteratorType
Superclass::LevelSetOutputType LevelSetOutputType
Superclass::LevelSetContainerType LevelSetContainerType
Derived class for the sparse-field representation of level-set function.
Superclass::EquationContainerType EquationContainerType
UpdateWhitakerSparseLevelSet< ImageDimension, LevelSetOutputType, EquationContainerType > UpdateLevelSetFilterType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
Superclass::InputImageRegionType InputImageRegionType
Superclass::TermPointer TermPointer
A multi-dimensional iterator templated over image type that walks pixels within a region and is speci...
LevelSetType::LayerType LevelSetLayerType
Superclass::StoppingCriterionType StoppingCriterionType
Superclass::LayerIterator LayerIterator
Superclass::LayerType LayerType
Superclass::DomainMapImageFilterType DomainMapImageFilterType
Base class for the "dense" representation of a level-set function on one image.
Superclass::EquationContainerPointer EquationContainerPointer
Superclass::LevelSetOutputRealType LevelSetOutputRealType
LevelSetType::LayerType LevelSetLayerType
Superclass::CacheImageType CacheImageType
Superclass::IdListIterator IdListIterator
UpdateMalcolmSparseLevelSet< ImageDimension, EquationContainerType > UpdateLevelSetFilterType
Superclass::StoppingCriterionType StoppingCriterionType
LevelSetType::LayerIterator LevelSetLayerIterator
Superclass::LevelSetIdentifierType LevelSetIdentifierType
Superclass::InputImageConstPointer InputImageConstPointer
Superclass::StoppingCriterionType StoppingCriterionType
Superclass::DomainMapImageFilterType DomainMapImageFilterType
Superclass::EquationContainerPointer EquationContainerPointer
Partitions an iterator range for threading.
Superclass::TermContainerPointer TermContainerPointer
std::map< IdentifierType, LevelSetLayerType * > m_UpdateBuffer
SplitLevelSetComputeIterationThreaderType::Pointer m_SplitLevelSetComputeIterationThreader
Superclass::CacheImageType CacheImageType
Superclass::DomainMapImageFilterType DomainMapImageFilterType
Superclass::LevelSetIdentifierType LevelSetIdentifierType
Superclass::LevelSetDataType LevelSetDataType
Base class for updating the level-set function.
SmartPointer< Self > Pointer
Superclass::InputImagePixelType InputImagePixelType
Base class for updating the Shi representation of level-set function.
Superclass::LevelSetInputType LevelSetInputType
Superclass::InputImageType InputImageType
SmartPointer< const Self > ConstPointer
MalcolmSparseLevelSetImage< VDimension > LevelSetType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
LevelSetType::LabelMapType LevelSetLabelMapType
Superclass::StoppingCriterionPointer StoppingCriterionPointer
LevelSetContainerType::IdListType IdListType
Superclass::LabelMapType LabelMapType
std::pair< LevelSetInputType, LevelSetOutputType > NodePairType
Superclass::LevelSetIdentifierType LevelSetIdentifierType
Superclass::TermType TermType
DomainMapImageFilterType::DomainMapType::const_iterator DomainMapConstIteratorType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
TEquationContainer EquationContainerType
LevelSetEvolutionComputeIterationThreader< LevelSetType, SplitLevelSetPartitionerType, Self > SplitLevelSetComputeIterationThreaderType
SmartPointer< Self > Pointer
SmartPointer< Self > Pointer
Superclass::InputImageConstPointer InputImageConstPointer
Superclass::TermContainerPointer TermContainerPointer
Superclass::InputImageRegionType InputImageRegionType
Superclass::LevelSetDataType LevelSetDataType
Superclass::LayerType LayerType
LevelSetType::ImageType LevelSetImageType
Superclass::LevelSetOutputType LevelSetOutputType
Superclass::EquationContainerType EquationContainerType
Superclass::LevelSetOutputRealType LevelSetOutputRealType
Superclass::StoppingCriterionPointer StoppingCriterionPointer
Superclass::TermContainerType TermContainerType
UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
SmartPointer< const Self > ConstPointer
MaurerType::Pointer MaurerPointer
Superclass::LevelSetContainerType LevelSetContainerType
ThresholdFilterType::Pointer ThresholdFilterPointer
Superclass::TermContainerType TermContainerType
Superclass::EquationContainerType EquationContainerType
UpdateShiSparseLevelSet< ImageDimension, EquationContainerType > UpdateLevelSetFilterType
Superclass::TermPointer TermPointer
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
Superclass::IdListImageType IdListImageType
Superclass::TermType TermType
Superclass::LevelSetOutputType LevelSetOutputType
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
Superclass::TermType TermType
Superclass::LevelSetDataType LevelSetDataType
SmartPointer< const Self > ConstPointer
LevelSetType::LabelMapPointer LevelSetLabelMapPointer
Superclass::InputImageConstPointer InputImageConstPointer
Base class for updating the Malcolm representation of level-set function.
Superclass::LabelMapType LabelMapType
Class for iterating and evolving the dense level-set function.
unsigned int ThreadIdType
Superclass::EquationContainerType EquationContainerType
ThreadedIteratorRangePartitioner< typename LevelSetType::LayerConstIterator > SplitLevelSetPartitionerType