Orfeo Toolbox  3.16
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
otb::Functor::PVI< TInput1, TInput2, TOutput > Class Template Reference

This functor computes the Perpendicular Vegetation Index (PVI) More...

#include <otbVegetationIndicesFunctor.h>

+ Inheritance diagram for otb::Functor::PVI< TInput1, TInput2, TOutput >:
+ Collaboration diagram for otb::Functor::PVI< TInput1, TInput2, TOutput >:

Public Types

typedef
itk::VariableLengthVector
< TInput1 > 
InputVectorType
 

Public Member Functions

 PVI ()
 
virtual ~PVI ()
 
double GetA (void) const
 
double GetB (void) const
 
unsigned int GetIndex (BandName::BandName band) const
 
virtual std::string GetName () const
 
unsigned int GetNIRIndex () const
 Get NIR Index. More...
 
unsigned int GetRedIndex () const
 Get Red Index. More...
 
bool operator!= (const RAndNIRIndexBase &) const
 
TOutput operator() (const InputVectorType &inputVector) const
 
TOutput operator() (const TInput1 &r, const TInput2 &nir) const
 
bool operator== (const RAndNIRIndexBase &other) const
 
void SetA (const double A)
 
void SetB (const double B)
 
void SetIndex (BandName::BandName band, unsigned int channel)
 
void SetNIRIndex (unsigned int channel)
 Set NIR Index. More...
 
void SetRedIndex (unsigned int channel)
 Set Red Index. More...
 

Protected Member Functions

TOutput Evaluate (const TInput1 &r, const TInput2 &nir) const
 

Protected Attributes

double m_EpsilonToBeConsideredAsZero
 

Private Attributes

double m_A
 
double m_B
 
double m_Coeff
 

Detailed Description

template<class TInput1, class TInput2, class TOutput>
class otb::Functor::PVI< TInput1, TInput2, TOutput >

This functor computes the Perpendicular Vegetation Index (PVI)

[Richardson et Wiegand, 1977]

Default values for A and B are from C. L. Wiegand, A. J. Richardson, D. E. Escobar, and A. H. Gerbermann, "Vegetation Indices in Crop Assessments", REMOTE SENS. ENVIRON. 35:105-119 (1991)

Definition at line 477 of file otbVegetationIndicesFunctor.h.

Member Typedef Documentation

template<class TInput1, class TInput2, class TOutput>
typedef itk::VariableLengthVector<TInput1> otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::InputVectorType
inherited

Vector pixel type used to support both vector images and multiple input images

Definition at line 49 of file otbVegetationIndicesFunctor.h.

Constructor & Destructor Documentation

template<class TInput1 , class TInput2 , class TOutput >
otb::Functor::PVI< TInput1, TInput2, TOutput >::PVI ( )
inline

Definition at line 486 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TOutput >
virtual otb::Functor::PVI< TInput1, TInput2, TOutput >::~PVI ( )
inlinevirtual

Definition at line 487 of file otbVegetationIndicesFunctor.h.

Member Function Documentation

template<class TInput1 , class TInput2 , class TOutput >
TOutput otb::Functor::PVI< TInput1, TInput2, TOutput >::Evaluate ( const TInput1 &  r,
const TInput2 &  nir 
) const
inlineprotectedvirtual
template<class TInput1 , class TInput2 , class TOutput >
double otb::Functor::PVI< TInput1, TInput2, TOutput >::GetA ( void  ) const
inline
template<class TInput1 , class TInput2 , class TOutput >
double otb::Functor::PVI< TInput1, TInput2, TOutput >::GetB ( void  ) const
inline
template<class TInput1, class TInput2, class TOutput>
unsigned int otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::GetIndex ( BandName::BandName  band) const
inlineinherited

Get index, generic method

Definition at line 91 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TOutput >
virtual std::string otb::Functor::PVI< TInput1, TInput2, TOutput >::GetName ( ) const
inlinevirtual

Return the index name

Implements otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >.

Definition at line 481 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
unsigned int otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::GetNIRIndex ( ) const
inlineinherited

Get NIR Index.

Definition at line 119 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
unsigned int otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::GetRedIndex ( ) const
inlineinherited

Get Red Index.

Definition at line 109 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
bool otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::operator!= ( const RAndNIRIndexBase< TInput1, TInput2, TOutput > &  ) const
inlineinherited

Definition at line 52 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
TOutput otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::operator() ( const InputVectorType inputVector) const
inlineinherited

Definition at line 63 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
TOutput otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::operator() ( const TInput1 &  r,
const TInput2 &  nir 
) const
inlineinherited

Definition at line 69 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
bool otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::operator== ( const RAndNIRIndexBase< TInput1, TInput2, TOutput > &  other) const
inlineinherited

Definition at line 57 of file otbVegetationIndicesFunctor.h.

template<class TInput1 , class TInput2 , class TOutput >
void otb::Functor::PVI< TInput1, TInput2, TOutput >::SetA ( const double  A)
inline
template<class TInput1 , class TInput2 , class TOutput >
void otb::Functor::PVI< TInput1, TInput2, TOutput >::SetB ( const double  B)
inline
template<class TInput1, class TInput2, class TOutput>
void otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::SetIndex ( BandName::BandName  band,
unsigned int  channel 
)
inlineinherited

Set index, generic method

Definition at line 79 of file otbVegetationIndicesFunctor.h.

template<class TInput1, class TInput2, class TOutput>
void otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::SetNIRIndex ( unsigned int  channel)
inlineinherited
template<class TInput1, class TInput2, class TOutput>
void otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::SetRedIndex ( unsigned int  channel)
inlineinherited

Member Data Documentation

template<class TInput1 , class TInput2 , class TOutput >
double otb::Functor::PVI< TInput1, TInput2, TOutput >::m_A
private
template<class TInput1 , class TInput2 , class TOutput >
double otb::Functor::PVI< TInput1, TInput2, TOutput >::m_B
private
template<class TInput1 , class TInput2 , class TOutput >
double otb::Functor::PVI< TInput1, TInput2, TOutput >::m_Coeff
private

Denominator, pre-calculed when the A variable is set

Definition at line 520 of file otbVegetationIndicesFunctor.h.

Referenced by otb::Functor::PVI< TInput1, TInput2, TOutput >::Evaluate(), and otb::Functor::PVI< TInput1, TInput2, TOutput >::SetA().

template<class TInput1, class TInput2, class TOutput>
double otb::Functor::RAndNIRIndexBase< TInput1, TInput2, TOutput >::m_EpsilonToBeConsideredAsZero
protectedinherited

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

Generated at Sun Jun 16 2013 04:32:31 for Orfeo Toolbox with doxygen 1.8.3.1