template<typename TInput, typename TOutput>
class otb::Functor::RadiometricIndex< TInput, TOutput >
Base class for all radiometric indices.
This class is the base class for all radiometric indices.
It offers services to:
- Indicate which band are required among CommonBandNames enum
- Set indices of each required band
- Compute the indice response to a pixel by subclassing the pure virtual operator()
This class is designed for performance on the critical path. For best performances use the Value() method when implementing operator() to avoid branches.
Definition at line 57 of file otbRadiometricIndex.h.
template<typename TInput , typename TOutput >
Astract method which will compute the radiometric indice
- Parameters
-
input | A itk::VariableLengthVector<TInput> holding the pixel values for each band |
- Returns
- The indice value as TOutput (starts at 1 for first band)
Implemented in otb::Functor::NDVI< typename TReduceSpectralResponse::ValuePrecisionType, typename TReduceSpectralResponse::ValuePrecisionType >, otb::Functor::LAIFromNDVIFormosat2Functor< TInput, TOutput >, otb::Functor::LAIFromReflectancesLinear< TInput, TOutput >, otb::Functor::LAIFromNDVILogarithmic< TInput, TOutput >, otb::Functor::TNDVI< TInput, TOutput >, otb::Functor::IPVI< TInput, TOutput >, otb::Functor::EVI< TInput, TOutput >, otb::Functor::ARVI< TInput, TOutput >, otb::Functor::AVI< TInput, TOutput >, otb::Functor::GEMI< TInput, TOutput >, otb::Functor::MSAVI2< TInput, TOutput >, otb::Functor::MSAVI< TInput, TOutput >, otb::Functor::WDVI< TInput, TOutput >, otb::Functor::TSAVI< TInput, TOutput >, otb::Functor::SAVI< TInput, TOutput >, otb::Functor::NDTI< TInput, TOutput >, otb::Functor::BI2< TInput, TOutput >, otb::Functor::PVI< TInput, TOutput >, otb::Functor::BI< TInput, TOutput >, otb::Functor::MNDWI< TInput, TOutput >, otb::Functor::CI< TInput, TOutput >, otb::Functor::RVI< TInput, TOutput >, otb::Functor::NDWI2< TInput, TOutput >, otb::Functor::RI< TInput, TOutput >, otb::Functor::NDWI< TInput, TOutput >, otb::Functor::NDVI< TInput, TOutput >, and otb::Functor::ISU< TInput, TOutput >.
template<typename TInput , typename TOutput >
Helper method to retrieve index for band name. With respect to the public method, this method will not throw an exception if CommandBandName::MAX is used as a parameter. Since it is meant for internal use in the critical path and not for client code, it will only assert that band is not CommandBandName::MAX in debug mode.
- Parameters
-
band | The band for which to retrieve indice |
- Returns
- The indices of the band
Definition at line 181 of file otbRadiometricIndex.h.
template<typename TInput , typename TOutput >
Helper method to parse input itk::VariableLengthVector<TInput> and get the corresponding band value. For instance:
As this function is on the critical performance path, no checks are made to see whether this band is really required for this indice. However an assertion will be raised in debug mode.
- Parameters
-
band | The band for which to retrieve the value |
input | A itk::VariableLengthVector<TInput> holding the pixel values for each band |
- Returns
- The value of the band as double
Definition at line 204 of file otbRadiometricIndex.h.
Referenced by otb::Functor::ISU< TInput, TOutput >::operator()(), otb::Functor::NDVI< typename TReduceSpectralResponse::ValuePrecisionType, typename TReduceSpectralResponse::ValuePrecisionType >::operator()(), otb::Functor::RI< TInput, TOutput >::operator()(), otb::Functor::NDWI< TInput, TOutput >::operator()(), otb::Functor::WaterSqrtSpectralAngleFunctor< TInput, TOutput >::operator()(), otb::Functor::NDWI2< TInput, TOutput >::operator()(), otb::Functor::RVI< TInput, TOutput >::operator()(), otb::Functor::CI< TInput, TOutput >::operator()(), otb::Functor::BI< TInput, TOutput >::operator()(), otb::Functor::MNDWI< TInput, TOutput >::operator()(), otb::Functor::PVI< TInput, TOutput >::operator()(), otb::Functor::BI2< TInput, TOutput >::operator()(), otb::Functor::NDTI< TInput, TOutput >::operator()(), otb::Functor::SAVI< TInput, TOutput >::operator()(), otb::Functor::TSAVI< TInput, TOutput >::operator()(), otb::Functor::WDVI< TInput, TOutput >::operator()(), otb::Functor::MSAVI< TInput, TOutput >::operator()(), otb::Functor::MSAVI2< TInput, TOutput >::operator()(), otb::Functor::GEMI< TInput, TOutput >::operator()(), otb::Functor::AVI< TInput, TOutput >::operator()(), otb::Functor::ARVI< TInput, TOutput >::operator()(), otb::Functor::EVI< TInput, TOutput >::operator()(), otb::Functor::IPVI< TInput, TOutput >::operator()(), otb::Functor::TNDVI< TInput, TOutput >::operator()(), otb::Functor::LAIFromNDVILogarithmic< TInput, TOutput >::operator()(), otb::Functor::LAIFromReflectancesLinear< TInput, TOutput >::operator()(), otb::Functor::LAIFromNDVIFormosat2Functor< TInput, TOutput >::operator()(), and otb::Functor::WaterSqrtSpectralAngleFunctor< TInput, TOutput >::SetReferenceWaterPixel().