Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram > Class Template Reference

This class computes texture feature coefficients from a grey level Zone-length matrix. More...

#include <itkEnhancedHistogramToSizeZoneFeaturesFilter.h>

Inheritance diagram for itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >:
Collaboration diagram for itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >:

Public Types

enum  SizeZoneFeatureName {
  SmallZoneEmphasis , LargeZoneEmphasis , GreyLevelNonuniformity , GreyLevelNonuniformityNormalized ,
  SizeZoneNonuniformity , SizeZoneNonuniformityNormalized , LowGreyLevelZoneEmphasis , HighGreyLevelZoneEmphasis ,
  SmallZoneLowGreyLevelEmphasis , SmallZoneHighGreyLevelEmphasis , LargeZoneLowGreyLevelEmphasis , LargeZoneHighGreyLevelEmphasis ,
  ZonePercentage , GreyLevelVariance , SizeZoneVariance , ZoneEntropy
}
 
typedef EnhancedHistogramToSizeZoneFeaturesFilter Self
 
typedef ProcessObject Superclass
 
typedef SmartPointer< Self > Pointer
 
typedef SmartPointer< const Self > ConstPointer
 
typedef THistogram HistogramType
 
typedef HistogramType::Pointer HistogramPointer
 
typedef HistogramType::ConstPointer HistogramConstPointer
 
typedef HistogramType::MeasurementType MeasurementType
 
typedef HistogramType::MeasurementVectorType MeasurementVectorType
 
typedef HistogramType::IndexType IndexType
 
typedef HistogramType::TotalAbsoluteFrequencyType FrequencyType
 
typedef DataObject::Pointer DataObjectPointer
 
typedef SimpleDataObjectDecorator< MeasurementType > MeasurementObjectType
 

Public Member Functions

virtual const char * GetClassName () const
 
void SetInput (const HistogramType *histogram)
 
const HistogramType * GetInput () const
 
MeasurementType GetSmallZoneEmphasis () const
 
const MeasurementObjectType * GetSmallZoneEmphasisOutput () const
 
MeasurementType GetLargeZoneEmphasis () const
 
const MeasurementObjectType * GetLargeZoneEmphasisOutput () const
 
MeasurementType GetGreyLevelNonuniformity () const
 
const MeasurementObjectType * GetGreyLevelNonuniformityOutput () const
 
MeasurementType GetGreyLevelNonuniformityNormalized () const
 
const MeasurementObjectType * GetGreyLevelNonuniformityNormalizedOutput () const
 
MeasurementType GetSizeZoneNonuniformity () const
 
const MeasurementObjectType * GetSizeZoneNonuniformityOutput () const
 
MeasurementType GetSizeZoneNonuniformityNormalized () const
 
const MeasurementObjectType * GetSizeZoneNonuniformityNormalizedOutput () const
 
MeasurementType GetLowGreyLevelZoneEmphasis () const
 
const MeasurementObjectType * GetLowGreyLevelZoneEmphasisOutput () const
 
MeasurementType GetHighGreyLevelZoneEmphasis () const
 
const MeasurementObjectType * GetHighGreyLevelZoneEmphasisOutput () const
 
MeasurementType GetSmallZoneLowGreyLevelEmphasis () const
 
const MeasurementObjectType * GetSmallZoneLowGreyLevelEmphasisOutput () const
 
MeasurementType GetSmallZoneHighGreyLevelEmphasis () const
 
const MeasurementObjectType * GetSmallZoneHighGreyLevelEmphasisOutput () const
 
MeasurementType GetLargeZoneLowGreyLevelEmphasis () const
 
const MeasurementObjectType * GetLargeZoneLowGreyLevelEmphasisOutput () const
 
MeasurementType GetLargeZoneHighGreyLevelEmphasis () const
 
const MeasurementObjectType * GetLargeZoneHighGreyLevelEmphasisOutput () const
 
MeasurementType GetZonePercentage () const
 
const MeasurementObjectType * GetZonePercentageOutput () const
 
MeasurementType GetNumberOfZones () const
 
const MeasurementObjectType * GetNumberOfZonesOutput () const
 
MeasurementType GetGreyLevelVariance () const
 
const MeasurementObjectType * GetGreyLevelVarianceOutput () const
 
MeasurementType GetSizeZoneVariance () const
 
const MeasurementObjectType * GetSizeZoneVarianceOutput () const
 
MeasurementType GetZoneEntropy () const
 
const MeasurementObjectType * GetZoneEntropyOutput () const
 
virtual unsigned long GetTotalNumberOfZones ()
 
virtual unsigned long GetNumberOfVoxels () const
 
virtual void SetNumberOfVoxels (unsigned long _arg)
 
MeasurementType GetFeature (SizeZoneFeatureName name)
 

Static Public Member Functions

static Pointer New ()
 

Protected Types

typedef ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
 

Protected Member Functions

 EnhancedHistogramToSizeZoneFeaturesFilter ()
 
 ~EnhancedHistogramToSizeZoneFeaturesFilter ()
 
virtual void PrintSelf (std::ostream &os, Indent indent) const ITK_OVERRIDE
 
virtual DataObjectPointer MakeOutput (DataObjectPointerArraySizeType) ITK_OVERRIDE
 
virtual void GenerateData () ITK_OVERRIDE
 

Detailed Description

template<typename THistogram>
class itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >

This class computes texture feature coefficients from a grey level Zone-length matrix.

By default, Zone length features are computed for each spatial direction and then averaged afterward, so it is possible to access the standard deviations of the texture features. These values give a clue as to texture anisotropy. However, doing this is much more work, because it involved computing one for each offset given. To compute a single matrix using the first offset, call FastCalculationsOn(). If this is called, then the texture standard deviations will not be computed (and will be set to zero), but texture computation will be much faster.

This class is templated over the input histogram type.

Print references: M. M. Galloway. Texture analysis using gray level Zone lengths. Computer Graphics and Image Processing, 4:172-179, 1975.

A. Chu, C. M. Sehgal, and J. F. Greenleaf. Use of gray value distribution of Zone lengths for texture analysis. Pattern Recognition Letters, 11:415-420, 1990.

B. R. Dasarathy and E. B. Holder. Image characterizations based on joint gray-level Zone-length distributions. Pattern Recognition Letters, 12:490-502, 1991.

IJ article: https://hdl.handle.net/1926/1374

See also
ScalarImageToSizeZoneFeaturesFilter
ScalarImageToSizeZoneMatrixFilter
EnhancedHistogramToSizeZoneFeaturesFilter
Author
: Nick Tustison

Definition at line 77 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<typename THistogram >
typedef SmartPointer<const Self> itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::ConstPointer

◆ DataObjectPointer

template<typename THistogram >
typedef DataObject::Pointer itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::DataObjectPointer

Smart Pointer type to a DataObject.

Definition at line 107 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

◆ DataObjectPointerArraySizeType

template<typename THistogram >
typedef ProcessObject::DataObjectPointerArraySizeType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::DataObjectPointerArraySizeType
protected

Make a DataObject to be used for output output.

Definition at line 215 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

◆ FrequencyType

template<typename THistogram >
typedef HistogramType:: TotalAbsoluteFrequencyType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::FrequencyType

◆ HistogramConstPointer

template<typename THistogram >
typedef HistogramType::ConstPointer itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::HistogramConstPointer

◆ HistogramPointer

template<typename THistogram >
typedef HistogramType::Pointer itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::HistogramPointer

◆ HistogramType

template<typename THistogram >
typedef THistogram itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::HistogramType

◆ IndexType

template<typename THistogram >
typedef HistogramType::IndexType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::IndexType

◆ MeasurementObjectType

template<typename THistogram >
typedef SimpleDataObjectDecorator<MeasurementType> itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::MeasurementObjectType

Type of DataObjects used for scalar outputs

Definition at line 110 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

◆ MeasurementType

template<typename THistogram >
typedef HistogramType::MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::MeasurementType

◆ MeasurementVectorType

template<typename THistogram >
typedef HistogramType::MeasurementVectorType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::MeasurementVectorType

◆ Pointer

template<typename THistogram >
typedef SmartPointer<Self> itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::Pointer

◆ Self

Standard typedefs

Definition at line 81 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

◆ Superclass

template<typename THistogram >
typedef ProcessObject itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::Superclass

Member Enumeration Documentation

◆ SizeZoneFeatureName

Zone-length feature types

Enumerator
SmallZoneEmphasis 
LargeZoneEmphasis 
GreyLevelNonuniformity 
GreyLevelNonuniformityNormalized 
SizeZoneNonuniformity 
SizeZoneNonuniformityNormalized 
LowGreyLevelZoneEmphasis 
HighGreyLevelZoneEmphasis 
SmallZoneLowGreyLevelEmphasis 
SmallZoneHighGreyLevelEmphasis 
LargeZoneLowGreyLevelEmphasis 
LargeZoneHighGreyLevelEmphasis 
ZonePercentage 
GreyLevelVariance 
SizeZoneVariance 
ZoneEntropy 

Definition at line 186 of file itkEnhancedHistogramToSizeZoneFeaturesFilter.h.

Constructor & Destructor Documentation

◆ EnhancedHistogramToSizeZoneFeaturesFilter()

◆ ~EnhancedHistogramToSizeZoneFeaturesFilter()

template<typename THistogram >
itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::~EnhancedHistogramToSizeZoneFeaturesFilter ( )
inlineprotected

Member Function Documentation

◆ GenerateData()

template<typename THistogram >
virtual void itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GenerateData ( )
protectedvirtual

◆ GetClassName()

template<typename THistogram >
virtual const char* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetClassName ( ) const
virtual

Zone-time type information (and related methods).

◆ GetFeature()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetFeature ( SizeZoneFeatureName  name)

convenience method to access the Zone length values

◆ GetGreyLevelNonuniformity()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelNonuniformity ( ) const

Methods to return the grey level nonuniformity.

◆ GetGreyLevelNonuniformityNormalized()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelNonuniformityNormalized ( ) const

Methods to return the grey level nonuniformity normalized.

◆ GetGreyLevelNonuniformityNormalizedOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelNonuniformityNormalizedOutput ( ) const

◆ GetGreyLevelNonuniformityOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelNonuniformityOutput ( ) const

◆ GetGreyLevelVariance()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelVariance ( ) const

Methods to return the grey level variance.

◆ GetGreyLevelVarianceOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetGreyLevelVarianceOutput ( ) const

◆ GetHighGreyLevelZoneEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetHighGreyLevelZoneEmphasis ( ) const

Methods to return the high grey level Zone emphasis.

◆ GetHighGreyLevelZoneEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetHighGreyLevelZoneEmphasisOutput ( ) const

◆ GetInput()

template<typename THistogram >
const HistogramType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetInput ( ) const

◆ GetLargeZoneEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneEmphasis ( ) const

Methods to return the long Zone emphasis.

◆ GetLargeZoneEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneEmphasisOutput ( ) const

◆ GetLargeZoneHighGreyLevelEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneHighGreyLevelEmphasis ( ) const

Methods to return the long Zone high grey level Zone emphasis.

◆ GetLargeZoneHighGreyLevelEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneHighGreyLevelEmphasisOutput ( ) const

◆ GetLargeZoneLowGreyLevelEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneLowGreyLevelEmphasis ( ) const

Methods to return the long Zone low grey level Zone emphasis.

◆ GetLargeZoneLowGreyLevelEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLargeZoneLowGreyLevelEmphasisOutput ( ) const

◆ GetLowGreyLevelZoneEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLowGreyLevelZoneEmphasis ( ) const

Methods to return the low grey level Zone emphasis.

◆ GetLowGreyLevelZoneEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetLowGreyLevelZoneEmphasisOutput ( ) const

◆ GetNumberOfVoxels()

template<typename THistogram >
virtual unsigned long itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetNumberOfVoxels ( ) const
virtual

◆ GetNumberOfZones()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetNumberOfZones ( ) const

Methods to return the long Zone high grey level Zone emphasis.

◆ GetNumberOfZonesOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetNumberOfZonesOutput ( ) const

◆ GetSizeZoneNonuniformity()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneNonuniformity ( ) const

Methods to return the Zone length nonuniformity.

◆ GetSizeZoneNonuniformityNormalized()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneNonuniformityNormalized ( ) const

Methods to return the Zone length nonuniformity normalized.

◆ GetSizeZoneNonuniformityNormalizedOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneNonuniformityNormalizedOutput ( ) const

◆ GetSizeZoneNonuniformityOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneNonuniformityOutput ( ) const

◆ GetSizeZoneVariance()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneVariance ( ) const

Methods to return the Zone length variance.

◆ GetSizeZoneVarianceOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSizeZoneVarianceOutput ( ) const

◆ GetSmallZoneEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneEmphasis ( ) const

Methods to return the short Zone emphasis.

◆ GetSmallZoneEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneEmphasisOutput ( ) const

◆ GetSmallZoneHighGreyLevelEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneHighGreyLevelEmphasis ( ) const

Methods to return the short Zone high grey level Zone emphasis.

◆ GetSmallZoneHighGreyLevelEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneHighGreyLevelEmphasisOutput ( ) const

◆ GetSmallZoneLowGreyLevelEmphasis()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneLowGreyLevelEmphasis ( ) const

Methods to return the short Zone low grey level Zone emphasis.

◆ GetSmallZoneLowGreyLevelEmphasisOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetSmallZoneLowGreyLevelEmphasisOutput ( ) const

◆ GetTotalNumberOfZones()

template<typename THistogram >
virtual unsigned long itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetTotalNumberOfZones ( )
virtual

◆ GetZoneEntropy()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetZoneEntropy ( ) const

Methods to return the Zone entropy.

◆ GetZoneEntropyOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetZoneEntropyOutput ( ) const

◆ GetZonePercentage()

template<typename THistogram >
MeasurementType itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetZonePercentage ( ) const

Methods to return the long Zone high grey level Zone emphasis.

◆ GetZonePercentageOutput()

template<typename THistogram >
const MeasurementObjectType* itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::GetZonePercentageOutput ( ) const

◆ MakeOutput()

template<typename THistogram >
virtual DataObjectPointer itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::MakeOutput ( DataObjectPointerArraySizeType  )
protectedvirtual

◆ New()

template<typename THistogram >
static Pointer itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::New ( )
static

standard New() method support

◆ PrintSelf()

template<typename THistogram >
virtual void itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protectedvirtual

◆ SetInput()

template<typename THistogram >
void itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::SetInput ( const HistogramType *  histogram)

◆ SetNumberOfVoxels()

template<typename THistogram >
virtual void itk::Statistics::EnhancedHistogramToSizeZoneFeaturesFilter< THistogram >::SetNumberOfVoxels ( unsigned long  _arg)
virtual

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