OTB  6.7.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
otb::EigenvalueLikelihoodMaximisation< TPrecision > Class Template Reference

#include <otbEigenvalueLikelihoodMaximisation.h>

+ Inheritance diagram for otb::EigenvalueLikelihoodMaximisation< TPrecision >:
+ Collaboration diagram for otb::EigenvalueLikelihoodMaximisation< TPrecision >:

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef vnl_matrix< PrecisionTypeMatrixType
 
typedef itk::SmartPointer< SelfPointer
 
typedef TPrecision PrecisionType
 
typedef
EigenvalueLikelihoodMaximisation 
Self
 
typedef itk::LightObject Superclass
 
typedef vnl_vector< PrecisionTypeVectorType
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

void Compute ()
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
const VectorTypeGetLikelihood ()
 
virtual const char * GetNameOfClass () const
 
unsigned int GetNumberOfEndmembers ()
 
void SetCorrelation (const MatrixType &m)
 
void SetCovariance (const MatrixType &m)
 
void SetNumberOfPixels (unsigned int n)
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

 EigenvalueLikelihoodMaximisation ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 ~EigenvalueLikelihoodMaximisation () 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

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

Private Attributes

MatrixType m_Correlation
 
MatrixType m_Covariance
 
VectorType m_Likelihood
 
unsigned int m_NumberOfEndmembers
 
unsigned int m_NumberOfPixels
 

Additional Inherited Members

- Protected Attributes inherited from itk::LightObject
AtomicInt< int > m_ReferenceCount
 

Detailed Description

template<class TPrecision>
class otb::EigenvalueLikelihoodMaximisation< TPrecision >

Estimates the number of endmembers in a hyperspectral image.

This filter applies the ELM (Eigenvalue Likelihood Maximisation) algorithm to a hyperspectral image and outputs the number of endmember. It takes as input the covariance and correlation matrices of the input data, the number of observed pixel for thoses matrices estimations, and outputs the number of endmembers, and the log-likelihood.

References : "Unsupervised Endmember Extraction of Martian Hyperspectral Images", B.Luo, J. Chanussot, S. Dout\'e and X. Ceamanos, IEEE Whispers 2009, Grenoble France, 2009

"Unsupervised classification of hyperspectral images by using linear unmixing algorithm", Luo, B. and Chanussot, J., IEEE Int. Conf. On Image Processing(ICIP) 2009, Cairo, Egypte, 2009

Definition at line 57 of file otbEigenvalueLikelihoodMaximisation.h.

Member Typedef Documentation

template<class TPrecision >
typedef itk::SmartPointer<const Self> otb::EigenvalueLikelihoodMaximisation< TPrecision >::ConstPointer

Definition at line 65 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef vnl_matrix<PrecisionType> otb::EigenvalueLikelihoodMaximisation< TPrecision >::MatrixType

Definition at line 77 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef itk::SmartPointer<Self> otb::EigenvalueLikelihoodMaximisation< TPrecision >::Pointer

Definition at line 64 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef TPrecision otb::EigenvalueLikelihoodMaximisation< TPrecision >::PrecisionType

Types to use for computations.

Definition at line 71 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef EigenvalueLikelihoodMaximisation otb::EigenvalueLikelihoodMaximisation< TPrecision >::Self

Standard Self typedef

Definition at line 62 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef itk::LightObject otb::EigenvalueLikelihoodMaximisation< TPrecision >::Superclass

Definition at line 63 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
typedef vnl_vector<PrecisionType> otb::EigenvalueLikelihoodMaximisation< TPrecision >::VectorType

Definition at line 76 of file otbEigenvalueLikelihoodMaximisation.h.

Constructor & Destructor Documentation

template<class TPrecision >
otb::EigenvalueLikelihoodMaximisation< TPrecision >::EigenvalueLikelihoodMaximisation ( )
protected

Definition at line 34 of file otbEigenvalueLikelihoodMaximisation.hxx.

template<class TPrecision >
otb::EigenvalueLikelihoodMaximisation< TPrecision >::~EigenvalueLikelihoodMaximisation ( )
inlineoverrideprotected

Definition at line 108 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
otb::EigenvalueLikelihoodMaximisation< TPrecision >::EigenvalueLikelihoodMaximisation ( const Self )
privatedelete

Member Function Documentation

template<class TInputImage >
void otb::EigenvalueLikelihoodMaximisation< TInputImage >::Compute ( void  )

Definition at line 43 of file otbEigenvalueLikelihoodMaximisation.hxx.

template<class TPrecision >
virtual::itk::LightObject::Pointer otb::EigenvalueLikelihoodMaximisation< TPrecision >::CreateAnother ( void  ) const
virtual

Reimplemented from itk::LightObject.

template<class TPrecision >
const VectorType& otb::EigenvalueLikelihoodMaximisation< TPrecision >::GetLikelihood ( )
inline

Definition at line 101 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
virtual const char* otb::EigenvalueLikelihoodMaximisation< TPrecision >::GetNameOfClass ( ) const
virtual

Runtime information support.

Reimplemented from itk::LightObject.

template<class TPrecision >
unsigned int otb::EigenvalueLikelihoodMaximisation< TPrecision >::GetNumberOfEndmembers ( )
inline

Definition at line 96 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
static Pointer otb::EigenvalueLikelihoodMaximisation< TPrecision >::New ( )
static

Method for creation through the object factory.

template<class TPrecision >
void otb::EigenvalueLikelihoodMaximisation< TPrecision >::operator= ( const Self )
privatedelete
template<class TImage >
void otb::EigenvalueLikelihoodMaximisation< TImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotectedvirtual

Reimplemented from itk::LightObject.

Definition at line 101 of file otbEigenvalueLikelihoodMaximisation.hxx.

template<class TPrecision >
void otb::EigenvalueLikelihoodMaximisation< TPrecision >::SetCorrelation ( const MatrixType m)
inline

Definition at line 84 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
void otb::EigenvalueLikelihoodMaximisation< TPrecision >::SetCovariance ( const MatrixType m)
inline

Definition at line 79 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
void otb::EigenvalueLikelihoodMaximisation< TPrecision >::SetNumberOfPixels ( unsigned int  n)
inline

Definition at line 89 of file otbEigenvalueLikelihoodMaximisation.h.

Member Data Documentation

template<class TPrecision >
MatrixType otb::EigenvalueLikelihoodMaximisation< TPrecision >::m_Correlation
private

Definition at line 116 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
MatrixType otb::EigenvalueLikelihoodMaximisation< TPrecision >::m_Covariance
private

Definition at line 115 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
VectorType otb::EigenvalueLikelihoodMaximisation< TPrecision >::m_Likelihood
private

Definition at line 120 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
unsigned int otb::EigenvalueLikelihoodMaximisation< TPrecision >::m_NumberOfEndmembers
private

Definition at line 119 of file otbEigenvalueLikelihoodMaximisation.h.

template<class TPrecision >
unsigned int otb::EigenvalueLikelihoodMaximisation< TPrecision >::m_NumberOfPixels
private

Definition at line 118 of file otbEigenvalueLikelihoodMaximisation.h.


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