Orfeo ToolBox  4.2
Orfeo ToolBox is not a black box
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter > Class Template Reference

Multiscale analysis filter using the morphological pyramid algorithm. More...

#include <otbMorphologicalPyramidAnalysisFilter.h>

+ Inheritance diagram for otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >:
+ Collaboration diagram for otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >:

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef
InputImageType::ConstPointer 
InputImageConstPointerType
 
typedef InputImageType::Pointer InputImagePointerType
 
typedef
Superclass::InputImageRegionType 
InputImageRegionType
 
typedef Superclass::InputImageType InputImageType
 
typedef
MorphoFilterType::KernelType 
KernelType
 
typedef TMorphoFilter MorphoFilterType
 
typedef
OutputImageListType::Pointer 
OutputImageListPointerType
 
typedef
Superclass::OutputImageListType 
OutputImageListType
 
typedef
Superclass::OutputImagePointerType 
OutputImagePointerType
 
typedef Superclass::OutputImageType OutputImageType
 
typedef InputImageType::PixelType PixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef
MorphologicalPyramidAnalysisFilter 
Self
 
typedef InputImageType::SizeType SizeType
 
typedef InputImageType::SpacingType SpacingType
 
typedef ImageToImageListFilter
< TInputImage, TOutputImage > 
Superclass
 
typedef InputImageType::ValueType ValueType
 
- Public Types inherited from otb::ImageToImageListFilter< TInputImage, TOutputImage >
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef
InputImageType::ConstPointer 
InputImagePointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef TInputImage InputImageType
 
typedef
Superclass::OutputImageListType 
OutputImageListType
 
typedef
Superclass::OutputImagePointerType 
OutputImagePointerType
 
typedef Superclass::OutputImageType OutputImageType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ImageToImageListFilter Self
 
typedef InputImageType::SizeType SizeType
 
typedef ImageListSource
< TOutputImage > 
Superclass
 
typedef InputImageType::ValueType ValueType
 
- Public Types inherited from otb::ImageListSource< TOutputImage >
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef
OutputImageListType::ConstPointer 
OutputImageListConstPointerType
 
typedef
OutputImageListType::Pointer 
OutputImageListPointerType
 
typedef ImageList
< OutputImageType
OutputImageListType
 
typedef OutputImageType::Pointer OutputImagePointerType
 
typedef TOutputImage OutputImageType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ImageListSource Self
 
typedef itk::ProcessObject Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const double & GetDecimationRatio ()
 
OutputImageListTypeGetInfDeci (void)
 
OutputImageListTypeGetInfFilter (void)
 
virtual const char * GetNameOfClass () const
 
virtual const int & GetNumberOfLevels ()
 
OutputImageListTypeGetOutput (void)
 
OutputImageListTypeGetSupDeci (void)
 
OutputImageListTypeGetSupFilter (void)
 
virtual void SetDecimationRatio (double _arg)
 
virtual void SetNumberOfLevels (int _arg)
 
- Public Member Functions inherited from otb::ImageToImageListFilter< TInputImage, TOutputImage >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
InputImageTypeGetInput (void)
 
virtual void SetInput (const InputImageType *image)
 
- Public Member Functions inherited from otb::ImageListSource< TOutputImage >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::ImageToImageListFilter< TInputImage, TOutputImage >
static Pointer New ()
 
- Static Public Member Functions inherited from otb::ImageListSource< TOutputImage >
static Pointer New ()
 

Static Public Attributes

static const unsigned int InputImageDimension = TInputImage::ImageDimension
 
- Static Public Attributes inherited from otb::ImageToImageListFilter< TInputImage, TOutputImage >
static const unsigned int InputImageDimension = TInputImage::ImageDimension
 

Protected Member Functions

 MorphologicalPyramidAnalysisFilter ()
 
virtual ~MorphologicalPyramidAnalysisFilter ()
 
virtual void GenerateData ()
 
virtual void GenerateOutputInformation ()
 
virtual void PrintSelf (std::ostream &os, itk::Indent indent) const
 
- Protected Member Functions inherited from otb::ImageToImageListFilter< TInputImage, TOutputImage >
 ImageToImageListFilter ()
 
virtual ~ImageToImageListFilter ()
 
- Protected Member Functions inherited from otb::ImageListSource< TOutputImage >
 ImageListSource ()
 
virtual ~ImageListSource ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 

Private Attributes

double m_DecimationRatio
 
int m_NumberOfLevels
 

Detailed Description

template<class TInputImage, class TOutputImage, class TMorphoFilter>
class otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >

Multiscale analysis filter using the morphological pyramid algorithm.

Pyramidal decomposition is based on the following statement : once an image has been smoothed with a linear filter, it does not contain any more high-frequency details. Therefore, it can be down-sampled without any loss of information, according to Shannon Theorem. By iterating the same smoothing on the down-sampled image, a multi-resolution decomposition of the scene is computed. If the smoothing filter is a morphological filter, this is no longer true, as the filter is not linear. However, by keeping the details possibly lost in the down-sampling operation, such a decomposition can be used.

The MorphologicalPyramidAnalysisFilter provide such a decomposition. It's computation process is an iterative analyse involving smoothing by the morphological filter, computing the details lost in the smoothing, down-sampling the current image, and computing the details lost in the down-sampling.

See Also
MorphologicalPyramidSynthesisFilter, OpeningClosingMorphologicalFilter, ClosingOpeningMorphologicalFilter

Definition at line 50 of file otbMorphologicalPyramidAnalysisFilter.h.

Member Typedef Documentation

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef itk::SmartPointer<const Self> otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::ConstPointer

Definition at line 58 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::ConstPointer otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::InputImageConstPointerType

Definition at line 77 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::Pointer otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::InputImagePointerType

Definition at line 76 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef Superclass::InputImageRegionType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::InputImageRegionType

Definition at line 75 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef Superclass::InputImageType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::InputImageType

Input related typedefs

Definition at line 74 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef MorphoFilterType::KernelType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::KernelType

Definition at line 67 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef TMorphoFilter otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::MorphoFilterType

Template parameters typedefs

Definition at line 66 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef OutputImageListType::Pointer otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListPointerType

Definition at line 71 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef Superclass::OutputImageListType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType

Definition at line 70 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef Superclass::OutputImagePointerType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImagePointerType

Definition at line 72 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef Superclass::OutputImageType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageType

Output related typedefs

Definition at line 69 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::PixelType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::PixelType

Definition at line 80 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef itk::SmartPointer<Self> otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::Pointer

Definition at line 57 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef MorphologicalPyramidAnalysisFilter otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::Self

Standard typedefs

Definition at line 55 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::SizeType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::SizeType

Definition at line 78 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::SpacingType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::SpacingType

Definition at line 81 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef ImageToImageListFilter<TInputImage, TOutputImage> otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::Superclass

Definition at line 56 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
typedef InputImageType::ValueType otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::ValueType

Definition at line 79 of file otbMorphologicalPyramidAnalysisFilter.h.

Constructor & Destructor Documentation

template<class TInputImage , class TOutputImage , class TMorphoFilter >
otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::MorphologicalPyramidAnalysisFilter ( )
protected
template<class TInputImage , class TOutputImage , class TMorphoFilter >
otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::~MorphologicalPyramidAnalysisFilter ( )
protectedvirtual

Destructor

Definition at line 58 of file otbMorphologicalPyramidAnalysisFilter.txx.

Member Function Documentation

template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual::itk::LightObject::Pointer otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::CreateAnother ( void  ) const
template<class TInputImage , class TOutputImage , class TMorphoFilter >
void otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GenerateData ( void  )
protectedvirtual

Main computation method

Definition at line 125 of file otbMorphologicalPyramidAnalysisFilter.txx.

References otbMsgDevMacro, and otb::ObjectList< TObject >::PushBack().

template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual void otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GenerateOutputInformation ( void  )
inlineprotectedvirtual

Definition at line 118 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual const double& otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetDecimationRatio ( )
virtual
template<class TInputImage , class TOutputImage , class TMorphoFilter >
MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType * otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetInfDeci ( void  )

Get The InfDeci details

Returns
The brighter details extracted from the resampling operation.

Definition at line 115 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType * otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetInfFilter ( void  )

Get The InfFilter details

Returns
The darker details extracted from the filtering operation.

Definition at line 91 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual const char* otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetNameOfClass ( ) const
virtual
template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual const int& otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetNumberOfLevels ( )
virtual
template<class TInputImage , class TOutputImage , class TMorphoFilter >
MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType * otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetOutput ( void  )
virtual

Get The Analyse image at each level of the pyramid.

Returns
The analysed image at each level of the pyramid.

Reimplemented from otb::ImageListSource< TOutputImage >.

Definition at line 67 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType * otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetSupDeci ( void  )

Get The SupDeci details

Returns
The brighter details extracted from the resampling operation.

Definition at line 103 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::OutputImageListType * otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::GetSupFilter ( void  )

Get The SupFilter details

Returns
The brighter details extracted from the filtering operation.

Definition at line 79 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
static Pointer otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::New ( )
static

Creation through object factory macro

template<class TInputImage , class TOutputImage , class TMorphoFilter >
void otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
protectedvirtual

Printself method

PrintSelf method

Reimplemented from otb::ImageToImageListFilter< TInputImage, TOutputImage >.

Definition at line 284 of file otbMorphologicalPyramidAnalysisFilter.txx.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual void otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::SetDecimationRatio ( double  _arg)
virtual
template<class TInputImage , class TOutputImage , class TMorphoFilter >
virtual void otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::SetNumberOfLevels ( int  _arg)
virtual

Accessors

Member Data Documentation

template<class TInputImage , class TOutputImage , class TMorphoFilter >
const unsigned int otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::InputImageDimension = TInputImage::ImageDimension
static

Input image dimension constant macro

Definition at line 64 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
double otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::m_DecimationRatio
private

Subsampling scale used

Definition at line 128 of file otbMorphologicalPyramidAnalysisFilter.h.

template<class TInputImage , class TOutputImage , class TMorphoFilter >
int otb::MorphologicalPyramidAnalysisFilter< TInputImage, TOutputImage, TMorphoFilter >::m_NumberOfLevels
private

Number of levels of the algorithm

Definition at line 126 of file otbMorphologicalPyramidAnalysisFilter.h.


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