18#ifndef itkLevelSetEvolution_h
19#define itkLevelSetEvolution_h
47template <
typename TEquationContainer,
typename TLevelSet>
50template <
typename TEquationContainer,
typename TImage>
163 ThreadedImageRegionPartitioner<TImage::ImageDimension>,
179 ThreadedImageRegionPartitioner<TImage::ImageDimension>,
188template <
typename TEquationContainer,
typename TOutput,
unsigned int VDimension>
300template <
typename TEquationContainer,
unsigned int VDimension>
378template <
typename TEquationContainer,
unsigned int VDimension>
454#ifndef ITK_MANUAL_INSTANTIATION
455# include "itkLevelSetEvolution.hxx"
Binarize an input image by thresholding.
SmartPointer< Self > Pointer
A multi-dimensional iterator templated over image type that walks an image region and is specialized ...
A multi-dimensional iterator templated over image type that walks pixels within a region and is speci...
Base class for the "dense" representation of a level-set function on one image.
typename InputImageType::RegionType InputImageRegionType
typename LevelSetContainerType::IdListType IdListType
typename StoppingCriterionType::Pointer StoppingCriterionPointer
typename TermContainerType::LevelSetContainerType LevelSetContainerType
typename TermType::Pointer TermPointer
typename LevelSetType::LevelSetDataType LevelSetDataType
typename TermContainerType::InputImageType InputImageType
typename InputImageType::ConstPointer InputImageConstPointer
typename LevelSetContainerType::IdListImageType IdListImageType
TEquationContainer EquationContainerType
typename LevelSetType::InputType LevelSetInputType
static constexpr unsigned int ImageDimension
typename LevelSetType::OutputRealType LevelSetOutputRealType
typename LevelSetType::OutputType LevelSetOutputType
typename InputImageType::PixelType InputImagePixelType
typename EquationContainerType::Pointer EquationContainerPointer
typename NumericTraits< InputImagePixelType >::RealType InputPixelRealType
typename LevelSetContainerType::CacheImageType CacheImageType
typename TermContainerType::Pointer TermContainerPointer
typename LevelSetContainerType::IdListConstIterator IdListConstIterator
typename LevelSetContainerType::DomainMapImageFilterType DomainMapImageFilterType
typename LevelSetContainerType::IdListIterator IdListIterator
typename LevelSetContainerType::LevelSetIdentifierType LevelSetIdentifierType
typename EquationContainerType::TermContainerType TermContainerType
LevelSetEvolutionStoppingCriterion< LevelSetContainerType > StoppingCriterionType
typename TermContainerType::TermType TermType
Thread the ComputeIteration method.
Thread the UpdateLevelSets method.
typename LevelSetContainerType::IdListType IdListType
LevelSetEvolutionUpdateLevelSetsThreader< LevelSetType, ThreadedImageRegionPartitioner< TImage::ImageDimension >, Self > SplitLevelSetUpdateLevelSetsThreaderType
void UpdateLevelSets() override
ThreadIdType GetNumberOfWorkUnits() const
LevelSetEvolutionComputeIterationThreader< LevelSetType, ThreadedDomainMapPartitionerType, Self > SplitDomainMapComputeIterationThreaderType
LevelSetEvolutionComputeIterationThreader< LevelSetType, ThreadedImageRegionPartitioner< TImage::ImageDimension >, Self > SplitLevelSetComputeIterationThreaderType
void AllocateUpdateBuffer() override
const IdListType * m_IdListToProcessWhenThreading
void ComputeIteration() override
SplitLevelSetComputeIterationThreaderType::Pointer m_SplitLevelSetComputeIterationThreader
ImageRegionConstIteratorWithIndex< LevelSetImageType > LevelSetImageConstIteratorType
SmartPointer< Self > Pointer
typename MaurerType::Pointer MaurerPointer
SignedMaurerDistanceMapImageFilter< LevelSetImageType, LevelSetImageType > MaurerType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
SplitDomainMapComputeIterationThreaderType::Pointer m_SplitDomainMapComputeIterationThreader
ThreadedIteratorRangePartitioner< DomainMapConstIteratorType > ThreadedDomainMapPartitionerType
ImageRegionIteratorWithIndex< LevelSetImageType > LevelSetImageIteratorType
typename DomainMapImageFilterType::DomainMapType::const_iterator DomainMapConstIteratorType
SmartPointer< const Self > ConstPointer
typename LevelSetType::ImageType LevelSetImageType
SplitLevelSetUpdateLevelSetsThreaderType::Pointer m_SplitLevelSetUpdateLevelSetsThreader
void ComputeTimeStepForNextIteration() override
typename ThresholdFilterType::Pointer ThresholdFilterPointer
static constexpr unsigned int ImageDimension
~LevelSetEvolution() override=default
BinaryThresholdImageFilter< LevelSetImageType, LevelSetImageType > ThresholdFilterType
void ReinitializeToSignedDistance()
void SetNumberOfWorkUnits(const ThreadIdType numberOfThreads)
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
void UpdateEquations() override
LevelSetDenseImage< TImage > LevelSetType
LevelSetContainerType::Pointer m_UpdateBuffer
static constexpr unsigned int ImageDimension
MalcolmSparseLevelSetImage< VDimension > LevelSetType
typename LevelSetType::LabelMapPointer LevelSetLabelMapPointer
typename LevelSetType::LayerType LevelSetLayerType
typename UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
SmartPointer< Self > Pointer
~LevelSetEvolution() override=default
void UpdateEquations() override
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
LevelSetEvolution()=default
UpdateMalcolmSparseLevelSet< ImageDimension, EquationContainerType > UpdateLevelSetFilterType
typename LevelSetType::LabelMapType LevelSetLabelMapType
void UpdateLevelSets() override
SmartPointer< const Self > ConstPointer
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
typename LevelSetType::LayerIterator LevelSetLayerIterator
typename LevelSetType::LabelMapPointer LevelSetLabelMapPointer
SmartPointer< Self > Pointer
void UpdateEquations() override
void UpdateLevelSets() override
static constexpr unsigned int ImageDimension
UpdateShiSparseLevelSet< ImageDimension, EquationContainerType > UpdateLevelSetFilterType
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
LevelSetEvolution()=default
typename LevelSetType::LayerType LevelSetLayerType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
typename UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
ShiSparseLevelSetImage< VDimension > LevelSetType
SmartPointer< const Self > ConstPointer
typename LevelSetType::LabelMapType LevelSetLabelMapType
~LevelSetEvolution() override=default
std::pair< LevelSetInputType, LevelSetOutputType > NodePairType
LevelSetEvolutionBase< TEquationContainer, LevelSetType > Superclass
typename LevelSetType::LayerType LevelSetLayerType
ThreadedIteratorRangePartitioner< typename LevelSetType::LayerConstIterator > SplitLevelSetPartitionerType
~LevelSetEvolution() override
void ComputeTimeStepForNextIteration() override
ThreadIdType GetNumberOfWorkUnits() const
UpdateWhitakerSparseLevelSet< ImageDimension, LevelSetOutputType, EquationContainerType > UpdateLevelSetFilterType
ImageRegionConstIteratorWithIndex< InputImageType > InputImageConstIteratorType
WhitakerSparseLevelSetImage< TOutput, VDimension > LevelSetType
std::map< IdentifierType, LevelSetLayerType * > m_UpdateBuffer
static constexpr unsigned int ImageDimension
SplitLevelSetComputeIterationThreaderType::Pointer m_SplitLevelSetComputeIterationThreader
void AllocateUpdateBuffer() override
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
void ComputeIteration() override
void SetNumberOfWorkUnits(const ThreadIdType numberOfWorkUnits)
typename LevelSetType::LabelMapPointer LevelSetLabelMapPointer
typename UpdateLevelSetFilterType::Pointer UpdateLevelSetFilterPointer
void UpdateLevelSets() override
LevelSetEvolutionComputeIterationThreader< LevelSetType, SplitLevelSetPartitionerType, Self > SplitLevelSetComputeIterationThreaderType
void UpdateEquations() override
typename LevelSetType::LabelMapType LevelSetLabelMapType
Class for iterating and evolving the level-set function.
std::map< InputType, OutputType, Functor::LexicographicCompare > LayerType
LabelMap< LabelObjectType > LabelMapType
typename LayerType::iterator LayerIterator
typename LabelMapType::Pointer LabelMapPointer
Derived class for the Malcolm representation of level-set function.
Derived class for the shi representation of level-set function.
This filter calculates the Euclidean distance transform of a binary image in linear time for arbitrar...
SmartPointer< Self > Pointer
Implements transparent reference counting.
Class for partitioning of an ImageRegion.
Partitions an iterator range for threading.
Base class for updating the Malcolm representation of level-set function.
SmartPointer< Self > Pointer
Base class for updating the Shi representation of level-set function.
SmartPointer< Self > Pointer
Base class for updating the level-set function.
SmartPointer< Self > Pointer
Derived class for the sparse-field representation of level-set function.
std::map< InputType, OutputType, Functor::LexicographicCompare > LayerType
LabelMap< LabelObjectType > LabelMapType
typename LabelMapType::Pointer LabelMapPointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned int ThreadIdType