go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes
itk::ErodeMaskImageFilter< TImage > Class Template Reference

#include <itkErodeMaskImageFilter.h>

Detailed Description

template<class TImage>
class itk::ErodeMaskImageFilter< TImage >

This filter computes the Erosion of a mask image. It makes only sense for masks used in a multiresolution registration procedure.

The input to this filter is a scalar-valued itk::Image of arbitrary dimension. The output is a scalar-valued itk::Image, of the same type as the input image. This restriction is not really necessary, but easier for coding.

If IsMovingMask == false:
If more resolution levels are used, the image is subsampled. Before subsampling the image is smoothed with a Gaussian filter, with variance (schedule/2)^2. The 'schedule' depends on the resolution level. The 'radius' of the convolution filter is roughly twice the standard deviation. Thus, the parts in the edge with size 'radius' are influenced by the background.
--> radius = static_cast<unsigned long>( schedule + 1 );

If IsMovingMask == true:
Same story as before. Now the size the of the eroding element is doubled. This is because the gradient of the moving image is used for calculating the derivative of the metric.
--> radius = static_cast<unsigned long>( 2 * schedule + 1 );

See also
ParabolicErodeImageFilter

Definition at line 57 of file itkErodeMaskImageFilter.h.

Inheritance diagram for itk::ErodeMaskImageFilter< TImage >:
Inheritance graph
[legend]

Public Types

using ConstPointer = SmartPointer< const Self >
 
using ImagePyramidFilterType = MultiResolutionPyramidImageFilter< InputImageType, OutputImageType >
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageType = TImage
 
using InputPixelType = typename InputImageType::PixelType
 
using OutputImagePointer = typename OutputImageType::Pointer
 
using OutputImageType = TImage
 
using OutputPixelType = typename OutputImageType::PixelType
 
using Pointer = SmartPointer< Self >
 
using ScheduleType = typename ImagePyramidFilterType::ScheduleType
 
using Self = ErodeMaskImageFilter
 
using Superclass = ImageToImageFilter< TImage, TImage >
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual bool GetIsMovingMask () const
 
virtual unsigned int GetResolutionLevel () const
 
virtual const ScheduleTypeGetSchedule ()
 
 ITK_DISALLOW_COPY_AND_MOVE (ErodeMaskImageFilter)
 
 itkStaticConstMacro (ImageDimension, unsigned int, OutputImageType::ImageDimension)
 
 itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension)
 
 itkStaticConstMacro (OutputImageDimension, unsigned int, OutputImageType::ImageDimension)
 
virtual void SetIsMovingMask (bool _arg)
 
virtual void SetResolutionLevel (unsigned int _arg)
 
virtual void SetSchedule (const ScheduleType &schedule)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 ErodeMaskImageFilter ()
 
void GenerateData () override
 
 ~ErodeMaskImageFilter () override=default
 

Private Attributes

bool m_IsMovingMask
 
unsigned int m_ResolutionLevel
 
ScheduleType m_Schedule
 

Member Typedef Documentation

◆ ConstPointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ConstPointer = SmartPointer<const Self>

Definition at line 66 of file itkErodeMaskImageFilter.h.

◆ ImagePyramidFilterType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ImagePyramidFilterType = MultiResolutionPyramidImageFilter<InputImageType, OutputImageType>

Define the schedule type.

Definition at line 88 of file itkErodeMaskImageFilter.h.

◆ InputImagePointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputImagePointer = typename InputImageType::Pointer

Definition at line 77 of file itkErodeMaskImageFilter.h.

◆ InputImageType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputImageType = TImage

Typedefs.

Definition at line 75 of file itkErodeMaskImageFilter.h.

◆ InputPixelType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::InputPixelType = typename InputImageType::PixelType

Definition at line 79 of file itkErodeMaskImageFilter.h.

◆ OutputImagePointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputImagePointer = typename OutputImageType::Pointer

Definition at line 78 of file itkErodeMaskImageFilter.h.

◆ OutputImageType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputImageType = TImage

Definition at line 76 of file itkErodeMaskImageFilter.h.

◆ OutputPixelType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::OutputPixelType = typename OutputImageType::PixelType

Definition at line 80 of file itkErodeMaskImageFilter.h.

◆ Pointer

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Pointer = SmartPointer<Self>

Definition at line 65 of file itkErodeMaskImageFilter.h.

◆ ScheduleType

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::ScheduleType = typename ImagePyramidFilterType::ScheduleType

Definition at line 89 of file itkErodeMaskImageFilter.h.

◆ Self

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Self = ErodeMaskImageFilter

Standard ITK stuff.

Definition at line 63 of file itkErodeMaskImageFilter.h.

◆ Superclass

template<class TImage >
using itk::ErodeMaskImageFilter< TImage >::Superclass = ImageToImageFilter<TImage, TImage>

Definition at line 64 of file itkErodeMaskImageFilter.h.

Constructor & Destructor Documentation

◆ ErodeMaskImageFilter()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::ErodeMaskImageFilter ( )
protected

Constructor.

◆ ~ErodeMaskImageFilter()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::~ErodeMaskImageFilter ( )
overrideprotecteddefault

Destructor

Member Function Documentation

◆ GenerateData()

template<class TImage >
void itk::ErodeMaskImageFilter< TImage >::GenerateData ( )
overrideprotected

Standard pipeline method. While this class does not implement a ThreadedGenerateData(), its GenerateData() delegates all calculations to the ParabolicErodeImageFilter, which is multi-threaded.

◆ GetClassName()

template<class TImage >
virtual const char * itk::ErodeMaskImageFilter< TImage >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

◆ GetIsMovingMask()

template<class TImage >
virtual bool itk::ErodeMaskImageFilter< TImage >::GetIsMovingMask ( ) const
virtual

◆ GetResolutionLevel()

template<class TImage >
virtual unsigned int itk::ErodeMaskImageFilter< TImage >::GetResolutionLevel ( ) const
virtual

◆ GetSchedule()

template<class TImage >
virtual const ScheduleType & itk::ErodeMaskImageFilter< TImage >::GetSchedule ( )
virtual

◆ ITK_DISALLOW_COPY_AND_MOVE()

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::ITK_DISALLOW_COPY_AND_MOVE ( ErodeMaskImageFilter< TImage >  )

◆ itkStaticConstMacro() [1/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( ImageDimension  ,
unsigned int  ,
OutputImageType::ImageDimension   
)

◆ itkStaticConstMacro() [2/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( InputImageDimension  ,
unsigned int  ,
InputImageType::ImageDimension   
)

Dimensionality of the two images is assumed to be the same.

◆ itkStaticConstMacro() [3/3]

template<class TImage >
itk::ErodeMaskImageFilter< TImage >::itkStaticConstMacro ( OutputImageDimension  ,
unsigned int  ,
OutputImageType::ImageDimension   
)

◆ New()

template<class TImage >
static Pointer itk::ErodeMaskImageFilter< TImage >::New ( )
static

Method for creation through the object factory.

◆ SetIsMovingMask()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetIsMovingMask ( bool  _arg)
virtual

Set/Get whether the mask serves as a 'moving mask' in the registration Moving masks are eroded with a slightly larger kernel, because the derivative is usually taken on the moving image. Default: false

◆ SetResolutionLevel()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetResolutionLevel ( unsigned int  _arg)
virtual

Set the resolution level of the registration. Default: 0.

◆ SetSchedule()

template<class TImage >
virtual void itk::ErodeMaskImageFilter< TImage >::SetSchedule ( const ScheduleType schedule)
inlinevirtual

Set/Get the pyramid schedule used to downsample the image whose mask is the input of the ErodeMaskImageFilter Default: filled with ones, one resolution.

Definition at line 96 of file itkErodeMaskImageFilter.h.

Field Documentation

◆ m_IsMovingMask

template<class TImage >
bool itk::ErodeMaskImageFilter< TImage >::m_IsMovingMask
private

Definition at line 138 of file itkErodeMaskImageFilter.h.

◆ m_ResolutionLevel

template<class TImage >
unsigned int itk::ErodeMaskImageFilter< TImage >::m_ResolutionLevel
private

Definition at line 139 of file itkErodeMaskImageFilter.h.

◆ m_Schedule

template<class TImage >
ScheduleType itk::ErodeMaskImageFilter< TImage >::m_Schedule
private

Definition at line 140 of file itkErodeMaskImageFilter.h.



Generated on 2023-01-13 for elastix by doxygen 1.9.6 elastix logo