Medical Imaging Interaction Toolkit  2024.06.00
Medical Imaging Interaction Toolkit
itk::AdaptiveThresholdIterator< TImage, TFunction > Class Template Reference

Iterates over an image using a variable image function, which threshold can be varied during the iteration process. More...

#include <itkAdaptiveThresholdIterator.h>

Inheritance diagram for itk::AdaptiveThresholdIterator< TImage, TFunction >:
Collaboration diagram for itk::AdaptiveThresholdIterator< TImage, TFunction >:

Public Types

typedef AdaptiveThresholdIterator Self
 
typedef ConditionalConstIterator< TImage > Superclass
 
typedef TImage ImageType
 
typedef TImage TTempImage
 
typedef TFunction FunctionType
 
typedef TFunction::InputType FunctionInputType
 
typedef TImage::SizeType SizeType
 
typedef TImage::RegionType RegionType
 
typedef TImage::IndexType IndexType
 
typedef TImage::InternalPixelType InternalPixelType
 
typedef TImage::PixelType PixelType
 
typedef std::queue< IndexTypeIndexQueueType
 
typedef std::map< unsigned int, IndexQueueTypeQueueMapType
 

Public Member Functions

 itkStaticConstMacro (NDimensions, unsigned int, TImage::ImageDimension)
 
 AdaptiveThresholdIterator (ImageType *imagePtr, FunctionType *fnPtr, IndexType startIndex)
 
 AdaptiveThresholdIterator (ImageType *imagePtr, FunctionType *fnPtr, std::vector< IndexType > &startIndex)
 
 AdaptiveThresholdIterator (ImageType *imagePtr, FunctionType *fnPtr)
 
 ~AdaptiveThresholdIterator () override
 
void InitializeIterator ()
 
void DoExtendedFloodStep ()
 
void SetExpansionDirection (bool upwards)
 
void InitRegionGrowingState ()
 
void SetMinTH (int min)
 
void SetMaxTH (int max)
 
int GetSeedPointValue (void)
 
void SetFineDetectionMode (bool fine=false)
 
const IndexType GetIndex () override
 
const PixelType Get (void) const override
 
void Set (const PixelType &value)
 
void GoToBegin ()
 
bool IsAtEnd () const override
 
void operator++ () override
 
virtual SmartPointer< FunctionTypeGetFunction () const
 
Selfoperator= (const Self &it)
 
bool IsPixelIncluded (const IndexType &index) const override
 
int GetLeakagePoint (void)
 

Static Public Member Functions

static int CalculateInitializeValue (int lower, int upper)
 

Public Attributes

TTempImage::Pointer tempPtr
 

Protected Member Functions

void ExpandThresholdUpwards ()
 
void ExpandThresholdDownwards ()
 
void IncrementRegionGrowingState ()
 
int EstimateDistance (IndexType)
 
unsigned int CalculateMaxRGS ()
 

Protected Attributes

SmartPointer< ImageTypem_OutputImage
 
SmartPointer< FunctionTypem_Function
 
std::vector< IndexTypem_StartIndices
 
ImageType::PointType m_ImageOrigin
 
ImageType::SpacingType m_ImageSpacing
 
RegionType m_ImageRegion
 
bool m_UpwardsExpansion
 
int m_InitializeValue
 

Detailed Description

template<class TImage, class TFunction>
class itk::AdaptiveThresholdIterator< TImage, TFunction >

Iterates over an image using a variable image function, which threshold can be varied during the iteration process.

Definition at line 37 of file itkAdaptiveThresholdIterator.h.

Member Typedef Documentation

◆ FunctionInputType

template<class TImage , class TFunction >
typedef TFunction::InputType itk::AdaptiveThresholdIterator< TImage, TFunction >::FunctionInputType

Type of vector used to store location info in the spatial function

Definition at line 57 of file itkAdaptiveThresholdIterator.h.

◆ FunctionType

template<class TImage , class TFunction >
typedef TFunction itk::AdaptiveThresholdIterator< TImage, TFunction >::FunctionType

Type of function

Definition at line 54 of file itkAdaptiveThresholdIterator.h.

◆ ImageType

template<class TImage , class TFunction >
typedef TImage itk::AdaptiveThresholdIterator< TImage, TFunction >::ImageType

Definition at line 45 of file itkAdaptiveThresholdIterator.h.

◆ IndexQueueType

template<class TImage , class TFunction >
typedef std::queue<IndexType> itk::AdaptiveThresholdIterator< TImage, TFunction >::IndexQueueType

Queue containing indices representing a voxel position

Definition at line 74 of file itkAdaptiveThresholdIterator.h.

◆ IndexType

template<class TImage , class TFunction >
typedef TImage::IndexType itk::AdaptiveThresholdIterator< TImage, TFunction >::IndexType

Definition at line 65 of file itkAdaptiveThresholdIterator.h.

◆ InternalPixelType

template<class TImage , class TFunction >
typedef TImage::InternalPixelType itk::AdaptiveThresholdIterator< TImage, TFunction >::InternalPixelType

Internal Pixel Type

Definition at line 68 of file itkAdaptiveThresholdIterator.h.

◆ PixelType

template<class TImage , class TFunction >
typedef TImage::PixelType itk::AdaptiveThresholdIterator< TImage, TFunction >::PixelType

External Pixel Type

Definition at line 71 of file itkAdaptiveThresholdIterator.h.

◆ QueueMapType

template<class TImage , class TFunction >
typedef std::map<unsigned int, IndexQueueType> itk::AdaptiveThresholdIterator< TImage, TFunction >::QueueMapType

Map used to generate the output result

Definition at line 77 of file itkAdaptiveThresholdIterator.h.

◆ RegionType

template<class TImage , class TFunction >
typedef TImage::RegionType itk::AdaptiveThresholdIterator< TImage, TFunction >::RegionType

Region typedef support

Definition at line 63 of file itkAdaptiveThresholdIterator.h.

◆ Self

template<class TImage , class TFunction >
typedef AdaptiveThresholdIterator itk::AdaptiveThresholdIterator< TImage, TFunction >::Self

Standard class typedefs.

Definition at line 41 of file itkAdaptiveThresholdIterator.h.

◆ SizeType

template<class TImage , class TFunction >
typedef TImage::SizeType itk::AdaptiveThresholdIterator< TImage, TFunction >::SizeType

Size typedef support.

Definition at line 60 of file itkAdaptiveThresholdIterator.h.

◆ Superclass

template<class TImage , class TFunction >
typedef ConditionalConstIterator<TImage> itk::AdaptiveThresholdIterator< TImage, TFunction >::Superclass

Definition at line 43 of file itkAdaptiveThresholdIterator.h.

◆ TTempImage

template<class TImage , class TFunction >
typedef TImage itk::AdaptiveThresholdIterator< TImage, TFunction >::TTempImage

Definition at line 48 of file itkAdaptiveThresholdIterator.h.

Constructor & Destructor Documentation

◆ AdaptiveThresholdIterator() [1/3]

template<class TImage , class TFunction >
itk::AdaptiveThresholdIterator< TImage, TFunction >::AdaptiveThresholdIterator ( ImageType imagePtr,
FunctionType fnPtr,
IndexType  startIndex 
)

Constructor establishes an iterator to walk a particular image and a particular region of that image. This version of the constructor uses an explicit seed pixel for the flood fill, the "startIndex"

◆ AdaptiveThresholdIterator() [2/3]

template<class TImage , class TFunction >
itk::AdaptiveThresholdIterator< TImage, TFunction >::AdaptiveThresholdIterator ( ImageType imagePtr,
FunctionType fnPtr,
std::vector< IndexType > &  startIndex 
)

Constructor establishes an iterator to walk a particular image and a particular region of that image. This version of the constructor uses an explicit list of seed pixels for the flood fill, the "startIndex"

◆ AdaptiveThresholdIterator() [3/3]

template<class TImage , class TFunction >
itk::AdaptiveThresholdIterator< TImage, TFunction >::AdaptiveThresholdIterator ( ImageType imagePtr,
FunctionType fnPtr 
)

Constructor establishes an iterator to walk a particular image and a particular region of that image. This version of the constructor should be used when the seed pixel is unknown

◆ ~AdaptiveThresholdIterator()

template<class TImage , class TFunction >
itk::AdaptiveThresholdIterator< TImage, TFunction >::~AdaptiveThresholdIterator ( )
inlineoverride

Default Destructor.

Definition at line 101 of file itkAdaptiveThresholdIterator.h.

Member Function Documentation

◆ CalculateInitializeValue()

template<class TImage , class TFunction >
static int itk::AdaptiveThresholdIterator< TImage, TFunction >::CalculateInitializeValue ( int  lower,
int  upper 
)
inlinestatic

Definition at line 179 of file itkAdaptiveThresholdIterator.h.

◆ CalculateMaxRGS()

template<class TImage , class TFunction >
unsigned int itk::AdaptiveThresholdIterator< TImage, TFunction >::CalculateMaxRGS ( )
protected

◆ DoExtendedFloodStep()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::DoExtendedFloodStep ( )

◆ EstimateDistance()

template<class TImage , class TFunction >
int itk::AdaptiveThresholdIterator< TImage, TFunction >::EstimateDistance ( IndexType  )
protected

◆ ExpandThresholdDownwards()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::ExpandThresholdDownwards ( )
protected

◆ ExpandThresholdUpwards()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::ExpandThresholdUpwards ( )
protected

◆ Get()

template<class TImage , class TFunction >
const PixelType itk::AdaptiveThresholdIterator< TImage, TFunction >::Get ( void  ) const
inlineoverride

Definition at line 137 of file itkAdaptiveThresholdIterator.h.

◆ GetFunction()

template<class TImage , class TFunction >
virtual SmartPointer<FunctionType> itk::AdaptiveThresholdIterator< TImage, TFunction >::GetFunction ( ) const
inlinevirtual

Definition at line 156 of file itkAdaptiveThresholdIterator.h.

◆ GetIndex()

template<class TImage , class TFunction >
const IndexType itk::AdaptiveThresholdIterator< TImage, TFunction >::GetIndex ( )
inlineoverride

Get the index. This provides a read only reference to the index. This causes the index to be calculated from pointer arithmetic and is therefore an expensive operation.

See also
SetIndex

Definition at line 132 of file itkAdaptiveThresholdIterator.h.

◆ GetLeakagePoint()

template<class TImage , class TFunction >
int itk::AdaptiveThresholdIterator< TImage, TFunction >::GetLeakagePoint ( void  )
inline

Definition at line 180 of file itkAdaptiveThresholdIterator.h.

◆ GetSeedPointValue()

template<class TImage , class TFunction >
int itk::AdaptiveThresholdIterator< TImage, TFunction >::GetSeedPointValue ( void  )

◆ GoToBegin()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::GoToBegin ( )

◆ IncrementRegionGrowingState()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::IncrementRegionGrowingState ( )
protected

◆ InitializeIterator()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::InitializeIterator ( )

Initializes the iterator, called from constructor

◆ InitRegionGrowingState()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::InitRegionGrowingState ( )

◆ IsAtEnd()

template<class TImage , class TFunction >
bool itk::AdaptiveThresholdIterator< TImage, TFunction >::IsAtEnd ( ) const
inlineoverride

Is the iterator at the end of the region?

Definition at line 153 of file itkAdaptiveThresholdIterator.h.

◆ IsPixelIncluded()

template<class TImage , class TFunction >
bool itk::AdaptiveThresholdIterator< TImage, TFunction >::IsPixelIncluded ( const IndexType index) const
override

Compute whether the index of interest should be included in the flood

◆ itkStaticConstMacro()

template<class TImage , class TFunction >
itk::AdaptiveThresholdIterator< TImage, TFunction >::itkStaticConstMacro ( NDimensions  ,
unsigned int  ,
TImage::ImageDimension   
)

Dimension of the image the iterator walks. This constant is needed so that functions that are templated over image iterator type (as opposed to being templated over pixel type and dimension) can have compile time access to the dimension of the image that the iterator walks.

◆ operator++()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::operator++ ( )
inlineoverride

Walk forward one index

Definition at line 155 of file itkAdaptiveThresholdIterator.h.

◆ operator=()

template<class TImage , class TFunction >
Self& itk::AdaptiveThresholdIterator< TImage, TFunction >::operator= ( const Self it)
inline

operator= is provided to make sure the handle to the image is properly reference counted.

Definition at line 159 of file itkAdaptiveThresholdIterator.h.

References itk::AdaptiveThresholdIterator< TImage, TFunction >::m_InitializeValue.

◆ Set()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::Set ( const PixelType value)
inline

Definition at line 144 of file itkAdaptiveThresholdIterator.h.

◆ SetExpansionDirection()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::SetExpansionDirection ( bool  upwards)

◆ SetFineDetectionMode()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::SetFineDetectionMode ( bool  fine = false)
inline

switch between fine and raw leakage detection

Definition at line 122 of file itkAdaptiveThresholdIterator.h.

◆ SetMaxTH()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::SetMaxTH ( int  max)

◆ SetMinTH()

template<class TImage , class TFunction >
void itk::AdaptiveThresholdIterator< TImage, TFunction >::SetMinTH ( int  min)

Member Data Documentation

◆ m_Function

template<class TImage , class TFunction >
SmartPointer<FunctionType> itk::AdaptiveThresholdIterator< TImage, TFunction >::m_Function
protected

Definition at line 187 of file itkAdaptiveThresholdIterator.h.

◆ m_ImageOrigin

template<class TImage , class TFunction >
ImageType::PointType itk::AdaptiveThresholdIterator< TImage, TFunction >::m_ImageOrigin
protected

The origin of the source image

Definition at line 193 of file itkAdaptiveThresholdIterator.h.

◆ m_ImageRegion

template<class TImage , class TFunction >
RegionType itk::AdaptiveThresholdIterator< TImage, TFunction >::m_ImageRegion
protected

Region of the source image

Definition at line 199 of file itkAdaptiveThresholdIterator.h.

◆ m_ImageSpacing

template<class TImage , class TFunction >
ImageType::SpacingType itk::AdaptiveThresholdIterator< TImage, TFunction >::m_ImageSpacing
protected

The spacing of the source image

Definition at line 196 of file itkAdaptiveThresholdIterator.h.

◆ m_InitializeValue

template<class TImage , class TFunction >
int itk::AdaptiveThresholdIterator< TImage, TFunction >::m_InitializeValue
protected

◆ m_OutputImage

template<class TImage , class TFunction >
SmartPointer<ImageType> itk::AdaptiveThresholdIterator< TImage, TFunction >::m_OutputImage
protected

Definition at line 185 of file itkAdaptiveThresholdIterator.h.

◆ m_StartIndices

template<class TImage , class TFunction >
std::vector<IndexType> itk::AdaptiveThresholdIterator< TImage, TFunction >::m_StartIndices
protected

A list of locations to start the recursive fill

Definition at line 190 of file itkAdaptiveThresholdIterator.h.

◆ m_UpwardsExpansion

template<class TImage , class TFunction >
bool itk::AdaptiveThresholdIterator< TImage, TFunction >::m_UpwardsExpansion
protected

Definition at line 201 of file itkAdaptiveThresholdIterator.h.

◆ tempPtr

template<class TImage , class TFunction >
TTempImage::Pointer itk::AdaptiveThresholdIterator< TImage, TFunction >::tempPtr

Definition at line 50 of file itkAdaptiveThresholdIterator.h.


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