25 #ifndef __TERRALIB_RP_INTERNAL_CLASSIFIERMAPSTRATEGY_H
26 #define __TERRALIB_RP_INTERNAL_CLASSIFIERMAPSTRATEGY_H
30 #include "../common/progress/TaskProgress.h"
33 #include <boost/numeric/ublas/matrix.hpp>
34 #include <boost/shared_ptr.hpp>
87 void reset() throw( te::rp::Exception );
90 AbstractParameters* clone() const;
98 bool initialize(
StrategyParameters const* const strategyParams) throw(te::rp::Exception);
101 bool execute(const te::rst::Raster& inputRaster, const std::vector<
unsigned int>& inputRasterBands,
102 const std::vector<te::gm::Polygon*>& inputPolygons, te::rst::Raster& outputRaster,
103 const
unsigned int outputRasterBand, const
bool enableProgressInterface) throw(te::rp::Exception);
107 bool m_isInitialized;
113 std::vector< std::vector<
double > > m_classesMeans;
115 std::vector< boost::numeric::ublas::matrix<
double > > m_classesCovarianceMatrixes;
117 std::vector< boost::numeric::ublas::matrix<
double > > m_classesCovarianceInvMatrixes;
119 std::vector<
double > m_classesOptizedMAPDiscriminantTerm;
129 bool getPrioriProbabilities(
130 const te::rst::Raster& inputRaster,
131 const std::vector<
unsigned int>& inputRasterBands,
132 te::common::TaskProgress * const progressPtr,
133 std::vector<
double >& prioriProbabilities ) const;
158 #endif // __TERRALIB_RP_INTERNAL_CLASSIFIERMAPSTRATEGY_H
MClassesSamplesCTPtr m_trainSamplesPtr
A shared pointer to a always-valid structure where trainning samples are stored.
Maximum a posteriori probability strategy factory.
boost::shared_ptr< MClassesSamplesCT > MClassesSamplesCTPtr
A shared pointer to a multi classes samples container type definition.
unsigned int m_prioriCalcSampleStep
A positive non-zero sample step used when calculating piori probabilities (default:2 - half of sample...
unsigned int ClassIDT
Class ID type definition (zero means invalid ID).
std::vector< double > m_prioriProbs
Priori probabilities, one for each class. Values from 0 to 1 (use an empty vector to allow internal c...
Raster classifier strategy factory base class.
std::map< ClassIDT, ClassSamplesContainerT > MClassesSamplesCT
Multi-classes samples container type definition.
std::vector< double > ClassSampleT
Class sample type definition.
Raster strategy parameters base class.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
Maximum a posteriori probability strategy.
Raster classifier strategy factory base class.
Configuration flags for the Raster Processing module of TerraLib.
Raster classifier strategy base class.
Raster classifier strategy base class.
std::vector< ClassSampleT > ClassSamplesContainerT
Class samples container type definition.