Go to the documentation of this file.
   25 #ifndef __TERRALIB_RP_INTERNAL_CLASSIFIERISOSEGSTRATEGY_H 
   26 #define __TERRALIB_RP_INTERNAL_CLASSIFIERISOSEGSTRATEGY_H 
   32 #include "../raster/RasterSynchronizer.h" 
   38 #include <condition_variable> 
   41 #include <boost/numeric/ublas/matrix.hpp> 
   79               BhattacharyyaDistanceType 
 
   96             AbstractParameters* clone() const;
 
  130             Pattern(
int i, 
double a, std::vector<double> mv, boost::numeric::ublas::matrix<double> cm);
 
  231         double getThreshold(
const double acceptanceThreshold, 
const unsigned nBands) 
const;
 
  244         static void printMatrix(
const boost::numeric::ublas::matrix<double>& matrix);
 
  269 #endif // __TERRALIB_RP_INTERNAL_CLASSIFIERISOSEGSTRATEGY_H 
  
 
boost::numeric::ublas::matrix< double > m_covarianceMatrix
The covariance matrix between bands.
 
void reset()
Reset to initial state.
 
Pattern * m_myCluster
The associated cluster of this pattern (optional).
 
double m_covarianceMatrixDet
The covariance matrix determinant.
 
double m_acceptanceThreshold
The acceptance threshold (the closer to 100%, few clusters are created).
 
~FillRegionsThreadEntryParams()
 
boost::numeric::ublas::matrix< double > m_getBhattacharyyaDistance_meansDif
 
bool * m_continueProcessingFlagPtr
Pointer to variable pointing the variable to allow the process to continue.
 
boost::numeric::ublas::matrix< double > m_covarianceInversion
The inversion of covariance matrix between bands.
 
FillRegionsThreadEntryParams()
 
double getThreshold(const double acceptanceThreshold, const unsigned nBands) const
 
boost::numeric::ublas::matrix< double > m_getBhattacharyyaDistance_distanceTerm1
 
double getBhattacharyyaDistance(Pattern const *const p) const
Returns the Bhattacharyya distance between two patterns.
 
@ InvalidDistanceType
Invalid distance type.
 
boost::numeric::ublas::matrix< double > m_getBhattacharyyaDistance_covsMege
 
void reset()
Clear all internal allocated resources and reset the parameters instance to its initial state.
 
double m_getBhattacharyyaDistance_covsMegeDet
 
An access synchronizer to be used in SynchronizedRaster raster instances.
 
Classifier Strategy Parameters.
 
double m_getBhattacharyyaDistance_distanceValue
 
Pattern(const Pattern &rhs)
Copy constructor.
 
double getMahalanobisDistance(Pattern const *const p) const
Returns the Mahalanobis distance between two patterns.
 
ISOSeg strategy for OBIA classification. The algorithm orders regions by area (larger first),...
 
Raster classifier strategy base class.
 
Pattern & operator=(const Pattern &rhs)
 
ClassifierISOSegStrategy::Parameters m_parameters
Internal execution parameters.
 
Describes a region or a cluster (group of regions with similar properties) to be used by ISOSeg metho...
 
ClassifierISOSegStrategyFactory()
 
std::mutex * m_globalMutexPtr
Pointer to the mutex.
 
std::vector< te::gm::Polygon * > const  * m_inputPolygonsPtr
 
boost::numeric::ublas::matrix< double > m_getBhattacharyyaDistance_covsMegeInv
 
bool operator==(const Pattern &rhs) const
Return true if two clusters are equal.
 
int m_id
The id of the region of the pattern.
 
Base exception class for plugin module.
 
te::rst::RasterSynchronizer * m_inputRasterSyncPtr
Pointer to the input raster sync.
 
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
 
std::vector< unsigned int > const  * m_inputRasterBandsPtr
Pointer to the input raster bands do be processed.
 
const Parameters & operator=(const Parameters ¶ms)
 
DistanceType m_distanceType
Distance type.
 
bool m_enableProgress
Pointer to variable pointing the variable to enable or disable the thread internal progress interface...
 
static void fillRegionsThreadEntry(FillRegionsThreadEntryParams *paramsPtr)
Fill regions thread entry.
 
static void printMatrix(const boost::numeric::ublas::matrix< double > &matrix)
Print a matrix to std::out.
 
~ClassifierISOSegStrategyFactory()
 
Raster classifier strategy factory base class.
 
The parameters passed to the fill regions thread entry.
 
unsigned int m_getBhattacharyyaDistance_nBands
 
bool operator<(const Pattern &rhs) const
 
unsigned int * m_runningThreadsCounterPtr
Pointer to variable pointing the current number of running threads.
 
double m_area
The area of all regions inside a pattern.
 
std::condition_variable * m_condVarPtr
Pointer to the condition variable.
 
Proxy configuration file for TerraView (see terraview_config.h).
 
Raster classifier strategy base class.
 
std::multimap< double, Pattern > * m_outputRegionsPtr
Pointer to the output regions container.
 
bool m_isInitialized
True if this instance is initialized.
 
@ MahalanobisDistanceType
Mahalanobis Distance Type.
 
Pattern(int i, double a, std::vector< double > mv, boost::numeric::ublas::matrix< double > cm)
Constructor.
 
std::mutex * m_condVarMutexPtr
Pointer to the condition variable mutex.
 
te::rp::ClassifierStrategy * build()
Concrete factories (derived from this one) must implement this method in order to create objects.
 
std::size_t * m_nextInputPolIdx2ProcessPtr
Pointer to variable pointing the next polygon index to process.
 
unsigned int m_getBhattacharyyaDistance_bandIdx
 
Raster classifier strategy factory base class.
 
std::vector< double > m_meanVector
The vector of mean values, 1 value per band;.
 
Raster ISOSeg Classifier strategy factory.