NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkMultipleErodeImageFilter.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef itkMultipleErodeImageFilter_h
16 #define itkMultipleErodeImageFilter_h
17 
18 #include <itkImageToImageFilter.h>
19 #include <itkBinaryCrossStructuringElement.h>
20 #include <itkBinaryErodeImageFilter.h>
21 
22 namespace itk
23 {
28 template <class TImageType>
29 class ITK_EXPORT MultipleErodeImageFilter :
30  public ImageToImageFilter<TImageType, TImageType>
31 {
32 public:
37  typedef ImageToImageFilter<TImageType,TImageType> Superclass;
38  typedef SmartPointer<Self> Pointer;
39  typedef SmartPointer<const Self> ConstPointer;
40  itkNewMacro(Self);
41  itkTypeMacro(MultipleErodeImageFilter, ImageToImageFilter);
45  itkSetMacro(NumberOfErosions, unsigned int);
46  itkGetMacro(NumberOfErosions, unsigned int);
47 
48 protected:
60  void GenerateData();
64  typedef itk::BinaryCrossStructuringElement<typename TImageType::PixelType, TImageType::ImageDimension>
69  typedef itk::BinaryErodeImageFilter<TImageType, TImageType, StructuringElementType>
78  typename ErodeImageFilterType::Pointer m_ErodeImageFilter;
82  unsigned int m_NumberOfErosions;
86  typename TImageType::Pointer m_ErodedImage;
95 
96 private:
100  MultipleErodeImageFilter(const Self&);
101  void operator=(const Self&);
102 
103 };
104 
105 }
106 
107 #ifndef ITK_MANUAL_INSTANTIATION
108 #include "itkMultipleErodeImageFilter.txx"
109 #endif
110 
111 
112 
113 
114 #endif /*ITKMULTIPLEERODEIMAGEFILTER_H_*/
SmartPointer< Self > Pointer
Definition: itkMultipleErodeImageFilter.h:38
ErodeImageFilterType::Pointer m_ErodeImageFilter
Definition: itkMultipleErodeImageFilter.h:78
ImageToImageFilter< TImageType, TImageType > Superclass
Definition: itkMultipleErodeImageFilter.h:37
SmartPointer< const Self > ConstPointer
Definition: itkMultipleErodeImageFilter.h:39
Definition: niftkITKAffineResampleImage.cxx:74
StructuringElementType m_StructuringElement
Definition: itkMultipleErodeImageFilter.h:74
TImageType::Pointer m_ErodedImage
Definition: itkMultipleErodeImageFilter.h:86
virtual ~MultipleErodeImageFilter()
Definition: itkMultipleErodeImageFilter.h:56
float PixelType
Definition: niftkBreastDCEandADC.cxx:88
itk::BinaryCrossStructuringElement< typename TImageType::PixelType, TImageType::ImageDimension > StructuringElementType
Definition: itkMultipleErodeImageFilter.h:65
TImageType::PixelType m_ErodeValue
Definition: itkMultipleErodeImageFilter.h:90
TImageType::PixelType m_BackgroundValue
Definition: itkMultipleErodeImageFilter.h:94
itk::BinaryErodeImageFilter< TImageType, TImageType, StructuringElementType > ErodeImageFilterType
Definition: itkMultipleErodeImageFilter.h:70
Definition: itkMultipleErodeImageFilter.h:29
MultipleErodeImageFilter Self
Definition: itkMultipleErodeImageFilter.h:36
unsigned int m_NumberOfErosions
Definition: itkMultipleErodeImageFilter.h:82