#include <itkScalarImageToTextureFeaturesFilter.h>
This class computes texture descriptions from an image.
This class computes features that summarize the texture of a given image. The texture features are computed a la Haralick, and have proven to be useful in image classification for biological and medical imaging. This class computes the texture features of an image (optionally in a masked region), averaged across several spatial directions so that they are invariant to rotation.
By default, texture 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 GLCM for each offset given. To compute a single GLCM 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 image type.
Template Parameters: The image type, and the type of histogram frequency container. If you are using a large number of bins per axis, a sparse frequency container may be advisable. The default is to use a dense frequency container.
Inputs and parameters:
In general, the default parameter values should be sufficient.
Outputs: (1) The average value of each feature. (2) The standard deviation in the values of each feature.
Web reference: http://www.fp.ucalgary.ca/mhallbey/tutorial.htm
For algorithmic details see [47], [48], [26] and [27].
Author: Zachary Pincus
Definition at line 99 of file itkScalarImageToTextureFeaturesFilter.h.
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Protected Types | |
using | DataObjectPointerArraySizeType = ProcessObject::DataObjectPointerArraySizeType |
Additional Inherited Members | |
![]() | |
template<typename TSourceObject> | |
static void | MakeRequiredOutputs (TSourceObject &sourceObject, const DataObjectPointerArraySizeType numberOfRequiredOutputs) |
static constexpr float | progressFixedToFloat (uint32_t fixed) |
static uint32_t | progressFloatToFixed (float f) |
![]() | |
TimeStamp | m_OutputInformationMTime {} |
bool | m_Updating {} |
![]() | |
std::atomic< int > | m_ReferenceCount {} |
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ConstPointer = SmartPointer<const Self> |
Definition at line 106 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::CooccurrenceMatrixFilterType |
Definition at line 127 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::DataObjectPointer = DataObject::Pointer |
Smart Pointer type to a DataObject.
Definition at line 144 of file itkScalarImageToTextureFeaturesFilter.h.
|
protected |
Make a DataObject to be used for output output.
Definition at line 225 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureNameVector = VectorContainer<unsigned char, TextureFeatureName> |
Definition at line 136 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureNameVectorConstPointer = typename FeatureNameVector::ConstPointer |
Definition at line 139 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureNameVectorPointer = typename FeatureNameVector::Pointer |
Definition at line 138 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureValueVector = VectorContainer<unsigned char, double> |
Definition at line 140 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureValueVectorDataObjectType = DataObjectDecorator<FeatureValueVector> |
Type of DataObjects used for scalar outputs
Definition at line 147 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FeatureValueVectorPointer = typename FeatureValueVector::Pointer |
Definition at line 141 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::FrequencyContainerType = THistogramFrequencyContainer |
Definition at line 114 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::HistogramType = typename CooccurrenceMatrixFilterType::HistogramType |
Definition at line 130 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ImagePointer = typename ImageType::Pointer |
Definition at line 116 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::ImageType = TImageType |
Definition at line 115 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskImageType = TMaskImageType |
Definition at line 117 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskPixelType = typename MaskImageType::PixelType |
Definition at line 119 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::MaskPointer = typename MaskImageType::Pointer |
Definition at line 118 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetType = typename ImageType::OffsetType |
Definition at line 122 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVector = VectorContainer<unsigned char, OffsetType> |
Definition at line 123 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVectorConstPointer = typename OffsetVector::ConstPointer |
Definition at line 125 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::OffsetVectorPointer = typename OffsetVector::Pointer |
Definition at line 124 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::PixelType = typename ImageType::PixelType |
Definition at line 121 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Pointer = SmartPointer<Self> |
Definition at line 105 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Self = ScalarImageToTextureFeaturesFilter |
Standard type alias
Definition at line 103 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::Superclass = ProcessObject |
Definition at line 104 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::TextureFeatureName = uint8_t |
Definition at line 135 of file itkScalarImageToTextureFeaturesFilter.h.
using itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::TextureFeaturesFilterType = HistogramToTextureFeaturesFilter<HistogramType> |
Definition at line 131 of file itkScalarImageToTextureFeaturesFilter.h.
|
protected |
Referenced by GetNameOfClass().
|
overrideprotecteddefault |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
virtual |
|
virtual |
|
protected |
|
protected |
|
overrideprotectedvirtual |
This method causes the filter to generate its output.
Reimplemented from itk::ProcessObject.
|
virtual |
|
virtual |
Return the feature means and deviations.
const FeatureValueVectorDataObjectType * itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetFeatureMeansOutput | ( | ) | const |
|
virtual |
Return the feature means and deviations.
const FeatureValueVectorDataObjectType * itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetFeatureStandardDeviationsOutput | ( | ) | const |
References itk::ProcessObject::SetInput().
const ImageType * itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetInput | ( | ) | const |
const MaskImageType * itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::GetMaskImage | ( | ) | const |
|
overridevirtual |
Reimplemented from itk::ProcessObject.
References ScalarImageToTextureFeaturesFilter().
|
virtual |
Set the offsets over which the co-occurrence pairs will be computed. Optional; for default value see above.
|
virtual |
Set the desired feature set. Optional, for default value see above.
|
protectedvirtual |
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.
|
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.
|
static |
standard New() method support
|
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.
|
virtual |
|
virtual |
Connects the input image for which the features are going to be computed
Reimplemented from itk::ProcessObject.
void itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetInput | ( | const ImageType * | ) |
void itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetInsidePixelValue | ( | MaskPixelType | insidePixelValue | ) |
Set the pixel value of the mask that should be considered "inside" the object. Optional; for default value see above.
void itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetMaskImage | ( | const MaskImageType * | ) |
Connects the mask image for which the histogram is going to be computed. Optional; for default value see above.
void itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetNumberOfBinsPerAxis | ( | unsigned int | ) |
Set number of histogram bins along each axis. Optional; for default value see above.
|
virtual |
Set the offsets over which the co-occurrence pairs will be computed. Optional; for default value see above.
void itk::Statistics::ScalarImageToTextureFeaturesFilter< TImageType, THistogramFrequencyContainer, TMaskImageType >::SetPixelValueMinMax | ( | PixelType | min, |
PixelType | max ) |
Set the min and max (inclusive) pixel value that will be used for feature calculations. Optional; for default value see above.
|
virtual |
Set the desired feature set. Optional, for default value see above.
|
private |
Definition at line 238 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 234 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 235 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 232 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 230 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 237 of file itkScalarImageToTextureFeaturesFilter.h.
|
private |
Definition at line 236 of file itkScalarImageToTextureFeaturesFilter.h.