ITK  6.0.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType > Class Template Reference

#include <itkScalarImageToCooccurrenceMatrixFilter.h>

Detailed Description

template<typename TImageType, typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
class itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >

This class computes a co-occurrence matrix (histogram) from a given image and a mask image if provided. Cooccurrence matrices are used for image texture description.

This filters creates a grey-level co-occurrence matrix from a N-D scalar image. This is the first step in texture description a la Haralick. (See Haralick, R.M., K. Shanmugam and I. Dinstein. 1973. Textural Features for Image Classification. IEEE Transactions on Systems, Man and Cybernetics. SMC-3(6):610-620. See also Haralick, R.M. 1979. Statistical and Structural Approaches to Texture. Proceedings of the IEEE, 67:786-804.)

The basic idea is as follows: Given an image and an offset (e.g. (1, -1) for a 2-d image), grey-level co-occurrences are pairs of intensity values for a specific pixel and the pixel at that offset from the specified pixel. These co-occurrences can provide information about the visual texture of an image region – for example, an eight-bit image of alternating pixel-wide white and black vertical lines would have a large number of (0, 255) and (255, 0) co-occurrences for offset (1, 0).

The offset (or offsets) along which the co-occurrences are calculated can be set by the user. Traditionally, only one offset is used per histogram, and offset components in the range [-1, 1] are used. For rotation-invariant features, averages of features computed over several histograms with different offsets are generally used, instead of computing features from one histogram created with several offsets. Additionally, instead of using offsets of two or more pixels in any direction, multi-resolution techniques (e.g. image pyramids) are generally used to deal with texture at different spatial resolutions.

This class calculates a 2-d histogram of all the co-occurrence pairs in the given image's requested region, for a given set of offsets. That is, if a given offset falls outside of the requested region at a particular point, that co-occurrence pair will not be added to the matrix.

The number of histogram bins on each axis can be set (defaults to 256). Also, by default the histogram min and max corresponds to the largest and smallest possible pixel value of that pixel type. To customize the histogram bounds for a given image, the max and min pixel values that will be placed in the histogram can be set manually. NB: The min and max are INCLUSIVE.

Further, the type of histogram frequency container used is an optional template parameter. By default, a dense container is used, but for images with little texture or in cases where the user wants more histogram bins, a sparse container can be used for the histogram instead.

WARNING: This probably won't work for pixels of double or long-double type unless you set the histogram min and max manually. This is because the largest histogram bin by default has max value of the largest possible pixel value plus 1. For double and long-double types, whose "RealType" as defined by the NumericTraits class is the same, and thus cannot hold any larger values, this would cause a float overflow.

See also
MaskedScalarImageToCooccurrenceMatrixFilter
HistogramToTextureFeaturesFilter
ScalarImageTextureCalculator
Author
Zachary Pincus and Glenn Pierce

Definition at line 96 of file itkScalarImageToCooccurrenceMatrixFilter.h.

+ Inheritance diagram for itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >:
+ Collaboration diagram for itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >:

Public Types

using ConstPointer = SmartPointer< const Self >
 
using HistogramConstPointer = typename HistogramType::ConstPointer
 
using HistogramPointer = typename HistogramType::Pointer
 
using HistogramType = Histogram< MeasurementType, THistogramFrequencyContainer >
 
using ImageConstPointer = typename ImageType::ConstPointer
 
using ImagePointer = typename ImageType::Pointer
 
using ImageType = TImageType
 
using MaskConstPointer = typename MaskImageType::ConstPointer
 
using MaskImageType = TMaskImageType
 
using MaskPixelType = typename MaskImageType::PixelType
 
using MaskPointer = typename MaskImageType::Pointer
 
using MeasurementType = typename NumericTraits< PixelType >::RealType
 
using MeasurementVectorType = typename HistogramType::MeasurementVectorType
 
using OffsetType = typename ImageType::OffsetType
 
using OffsetVector = VectorContainer< unsigned char, OffsetType >
 
using OffsetVectorConstPointer = typename OffsetVector::ConstPointer
 
using OffsetVectorPointer = typename OffsetVector::Pointer
 
using PixelType = typename ImageType::PixelType
 
using Pointer = SmartPointer< Self >
 
using RadiusType = typename ImageType::SizeType
 
using RegionType = typename ImageType::RegionType
 
using Self = ScalarImageToCooccurrenceMatrixFilter
 
using Superclass = ProcessObject
 
- Public Types inherited from itk::ProcessObject
using ConstPointer = SmartPointer< const Self >
 
using DataObjectIdentifierType = DataObject::DataObjectIdentifierType
 
using DataObjectPointer = DataObject::Pointer
 
using DataObjectPointerArray = std::vector< DataObjectPointer >
 
using DataObjectPointerArraySizeType = DataObjectPointerArray::size_type
 
using MultiThreaderType = MultiThreaderBase
 
using NameArray = std::vector< DataObjectIdentifierType >
 
using Pointer = SmartPointer< Self >
 
using Self = ProcessObject
 
using Superclass = Object
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = Object
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

const ImageTypeGetInput () const
 
const MaskImageTypeGetMaskImage () const
 
virtual PixelType GetMax () const
 
virtual PixelType GetMin () const
 
const char * GetNameOfClass () const override
 
const HistogramTypeGetOutput () const
 
void SetInput (const ImageType *image)
 
void SetMaskImage (const MaskImageType *image)
 
void SetOffset (const OffsetType offset)
 
void SetPixelValueMinMax (PixelType min, PixelType max)
 
virtual void SetOffsets (const OffsetVector *_arg)
 
virtual const OffsetVectorGetOffsets () const
 
virtual void SetNumberOfBinsPerAxis (unsigned int _arg)
 
virtual unsigned int GetNumberOfBinsPerAxis () const
 
virtual void SetNormalize (bool _arg)
 
virtual bool GetNormalize () const
 
virtual void NormalizeOn ()
 
virtual void SetInsidePixelValue (MaskPixelType _arg)
 
virtual MaskPixelType GetInsidePixelValue () const
 
- Public Member Functions inherited from itk::ProcessObject
virtual void AbortGenerateDataOn ()
 
virtual void EnlargeOutputRequestedRegion (DataObject *)
 
virtual const bool & GetAbortGenerateData () const
 
DataObjectPointerArray GetIndexedInputs ()
 
DataObjectPointerArray GetIndexedOutputs ()
 
NameArray GetInputNames () const
 
DataObjectPointerArray GetInputs ()
 
MultiThreaderTypeGetMultiThreader () const
 
DataObjectPointerArraySizeType GetNumberOfIndexedInputs () const
 
DataObjectPointerArraySizeType GetNumberOfIndexedOutputs () const
 
DataObjectPointerArraySizeType GetNumberOfInputs () const
 
DataObjectPointerArraySizeType GetNumberOfOutputs () const
 
virtual DataObjectPointerArraySizeType GetNumberOfValidRequiredInputs () const
 
NameArray GetOutputNames () const
 
DataObjectPointerArray GetOutputs ()
 
virtual float GetProgress () const
 
NameArray GetRequiredInputNames () const
 
bool HasInput (const DataObjectIdentifierType &key) const
 
bool HasOutput (const DataObjectIdentifierType &key) const
 
void IncrementProgress (float increment)
 
virtual DataObjectPointer MakeOutput (const DataObjectIdentifierType &)
 
virtual void PrepareOutputs ()
 
virtual void PropagateRequestedRegion (DataObject *output)
 
virtual void ResetPipeline ()
 
virtual void SetAbortGenerateData (bool _arg)
 
void SetMultiThreader (MultiThreaderType *threader)
 
virtual void Update ()
 
virtual void UpdateLargestPossibleRegion ()
 
virtual void UpdateOutputData (DataObject *output)
 
virtual void UpdateOutputInformation ()
 
void UpdateProgress (float progress)
 
virtual void SetReleaseDataFlag (bool val)
 
virtual bool GetReleaseDataFlag () const
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
virtual void SetReleaseDataBeforeUpdateFlag (bool _arg)
 
virtual const bool & GetReleaseDataBeforeUpdateFlag () const
 
virtual void ReleaseDataBeforeUpdateFlagOn ()
 
virtual void SetNumberOfWorkUnits (ThreadIdType _arg)
 
virtual const ThreadIdTypeGetNumberOfWorkUnits () const
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *cmd) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
LightObject::Pointer CreateAnother () const override
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType GetMTime () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag) const
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
Pointer Clone () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool val)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int DefaultBinsPerAxis = 256
 

Protected Types

using DataObjectPointer = DataObject::Pointer
 
using DataObjectPointerArraySizeType = ProcessObject::DataObjectPointerArraySizeType
 

Protected Member Functions

virtual void FillHistogram (RadiusType radius, RegionType region)
 
virtual void FillHistogramWithMask (RadiusType radius, RegionType region, const MaskImageType *maskImage)
 
void GenerateData () override
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ScalarImageToCooccurrenceMatrixFilter ()
 
 ~ScalarImageToCooccurrenceMatrixFilter () override=default
 
- Protected Member Functions inherited from itk::ProcessObject
virtual void AddInput (DataObject *input)
 
void AddOptionalInputName (const DataObjectIdentifierType &)
 
void AddOptionalInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx)
 
virtual void AddOutput (DataObject *output)
 
bool AddRequiredInputName (const DataObjectIdentifierType &)
 
bool AddRequiredInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx)
 
virtual void CacheInputReleaseDataFlags ()
 
virtual void GenerateInputRequestedRegion ()
 
virtual void GenerateOutputInformation ()
 
virtual void GenerateOutputRequestedRegion (DataObject *output)
 
DataObjectGetInput (const DataObjectIdentifierType &key)
 
const DataObjectGetInput (const DataObjectIdentifierType &key) const
 
virtual const DataObjectPointerArraySizeTypeGetNumberOfRequiredInputs () const
 
virtual const DataObjectPointerArraySizeTypeGetNumberOfRequiredOutputs () const
 
bool IsIndexedInputName (const DataObjectIdentifierType &) const
 
bool IsIndexedOutputName (const DataObjectIdentifierType &) const
 
bool IsRequiredInputName (const DataObjectIdentifierType &) const
 
DataObjectPointerArraySizeType MakeIndexFromInputName (const DataObjectIdentifierType &name) const
 
DataObjectPointerArraySizeType MakeIndexFromOutputName (const DataObjectIdentifierType &name) const
 
DataObjectIdentifierType MakeNameFromInputIndex (DataObjectPointerArraySizeType idx) const
 
DataObjectIdentifierType MakeNameFromOutputIndex (DataObjectPointerArraySizeType idx) const
 
virtual void PopBackInput ()
 
virtual void PopFrontInput ()
 
 ProcessObject ()
 
virtual void PropagateResetPipeline ()
 
virtual void PushBackInput (const DataObject *input)
 
virtual void PushFrontInput (const DataObject *input)
 
virtual void ReleaseInputs ()
 
virtual void RemoveInput (const DataObjectIdentifierType &key)
 
virtual void RemoveInput (DataObjectPointerArraySizeType)
 
virtual void RemoveOutput (const DataObjectIdentifierType &key)
 
virtual void RemoveOutput (DataObjectPointerArraySizeType idx)
 
bool RemoveRequiredInputName (const DataObjectIdentifierType &)
 
virtual void RestoreInputReleaseDataFlags ()
 
virtual void SetInput (const DataObjectIdentifierType &key, DataObject *input)
 
virtual void SetNthInput (DataObjectPointerArraySizeType idx, DataObject *input)
 
virtual void SetNthOutput (DataObjectPointerArraySizeType idx, DataObject *output)
 
void SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num)
 
void SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num)
 
virtual void SetNumberOfRequiredInputs (DataObjectPointerArraySizeType)
 
virtual void SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg)
 
virtual void SetOutput (const DataObjectIdentifierType &name, DataObject *output)
 
virtual void SetPrimaryInput (DataObject *object)
 
virtual void SetPrimaryOutput (DataObject *object)
 
void SetRequiredInputNames (const NameArray &)
 
virtual void VerifyInputInformation () const
 
virtual void VerifyPreconditions () const
 
 ~ProcessObject () override
 
DataObjectGetInput (DataObjectPointerArraySizeType idx)
 
const DataObjectGetInput (DataObjectPointerArraySizeType idx) const
 
DataObjectGetPrimaryInput ()
 
const DataObjectGetPrimaryInput () const
 
virtual void SetPrimaryInputName (const DataObjectIdentifierType &key)
 
virtual const char * GetPrimaryInputName () const
 
DataObjectGetOutput (const DataObjectIdentifierType &key)
 
const DataObjectGetOutput (const DataObjectIdentifierType &key) const
 
virtual void SetPrimaryOutputName (const DataObjectIdentifierType &key)
 
virtual const char * GetPrimaryOutputName () const
 
DataObjectGetOutput (DataObjectPointerArraySizeType i)
 
const DataObjectGetOutput (DataObjectPointerArraySizeType i) const
 
DataObjectGetPrimaryOutput ()
 
const DataObjectGetPrimaryOutput () const
 
virtual bool GetThreaderUpdateProgress () const
 
virtual void ThreaderUpdateProgressOn ()
 
virtual void SetThreaderUpdateProgress (bool arg)
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &timeStamp)
 
 ~Object () override
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Private Member Functions

void NormalizeHistogram ()
 

Private Attributes

MaskPixelType m_InsidePixelValue {}
 
MeasurementVectorType m_LowerBound {}
 
PixelType m_Max {}
 
PixelType m_Min {}
 
bool m_Normalize {}
 
unsigned int m_NumberOfBinsPerAxis {}
 
OffsetVectorConstPointer m_Offsets {}
 
MeasurementVectorType m_UpperBound {}
 

Additional Inherited Members

- Static Protected Member Functions inherited from itk::ProcessObject
template<typename TSourceObject >
static void MakeRequiredOutputs (TSourceObject &sourceObject, const DataObjectPointerArraySizeType numberOfRequiredOutputs)
 
static constexpr float progressFixedToFloat (uint32_t fixed)
 
static uint32_t progressFloatToFixed (float f)
 
- Protected Attributes inherited from itk::ProcessObject
TimeStamp m_OutputInformationMTime {}
 
bool m_Updating {}
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount {}
 

Member Typedef Documentation

◆ ConstPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ConstPointer = SmartPointer<const Self>

Definition at line 105 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ DataObjectPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::DataObjectPointer = DataObject::Pointer
protected

Standard itk::ProcessObject subclass method.

Definition at line 204 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ DataObjectPointerArraySizeType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::DataObjectPointerArraySizeType = ProcessObject::DataObjectPointerArraySizeType
protected

Definition at line 206 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ HistogramConstPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::HistogramConstPointer = typename HistogramType::ConstPointer

Definition at line 132 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ HistogramPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::HistogramPointer = typename HistogramType::Pointer

Definition at line 131 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ HistogramType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::HistogramType = Histogram<MeasurementType, THistogramFrequencyContainer>

Definition at line 130 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ ImageConstPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ImageConstPointer = typename ImageType::ConstPointer

Definition at line 115 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ ImagePointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ImagePointer = typename ImageType::Pointer

Definition at line 114 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ ImageType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ImageType = TImageType

Definition at line 113 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MaskConstPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskConstPointer = typename MaskImageType::ConstPointer

Definition at line 125 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MaskImageType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskImageType = TMaskImageType

Definition at line 123 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MaskPixelType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskPixelType = typename MaskImageType::PixelType

Definition at line 126 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MaskPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskPointer = typename MaskImageType::Pointer

Definition at line 124 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MeasurementType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MeasurementType = typename NumericTraits<PixelType>::RealType

Definition at line 128 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ MeasurementVectorType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MeasurementVectorType = typename HistogramType::MeasurementVectorType

Definition at line 133 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ OffsetType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetType = typename ImageType::OffsetType

Definition at line 119 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ OffsetVector

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVector = VectorContainer<unsigned char, OffsetType>

Definition at line 120 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ OffsetVectorConstPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVectorConstPointer = typename OffsetVector::ConstPointer

Definition at line 122 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ OffsetVectorPointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVectorPointer = typename OffsetVector::Pointer

Definition at line 121 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ PixelType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::PixelType = typename ImageType::PixelType

Definition at line 116 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ Pointer

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Pointer = SmartPointer<Self>

Definition at line 104 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ RadiusType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::RadiusType = typename ImageType::SizeType

Definition at line 118 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ RegionType

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::RegionType = typename ImageType::RegionType

Definition at line 117 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ Self

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Self = ScalarImageToCooccurrenceMatrixFilter

Standard type alias

Definition at line 102 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ Superclass

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
using itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Superclass = ProcessObject

Definition at line 103 of file itkScalarImageToCooccurrenceMatrixFilter.h.

Constructor & Destructor Documentation

◆ ScalarImageToCooccurrenceMatrixFilter()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ScalarImageToCooccurrenceMatrixFilter ( )
protected

◆ ~ScalarImageToCooccurrenceMatrixFilter()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::~ScalarImageToCooccurrenceMatrixFilter ( )
overrideprotecteddefault

Member Function Documentation

◆ FillHistogram()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FillHistogram ( RadiusType  radius,
RegionType  region 
)
protectedvirtual

◆ FillHistogramWithMask()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FillHistogramWithMask ( RadiusType  radius,
RegionType  region,
const MaskImageType maskImage 
)
protectedvirtual

◆ GenerateData()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GenerateData ( )
overrideprotectedvirtual

This method causes the filter to generate its output.

Reimplemented from itk::ProcessObject.

◆ GetInput()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
const ImageType* itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetInput ( ) const

◆ GetInsidePixelValue()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual MaskPixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetInsidePixelValue ( ) const
virtual

Set the pixel value of the mask that should be considered "inside" the object. Defaults to one.

◆ GetMaskImage()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
const MaskImageType* itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetMaskImage ( ) const

◆ GetMax()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual PixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetMax ( ) const
virtual

◆ GetMin()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual PixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetMin ( ) const
virtual

◆ GetNameOfClass()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
const char* itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetNameOfClass ( ) const
overridevirtual

◆ GetNormalize()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual bool itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetNormalize ( ) const
virtual

Set the calculator to normalize the histogram (divide all bins by the total frequency). Normalization is off by default.

◆ GetNumberOfBinsPerAxis()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual unsigned int itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetNumberOfBinsPerAxis ( ) const
virtual

Set number of histogram bins along each axis

◆ GetOffsets()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual const OffsetVector* itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetOffsets ( ) const
virtual

Get/Set the offset or offsets over which the co-occurrence pairs will be computed. Calling either of these methods clears the previous offsets.

◆ GetOutput()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
const HistogramType* itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetOutput ( ) const

method to get the Histogram

◆ MakeOutput()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
DataObjectPointer itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MakeOutput ( DataObjectPointerArraySizeType  idx)
overrideprotectedvirtual

Make a DataObject of the correct type to used as the specified output.

Every ProcessObject subclass must be able to create a DataObject that can be used as a specified output. This method is automatically called when DataObject::DisconnectPipeline() is called. DataObject::DisconnectPipeline, disconnects a data object from being an output of its current source. When the data object is disconnected, the ProcessObject needs to construct a replacement output data object so that the ProcessObject is in a valid state. So DataObject::DisconnectPipeline eventually calls ProcessObject::MakeOutput. Note that MakeOutput always returns a itkSmartPointer to a DataObject. ImageSource and MeshSource override this method to create the correct type of image and mesh respectively. If a filter has multiple outputs of different types, then that filter must provide an implementation of MakeOutput().

Reimplemented from itk::ProcessObject.

◆ New()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
static Pointer itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::New ( )
static

standard New() method support

◆ NormalizeHistogram()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::NormalizeHistogram ( )
private

◆ NormalizeOn()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::NormalizeOn ( )
virtual

Set the calculator to normalize the histogram (divide all bins by the total frequency). Normalization is off by default.

◆ PrintSelf()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
overrideprotectedvirtual

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ProcessObject.

◆ SetInput()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetInput ( const ImageType image)

◆ SetInsidePixelValue()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetInsidePixelValue ( MaskPixelType  _arg)
virtual

Set the pixel value of the mask that should be considered "inside" the object. Defaults to one.

◆ SetMaskImage()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetMaskImage ( const MaskImageType image)

Method to set/get the mask image

◆ SetNormalize()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetNormalize ( bool  _arg)
virtual

Set the calculator to normalize the histogram (divide all bins by the total frequency). Normalization is off by default.

◆ SetNumberOfBinsPerAxis()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetNumberOfBinsPerAxis ( unsigned int  _arg)
virtual

Set number of histogram bins along each axis

◆ SetOffset()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetOffset ( const OffsetType  offset)

◆ SetOffsets()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
virtual void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetOffsets ( const OffsetVector _arg)
virtual

Get/Set the offset or offsets over which the co-occurrence pairs will be computed. Calling either of these methods clears the previous offsets.

◆ SetPixelValueMinMax()

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
void itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetPixelValueMinMax ( PixelType  min,
PixelType  max 
)

Set the min and max (inclusive) pixel value that will be placed in the histogram

Member Data Documentation

◆ DefaultBinsPerAxis

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
constexpr unsigned int itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::DefaultBinsPerAxis = 256
staticconstexpr

Definition at line 135 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_InsidePixelValue

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
MaskPixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_InsidePixelValue {}
private

Definition at line 228 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_LowerBound

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
MeasurementVectorType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_LowerBound {}
private

Definition at line 224 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_Max

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
PixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_Max {}
private

Definition at line 221 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_Min

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
PixelType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_Min {}
private

Definition at line 220 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_Normalize

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
bool itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_Normalize {}
private

Definition at line 226 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_NumberOfBinsPerAxis

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
unsigned int itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_NumberOfBinsPerAxis {}
private

Definition at line 223 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_Offsets

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
OffsetVectorConstPointer itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_Offsets {}
private

Definition at line 219 of file itkScalarImageToCooccurrenceMatrixFilter.h.

◆ m_UpperBound

template<typename TImageType , typename THistogramFrequencyContainer = DenseFrequencyContainer2, typename TMaskImageType = TImageType>
MeasurementVectorType itk::Statistics::ScalarImageToCooccurrenceMatrixFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::m_UpperBound {}
private

Definition at line 225 of file itkScalarImageToCooccurrenceMatrixFilter.h.


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