26 #ifndef __TERRALIB_RP_INTERNAL_MIXTUREMODELPCASTRATEGY_H
27 #define __TERRALIB_RP_INTERNAL_MIXTUREMODELPCASTRATEGY_H
38 #include <boost/numeric/ublas/matrix.hpp>
73 AbstractParameters* clone() const;
86 bool execute(const
te::rst::Raster& inputRaster, const std::vector<
unsigned int>& inputRasterBands,
87 const std::vector<std::
string>& inputSensorBands, const std::map<std::
string, std::vector<
double> >& components,
88 std::vector<
te::rst::Raster*>& outputRaster, const
bool normalize, const
bool enableProgressInterface) throw(
te::rp::
Exception);
91 bool getTransformMatrix(
boost::numeric::ublas::matrix<
double>& matrix ) const;
94 bool setTransformMatrix(
boost::numeric::ublas::matrix<
double>& matrix);
97 bool generateTransformMatrix(const std::vector<
unsigned int>& inputRasterBands, const std::vector<std::
string>& inputSensorBands,
98 const std::map<std::
string, std::vector<
double> >& components);
101 bool getMinMax(std::vector<
double>&, std::vector<
double>&) const;
102 bool getMinMaxError(std::vector<
double>&, std::vector<
double>&) const;
106 bool m_isInitialized;
108 boost::numeric::ublas::matrix<
double> m_transfMatrix;
109 std::vector<
double> m_min;
110 std::vector<
double> m_max;
111 std::vector<
double> m_minerror;
112 std::vector<
double> m_maxerror;
137 #endif // __TERRALIB_RP_INTERNAL_MIXTUREMODELPCASTRATEGY_H