Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::LabelStatisticsImageFilter< TInputImage > Class Template Reference

Computes per-label image statistics including histogram, moments, and entropy. More...

#include <mitkLabelStatisticsImageFilter.h>

Inheritance diagram for mitk::LabelStatisticsImageFilter< TInputImage >:
Collaboration diagram for mitk::LabelStatisticsImageFilter< TInputImage >:

Classes

class  LabelStatistics
 

Public Types

using Self = LabelStatisticsImageFilter
 
using Superclass = itk::ImageSink< TInputImage >
 
using Pointer = itk::SmartPointer< Self >
 
using ConstPointer = itk::SmartPointer< const Self >
 
using IndexType = typename TInputImage::IndexType
 
using SizeType = typename TInputImage::SizeType
 
using RegionType = typename TInputImage::RegionType
 
using PixelType = typename TInputImage::PixelType
 
using LabelPixelType = typename mitk::Label::PixelType
 
using RealType = typename itk::NumericTraits< PixelType >::RealType
 
using DataObjectPointer = typename itk::DataObject::Pointer
 
using RealObjectType = itk::SimpleDataObjectDecorator< RealType >
 
using BoundingBoxType = std::vector< itk::IndexValueType >
 
using HistogramType = itk::Statistics::Histogram< RealType >
 
using HistogramPointer = typename HistogramType::Pointer
 
using MapType = std::unordered_map< LabelPixelType, LabelStatistics >
 
using MapIterator = typename MapType::iterator
 
using MapConstIterator = typename MapType::const_iterator
 
using ValidLabelValuesContainerType = std::vector< LabelPixelType >
 
using LabelImageType = itk::Image< LabelPixelType, ImageDimension >
 
using ProcessObject = itk::ProcessObject
 

Public Member Functions

virtual const char * GetClassName () const
 
const ValidLabelValuesContainerType & GetValidLabelValues () const
 Get the list of label values that were found during processing. More...
 
void SetHistogramParameters (const std::unordered_map< LabelPixelType, unsigned int > &sizes, const std::unordered_map< LabelPixelType, RealType > &lowerBounds, const std::unordered_map< LabelPixelType, RealType > &upperBounds)
 Set per-label histogram parameters. More...
 
 itkSetInputMacro (LabelInput, LabelImageType)
 
 itkGetInputMacro (LabelInput, LabelImageType)
 
bool HasLabel (LabelPixelType label) const
 
unsigned int GetNumberOfObjects () const
 
unsigned int GetNumberOfLabels () const
 
PixelType GetMinimum (LabelPixelType label) const
 
PixelType GetMaximum (LabelPixelType label) const
 
RealType GetMean (LabelPixelType label) const
 
RealType GetSigma (LabelPixelType label) const
 
RealType GetVariance (LabelPixelType label) const
 
BoundingBoxType GetBoundingBox (LabelPixelType label) const
 
RegionType GetRegion (LabelPixelType label) const
 
RealType GetSum (LabelPixelType label) const
 
RealType GetSumOfSquares (LabelPixelType label) const
 
RealType GetSumOfCubes (LabelPixelType label) const
 
RealType GetSumOfQuadruples (LabelPixelType label) const
 
RealType GetSkewness (LabelPixelType label) const
 
RealType GetKurtosis (LabelPixelType label) const
 
RealType GetMPP (LabelPixelType label) const
 
itk::SizeValueType GetCount (LabelPixelType label) const
 
HistogramPointer GetHistogram (LabelPixelType label) const
 
RealType GetEntropy (LabelPixelType label) const
 
RealType GetUniformity (LabelPixelType label) const
 
RealType GetUPP (LabelPixelType label) const
 
RealType GetMedian (LabelPixelType label) const
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int ImageDimension
 

Protected Member Functions

 LabelStatisticsImageFilter ()
 
 ~LabelStatisticsImageFilter ()
 
void BeforeStreamedGenerateData () override
 
void ThreadedStreamedGenerateData (const RegionType &) override
 
void AfterStreamedGenerateData () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 

Detailed Description

template<typename TInputImage>
class mitk::LabelStatisticsImageFilter< TInputImage >

Computes per-label image statistics including histogram, moments, and entropy.

This filter is a MITK-specific replacement for ITK's itkLabelStatisticsImageFilter. It computes, for each label in a label image, a comprehensive set of statistics: count, min, max, mean, sigma, variance, sum, sum of squares/cubes/quadruples, skewness, kurtosis, MPP, median, uniformity, UPP, entropy, and a histogram.

The filter is streaming-capable via itk::ImageSink and supports multi-threaded processing.

Template Parameters
TInputImageThe type of the input intensity image.
See also
StatisticsImageFilter
ImageStatisticsCalculator

Definition at line 49 of file mitkLabelStatisticsImageFilter.h.

Member Typedef Documentation

◆ BoundingBoxType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::BoundingBoxType = std::vector<itk::IndexValueType>

Definition at line 75 of file mitkLabelStatisticsImageFilter.h.

◆ ConstPointer

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::ConstPointer = itk::SmartPointer<const Self>

Definition at line 55 of file mitkLabelStatisticsImageFilter.h.

◆ DataObjectPointer

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::DataObjectPointer = typename itk::DataObject::Pointer

Definition at line 71 of file mitkLabelStatisticsImageFilter.h.

◆ HistogramPointer

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::HistogramPointer = typename HistogramType::Pointer

Definition at line 78 of file mitkLabelStatisticsImageFilter.h.

◆ HistogramType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::HistogramType = itk::Statistics::Histogram<RealType>

Definition at line 77 of file mitkLabelStatisticsImageFilter.h.

◆ IndexType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::IndexType = typename TInputImage::IndexType

Definition at line 61 of file mitkLabelStatisticsImageFilter.h.

◆ LabelImageType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::LabelImageType = itk::Image<LabelPixelType, ImageDimension>

Definition at line 136 of file mitkLabelStatisticsImageFilter.h.

◆ LabelPixelType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::LabelPixelType = typename mitk::Label::PixelType

Definition at line 65 of file mitkLabelStatisticsImageFilter.h.

◆ MapConstIterator

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::MapConstIterator = typename MapType::const_iterator

Definition at line 112 of file mitkLabelStatisticsImageFilter.h.

◆ MapIterator

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::MapIterator = typename MapType::iterator

Definition at line 111 of file mitkLabelStatisticsImageFilter.h.

◆ MapType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::MapType = std::unordered_map<LabelPixelType, LabelStatistics>

Definition at line 110 of file mitkLabelStatisticsImageFilter.h.

◆ PixelType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::PixelType = typename TInputImage::PixelType

Definition at line 64 of file mitkLabelStatisticsImageFilter.h.

◆ Pointer

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::Pointer = itk::SmartPointer<Self>

Definition at line 54 of file mitkLabelStatisticsImageFilter.h.

◆ ProcessObject

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::ProcessObject = itk::ProcessObject

Definition at line 137 of file mitkLabelStatisticsImageFilter.h.

◆ RealObjectType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::RealObjectType = itk::SimpleDataObjectDecorator<RealType>

Definition at line 73 of file mitkLabelStatisticsImageFilter.h.

◆ RealType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::RealType = typename itk::NumericTraits<PixelType>::RealType

Definition at line 69 of file mitkLabelStatisticsImageFilter.h.

◆ RegionType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::RegionType = typename TInputImage::RegionType

Definition at line 63 of file mitkLabelStatisticsImageFilter.h.

◆ Self

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::Self = LabelStatisticsImageFilter

Definition at line 52 of file mitkLabelStatisticsImageFilter.h.

◆ SizeType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::SizeType = typename TInputImage::SizeType

Definition at line 62 of file mitkLabelStatisticsImageFilter.h.

◆ Superclass

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::Superclass = itk::ImageSink<TInputImage>

Definition at line 53 of file mitkLabelStatisticsImageFilter.h.

◆ ValidLabelValuesContainerType

template<typename TInputImage >
using mitk::LabelStatisticsImageFilter< TInputImage >::ValidLabelValuesContainerType = std::vector<LabelPixelType>

Definition at line 114 of file mitkLabelStatisticsImageFilter.h.

Constructor & Destructor Documentation

◆ LabelStatisticsImageFilter()

template<typename TInputImage >
mitk::LabelStatisticsImageFilter< TInputImage >::LabelStatisticsImageFilter ( )
protected

◆ ~LabelStatisticsImageFilter()

template<typename TInputImage >
mitk::LabelStatisticsImageFilter< TInputImage >::~LabelStatisticsImageFilter ( )
protected

Member Function Documentation

◆ AfterStreamedGenerateData()

template<typename TInputImage >
void mitk::LabelStatisticsImageFilter< TInputImage >::AfterStreamedGenerateData ( )
overrideprotected

◆ BeforeStreamedGenerateData()

template<typename TInputImage >
void mitk::LabelStatisticsImageFilter< TInputImage >::BeforeStreamedGenerateData ( )
overrideprotected

◆ GetBoundingBox()

template<typename TInputImage >
BoundingBoxType mitk::LabelStatisticsImageFilter< TInputImage >::GetBoundingBox ( LabelPixelType  label) const

◆ GetClassName()

template<typename TInputImage >
virtual const char* mitk::LabelStatisticsImageFilter< TInputImage >::GetClassName ( ) const
virtual

◆ GetCount()

template<typename TInputImage >
itk::SizeValueType mitk::LabelStatisticsImageFilter< TInputImage >::GetCount ( LabelPixelType  label) const

◆ GetEntropy()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetEntropy ( LabelPixelType  label) const

◆ GetHistogram()

template<typename TInputImage >
HistogramPointer mitk::LabelStatisticsImageFilter< TInputImage >::GetHistogram ( LabelPixelType  label) const

◆ GetKurtosis()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetKurtosis ( LabelPixelType  label) const

◆ GetMaximum()

template<typename TInputImage >
PixelType mitk::LabelStatisticsImageFilter< TInputImage >::GetMaximum ( LabelPixelType  label) const

◆ GetMean()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetMean ( LabelPixelType  label) const

◆ GetMedian()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetMedian ( LabelPixelType  label) const

◆ GetMinimum()

template<typename TInputImage >
PixelType mitk::LabelStatisticsImageFilter< TInputImage >::GetMinimum ( LabelPixelType  label) const

◆ GetMPP()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetMPP ( LabelPixelType  label) const

◆ GetNumberOfLabels()

template<typename TInputImage >
unsigned int mitk::LabelStatisticsImageFilter< TInputImage >::GetNumberOfLabels ( ) const

◆ GetNumberOfObjects()

template<typename TInputImage >
unsigned int mitk::LabelStatisticsImageFilter< TInputImage >::GetNumberOfObjects ( ) const

◆ GetRegion()

template<typename TInputImage >
RegionType mitk::LabelStatisticsImageFilter< TInputImage >::GetRegion ( LabelPixelType  label) const

◆ GetSigma()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSigma ( LabelPixelType  label) const

◆ GetSkewness()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSkewness ( LabelPixelType  label) const

◆ GetSum()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSum ( LabelPixelType  label) const

◆ GetSumOfCubes()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSumOfCubes ( LabelPixelType  label) const

◆ GetSumOfQuadruples()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSumOfQuadruples ( LabelPixelType  label) const

◆ GetSumOfSquares()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetSumOfSquares ( LabelPixelType  label) const

◆ GetUniformity()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetUniformity ( LabelPixelType  label) const

◆ GetUPP()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetUPP ( LabelPixelType  label) const

◆ GetValidLabelValues()

template<typename TInputImage >
const ValidLabelValuesContainerType& mitk::LabelStatisticsImageFilter< TInputImage >::GetValidLabelValues ( ) const

Get the list of label values that were found during processing.

Returns
Const reference to a vector of valid label pixel values.

◆ GetVariance()

template<typename TInputImage >
RealType mitk::LabelStatisticsImageFilter< TInputImage >::GetVariance ( LabelPixelType  label) const

◆ HasLabel()

template<typename TInputImage >
bool mitk::LabelStatisticsImageFilter< TInputImage >::HasLabel ( LabelPixelType  label) const

◆ itkGetInputMacro()

template<typename TInputImage >
mitk::LabelStatisticsImageFilter< TInputImage >::itkGetInputMacro ( LabelInput  ,
LabelImageType   
)

◆ itkSetInputMacro()

template<typename TInputImage >
mitk::LabelStatisticsImageFilter< TInputImage >::itkSetInputMacro ( LabelInput  ,
LabelImageType   
)

◆ New()

template<typename TInputImage >
static Pointer mitk::LabelStatisticsImageFilter< TInputImage >::New ( )
static

◆ PrintSelf()

template<typename TInputImage >
void mitk::LabelStatisticsImageFilter< TInputImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

◆ SetHistogramParameters()

template<typename TInputImage >
void mitk::LabelStatisticsImageFilter< TInputImage >::SetHistogramParameters ( const std::unordered_map< LabelPixelType, unsigned int > &  sizes,
const std::unordered_map< LabelPixelType, RealType > &  lowerBounds,
const std::unordered_map< LabelPixelType, RealType > &  upperBounds 
)

Set per-label histogram parameters.

Configures the number of bins, lower bound, and upper bound for the histogram of each label individually. Must be called before Update().

Parameters
[in]sizesMap from label value to number of histogram bins.
[in]lowerBoundsMap from label value to histogram lower bound.
[in]upperBoundsMap from label value to histogram upper bound.

◆ ThreadedStreamedGenerateData()

template<typename TInputImage >
void mitk::LabelStatisticsImageFilter< TInputImage >::ThreadedStreamedGenerateData ( const RegionType &  )
overrideprotected

Member Data Documentation

◆ ImageDimension

template<typename TInputImage >
constexpr unsigned int mitk::LabelStatisticsImageFilter< TInputImage >::ImageDimension
staticconstexpr

Definition at line 67 of file mitkLabelStatisticsImageFilter.h.


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