15 #ifndef itkMIDASBaseConditionalMorphologyFilter_h
16 #define itkMIDASBaseConditionalMorphologyFilter_h
18 #include <itkImageToImageFilter.h>
19 #include <itkImageDuplicator.h>
20 #include <itkConstNeighborhoodIterator.h>
31 template <
class TInputImage1,
class TInputImage2,
class TOutputImage>
37 typedef ImageToImageFilter<TInputImage1, TOutputImage>
SuperClass;
74 void SetRegion(InputMaskImageRegionType region) { m_Region = region; m_UserSetRegion =
true; this->Modified(); }
75 InputMaskImageRegionType
GetRegion()
const {
return m_Region; }
78 itkSetMacro(NumberOfIterations,
unsigned int);
79 itkGetConstMacro(NumberOfIterations,
unsigned int);
82 itkSetMacro(InValue, PixelType1);
83 itkGetConstMacro(InValue, PixelType1);
86 itkSetMacro(OutValue, PixelType1);
87 itkGetConstMacro(OutValue, PixelType1);
90 void SetBinaryImageInput(
const InputMaskImageType*
image);
93 void SetGreyScaleImageInput(
const InputMainImageType*
image);
98 void PrintSelf(std::ostream& os, Indent indent)
const;
101 virtual void GenerateData();
104 virtual void DoFilter(InputMainImageType* inGrey, OutputImageType* inMask, OutputImageType *out) = 0;
118 void CopyImageData(OutputImageType*
in, OutputImageType *out);
119 bool IsOnBoundaryOfImage(
const OutputImageIndexType &voxelIndex,
const OutputImageSizeType &
size);
120 bool IsOnBoundaryOfRegion(
const OutputImageIndexType &voxelIndex,
const OutputImageRegionType& region);
127 void operator=(
const Self&);
128 void DoOneIterationOfFilter(InputMainImageType* inGrey, OutputImageType* inMask, OutputImageType *out);
130 PixelType1 m_InValue;
131 PixelType1 m_OutValue;
132 unsigned int m_NumberOfIterations;
135 MaskImageDuplicatorPointer m_TempImage;
140 #ifndef ITK_MANUAL_INSTANTIATION
141 #include "itkMIDASBaseConditionalMorphologyFilter.txx"
OutputImageType::SizeType OutputImageSizeType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:65
InputMaskImageRegionType m_Region
Definition: itkMIDASBaseConditionalMorphologyFilter.h:122
itk::ConstNeighborhoodIterator< OutputImageType >::RadiusType OutputImageRadiusType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:67
TInputImage1 InputMaskImageType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:51
OutputImageType::RegionType OutputImageRegionType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:64
OutputImageType::IndexType OutputImageIndexType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:66
TInputImage1::PixelType PixelType1
Definition: itkMIDASBaseConditionalMorphologyFilter.h:42
ImageType::SizeType SizeType
Definition: niftkMakeLapUSProbeBasicModel.cxx:31
TInputImage2::PixelType PixelType2
Definition: itkMIDASBaseConditionalMorphologyFilter.h:48
SmartPointer< const Self > ConstPointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:39
InputMainImageType::RegionType InputMainImageRegionType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:60
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glew.h:4052
ImageToImageFilter< TInputImage1, TOutputImage > SuperClass
Definition: itkMIDASBaseConditionalMorphologyFilter.h:37
InputMaskImageType::IndexType InputMaskImageIndexType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:55
Definition: niftkITKAffineResampleImage.cxx:74
ImageType::IndexType IndexType
Definition: niftkMakeLapUSProbeBasicModel.cxx:32
virtual void BeforeFilter()
Definition: itkMIDASBaseConditionalMorphologyFilter.h:107
GLuint in
Definition: glew.h:10220
Base class for MIDASConditionalErosionFilter and MIDASConditionalDilationFilter.
Definition: itkMIDASBaseConditionalMorphologyFilter.h:32
virtual ~MIDASBaseConditionalMorphologyFilter()
Definition: itkMIDASBaseConditionalMorphologyFilter.h:97
bool m_UserSetRegion
Definition: itkMIDASBaseConditionalMorphologyFilter.h:123
virtual void AfterIteration()
Definition: itkMIDASBaseConditionalMorphologyFilter.h:116
float PixelType
Definition: niftkBreastDCEandADC.cxx:88
virtual void AfterFilter()
Definition: itkMIDASBaseConditionalMorphologyFilter.h:110
ImageType::RegionType RegionType
Definition: niftkMakeLapUSProbeBasicModel.cxx:30
void SetRegion(InputMaskImageRegionType region)
Definition: itkMIDASBaseConditionalMorphologyFilter.h:74
InputMainImageType::Pointer InputMainImagePointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:58
InputMaskImageType::Pointer InputMaskImagePointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:52
SmartPointer< Self > Pointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:38
InputMaskImageRegionType GetRegion() const
Definition: itkMIDASBaseConditionalMorphologyFilter.h:75
MaskImageDuplicatorType::Pointer MaskImageDuplicatorPointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:71
virtual void BeforeIteration()
Definition: itkMIDASBaseConditionalMorphologyFilter.h:113
GLsizeiptr size
Definition: glew.h:1665
OutputImageType::Pointer OutputImagePointer
Definition: itkMIDASBaseConditionalMorphologyFilter.h:63
InputMaskImageType::RegionType InputMaskImageRegionType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:54
TOutputImage OutputImageType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:62
MIDASBaseConditionalMorphologyFilter Self
Definition: itkMIDASBaseConditionalMorphologyFilter.h:36
TInputImage2 InputMainImageType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:57
InputMainImageType::SizeType InputMainImageSizeType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:59
itk::ImageDuplicator< OutputImageType > MaskImageDuplicatorType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:70
InputMaskImageType::SizeType InputMaskImageSizeType
Definition: itkMIDASBaseConditionalMorphologyFilter.h:53