18 #ifndef itkKLMRegionGrowImageFilter_h
19 #define itkKLMRegionGrowImageFilter_h
164 template<
typename TInputImage,
typename TOutputImage >
192 itkStaticConstMacro(InputImageVectorDimension,
unsigned int,
214 itkStaticConstMacro(InputImageDimension,
unsigned int,
215 TInputImage::ImageDimension);
218 itkStaticConstMacro(OutputImageDimension,
unsigned int,
219 TOutputImage::ImageDimension);
228 itkStaticConstMacro(OutputImageVectorDimension,
unsigned int,
242 InputImageDimension);
271 itkSetMacro(MaximumLambda,
double);
272 itkGetConstReferenceMacro(MaximumLambda,
double);
276 itkSetMacro(NumberOfRegions,
unsigned int);
277 itkGetConstReferenceMacro(NumberOfRegions,
unsigned int);
284 void PrintAlgorithmRegionStats();
287 void PrintAlgorithmBorderStats();
289 #ifdef ITK_USE_CONCEPT_CHECKING
295 itkGetStaticConstMacro(OutputImageDimension) > ) );
296 #if defined(THIS_CONCEPT_FAILS_ON_GCC)
300 itkGetStaticConstMacro(OutputImageVectorDimension) > ) );
308 void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
313 virtual
void GenerateData() ITK_OVERRIDE;
318 virtual
void GenerateInputRequestedRegion() ITK_OVERRIDE;
324 virtual
void EnlargeOutputRequestedRegion(
DataObject *) ITK_OVERRIDE;
328 void ApplyRegionGrowImageFilter() ITK_OVERRIDE;
333 virtual
void MergeRegions() ITK_OVERRIDE;
336 virtual
void GenerateOutputImage();
342 void InitializeKLM();
357 virtual
void ResolveRegions();
366 double m_MaximumLambda;
367 unsigned int m_NumberOfRegions;
371 double m_InternalLambda;
372 unsigned int m_InitialNumberOfRegions;
373 double m_TotalBorderLength;
375 std::vector< KLMSegmentationRegionPtr > m_RegionsPointer;
376 std::vector< KLMSegmentationBorderPtr > m_BordersPointer;
381 double m_InitialRegionArea;
385 #ifndef ITK_MANUAL_INSTANTIATION
386 #include "itkKLMRegionGrowImageFilter.hxx"
ImageRegionIterator< TOutputImage > OutputImageIterator
TOutputImage::Pointer OutputImagePointer
Base class for KLMSegmentationRegion object.
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
vnl_vector< double > MeanRegionIntensityType
KLMRegionGrowImageFilter Self
ImageRegionIterator< LabelImageType > LabelImageIterator
TInputImage::Pointer InputImagePointer
Base class for all process objects that output image data.
TOutputImage::IndexType OutputImageIndexType
TOutputImage::PixelType::VectorType OutputImageVectorType
ImageRegionIterator< TInputImage > InputImageIterator
ImageBaseType::SpacingType VectorType
LabelImageType::Pointer LabelImagePointer
TInputImage::PixelType::VectorType InputImageVectorType
LabelImageType::IndexType LabelImageIndexType
TInputImage::IndexType InputImageIndexType
KLMSegmentationBorder BorderType
ImageRegionConstIterator< TInputImage > InputImageConstIterator
A multi-dimensional iterator templated over image type that walks a region of pixels.
RegionGrowImageFilter< TInputImage, TOutputImage > Superclass
Base class for a region growing object that performs energy-based region growing for multiband images...
const unsigned int Dimension
TInputImage::RegionType InputRegionType
Base class for KLMSegmentationBorder object.
Superclass::RegionLabelType RegionLabelType
TInputImage InputImageType
Superclass::GridSizeType GridSizeType
Base class for RegionGrowImageFilter object.
TInputImage::PixelType InputImagePixelType
LabelImageType::PixelType LabelImagePixelType
Control indentation during Print() invocation.
ImageBaseType::SizeType SizeType
Image< RegionLabelType, itkGetStaticConstMacro(LabelImageDimension) > LabelImageType
KLMSegmentationRegion::RegionLabelType RegionLabelType
Object maintaining a reference to a list of borders associated with a region.
TOutputImage OutputImageType
#define itkConceptMacro(name, concept)
TInputImage::ConstPointer InputImageConstPointer
KLMDynamicBorderArray< BorderType > KLMSegmentationBorderArrayPtr
Base class for all data objects in ITK.
Templated n-dimensional image class.
A multi-dimensional iterator templated over image type that walks a region of pixels.
ImageBaseType::IndexType IndexType
TInputImage::SizeType InputImageSizeType
TOutputImage::PixelType OutputImagePixelType