OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
otb::PersistentHistogramVectorImageFilter< TInputImage > Class Template Reference

#include <otbStreamingHistogramVectorImageFilter.h>

+ Inheritance diagram for otb::PersistentHistogramVectorImageFilter< TInputImage >:
+ Collaboration diagram for otb::PersistentHistogramVectorImageFilter< TInputImage >:

Public Types

typedef std::vector< HistogramListPointerTypeArrayHistogramListType
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::VariableLengthVector< unsigned int > CountVectorType
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
 
typedef itk::Statistics::DenseFrequencyContainer2 DFContainerType
 
typedef HistogramListType::Pointer HistogramListPointerType
 
typedef ObjectList< HistogramTypeHistogramListType
 
typedef itk::NumericTraits< InternalPixelType >::RealType HistogramMeasurementRealType
 
typedef itk::Statistics::Histogram< HistogramMeasurementRealType, DFContainerTypeHistogramType
 
typedef TInputImage ImageType
 
typedef TInputImage::IndexType IndexType
 
typedef TInputImage::Pointer InputImagePointer
 
typedef TInputImage::InternalPixelType InternalPixelType
 
typedef PixelType MeasurementVectorType
 
typedef TInputImage::PixelType PixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::VariableLengthVector< RealTypeRealPixelType
 
typedef itk::NumericTraits< InternalPixelType >::RealType RealType
 
typedef TInputImage::RegionType RegionType
 
typedef PersistentHistogramVectorImageFilter Self
 
typedef TInputImage::SizeType SizeType
 
typedef PersistentImageFilter< TInputImage, TInputImage > Superclass
 
- Public Types inherited from otb::PersistentImageFilter< TInputImage, TInputImage >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef TInputImage InputImageType
 
typedef TInputImage OutputImageType
 
typedef itk::SmartPointer< SelfPointer
 
typedef PersistentImageFilter Self
 
typedef itk::ImageToImageFilter< TInputImage, TInputImage > Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
virtual bool GetNoDataFlag ()
 
virtual const InternalPixelTypeGetNoDataValue () const
 
virtual void NoDataFlagOff ()
 
virtual void NoDataFlagOn ()
 
virtual void SetNoDataFlag (bool _arg)
 
virtual void SetNoDataValue (InternalPixelType _arg)
 
void SetNumberOfBins (const CountVectorType &size)
 
void SetNumberOfBins (unsigned int i, CountVectorType::ValueType size)
 
- Public Member Functions inherited from otb::PersistentImageFilter< TInputImage, TInputImage >
virtual const char * GetNameOfClass () const
 

Static Public Member Functions

static Pointer New ()
 

Static Public Attributes

static const unsigned int ImageDimension = TInputImage::ImageDimension
 
static const unsigned int InputImageDimension = TInputImage::ImageDimension
 
ArrayHistogramListType m_ThreadHistogramList
 
CountVectorType m_Size
 
MeasurementVectorType m_HistogramMin
 
MeasurementVectorType m_HistogramMax
 
bool m_NoDataFlag
 
InternalPixelType m_NoDataValue
 
unsigned int m_SubSamplingRate
 
HistogramListTypeGetHistogramListOutput ()
 
const HistogramListTypeGetHistogramListOutput () const
 
virtual const MeasurementVectorTypeGetHistogramMin () const
 
virtual void SetHistogramMin (MeasurementVectorType _arg)
 
virtual const MeasurementVectorTypeGetHistogramMax () const
 
virtual void SetHistogramMax (MeasurementVectorType _arg)
 
virtual void SetSubSamplingRate (unsigned int _arg)
 
virtual unsigned int GetSubSamplingRate ()
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
void AllocateOutputs () override
 
void GenerateOutputInformation () override
 
void Synthetize (void) override
 
void Reset (void) override
 
 PersistentHistogramVectorImageFilter ()
 
 ~PersistentHistogramVectorImageFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void ThreadedGenerateData (const RegionType &outputRegionForThread, itk::ThreadIdType threadId) override
 
 PersistentHistogramVectorImageFilter (const Self &)=delete
 
void operator= (const Self &)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from otb::PersistentImageFilter< TInputImage, TInputImage >
 PersistentImageFilter ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~PersistentImageFilter () override
 

Detailed Description

template<class TInputImage>
class otb::PersistentHistogramVectorImageFilter< TInputImage >

Compute the histogram of a large image using streaming.

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

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

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

See also
PersistentImageFilter

Definition at line 55 of file otbStreamingHistogramVectorImageFilter.h.

Member Typedef Documentation

◆ ArrayHistogramListType

template<class TInputImage >
typedef std::vector<HistogramListPointerType> otb::PersistentHistogramVectorImageFilter< TInputImage >::ArrayHistogramListType

Definition at line 104 of file otbStreamingHistogramVectorImageFilter.h.

◆ ConstPointer

template<class TInputImage >
typedef itk::SmartPointer<const Self> otb::PersistentHistogramVectorImageFilter< TInputImage >::ConstPointer

Definition at line 62 of file otbStreamingHistogramVectorImageFilter.h.

◆ CountVectorType

template<class TInputImage >
typedef itk::VariableLengthVector<unsigned int> otb::PersistentHistogramVectorImageFilter< TInputImage >::CountVectorType

Definition at line 99 of file otbStreamingHistogramVectorImageFilter.h.

◆ DataObjectPointer

template<class TInputImage >
typedef itk::DataObject::Pointer otb::PersistentHistogramVectorImageFilter< TInputImage >::DataObjectPointer

Smart Pointer type to a DataObject.

Definition at line 89 of file otbStreamingHistogramVectorImageFilter.h.

◆ DataObjectPointerArraySizeType

template<class TInputImage >
typedef itk::ProcessObject::DataObjectPointerArraySizeType otb::PersistentHistogramVectorImageFilter< TInputImage >::DataObjectPointerArraySizeType

Definition at line 90 of file otbStreamingHistogramVectorImageFilter.h.

◆ DFContainerType

template<class TInputImage >
typedef itk::Statistics::DenseFrequencyContainer2 otb::PersistentHistogramVectorImageFilter< TInputImage >::DFContainerType

Types for histogram

Definition at line 93 of file otbStreamingHistogramVectorImageFilter.h.

◆ HistogramListPointerType

Definition at line 103 of file otbStreamingHistogramVectorImageFilter.h.

◆ HistogramListType

template<class TInputImage >
typedef ObjectList<HistogramType> otb::PersistentHistogramVectorImageFilter< TInputImage >::HistogramListType

Definition at line 102 of file otbStreamingHistogramVectorImageFilter.h.

◆ HistogramMeasurementRealType

template<class TInputImage >
typedef itk::NumericTraits<InternalPixelType>::RealType otb::PersistentHistogramVectorImageFilter< TInputImage >::HistogramMeasurementRealType

Definition at line 95 of file otbStreamingHistogramVectorImageFilter.h.

◆ HistogramType

template<class TInputImage >
typedef itk::Statistics::Histogram<HistogramMeasurementRealType, DFContainerType> otb::PersistentHistogramVectorImageFilter< TInputImage >::HistogramType

Definition at line 97 of file otbStreamingHistogramVectorImageFilter.h.

◆ ImageType

template<class TInputImage >
typedef TInputImage otb::PersistentHistogramVectorImageFilter< TInputImage >::ImageType

Image related typedefs.

Definition at line 68 of file otbStreamingHistogramVectorImageFilter.h.

◆ IndexType

template<class TInputImage >
typedef TInputImage::IndexType otb::PersistentHistogramVectorImageFilter< TInputImage >::IndexType

Definition at line 75 of file otbStreamingHistogramVectorImageFilter.h.

◆ InputImagePointer

template<class TInputImage >
typedef TInputImage::Pointer otb::PersistentHistogramVectorImageFilter< TInputImage >::InputImagePointer

Definition at line 72 of file otbStreamingHistogramVectorImageFilter.h.

◆ InternalPixelType

template<class TInputImage >
typedef TInputImage::InternalPixelType otb::PersistentHistogramVectorImageFilter< TInputImage >::InternalPixelType

Definition at line 77 of file otbStreamingHistogramVectorImageFilter.h.

◆ MeasurementVectorType

template<class TInputImage >
typedef PixelType otb::PersistentHistogramVectorImageFilter< TInputImage >::MeasurementVectorType

Definition at line 101 of file otbStreamingHistogramVectorImageFilter.h.

◆ PixelType

template<class TInputImage >
typedef TInputImage::PixelType otb::PersistentHistogramVectorImageFilter< TInputImage >::PixelType

Definition at line 76 of file otbStreamingHistogramVectorImageFilter.h.

◆ Pointer

template<class TInputImage >
typedef itk::SmartPointer<Self> otb::PersistentHistogramVectorImageFilter< TInputImage >::Pointer

Definition at line 61 of file otbStreamingHistogramVectorImageFilter.h.

◆ RealPixelType

template<class TInputImage >
typedef itk::VariableLengthVector<RealType> otb::PersistentHistogramVectorImageFilter< TInputImage >::RealPixelType

Definition at line 86 of file otbStreamingHistogramVectorImageFilter.h.

◆ RealType

template<class TInputImage >
typedef itk::NumericTraits<InternalPixelType>::RealType otb::PersistentHistogramVectorImageFilter< TInputImage >::RealType

Type to use for computations.

Definition at line 85 of file otbStreamingHistogramVectorImageFilter.h.

◆ RegionType

template<class TInputImage >
typedef TInputImage::RegionType otb::PersistentHistogramVectorImageFilter< TInputImage >::RegionType

Definition at line 73 of file otbStreamingHistogramVectorImageFilter.h.

◆ Self

template<class TInputImage >
typedef PersistentHistogramVectorImageFilter otb::PersistentHistogramVectorImageFilter< TInputImage >::Self

Standard Self typedef

Definition at line 59 of file otbStreamingHistogramVectorImageFilter.h.

◆ SizeType

template<class TInputImage >
typedef TInputImage::SizeType otb::PersistentHistogramVectorImageFilter< TInputImage >::SizeType

Definition at line 74 of file otbStreamingHistogramVectorImageFilter.h.

◆ Superclass

template<class TInputImage >
typedef PersistentImageFilter<TInputImage, TInputImage> otb::PersistentHistogramVectorImageFilter< TInputImage >::Superclass

Definition at line 60 of file otbStreamingHistogramVectorImageFilter.h.

Constructor & Destructor Documentation

◆ PersistentHistogramVectorImageFilter() [1/2]

template<class TInputImage >
otb::PersistentHistogramVectorImageFilter< TInputImage >::PersistentHistogramVectorImageFilter
protected

◆ ~PersistentHistogramVectorImageFilter()

template<class TInputImage >
otb::PersistentHistogramVectorImageFilter< TInputImage >::~PersistentHistogramVectorImageFilter ( )
inlineoverrideprotected

Set the subsampling along each direction

Definition at line 182 of file otbStreamingHistogramVectorImageFilter.h.

◆ PersistentHistogramVectorImageFilter() [2/2]

template<class TInputImage >
otb::PersistentHistogramVectorImageFilter< TInputImage >::PersistentHistogramVectorImageFilter ( const Self )
privatedelete

Set the subsampling along each direction

Member Function Documentation

◆ AllocateOutputs()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::AllocateOutputs
override

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

Definition at line 102 of file otbStreamingHistogramVectorImageFilter.hxx.

◆ CreateAnother()

template<class TInputImage >
virtual::itk::LightObject::Pointer otb::PersistentHistogramVectorImageFilter< TInputImage >::CreateAnother ( void  ) const

◆ GenerateOutputInformation()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::GenerateOutputInformation
override

Set the subsampling along each direction

Definition at line 86 of file otbStreamingHistogramVectorImageFilter.hxx.

◆ GetHistogramListOutput() [1/2]

template<class TInputImage >
const PersistentHistogramVectorImageFilter< TInputImage >::HistogramListType * otb::PersistentHistogramVectorImageFilter< TInputImage >::GetHistogramListOutput

Return the computed histogram list

Definition at line 73 of file otbStreamingHistogramVectorImageFilter.hxx.

◆ GetHistogramListOutput() [2/2]

template<class TInputImage >
const HistogramListType* otb::PersistentHistogramVectorImageFilter< TInputImage >::GetHistogramListOutput ( ) const

Set the subsampling along each direction

◆ GetHistogramMax()

template<class TInputImage >
virtual const MeasurementVectorType& otb::PersistentHistogramVectorImageFilter< TInputImage >::GetHistogramMax ( ) const
virtual

Get the maximum values for histograms

◆ GetHistogramMin()

template<class TInputImage >
virtual const MeasurementVectorType& otb::PersistentHistogramVectorImageFilter< TInputImage >::GetHistogramMin ( ) const
virtual

Get the minimum values for histograms

◆ GetNameOfClass()

template<class TInputImage >
virtual const char* otb::PersistentHistogramVectorImageFilter< TInputImage >::GetNameOfClass ( ) const
virtual

Runtime information support.

◆ GetNoDataFlag()

template<class TInputImage >
virtual bool otb::PersistentHistogramVectorImageFilter< TInputImage >::GetNoDataFlag ( )
virtual

Get the NoDataFlag. If set to true, samples with values equal to m_NoDataValue are ignored.

◆ GetNoDataValue()

template<class TInputImage >
virtual const InternalPixelType& otb::PersistentHistogramVectorImageFilter< TInputImage >::GetNoDataValue ( ) const
virtual

Set the no data value. These value are ignored in histogram computation if NoDataFlag is On

◆ GetSubSamplingRate()

template<class TInputImage >
virtual unsigned int otb::PersistentHistogramVectorImageFilter< TInputImage >::GetSubSamplingRate ( )
virtual

Get the subsampling rate

◆ MakeOutput()

template<class TInputImage >
itk::DataObject::Pointer otb::PersistentHistogramVectorImageFilter< TInputImage >::MakeOutput ( DataObjectPointerArraySizeType  idx)
override

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

Definition at line 57 of file otbStreamingHistogramVectorImageFilter.hxx.

Referenced by otb::PersistentHistogramVectorImageFilter< TInputImage >::PersistentHistogramVectorImageFilter().

◆ New()

template<class TInputImage >
static Pointer otb::PersistentHistogramVectorImageFilter< TInputImage >::New ( )
static

Method for creation through the object factory.

◆ NoDataFlagOff()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::NoDataFlagOff ( )
virtual

◆ NoDataFlagOn()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::NoDataFlagOn ( )
virtual

Toggle the NoDataFlag. If set to true, samples with values equal to m_NoDataValue are ignored.

◆ operator=()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::operator= ( const Self )
privatedelete

Set the subsampling along each direction

◆ PrintSelf()

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

Set the subsampling along each direction

Definition at line 305 of file otbStreamingHistogramVectorImageFilter.hxx.

◆ Reset()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::Reset ( void  )
overridevirtual

◆ SetHistogramMax()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetHistogramMax ( MeasurementVectorType  _arg)
virtual

Set the maximum values for histograms

◆ SetHistogramMin()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetHistogramMin ( MeasurementVectorType  _arg)
virtual

Set the minimum values for histograms

◆ SetNoDataFlag()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetNoDataFlag ( bool  _arg)
virtual

Set the NoDataFlag. If set to true, samples with values equal to m_NoDataValue are ignored.

◆ SetNoDataValue()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetNoDataValue ( InternalPixelType  _arg)
virtual

Set the no data value. These value are ignored in histogram computation if NoDataFlag is On

◆ SetNumberOfBins() [1/2]

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetNumberOfBins ( const CountVectorType size)
inline

Definition at line 137 of file otbStreamingHistogramVectorImageFilter.h.

◆ SetNumberOfBins() [2/2]

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetNumberOfBins ( unsigned int  i,
CountVectorType::ValueType  size 
)
inline

Definition at line 132 of file otbStreamingHistogramVectorImageFilter.h.

◆ SetSubSamplingRate()

template<class TInputImage >
virtual void otb::PersistentHistogramVectorImageFilter< TInputImage >::SetSubSamplingRate ( unsigned int  _arg)
virtual

Set the subsampling rate

◆ Synthetize()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::Synthetize ( void  )
overridevirtual

Set the subsampling along each direction

Implements otb::PersistentImageFilter< TInputImage, TInputImage >.

Definition at line 187 of file otbStreamingHistogramVectorImageFilter.hxx.

References otb::ObjectList< TObject >::GetNthElement().

◆ ThreadedGenerateData()

template<class TInputImage >
void otb::PersistentHistogramVectorImageFilter< TInputImage >::ThreadedGenerateData ( const RegionType outputRegionForThread,
itk::ThreadIdType  threadId 
)
overrideprotected

Multi-thread version GenerateData.

Grab the input

Definition at line 217 of file otbStreamingHistogramVectorImageFilter.hxx.

Member Data Documentation

◆ ImageDimension

template<class TInputImage >
const unsigned int otb::PersistentHistogramVectorImageFilter< TInputImage >::ImageDimension = TInputImage::ImageDimension
static

Image related typedefs.

Definition at line 82 of file otbStreamingHistogramVectorImageFilter.h.

◆ InputImageDimension

template<class TInputImage >
const unsigned int otb::PersistentHistogramVectorImageFilter< TInputImage >::InputImageDimension = TInputImage::ImageDimension
static

Definition at line 79 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_HistogramMax

template<class TInputImage >
MeasurementVectorType otb::PersistentHistogramVectorImageFilter< TInputImage >::m_HistogramMax
private

Set the subsampling along each direction

Definition at line 196 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_HistogramMin

template<class TInputImage >
MeasurementVectorType otb::PersistentHistogramVectorImageFilter< TInputImage >::m_HistogramMin
private

Set the subsampling along each direction

Definition at line 195 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_NoDataFlag

template<class TInputImage >
bool otb::PersistentHistogramVectorImageFilter< TInputImage >::m_NoDataFlag
private

Set the subsampling along each direction

Definition at line 197 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_NoDataValue

template<class TInputImage >
InternalPixelType otb::PersistentHistogramVectorImageFilter< TInputImage >::m_NoDataValue
private

Set the subsampling along each direction

Definition at line 198 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_Size

template<class TInputImage >
CountVectorType otb::PersistentHistogramVectorImageFilter< TInputImage >::m_Size
private

◆ m_SubSamplingRate

template<class TInputImage >
unsigned int otb::PersistentHistogramVectorImageFilter< TInputImage >::m_SubSamplingRate
private

Set the subsampling along each direction

Definition at line 201 of file otbStreamingHistogramVectorImageFilter.h.

◆ m_ThreadHistogramList

template<class TInputImage >
ArrayHistogramListType otb::PersistentHistogramVectorImageFilter< TInputImage >::m_ThreadHistogramList
private

Set the subsampling along each direction

Definition at line 193 of file otbStreamingHistogramVectorImageFilter.h.


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