OTB  9.0.0
Orfeo Toolbox
Classes | Typedefs
Module OTBUnmixing
+ Collaboration diagram for Module OTBUnmixing:

Classes

class  otb::Functor::ISRAUnmixingFunctor< TInput, TOutput, TPrecision >
 
class  otbMDMDNMFImageFilter
 
class  otb::SparseUnmixingImageFilter< TInputImage, TOutputImage, VNbInputImage, TPrecision, TMotherWaveletOperator >
 
class  otb::Functor::UnConstrainedLeastSquareFunctor< TInput, TOutput, TPrecision >
 

Typedefs

template<typename TInputImage , typename TOutputImage , typename TPrecision >
using otb::ISRAUnmixingImageFilter = FunctorImageFilter< Functor::ISRAUnmixingFunctor< typename TInputImage::PixelType, typename TOutputImage::PixelType, TPrecision > >
 
template<typename TInputImage , typename TOutputImage , typename TPrecision >
using otb::UnConstrainedLeastSquareImageFilter = FunctorImageFilter< Functor::UnConstrainedLeastSquareFunctor< typename TInputImage::PixelType, typename TOutputImage::PixelType, TPrecision > >
 

Detailed Description

Typedef Documentation

◆ ISRAUnmixingImageFilter

template<typename TInputImage , typename TOutputImage , typename TPrecision >
otb::ISRAUnmixingImageFilter

Performs fully constrained least squares on each pixel of a VectorImage.

This filter takes as input a multiband image and a matrix. If the matrix is called $A$, it solves, for each pixel $p$, the system $A \cdot x = p$ in the least square sense, with additional constraints on the solution $\hat{x}$ ensuring positivity (each component is positive) and additivity (the sum of all components is 1).

The main use of this filter is to unmix an hyperspectral dataset, where $A$ is the mixing matrix, in which each row corresponds to an endmember signature.

The number of rows in $A$ must match the input image number of bands. The number of bands in the output image will be the number of columns of $A$

References "Fully Constrained Least-Squares Based Linear Unmixing." Daniel Heinz, Chein-I Chang, and Mark L.G. Althouse. IEEE. 1999.

Definition at line 119 of file otbISRAUnmixingImageFilter.h.

◆ UnConstrainedLeastSquareImageFilter

template<typename TInputImage , typename TOutputImage , typename TPrecision >
otb::UnConstrainedLeastSquareImageFilter

Solves a least square system for each pixel.

This filter takes as input a multiband image and a matrix. If the matrix is called $A$, it solves, for each pixel $p$, the system $A \cdot x = p$ in the least square sense, and saves the result $\hat{x}$ in the output pixel.

It can be used as a simple way to unmix an hyperspectral dataset, where $A$ is the matrix in which each row corresponds to an endmember signature, although better algorithms can be found for this particular task.

The number of rows in $A$ must match the input image number of bands. The number of bands in the output image will be the number of columns of $A$

Definition at line 96 of file otbUnConstrainedLeastSquareImageFilter.h.