ISOSeg strategy for OBIA classification. The algorithm orders regions by area (larger first), and classify the largest region as Cluster 1. All regions similar to this cluster are inserted in Cluster 1, otherwise new Clusters are created. After all regions belong to a cluster, the algorithm merges similar clusters. The acceptance threshold is the only parameter given by the user, and it indicates the maximum distance between two regions to be clustered togheter. More...
#include <ClassifierISOSegStrategy.h>
Classes | |
class | Parameters |
Classifier Parameters. More... | |
class | Pattern |
Describes a region or a cluster (group of regions with similar properties) to be used by ISOSeg method. More... | |
Public Member Functions | |
ClassifierISOSegStrategy () | |
bool | execute (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< te::gm::Polygon * > &inputPolygons, te::rst::Raster &outputRaster, const unsigned int outputRasterBand, const bool enableProgressInterface) throw (te::rp::Exception) |
Executes the classification strategy. More... | |
bool | initialize (StrategyParameters const *const strategyParams) throw (te::rp::Exception) |
Initialize the classification strategy. More... | |
~ClassifierISOSegStrategy () | |
Protected Attributes | |
bool | m_isInitialized |
True if this instance is initialized. More... | |
ClassifierISOSegStrategy::Parameters | m_parameters |
Internal execution parameters. More... | |
std::multimap< double, Pattern *, std::greater< double > > | m_regions |
A descriptive set of regions (area, features). More... | |
ISOSeg strategy for OBIA classification. The algorithm orders regions by area (larger first), and classify the largest region as Cluster 1. All regions similar to this cluster are inserted in Cluster 1, otherwise new Clusters are created. After all regions belong to a cluster, the algorithm merges similar clusters. The acceptance threshold is the only parameter given by the user, and it indicates the maximum distance between two regions to be clustered togheter.
Definition at line 54 of file ClassifierISOSegStrategy.h.
te::rp::ClassifierISOSegStrategy::ClassifierISOSegStrategy | ( | ) |
Definition at line 194 of file ClassifierISOSegStrategy.cpp.
References m_isInitialized.
te::rp::ClassifierISOSegStrategy::~ClassifierISOSegStrategy | ( | ) |
Definition at line 199 of file ClassifierISOSegStrategy.cpp.
|
virtual |
Executes the classification strategy.
inputRaster | Input raster. |
inputRasterBands | Input raster bands. |
inputPolygons | The polygons to be classified when using object-based image analysis (OBIA). |
outputRaster | Output raster. |
outputRasterBand | Output raster band. |
enableProgressInterface | Enable the internal strategy to update the progress interface. |
Implements te::rp::ClassifierStrategy.
Definition at line 259 of file ClassifierISOSegStrategy.cpp.
References te::rst::PolygonIterator< T >::begin(), te::rst::PolygonIterator< T >::end(), te::gm::CurvePolygon::getArea(), te::rst::PolygonIterator< T >::getColumn(), te::rst::PolygonIterator< T >::getRow(), getThreshold(), te::rp::ClassifierISOSegStrategy::Parameters::m_acceptanceThreshold, te::rp::ClassifierISOSegStrategy::Pattern::m_area, m_isInitialized, te::stat::NumericStatisticalSummary::m_mean, te::rp::ClassifierISOSegStrategy::Pattern::m_myCluster, m_parameters, m_regions, te::xsd::Pattern, te::common::TaskProgress::pulse(), TE_TR, TERP_TRUE_OR_RETURN_FALSE, and te::common::TaskProgress::UNDEFINED.
|
virtual |
Initialize the classification strategy.
strategyParams | A pointer to the user given specific classification strategy parameters ou NULL if no parameters are present. |
Implements te::rp::ClassifierStrategy.
Definition at line 203 of file ClassifierISOSegStrategy.cpp.
References te::rp::ClassifierISOSegStrategy::Parameters::m_acceptanceThreshold, m_isInitialized, m_parameters, and TERP_TRUE_OR_RETURN_FALSE.
|
protected |
True if this instance is initialized.
Definition at line 150 of file ClassifierISOSegStrategy.h.
Referenced by ClassifierISOSegStrategy(), execute(), and initialize().
|
protected |
Internal execution parameters.
Definition at line 151 of file ClassifierISOSegStrategy.h.
Referenced by execute(), and initialize().
|
protected |
A descriptive set of regions (area, features).
Definition at line 152 of file ClassifierISOSegStrategy.h.
Referenced by execute().