18 #ifndef itkObjectMorphologyImageFilter_h
19 #define itkObjectMorphologyImageFilter_h
72 template<
typename TInputImage,
typename TOutputImage,
typename TKernel >
104 itkStaticConstMacro(ImageDimension,
unsigned int,
105 TInputImage::ImageDimension);
106 itkStaticConstMacro(OutputImageDimension,
unsigned int,
107 TOutputImage::ImageDimension);
108 itkStaticConstMacro(KernelDimension,
unsigned int,
109 TKernel::NeighborhoodDimension);
131 itkGetConstReferenceMacro(Kernel,
KernelType);
134 itkGetConstMacro(ObjectValue,
PixelType);
144 void GenerateInputRequestedRegion() ITK_OVERRIDE;
153 { m_BoundaryCondition = i; }
157 { m_BoundaryCondition = &m_DefaultBoundaryCondition; }
160 itkGetConstMacro(BoundaryCondition, ImageBoundaryConditionPointerType);
166 itkSetMacro(UseBoundaryCondition,
bool);
172 itkGetConstMacro(UseBoundaryCondition,
bool);
174 #ifdef ITK_USE_CONCEPT_CHECKING
197 void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
200 void ThreadedGenerateData(
const OutputImageRegionType &
201 outputRegionForThread,
206 virtual void Evaluate(OutputNeighborhoodIteratorType & nit,
207 const KernelType & kernel) = 0;
212 bool IsObjectPixelOnBoundary(
const InputNeighborhoodIteratorType & nit);
230 void BeforeThreadedGenerateData() ITK_OVERRIDE;
237 #ifndef ITK_MANUAL_INSTANTIATION
238 #include "itkObjectMorphologyImageFilter.hxx"
ObjectMorphologyImageFilter Self
SmartPointer< Self > Pointer
Superclass::OutputImageRegionType OutputImageRegionType
ConstantBoundaryCondition< InputImageType > DefaultBoundaryConditionType
ImageBoundaryCondition< InputImageType > const * ImageBoundaryConditionConstPointerType
TInputImage InputImageType
DefaultBoundaryConditionType m_DefaultBoundaryCondition
TOutputImage OutputImageType
NeighborhoodIterator< TOutputImage > OutputNeighborhoodIteratorType
TInputImage::RegionType RegionType
ImageToImageFilter< TInputImage, TOutputImage > Superclass
KernelType::ConstIterator KernelIteratorType
TInputImage::SizeType SizeType
KernelType::SizeType RadiusType
TInputImage::PixelType PixelType
ImageBoundaryCondition< InputImageType > * ImageBoundaryConditionPointerType
SmartPointer< const Self > ConstPointer
unsigned int ThreadIdType
ConstNeighborhoodIterator< TInputImage > InputNeighborhoodIteratorType
ImageBoundaryConditionPointerType m_BoundaryCondition
Base class for filters that take an image as input and produce an image as output.
Control indentation during Print() invocation.
ImageBaseType::SizeType SizeType
void ResetBoundaryCondition()
TInputImage::IndexType IndexType
#define itkConceptMacro(name, concept)
bool m_UseBoundaryCondition
Base class for the morphological operations being applied to isolated objects in an image...
Defines iteration of a local N-dimensional neighborhood of pixels across an itk::Image.
ImageBaseType::IndexType IndexType
~ObjectMorphologyImageFilter() override