open_iA 2021.08
A tool for the visual analysis and processing of volumetric datasets, with a focus on industrial computed tomography.
Public Types | Public Member Functions | Protected Member Functions | List of all members
itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel > Class Template Reference

Performs defuzzification on a membership image. More...

#include <itkFuzzyClassifierImageFilter.h>

Inheritance diagram for itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >:
[legend]
Collaboration diagram for itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >:
[legend]

Public Types

typedef SmartPointer< const SelfConstPointer
 
typedef DecisionRuleType::Pointer DecisionRulePointer
 
typedef itk::Statistics::MaximumDecisionRule DecisionRuleType
 Decision rule used in the classification process to compare the membership scores and return a class label. More...
 
typedef ImageRegionConstIterator< InputImageTypeInputImageConstIterator
 Other input image typedefs. More...
 
typedef Superclass::InputImageConstPointer InputImageConstPointer
 
typedef Superclass::InputImagePixelType InputImagePixelType
 
typedef Superclass::InputImagePointer InputImagePointer
 Input image typedef support (types inherited from the superclass). More...
 
typedef Superclass::InputImageRegionType InputImageRegionType
 
typedef TInputVectorImage InputImageType
 Convenient typedefs for simplifying declarations. More...
 
typedef TLabel LabelType
 
typedef ImageRegionIterator< OutputImageTypeOutputImageIterator
 Other output image typedefs. More...
 
typedef Superclass::OutputImagePixelType OutputImagePixelType
 
typedef Superclass::OutputImagePointer OutputImagePointer
 Output image typedef support (types inherited from the superclass). More...
 
typedef Superclass::OutputImageRegionType OutputImageRegionType
 
typedef Image< LabelType, itkGetStaticConstMacro(InputImageDimension) > OutputImageType
 Convenient typedefs for simplifying declarations. More...
 
typedef SmartPointer< SelfPointer
 
typedef FuzzyClassifierImageFilter Self
 Standard class typedefs. More...
 
typedef ImageToImageFilter< InputImageType, OutputImageTypeSuperclass
 Standard class typedefs. More...
 

Public Member Functions

 itkNewMacro (Self)
 Method for creation through the object factory. More...
 
 itkStaticConstMacro (InputImageDimension, unsigned int, InputImageType::ImageDimension)
 Extract dimension from input image. More...
 
 itkTypeMacro (FuzzyClassifierImageFilter, ImageToImageFilter)
 Run-time type information (and related methods). More...
 

Protected Member Functions

 FuzzyClassifierImageFilter ()
 Constructor. More...
 
virtual ~FuzzyClassifierImageFilter ()
 Destructor. More...
 
virtual void Classify ()
 This method computes the labeled map. More...
 
void GenerateData () override
 Standard pipeline method. More...
 
void PrintSelf (std::ostream &os, Indent indent) const override
 Write the name-value pairs of the filter data members to the supplied output stream. More...
 

Detailed Description

template<class TInputVectorImage, class TLabel = unsigned char>
class itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >

Performs defuzzification on a membership image.

The filter implements the defuzzification (i.e., the assignment of each pixel to a particular class based on their memberships) by applying a Maximum Decision Rule to the membership image.

If a pixel of the membership image has values -1, that pixel is assumed to be a background pixel and should be ignored. The value of the label assigned to those pixels will be equal to the number of classes. Otherwise, the pixel values of the resulting label map will indicate the classes they correspond to (e.g. labels with value 0 belong to the class 0, labels with value 1 belong to the first class, etc.). Thus the range of label values is 0 to the number of classes.

Inputs and Outputs
The input to this filter is an itk::VectorImage that represents pixel memberships to 'n' classes. You may use a subclass of FuzzyClassifierInitializationImageFilter to generate the membership images or specify your own.
The output of the filter is a label map (an image of unsigned char is the default).
Template parameters
This filter is templated over the input vector image type and the data type of the output label map (defaults to unsigned char).
Version
0.1
Author
Alberto Rey, Alfonso Castro and Bernardino Arcay. University of A Coruña. Spain
See also
FuzzyClassifierInitializationImageFilter
VectorImage

Member Typedef Documentation

◆ ConstPointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef SmartPointer< const Self > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::ConstPointer

◆ DecisionRulePointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef DecisionRuleType::Pointer itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::DecisionRulePointer

◆ DecisionRuleType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef itk::Statistics::MaximumDecisionRule itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::DecisionRuleType

Decision rule used in the classification process to compare the membership scores and return a class label.

◆ InputImageConstIterator

template<class TInputVectorImage , class TLabel = unsigned char>
typedef ImageRegionConstIterator< InputImageType > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImageConstIterator

Other input image typedefs.

◆ InputImageConstPointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::InputImageConstPointer itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImageConstPointer

◆ InputImagePixelType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::InputImagePixelType itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImagePixelType

◆ InputImagePointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::InputImagePointer itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImagePointer

Input image typedef support (types inherited from the superclass).

Input vector image type representing the membership of a pixel to a particular class. This image has arrays as pixels, the number of elements in the array is the same as the number of classes to be used.

◆ InputImageRegionType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::InputImageRegionType itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImageRegionType

◆ InputImageType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef TInputVectorImage itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::InputImageType

Convenient typedefs for simplifying declarations.

◆ LabelType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef TLabel itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::LabelType

◆ OutputImageIterator

template<class TInputVectorImage , class TLabel = unsigned char>
typedef ImageRegionIterator< OutputImageType > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::OutputImageIterator

Other output image typedefs.

◆ OutputImagePixelType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::OutputImagePixelType itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::OutputImagePixelType

◆ OutputImagePointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::OutputImagePointer itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::OutputImagePointer

Output image typedef support (types inherited from the superclass).

The value of each element in the label map is the label of the winner class for the corresponding pixel of the input image. A negative value in the matrix indicates that the corresponding pixel of the input image is ignored (i.e. it's a background value).

◆ OutputImageRegionType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Superclass::OutputImageRegionType itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::OutputImageRegionType

◆ OutputImageType

template<class TInputVectorImage , class TLabel = unsigned char>
typedef Image< LabelType, itkGetStaticConstMacro(InputImageDimension) > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::OutputImageType

Convenient typedefs for simplifying declarations.

◆ Pointer

template<class TInputVectorImage , class TLabel = unsigned char>
typedef SmartPointer< Self > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::Pointer

◆ Self

template<class TInputVectorImage , class TLabel = unsigned char>
typedef FuzzyClassifierImageFilter itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::Self

Standard class typedefs.

◆ Superclass

template<class TInputVectorImage , class TLabel = unsigned char>
typedef ImageToImageFilter< InputImageType, OutputImageType > itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::Superclass

Standard class typedefs.

Constructor & Destructor Documentation

◆ FuzzyClassifierImageFilter()

template<class TInputVectorImage , class TLabel = unsigned char>
itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::FuzzyClassifierImageFilter ( )
inlineprotected

Constructor.

◆ ~FuzzyClassifierImageFilter()

template<class TInputVectorImage , class TLabel = unsigned char>
virtual itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::~FuzzyClassifierImageFilter ( )
inlineprotectedvirtual

Destructor.

Member Function Documentation

◆ Classify()

template<class TInputVectorImage , class TLabel = unsigned char>
virtual void itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::Classify ( )
protectedvirtual

This method computes the labeled map.

◆ GenerateData()

template<class TInputVectorImage , class TLabel = unsigned char>
void itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::GenerateData ( )
overrideprotected

Standard pipeline method.

Here is where the classification is performed.

◆ itkNewMacro()

template<class TInputVectorImage , class TLabel = unsigned char>
itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::itkNewMacro ( Self  )

Method for creation through the object factory.

◆ itkStaticConstMacro()

template<class TInputVectorImage , class TLabel = unsigned char>
itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::itkStaticConstMacro ( InputImageDimension  ,
unsigned int  ,
InputImageType::ImageDimension   
)

Extract dimension from input image.

◆ itkTypeMacro()

template<class TInputVectorImage , class TLabel = unsigned char>
itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::itkTypeMacro ( FuzzyClassifierImageFilter< TInputVectorImage, TLabel >  ,
ImageToImageFilter   
)

Run-time type information (and related methods).

◆ PrintSelf()

template<class TInputVectorImage , class TLabel = unsigned char>
void itk::FuzzyClassifierImageFilter< TInputVectorImage, TLabel >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotected

Write the name-value pairs of the filter data members to the supplied output stream.


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