#include <MixtureModelLinearStrategy.h>
|
bool | execute (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::string > &inputSensorBands, const std::map< std::string, std::vector< double > > &components, std::vector< te::rst::Raster * > &outputRaster, const bool normalize, const bool enableProgressInterface) throw (te::rp::Exception) |
| Executes the segmentation strategy. More...
|
|
bool | generateTransformMatrix (const std::vector< unsigned int > &inputRasterBands, const std::vector< std::string > &inputSensorBands, const std::map< std::string, std::vector< double > > &components) |
| Generates the used transformation matrix (when applicable). More...
|
|
const std::string & | getErrorMessage () const |
| Return the current error message if there is any. More...
|
|
bool | getMinMax (std::vector< double > &, std::vector< double > &) const |
|
bool | getMinMaxError (std::vector< double > &, std::vector< double > &) const |
|
bool | getTransformMatrix (boost::numeric::ublas::matrix< double > &matrix) const |
| Returns the used transformation matrix (when applicable). More...
|
|
bool | initialize (StrategyParameters const *const strategyParams) throw (te::rp::Exception) |
| Initialize the segmentation strategy. More...
|
|
| MixtureModelLinearStrategy () |
|
bool | setTransformMatrix (boost::numeric::ublas::matrix< double > &matrix) |
| Sets the used transformation matrix. More...
|
|
| ~MixtureModelLinearStrategy () |
|
|
bool | executeLST (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::string > &inputSensorBands, const std::map< std::string, std::vector< double > > &components, std::vector< te::rst::Raster * > &outputRaster, const bool normalize, const bool enableProgressInterface) throw (te::rp::Exception) |
|
bool | executeRLS3T (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::string > &inputSensorBands, const std::map< std::string, std::vector< double > > &components, std::vector< te::rst::Raster * > &outputRaster, const bool normalize, const bool enableProgressInterface) throw (te::rp::Exception) |
|
virtual void | reset () |
| Reset to an initial state. More...
|
|
void | setErrorMessage (const std::string &newErrorMessage) |
| Set the current error message. More...
|
|
- Note
- The transformation matrix (A) returned by getTransformMatrix by definition: A * X = R, we have A, so that X = inv(A' * A) * A' * R where A is the set of known reflectances for each component, R is the reflectances of a specific pixel and X is the proportion of each component.
-
Reference: Modelo Linear de Mistura Espectral Conceitos Teóricos, Algoritmos e Aplicações em Estudos na Amazônia Legal Linear Spectral Mixing Model, Theoretical Concepts, Algorithms and Applications in Studies in the Legal Amazon, Yosio Edemir Shimabukuro , Andeise Cerqueira Dutra e Egidio Arai.
-
Reference: Utilização de atributos derivados de proporções de classes dentro de um elemento de resolução de imagem pixel na classificação multiespectral de imagens de sensoriamento remoto, Ana Paula Dutra de Aguiar, Junho 1991.
Definition at line 56 of file MixtureModelLinearStrategy.h.
◆ MixtureModelLinearStrategy()
te::rp::MixtureModelLinearStrategy::MixtureModelLinearStrategy |
( |
| ) |
|
◆ ~MixtureModelLinearStrategy()
te::rp::MixtureModelLinearStrategy::~MixtureModelLinearStrategy |
( |
| ) |
|
◆ execute()
bool te::rp::MixtureModelLinearStrategy::execute |
( |
const te::rst::Raster & |
inputRaster, |
|
|
const std::vector< unsigned int > & |
inputRasterBands, |
|
|
const std::vector< std::string > & |
inputSensorBands, |
|
|
const std::map< std::string, std::vector< double > > & |
components, |
|
|
std::vector< te::rst::Raster * > & |
outputRaster, |
|
|
const bool |
normalize, |
|
|
const bool |
enableProgressInterface |
|
) |
| |
throw | ( | te::rp::Exception |
| ) | | |
|
virtual |
Executes the segmentation strategy.
- Parameters
-
inputRaster | Input raster. |
inputRasterBands | Input raster bands. |
components | The set of endmembers and its radiances. |
outputRaster | Output raster vector, contains output raster and error raster if requested. |
enableProgressInterface | Enable the internal strategy to update the progress interface. |
- Returns
- true if OK, false on errors.
Implements te::rp::MixtureModelStrategy.
◆ executeLST()
bool te::rp::MixtureModelLinearStrategy::executeLST |
( |
const te::rst::Raster & |
inputRaster, |
|
|
const std::vector< unsigned int > & |
inputRasterBands, |
|
|
const std::vector< std::string > & |
inputSensorBands, |
|
|
const std::map< std::string, std::vector< double > > & |
components, |
|
|
std::vector< te::rst::Raster * > & |
outputRaster, |
|
|
const bool |
normalize, |
|
|
const bool |
enableProgressInterface |
|
) |
| |
throw | ( | te::rp::Exception |
| ) | | |
|
protected |
◆ executeRLS3T()
bool te::rp::MixtureModelLinearStrategy::executeRLS3T |
( |
const te::rst::Raster & |
inputRaster, |
|
|
const std::vector< unsigned int > & |
inputRasterBands, |
|
|
const std::vector< std::string > & |
inputSensorBands, |
|
|
const std::map< std::string, std::vector< double > > & |
components, |
|
|
std::vector< te::rst::Raster * > & |
outputRaster, |
|
|
const bool |
normalize, |
|
|
const bool |
enableProgressInterface |
|
) |
| |
throw | ( | te::rp::Exception |
| ) | | |
|
protected |
◆ generateTransformMatrix()
bool te::rp::MixtureModelLinearStrategy::generateTransformMatrix |
( |
const std::vector< unsigned int > & |
inputRasterBands, |
|
|
const std::vector< std::string > & |
inputSensorBands, |
|
|
const std::map< std::string, std::vector< double > > & |
components |
|
) |
| |
|
virtual |
Generates the used transformation matrix (when applicable).
- Parameters
-
inputRasterBands | Input raster bands. |
inputSensorBands | Input names of the sensor/bands. |
components | A set of endmembers and its radiances. |
- Returns
- true if OK, false on errors or not applicable cases.
Implements te::rp::MixtureModelStrategy.
◆ getErrorMessage()
const std::string& te::rp::MixtureModelStrategy::getErrorMessage |
( |
| ) |
const |
|
inherited |
Return the current error message if there is any.
- Returns
- Return the current error message if there is any.
◆ getMinMax()
bool te::rp::MixtureModelLinearStrategy::getMinMax |
( |
std::vector< double > & |
, |
|
|
std::vector< double > & |
|
|
) |
| const |
|
virtual |
◆ getMinMaxError()
bool te::rp::MixtureModelLinearStrategy::getMinMaxError |
( |
std::vector< double > & |
, |
|
|
std::vector< double > & |
|
|
) |
| const |
|
virtual |
◆ getTransformMatrix()
bool te::rp::MixtureModelLinearStrategy::getTransformMatrix |
( |
boost::numeric::ublas::matrix< double > & |
matrix | ) |
const |
|
virtual |
Returns the used transformation matrix (when applicable).
- Parameters
-
matrix | The transformation matrix. |
- Returns
- true if OK, false on errors or not applicable cases.
Implements te::rp::MixtureModelStrategy.
◆ initialize()
bool te::rp::MixtureModelLinearStrategy::initialize |
( |
StrategyParameters const *const |
strategyParams | ) |
|
throw | ( | te::rp::Exception |
| ) | | |
|
virtual |
Initialize the segmentation strategy.
- Parameters
-
strategyParams | A pointer to the user given specific segmentation strategy parameters ou NULL if no parameters are present. |
- Returns
- true if OK, false on errors.
Implements te::rp::MixtureModelStrategy.
◆ reset()
virtual void te::rp::MixtureModelStrategy::reset |
( |
| ) |
|
|
protectedvirtualinherited |
Reset to an initial state.
◆ setErrorMessage()
void te::rp::MixtureModelStrategy::setErrorMessage |
( |
const std::string & |
newErrorMessage | ) |
|
|
protectedinherited |
Set the current error message.
- Parameters
-
newErrorMessage | New error message; |
◆ setTransformMatrix()
bool te::rp::MixtureModelLinearStrategy::setTransformMatrix |
( |
boost::numeric::ublas::matrix< double > & |
matrix | ) |
|
|
virtual |
Sets the used transformation matrix.
- Parameters
-
matrix | The transformation matrix. |
- Returns
- true if OK, false on errors or not applicable cases.
Implements te::rp::MixtureModelStrategy.
◆ m_AMatrix
boost::numeric::ublas::matrix<double> te::rp::MixtureModelLinearStrategy::m_AMatrix |
|
protected |
◆ m_errorMessage
std::string te::rp::MixtureModelStrategy::m_errorMessage |
|
privateinherited |
◆ m_isInitialized
bool te::rp::MixtureModelLinearStrategy::m_isInitialized |
|
protected |
◆ m_max
std::vector<double> te::rp::MixtureModelLinearStrategy::m_max |
|
protected |
◆ m_maxerror
std::vector<double> te::rp::MixtureModelLinearStrategy::m_maxerror |
|
protected |
◆ m_min
std::vector<double> te::rp::MixtureModelLinearStrategy::m_min |
|
protected |
◆ m_minerror
std::vector<double> te::rp::MixtureModelLinearStrategy::m_minerror |
|
protected |
◆ m_parameters
The documentation for this class was generated from the following file: