NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType > Class Template Reference

Takes a mask, dilates outwards, blurs with a gaussian, then substitutes in the dilated mask, so you end up with a bigger mask than you started, with gaussian blurred edges (ie. smooth drop off to zero). More...

Inheritance diagram for itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >:
Inheritance graph
[legend]
Collaboration diagram for itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >:
Collaboration graph
[legend]

Public Types

typedef
ExtendedBrainMaskWithSmoothDropOffCompositeFilter 
Self
 
typedef ImageToImageFilter
< TImageType, TImageType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef TImageType ImageType
 
typedef ImageType::Pointer ImagePointer
 
typedef
BinaryThresholdImageFilter
< TImageType, TImageType > 
BinaryThresholdFilterType
 
typedef
BinaryThresholdFilterType::Pointer 
BinaryThresholdFilterPointer
 
typedef
BinaryCrossStructuringElement
< typename
TImageType::PixelType,
TImageType::ImageDimension > 
StructuringElementType
 
typedef
BinaryDilateImageFilter
< TImageType, TImageType,
StructuringElementType
BinaryDilateFilterType
 
typedef
BinaryDilateFilterType::Pointer 
BinaryDilateFilterPointer
 
typedef
DiscreteGaussianImageFilter
< TImageType, TImageType > 
GaussianFilterType
 
typedef GaussianFilterType::Pointer GaussianFilterPointer
 
typedef
InjectSourceImageGreaterThanZeroIntoTargetImageFilter
< TImageType, TImageType,
TImageType > 
InjectSourceImageGreaterThanZeroIntoTargetImageFilterType
 
typedef
InjectSourceImageGreaterThanZeroIntoTargetImageFilterType::Pointer 
InjectSourceImageGreaterThanZeroIntoTargetImageFilterPointer
 

Public Member Functions

virtual const char * GetClassName () const
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 
virtual float GetInitialThreshold ()
 
virtual void SetInitialThreshold (float _arg)
 
virtual unsigned int GetFirstNumberOfDilations ()
 
virtual void SetFirstNumberOfDilations (unsigned int _arg)
 
virtual unsigned int GetSecondNumberOfDilations ()
 
virtual void SetSecondNumberOfDilations (unsigned int _arg)
 
virtual float GetGaussianFWHM ()
 
virtual void SetGaussianFWHM (float _arg)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 ExtendedBrainMaskWithSmoothDropOffCompositeFilter ()
 
virtual ~ExtendedBrainMaskWithSmoothDropOffCompositeFilter ()
 
void GenerateData ()
 

Detailed Description

template<class TImageType>
class itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >

Takes a mask, dilates outwards, blurs with a gaussian, then substitutes in the dilated mask, so you end up with a bigger mask than you started, with gaussian blurred edges (ie. smooth drop off to zero).

This filter is designed for Nicky Hobbs to create a brain mask for her fluid registration experiments. As per email from Jo Barnes, you have 4 parameters,

1.) Threshold using value T
2.) First stage of dilation = X voxels
3.) Second stage of dilation = Y voxels
4.) Gaussian FWHM = Z millimetres

and the process is:

1.) Threshold using value T so that if value < T, output = 0 else value = 1.
2.) Dilate mask by X voxels in all directions, let's call the result mask A (binary);
3.) Dilate mask A further by Y voxels in all directions, let's call the result mask B (binary);
4.) Applied to mask B gaussian smoothing with a Zmm FWHM kernel, to generate an approximation 
to a smooth signal drop-off, let's call the result mask C (reals);
5.) Replaced the inner portion of mask C with mask A, i.e. to enforce the preservation of the 
original signal intensity values in a neighbourhood of 8 voxels around the original brain mask, 
followed by a smooth drop-off around that, let's call the result mask D (reals);
6.) The output is mask D.

This class can be used as an example of a Composite Filter.

Member Typedef Documentation

template<class TImageType >
typedef BinaryDilateFilterType::Pointer itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::BinaryDilateFilterPointer
template<class TImageType >
typedef BinaryDilateImageFilter<TImageType, TImageType, StructuringElementType> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::BinaryDilateFilterType
template<class TImageType >
typedef BinaryThresholdFilterType::Pointer itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::BinaryThresholdFilterPointer
template<class TImageType >
typedef BinaryThresholdImageFilter<TImageType, TImageType> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::BinaryThresholdFilterType
template<class TImageType >
typedef SmartPointer<const Self> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::ConstPointer
template<class TImageType >
typedef GaussianFilterType::Pointer itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GaussianFilterPointer
template<class TImageType >
typedef DiscreteGaussianImageFilter<TImageType, TImageType> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GaussianFilterType
template<class TImageType >
typedef ImageType::Pointer itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::ImagePointer
template<class TImageType >
typedef TImageType itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::ImageType
template<class TImageType >
typedef SmartPointer<Self> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::Pointer
template<class TImageType >
typedef BinaryCrossStructuringElement<typename TImageType::PixelType, TImageType::ImageDimension> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::StructuringElementType
template<class TImageType >
typedef ImageToImageFilter<TImageType, TImageType> itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::Superclass

Constructor & Destructor Documentation

template<class TImageType >
virtual itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::~ExtendedBrainMaskWithSmoothDropOffCompositeFilter ( )
protectedvirtual

Member Function Documentation

template<class TImageType >
void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GenerateData ( )
protected
template<class TImageType >
virtual const char* itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GetClassName ( ) const
virtual

Run-time type information

template<class TImageType >
virtual unsigned int itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GetFirstNumberOfDilations ( )
virtual
template<class TImageType >
virtual float itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GetGaussianFWHM ( )
virtual
template<class TImageType >
virtual float itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GetInitialThreshold ( )
virtual

Set/Get our parameters.

template<class TImageType >
virtual unsigned int itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::GetSecondNumberOfDilations ( )
virtual
template<class TImageType >
static Pointer itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::New ( )
static

Method for creation through object factory

template<class TImageType >
void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const

Display

template<class TImageType >
virtual void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::SetFirstNumberOfDilations ( unsigned int  _arg)
virtual
template<class TImageType >
virtual void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::SetGaussianFWHM ( float  _arg)
virtual
template<class TImageType >
virtual void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::SetInitialThreshold ( float  _arg)
virtual
template<class TImageType >
virtual void itk::ExtendedBrainMaskWithSmoothDropOffCompositeFilter< TImageType >::SetSecondNumberOfDilations ( unsigned int  _arg)
virtual

The documentation for this class was generated from the following file: