ITK  6.0.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage > Class Template Reference

#include <itkLabelImageToShapeLabelMapFilter.h>

Detailed Description

template<typename TInputImage, typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
class itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >

Converts a label image to a label map and valuates the shape attributes.

A convenient class that converts a label image to a label map and valuates the shape attribute at once.

This implementation was taken from the Insight Journal paper: https://doi.org/10.54294/q6auw4

Author
Gaetan Lehmann. Biologie du Developpement et de la Reproduction, INRA de Jouy-en-Josas, France.
See also
ShapeLabelObject, LabelShapeOpeningImageFilter, LabelStatisticsOpeningImageFilter
ITK Sphinx Examples:
  • <a href=
  • <a href=
  • <a href=

Definition at line 49 of file itkLabelImageToShapeLabelMapFilter.h.

+ Inheritance diagram for itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >:
+ Collaboration diagram for itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >:

Public Types

using ConstPointer = SmartPointer< const Self >
 
using InputImageConstPointer = typename InputImageType::ConstPointer
 
using InputImagePixelType = typename InputImageType::PixelType
 
using InputImagePointer = typename InputImageType::Pointer
 
using InputImageRegionType = typename InputImageType::RegionType
 
using InputImageType = TInputImage
 
using LabelizerType = LabelImageToLabelMapFilter< InputImageType, OutputImageType >
 
using LabelObjectType = typename OutputImageType::LabelObjectType
 
using LabelObjectValuatorType = ShapeLabelMapFilter< TOutputImage, ShapeLabelFilterOutput >
 
using OutputImageConstPointer = typename OutputImageType::ConstPointer
 
using OutputImagePixelType = typename OutputImageType::PixelType
 
using OutputImagePointer = typename OutputImageType::Pointer
 
using OutputImageRegionType = typename OutputImageType::RegionType
 
using OutputImageType = TOutputImage
 
using Pointer = SmartPointer< Self >
 
using Self = LabelImageToShapeLabelMapFilter
 
using ShapeLabelFilterOutput = Image< typename OutputImageType::PixelType, Self::OutputImageDimension >
 
using Superclass = ImageToImageFilter< TInputImage, TOutputImage >
 

Public Member Functions

const char * GetNameOfClass () const override
 
virtual void SetBackgroundValue (OutputImagePixelType _arg)
 
virtual OutputImagePixelType GetBackgroundValue () const
 
virtual void SetComputeFeretDiameter (bool _arg)
 
virtual const bool & GetComputeFeretDiameter () const
 
virtual void ComputeFeretDiameterOn ()
 
virtual void SetComputePerimeter (bool _arg)
 
virtual const bool & GetComputePerimeter () const
 
virtual void ComputePerimeterOn ()
 
virtual void SetComputeOrientedBoundingBox (bool _arg)
 
virtual const bool & GetComputeOrientedBoundingBox () const
 
virtual void ComputeOrientedBoundingBoxOn ()
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int ImageDimension = TInputImage::ImageDimension
 
static constexpr unsigned int InputImageDimension = TInputImage::ImageDimension
 
static constexpr unsigned int OutputImageDimension = TInputImage::ImageDimension
 

Protected Member Functions

void EnlargeOutputRequestedRegion (DataObject *) override
 
void GenerateData () override
 
void GenerateInputRequestedRegion () override
 
 LabelImageToShapeLabelMapFilter ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~LabelImageToShapeLabelMapFilter () override=default
 

Private Attributes

OutputImagePixelType m_BackgroundValue {}
 
bool m_ComputeFeretDiameter {}
 
bool m_ComputeOrientedBoundingBox {}
 
bool m_ComputePerimeter {}
 

Member Typedef Documentation

◆ ConstPointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ConstPointer = SmartPointer<const Self>

Definition at line 58 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImageConstPointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImageConstPointer = typename InputImageType::ConstPointer

Definition at line 63 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImagePixelType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImagePixelType = typename InputImageType::PixelType

Definition at line 65 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImagePointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImagePointer = typename InputImageType::Pointer

Definition at line 62 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImageRegionType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImageRegionType = typename InputImageType::RegionType

Definition at line 64 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImageType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImageType = TInputImage

Some convenient type alias.

Definition at line 61 of file itkLabelImageToShapeLabelMapFilter.h.

◆ LabelizerType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::LabelizerType = LabelImageToLabelMapFilter<InputImageType, OutputImageType>

Definition at line 79 of file itkLabelImageToShapeLabelMapFilter.h.

◆ LabelObjectType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::LabelObjectType = typename OutputImageType::LabelObjectType

Definition at line 72 of file itkLabelImageToShapeLabelMapFilter.h.

◆ LabelObjectValuatorType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::LabelObjectValuatorType = ShapeLabelMapFilter<TOutputImage, ShapeLabelFilterOutput>

Definition at line 81 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImageConstPointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImageConstPointer = typename OutputImageType::ConstPointer

Definition at line 69 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImagePixelType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImagePixelType = typename OutputImageType::PixelType

Definition at line 71 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImagePointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImagePointer = typename OutputImageType::Pointer

Definition at line 68 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImageRegionType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImageRegionType = typename OutputImageType::RegionType

Definition at line 70 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImageType

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImageType = TOutputImage

Definition at line 67 of file itkLabelImageToShapeLabelMapFilter.h.

◆ Pointer

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::Pointer = SmartPointer<Self>

Definition at line 57 of file itkLabelImageToShapeLabelMapFilter.h.

◆ Self

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::Self = LabelImageToShapeLabelMapFilter

Standard class type aliases.

Definition at line 55 of file itkLabelImageToShapeLabelMapFilter.h.

◆ ShapeLabelFilterOutput

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ShapeLabelFilterOutput = Image<typename OutputImageType::PixelType, Self::OutputImageDimension>

Definition at line 80 of file itkLabelImageToShapeLabelMapFilter.h.

◆ Superclass

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
using itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::Superclass = ImageToImageFilter<TInputImage, TOutputImage>

Definition at line 56 of file itkLabelImageToShapeLabelMapFilter.h.

Constructor & Destructor Documentation

◆ LabelImageToShapeLabelMapFilter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::LabelImageToShapeLabelMapFilter ( )
protected

◆ ~LabelImageToShapeLabelMapFilter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::~LabelImageToShapeLabelMapFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ ComputeFeretDiameterOn()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ComputeFeretDiameterOn ( )
virtual

Set/Get whether the maximum Feret diameter should be computed or not. Default value is false, because of the high computation time required.

◆ ComputeOrientedBoundingBoxOn()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ComputeOrientedBoundingBoxOn ( )
virtual

Set/Get whether the oriented bounding box should be computed or not. Default value is false because of potential memory consumption issues with sparse labels.

◆ ComputePerimeterOn()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ComputePerimeterOn ( )
virtual

Set/Get whether the perimeter should be computed or not. Default value is false, because of the high computation time required.

◆ EnlargeOutputRequestedRegion()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::EnlargeOutputRequestedRegion ( DataObject )
overrideprotected

LabelImageToShapeLabelMapFilter will produce the entire output.

◆ GenerateData()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GenerateData ( )
overrideprotected

Single-threaded version of GenerateData. This filter delegates to GrayscaleGeodesicErodeImageFilter.

◆ GenerateInputRequestedRegion()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion ( )
overrideprotected

LabelImageToShapeLabelMapFilter needs the entire input be available. Thus, it needs to provide an implementation of GenerateInputRequestedRegion().

◆ GetBackgroundValue()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual OutputImagePixelType itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GetBackgroundValue ( ) const
virtual

Set/Get the value used as "background" in the output image. Defaults to NumericTraits<PixelType>::NonpositiveMin().

◆ GetComputeFeretDiameter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual const bool & itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GetComputeFeretDiameter ( ) const
virtual

Set/Get whether the maximum Feret diameter should be computed or not. Default value is false, because of the high computation time required.

◆ GetComputeOrientedBoundingBox()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual const bool & itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GetComputeOrientedBoundingBox ( ) const
virtual

Set/Get whether the oriented bounding box should be computed or not. Default value is false because of potential memory consumption issues with sparse labels.

◆ GetComputePerimeter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual const bool & itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GetComputePerimeter ( ) const
virtual

Set/Get whether the perimeter should be computed or not. Default value is false, because of the high computation time required.

◆ GetNameOfClass()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
const char * itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
override

◆ New()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
static Pointer itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::New ( )
static

Standard New method.

◆ PrintSelf()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotected

◆ SetBackgroundValue()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::SetBackgroundValue ( OutputImagePixelType  _arg)
virtual

Set/Get the value used as "background" in the output image. Defaults to NumericTraits<PixelType>::NonpositiveMin().

◆ SetComputeFeretDiameter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::SetComputeFeretDiameter ( bool  _arg)
virtual

Set/Get whether the maximum Feret diameter should be computed or not. Default value is false, because of the high computation time required.

◆ SetComputeOrientedBoundingBox()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::SetComputeOrientedBoundingBox ( bool  _arg)
virtual

Set/Get whether the oriented bounding box should be computed or not. Default value is false because of potential memory consumption issues with sparse labels.

◆ SetComputePerimeter()

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
virtual void itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::SetComputePerimeter ( bool  _arg)
virtual

Set/Get whether the perimeter should be computed or not. Default value is false, because of the high computation time required.

Member Data Documentation

◆ ImageDimension

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
constexpr unsigned int itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::ImageDimension = TInputImage::ImageDimension
staticconstexpr

Definition at line 77 of file itkLabelImageToShapeLabelMapFilter.h.

◆ InputImageDimension

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
constexpr unsigned int itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::InputImageDimension = TInputImage::ImageDimension
staticconstexpr

ImageDimension constants

Definition at line 75 of file itkLabelImageToShapeLabelMapFilter.h.

◆ m_BackgroundValue

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
OutputImagePixelType itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::m_BackgroundValue {}
private

Definition at line 155 of file itkLabelImageToShapeLabelMapFilter.h.

◆ m_ComputeFeretDiameter

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
bool itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::m_ComputeFeretDiameter {}
private

Definition at line 156 of file itkLabelImageToShapeLabelMapFilter.h.

◆ m_ComputeOrientedBoundingBox

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
bool itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::m_ComputeOrientedBoundingBox {}
private

Definition at line 158 of file itkLabelImageToShapeLabelMapFilter.h.

◆ m_ComputePerimeter

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
bool itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::m_ComputePerimeter {}
private

Definition at line 157 of file itkLabelImageToShapeLabelMapFilter.h.

◆ OutputImageDimension

template<typename TInputImage , typename TOutputImage = LabelMap<ShapeLabelObject<typename TInputImage::PixelType, TInputImage::ImageDimension>>>
constexpr unsigned int itk::LabelImageToShapeLabelMapFilter< TInputImage, TOutputImage >::OutputImageDimension = TInputImage::ImageDimension
staticconstexpr

Definition at line 76 of file itkLabelImageToShapeLabelMapFilter.h.


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