25 #ifndef __TERRALIB_RP_INTERNAL_SEGMENTERREGIONGROWINGMEANSTRATEGY_H
26 #define __TERRALIB_RP_INTERNAL_SEGMENTERREGIONGROWINGMEANSTRATEGY_H
74 AbstractParameters*
clone()
const;
99 const std::vector< unsigned int >& inputRasterBands,
100 const std::vector< std::complex< double > >& inputRasterNoDataValues,
101 const std::vector< std::complex< double > >& inputRasterBandMinValues,
102 const std::vector< std::complex< double > >& inputRasterBandMaxValues,
104 const unsigned int outputRasterBand,
105 const bool enableProgressInterface ) ;
109 const unsigned int pixelsNumber )
const;
158 const std::vector< unsigned int >& inputRasterBands,
159 const std::vector< std::complex< double > >& inputRasterNoDataValues,
160 const std::vector< std::complex< double > >& inputRasterBandMinValues,
161 const std::vector< std::complex< double > >& inputRasterBandMaxValues,
Segmenter merger used in region growing process.
Raster segmenter strategy factory base class.
Raster segmenter strategy base class.
Segmenter segments IDs manager.
Raster region growing segmenter strategy factory.
~SegmenterRegionGrowingMeanStrategyFactory()
te::rp::SegmenterStrategy * build()
Concrete factories (derived from this one) must implement this method in order to create objects.
SegmenterRegionGrowingMeanStrategyFactory()
bool serialize(AlgorithmParametersSerializer &serializer) const
Returns a parameter serialization object.
void reset()
Clear all internal allocated resources and reset the parameters instance to its initial state.
AbstractParameters * clone() const
Create a clone copy of this instance.
bool initialize(SegmenterStrategyParameters const *const strategyParams)
const Parameters & operator=(const Parameters ¶ms)
Raster region growing segmenter strategy.
double getMemUsageEstimation(const unsigned int bandsToProcess, const unsigned int pixelsNumber) const
Returns a memory estimation (bytes).
SegmenterRegionGrowingSegmentsPool< rg::MeanFeatureType > m_segmentsPool
A pool of segments that can be reused on each strategy execution.
BlocksMergingMethod getBlocksMergingMethod() const
Return the strategy blocks merging method.
SegmentsIdsMatrixT m_segmentsIdsMatrix
A internal segments IDs matrix that can be reused on each strategy execution.
Matrix< SegmenterSegmentsBlock::SegmentIdDataType > SegmentsIdsMatrixT
Internal segments ids matrix type definition.
bool execute(SegmenterIdsManager &segmenterIdsManager, const te::rp::SegmenterSegmentsBlock &block2ProcessInfo, const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::complex< double > > &inputRasterNoDataValues, const std::vector< std::complex< double > > &inputRasterBandMinValues, const std::vector< std::complex< double > > &inputRasterBandMaxValues, te::rst::Raster &outputRaster, const unsigned int outputRasterBand, const bool enableProgressInterface)
Executes the segmentation strategy over region delimited by the given block.
~SegmenterRegionGrowingMeanStrategy()
unsigned int getOptimalBlocksOverlapSize() const
Returns a optimal blocks overlap size (number of border pixels overlapped between blocks,...
void reset()
Clear all internal allocated resources and go back to the initial not-initialized state.
bool shouldComputeMinMaxValues() const
Returns if the min and max pixel values should be computed.
bool initializeSegments(SegmenterIdsManager &segmenterIdsManager, const te::rp::SegmenterSegmentsBlock &block2ProcessInfo, const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::complex< double > > &inputRasterNoDataValues, const std::vector< std::complex< double > > &inputRasterBandMinValues, const std::vector< std::complex< double > > &inputRasterBandMaxValues, SegmenterRegionGrowingSegment< rg::MeanFeatureType > **actSegsListHeadPtr)
Initialize the segment objects container and the segment IDs container.
bool m_isInitialized
true if this instance is initialized.
SegmenterRegionGrowingMeanStrategy::Parameters m_parameters
Internal execution parameters.
bool initialize(SegmenterStrategyParameters const *const strategyParams)
Initialize the segmentation strategy.
SegmenterRegionGrowingMeanStrategy()
Segmenter Region Growing Strategy Parameters.
Segmenter segments block description class.
Raster segmenter strategy factory base class.
Segmenter Strategy Parameters.
Raster segmenter strategy base class.
BlocksMergingMethod
Blocks merging method.
An abstract class for raster data strucutures.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).