17 #ifndef __itkVotingBinaryHoleFillFloodingImageFilter_h
18 #define __itkVotingBinaryHoleFillFloodingImageFilter_h
39 template <
class TInputImage,
class TOutputImage>
61 typedef typename InputImageType::IndexType
IndexType;
72 itkStaticConstMacro(InputImageDimension,
unsigned int, TInputImage::ImageDimension);
73 itkStaticConstMacro(OutputImageDimension,
unsigned int, TOutputImage::ImageDimension);
82 itkGetConstReferenceMacro( MajorityThreshold,
unsigned int );
83 itkSetMacro( MajorityThreshold,
unsigned int );
88 itkSetMacro( MaximumNumberOfIterations,
unsigned int );
89 itkGetMacro( MaximumNumberOfIterations,
unsigned int );
93 itkGetMacro( CurrentIterationNumber,
unsigned int );
96 itkGetMacro( TotalNumberOfPixelsChanged,
unsigned int );
99 #ifdef ITK_USE_CONCEPT_CHECKING
117 void PrintSelf ( std::ostream& os,
Indent indent )
const;
121 void operator=(
const Self&);
124 void AllocateOutputImageWorkingMemory();
126 void InitializeNeighborhood();
128 void FindAllPixelsInTheBoundaryAndAddThemAsSeeds();
130 void IterateFrontPropagations();
132 void VisitAllSeedsAndTransitionTheirState();
134 void PasteNewSeedValuesToOutputImage();
136 void SwapSeedArrays();
138 void ClearSecondSeedArray();
140 bool TestForQuorumAtCurrentPixel()
const;
142 void PutCurrentPixelNeighborsIntoSeedArray();
144 void ComputeArrayOfNeighborhoodBufferOffsets();
146 void ComputeBirthThreshold();
148 unsigned int GetNeighborhoodSize()
const;
150 itkSetMacro( CurrentPixelIndex,
IndexType );
151 itkGetConstReferenceMacro( CurrentPixelIndex,
IndexType );
202 #ifndef ITK_MANUAL_INSTANTIATION
203 #include "itkVotingBinaryHoleFillFloodingImageFilter.hxx"
SmartPointer< const Self > ConstPointer
OutputImageType::RegionType OutputImageRegionType
SeedArrayType * m_SeedArray1
const InputImageType * m_InputImage
VotingBinaryHoleFillFloodingImageFilter Self
IndexType m_CurrentPixelIndex
signed long OffsetValueType
InputImageType::Pointer InputImagePointer
VotingBinaryImageFilter< TInputImage, TOutputImage > Superclass
Perform front-propagation under a quorum sensing (voting) algorithm for filling holes in a binary mas...
SeedMaskImageType::Pointer SeedMaskImagePointer
InputImageType::RegionType InputImageRegionType
unsigned int m_TotalNumberOfPixelsChanged
InputImageRegionType m_InternalRegion
OutputImageType::PixelType OutputImagePixelType
Base class for all process objects that output image data.
Superclass::InputImageType InputImageType
OutputImageType::Pointer OutputImagePointer
unsigned int m_CurrentIterationNumber
InputImageType::RegionType InputImageRegionType
unsigned int m_MajorityThreshold
TInputImage InputImageType
NeighborhoodType m_Neighborhood
std::vector< OffsetValueType > NeighborOffsetArrayType
Superclass::OutputImageType OutputImageType
NeighborOffsetArrayType m_NeighborBufferOffset
Superclass::InputSizeType InputSizeType
InputImageType::IndexType IndexType
InputImageType::ConstPointer InputImageConstPointer
unsigned int m_MaximumNumberOfIterations
SeedArrayType * m_SeedArray2
InputImageType::OffsetValueType OffsetValueType
Control indentation during Print() invocation.
SmartPointer< Self > Pointer
SeedMaskImagePointer m_SeedsMask
std::vector< IndexType > SeedArrayType
itk::Image< unsigned char, InputImageDimension > SeedMaskImageType
TOutputImage OutputImageType
OutputImageType * m_OutputImage
Applies a voting operation in a neighborhood of each pixel.
#define itkConceptMacro(name, concept)
itk::Neighborhood< InputImagePixelType, InputImageDimension > NeighborhoodType
std::vector< OutputImagePixelType > SeedNewValuesArrayType
Templated n-dimensional image class.
SeedNewValuesArrayType m_SeedsNewValues
unsigned int m_NumberOfPixelsChangedInLastIteration
InputImageType::PixelType InputImagePixelType