OTB  7.3.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage > Class Template Reference

#include <otbStreamingStatisticsMapFromLabelImageFilter.h>

+ Inheritance diagram for otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >:
+ Collaboration diagram for otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >:

Public Types

typedef std::vector< AccumulatorMapTypeAccumulatorMapCollectionType
 
typedef std::unordered_map< LabelPixelType, AccumulatorTypeAccumulatorMapType
 
typedef StatisticsAccumulator< RealVectorPixelTypeAccumulatorType
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
 
typedef itk::ImageBase< InputImageDimensionImageBaseType
 
typedef ImageBaseType::RegionType InputImageRegionType
 
typedef TInputVectorImage::Pointer InputVectorImagePointer
 
typedef TLabelImage::Pointer LabelImagePointer
 
typedef TLabelImage LabelImageType
 
typedef LabelImageType::PixelType LabelPixelType
 
typedef std::unordered_map< LabelPixelType, double > LabelPopulationMapType
 
typedef itk::SimpleDataObjectDecorator< PixelValueMapTypePixelValueMapObjectType
 
typedef std::unordered_map< LabelPixelType, RealVectorPixelTypePixelValueMapType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::VariableLengthVector< double > RealVectorPixelType
 
typedef VectorImageType::RegionType RegionType
 
typedef PersistentStreamingStatisticsMapFromLabelImageFilter Self
 
typedef PersistentImageFilter< TInputVectorImage, TInputVectorImage > Superclass
 
typedef TInputVectorImage VectorImageType
 
typedef VectorImageType::PixelType VectorPixelType
 
typedef VectorImageType::PixelType::ValueType VectorPixelValueType
 
- Public Types inherited from otb::PersistentImageFilter< TInputVectorImage, TInputVectorImage >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef TInputVectorImage InputImageType
 
typedef TInputVectorImage OutputImageType
 
typedef itk::SmartPointer< SelfPointer
 
typedef PersistentImageFilter Self
 
typedef itk::ImageToImageFilter< TInputVectorImage, TInputVectorImage > Superclass
 

Public Member Functions

void AllocateOutputs () override
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
void GenerateInputRequestedRegion () override
 
void GenerateOutputInformation () override
 
virtual const LabelImageTypeGetInputLabelImage ()
 
LabelPopulationMapType GetLabelPopulationMap () const
 
PixelValueMapType GetMaxValueMap () const
 
PixelValueMapType GetMeanValueMap () const
 
PixelValueMapType GetMinValueMap () const
 
virtual const char * GetNameOfClass () const
 
virtual VectorPixelValueType GetNoDataValue ()
 
PixelValueMapType GetStandardDeviationValueMap () const
 
virtual bool GetUseNoDataValue ()
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
void Reset (void) override
 
virtual void SetInputLabelImage (const LabelImageType *image)
 
virtual void SetNoDataValue (VectorPixelValueType _arg)
 
virtual void SetUseNoDataValue (bool _arg)
 
void Synthetize (void) override
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int ImageDimension = TInputVectorImage::ImageDimension
 
static const unsigned int InputImageDimension = TInputVectorImage::ImageDimension
 

Protected Member Functions

 PersistentStreamingStatisticsMapFromLabelImageFilter ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~PersistentStreamingStatisticsMapFromLabelImageFilter () override
 
void ThreadedGenerateData (const RegionType &outputRegionForThread, itk::ThreadIdType threadId) override
 
- Protected Member Functions inherited from otb::PersistentImageFilter< TInputVectorImage, TInputVectorImage >
 PersistentImageFilter ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~PersistentImageFilter () override
 

Private Member Functions

void operator= (const Self &)=delete
 
 PersistentStreamingStatisticsMapFromLabelImageFilter (const Self &)=delete
 

Private Attributes

AccumulatorMapCollectionType m_AccumulatorMaps
 
LabelPopulationMapType m_LabelPopulation
 
PixelValueMapType m_MaxRadiometricValue
 
PixelValueMapType m_MeanRadiometricValue
 
PixelValueMapType m_MinRadiometricValue
 
VectorPixelValueType m_NoDataValue
 
PixelValueMapType m_StDevRadiometricValue
 
bool m_UseNoDataValue
 

Detailed Description

template<class TInputVectorImage, class TLabelImage>
class otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >

Computes mean radiometric value for each label of a label image, based on a support VectorImage.

This filter persists its temporary data. It means that if you Update it n times on n different requested regions, the output statistics will be the statitics of the whole set of n regions.

To reset the temporary data, one should call the Reset() function.

To get the statistics once the regions have been processed via the pipeline, use the Synthetize() method.

See also
StreamingStatisticsMapFromLabelImageFilter

Definition at line 177 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

Member Typedef Documentation

◆ AccumulatorMapCollectionType

template<class TInputVectorImage, class TLabelImage>
typedef std::vector<AccumulatorMapType> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::AccumulatorMapCollectionType

◆ AccumulatorMapType

template<class TInputVectorImage, class TLabelImage>
typedef std::unordered_map<LabelPixelType, AccumulatorType> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::AccumulatorMapType

◆ AccumulatorType

template<class TInputVectorImage, class TLabelImage>
typedef StatisticsAccumulator<RealVectorPixelType> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::AccumulatorType

◆ ConstPointer

template<class TInputVectorImage, class TLabelImage>
typedef itk::SmartPointer<const Self> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::ConstPointer

◆ DataObjectPointer

template<class TInputVectorImage, class TLabelImage>
typedef itk::DataObject::Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::DataObjectPointer

Smart Pointer type to a DataObject.

Definition at line 217 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

◆ DataObjectPointerArraySizeType

template<class TInputVectorImage, class TLabelImage>
typedef itk::ProcessObject::DataObjectPointerArraySizeType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::DataObjectPointerArraySizeType

◆ ImageBaseType

template<class TInputVectorImage, class TLabelImage>
typedef itk::ImageBase<InputImageDimension> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::ImageBaseType

◆ InputImageRegionType

template<class TInputVectorImage, class TLabelImage>
typedef ImageBaseType::RegionType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::InputImageRegionType

◆ InputVectorImagePointer

template<class TInputVectorImage, class TLabelImage>
typedef TInputVectorImage::Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::InputVectorImagePointer

◆ LabelImagePointer

template<class TInputVectorImage, class TLabelImage>
typedef TLabelImage::Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelImagePointer

◆ LabelImageType

template<class TInputVectorImage, class TLabelImage>
typedef TLabelImage otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelImageType

◆ LabelPixelType

template<class TInputVectorImage, class TLabelImage>
typedef LabelImageType::PixelType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelPixelType

◆ LabelPopulationMapType

template<class TInputVectorImage, class TLabelImage>
typedef std::unordered_map<LabelPixelType, double> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelPopulationMapType

◆ PixelValueMapObjectType

template<class TInputVectorImage, class TLabelImage>
typedef itk::SimpleDataObjectDecorator<PixelValueMapType> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapObjectType

Type of DataObjects used for scalar outputs

Definition at line 227 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

◆ PixelValueMapType

template<class TInputVectorImage, class TLabelImage>
typedef std::unordered_map<LabelPixelType, RealVectorPixelType> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapType

◆ Pointer

template<class TInputVectorImage, class TLabelImage>
typedef itk::SmartPointer<Self> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::Pointer

◆ RealVectorPixelType

template<class TInputVectorImage, class TLabelImage>
typedef itk::VariableLengthVector<double> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::RealVectorPixelType

◆ RegionType

template<class TInputVectorImage, class TLabelImage>
typedef VectorImageType::RegionType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::RegionType

◆ Self

template<class TInputVectorImage, class TLabelImage>
typedef PersistentStreamingStatisticsMapFromLabelImageFilter otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::Self

Standard Self typedef

Definition at line 181 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

◆ Superclass

template<class TInputVectorImage, class TLabelImage>
typedef PersistentImageFilter<TInputVectorImage, TInputVectorImage> otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::Superclass

◆ VectorImageType

template<class TInputVectorImage, class TLabelImage>
typedef TInputVectorImage otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::VectorImageType

Image related typedefs.

Definition at line 190 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

◆ VectorPixelType

template<class TInputVectorImage, class TLabelImage>
typedef VectorImageType::PixelType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::VectorPixelType

◆ VectorPixelValueType

template<class TInputVectorImage, class TLabelImage>
typedef VectorImageType::PixelType::ValueType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::VectorPixelValueType

Constructor & Destructor Documentation

◆ PersistentStreamingStatisticsMapFromLabelImageFilter() [1/2]

template<class TInputVectorImage , class TLabelImage >
otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PersistentStreamingStatisticsMapFromLabelImageFilter ( )
protected

◆ ~PersistentStreamingStatisticsMapFromLabelImageFilter()

template<class TInputVectorImage, class TLabelImage>
otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::~PersistentStreamingStatisticsMapFromLabelImageFilter ( )
inlineoverrideprotected

◆ PersistentStreamingStatisticsMapFromLabelImageFilter() [2/2]

template<class TInputVectorImage, class TLabelImage>
otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PersistentStreamingStatisticsMapFromLabelImageFilter ( const Self )
privatedelete

Member Function Documentation

◆ AllocateOutputs()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::AllocateOutputs ( )
override

Pass the input through unmodified. Do this by Grafting in the AllocateOutputs method.

Definition at line 125 of file otbStreamingStatisticsMapFromLabelImageFilter.hxx.

◆ CreateAnother()

template<class TInputVectorImage, class TLabelImage>
virtual::itk::LightObject::Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::CreateAnother ( void  ) const

◆ GenerateInputRequestedRegion()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GenerateInputRequestedRegion ( void  )
override

Due to heterogeneous input template GenerateInputRequestedRegion must be reimplemented using explicit cast This new implementation is inspired by the one of itk::ImageToImageFilter

Definition at line 215 of file otbStreamingStatisticsMapFromLabelImageFilter.hxx.

◆ GenerateOutputInformation()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GenerateOutputInformation ( void  )
override

◆ GetInputLabelImage()

template<class TInputVectorImage , class TLabelImage >
const PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelImageType * otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetInputLabelImage ( )
virtual

◆ GetLabelPopulationMap()

template<class TInputVectorImage , class TLabelImage >
PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::LabelPopulationMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetLabelPopulationMap ( ) const

Return the computed number of labeled pixels for each label in the input label image

Definition at line 102 of file otbStreamingStatisticsMapFromLabelImageFilter.hxx.

References otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_LabelPopulation.

◆ GetMaxValueMap()

template<class TInputVectorImage , class TLabelImage >
PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetMaxValueMap ( ) const

◆ GetMeanValueMap()

template<class TInputVectorImage , class TLabelImage >
PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetMeanValueMap ( ) const

◆ GetMinValueMap()

template<class TInputVectorImage , class TLabelImage >
PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetMinValueMap ( ) const

◆ GetNameOfClass()

template<class TInputVectorImage, class TLabelImage>
virtual const char* otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetNameOfClass ( ) const
virtual

Runtime information support.

Reimplemented from otb::PersistentImageFilter< TInputVectorImage, TInputVectorImage >.

◆ GetNoDataValue()

template<class TInputVectorImage, class TLabelImage>
virtual VectorPixelValueType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetNoDataValue ( )
virtual

◆ GetStandardDeviationValueMap()

template<class TInputVectorImage , class TLabelImage >
PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetStandardDeviationValueMap ( ) const

Return the computed Standard Deviation for each label in the input label image

Definition at line 81 of file otbStreamingStatisticsMapFromLabelImageFilter.hxx.

References otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_StDevRadiometricValue.

◆ GetUseNoDataValue()

template<class TInputVectorImage, class TLabelImage>
virtual bool otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::GetUseNoDataValue ( )
virtual

◆ MakeOutput()

template<class TInputVectorImage , class TLabelImage >
itk::DataObject::Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::MakeOutput ( DataObjectPointerArraySizeType  idx)
override

◆ New()

template<class TInputVectorImage, class TLabelImage>
static Pointer otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputVectorImage, class TLabelImage>
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::operator= ( const Self )
privatedelete

◆ PrintSelf()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

◆ Reset()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::Reset ( void  )
overridevirtual

◆ SetInputLabelImage()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::SetInputLabelImage ( const LabelImageType image)
virtual

Set input label image

Definition at line 59 of file otbStreamingStatisticsMapFromLabelImageFilter.hxx.

◆ SetNoDataValue()

template<class TInputVectorImage, class TLabelImage>
virtual void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::SetNoDataValue ( VectorPixelValueType  _arg)
virtual

◆ SetUseNoDataValue()

template<class TInputVectorImage, class TLabelImage>
virtual void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::SetUseNoDataValue ( bool  _arg)
virtual

◆ Synthetize()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::Synthetize ( void  )
overridevirtual

◆ ThreadedGenerateData()

template<class TInputVectorImage , class TLabelImage >
void otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::ThreadedGenerateData ( const RegionType outputRegionForThread,
itk::ThreadIdType  threadId 
)
overrideprotected

Member Data Documentation

◆ ImageDimension

template<class TInputVectorImage, class TLabelImage>
const unsigned int otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::ImageDimension = TInputVectorImage::ImageDimension
static

Image related typedefs.

Definition at line 212 of file otbStreamingStatisticsMapFromLabelImageFilter.h.

◆ InputImageDimension

template<class TInputVectorImage, class TLabelImage>
const unsigned int otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::InputImageDimension = TInputVectorImage::ImageDimension
static

◆ m_AccumulatorMaps

template<class TInputVectorImage, class TLabelImage>
AccumulatorMapCollectionType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_AccumulatorMaps
private

◆ m_LabelPopulation

template<class TInputVectorImage, class TLabelImage>
LabelPopulationMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_LabelPopulation
private

◆ m_MaxRadiometricValue

template<class TInputVectorImage, class TLabelImage>
PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_MaxRadiometricValue
private

◆ m_MeanRadiometricValue

template<class TInputVectorImage, class TLabelImage>
PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_MeanRadiometricValue
private

◆ m_MinRadiometricValue

template<class TInputVectorImage, class TLabelImage>
PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_MinRadiometricValue
private

◆ m_NoDataValue

template<class TInputVectorImage, class TLabelImage>
VectorPixelValueType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_NoDataValue
private

◆ m_StDevRadiometricValue

template<class TInputVectorImage, class TLabelImage>
PixelValueMapType otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_StDevRadiometricValue
private

◆ m_UseNoDataValue

template<class TInputVectorImage, class TLabelImage>
bool otb::PersistentStreamingStatisticsMapFromLabelImageFilter< TInputVectorImage, TLabelImage >::m_UseNoDataValue
private

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