25#ifndef __TERRALIB_RP_INTERNAL_GEOMOSAIC_H
26#define __TERRALIB_RP_INTERNAL_GEOMOSAIC_H
242 const std::vector< unsigned int >& inputRastersBands,
244 std::vector< double >& rasterMeans,
245 std::vector< double >& rasterStdDevs )
const;
267 const unsigned int inRasterIndex,
268 const std::vector< unsigned int >& inputRastersBands,
273 const unsigned int mosaicCenterRasterIdx,
275 std::vector< double >& rasterMeans,
276 std::vector< double >& rasterStdDevs,
277 std::vector< double >& offsets,
278 std::vector< double >& scales,
279 std::vector< double >& newRasterMeans,
280 std::vector< double >& newRasterStdDevs )
const;
293 const double& globalMosaicCenterX,
294 const double& globalMosaicCenterY,
297 bool& mextRasterWasFound,
298 unsigned int& mextRasterIndex );
310 const unsigned int inputRasterIdx,
311 std::unique_ptr< te::gm::Polygon >& vAreaPolygon,
312 std::unique_ptr< te::gm::MultiPolygon >& vAreaMultiPolygon );
Blended pixel value calculation for two overlaped rasters.
It interpolates one pixel based on a selected algorithm.
MultiPolygon is a MultiSurface whose elements are Polygons.
AbstractParameters()
Constructor.
MultiPolygon is a MultiSurface whose elements are Polygons.
Raster Processing algorithm output parameters base interface.
AlgorithmOutputParameters()
te::rp::blender::BlendMethod BlendMethod
Feeder from a input rasters.
std::string m_rType
Output raster data source type (as described in te::raster::RasterFactory ).
AbstractParameters * clone() const
Create a clone copy of this instance.
std::map< std::string, std::string > m_rInfo
The necessary information to create the output rasters (as described in te::raster::RasterFactory).
OutputParameters(const OutputParameters &)
std::unique_ptr< te::rst::Raster > m_outputRasterPtr
The generated output mosaic raster (A 1024x1024 blocked raster will be created if the choosen output ...
void reset() _NOEXCEPT_OP(false)
Clear all internal allocated resources and reset the parameters instance to its initial state.
std::unique_ptr< te::gm::Polygon > m_bBoxPolPtr
std::vector< double > m_bandsMeans
std::unique_ptr< te::gm::MultiPolygon > m_validDataAreaMultiPolPtr
ProcessedRasterInfosDataT()
std::vector< double > m_bandsStdDevs
std::unique_ptr< te::gm::Polygon > m_validDataAreaPolPtr
GeoMosaic::InputParameters m_inputParameters
Input execution parameters.
bool getRasterDataValidArea(const te::rst::Raster &inputRaster, const unsigned int inputRasterIdx, std::unique_ptr< te::gm::Polygon > &vAreaPolygon, std::unique_ptr< te::gm::MultiPolygon > &vAreaMultiPolygon)
Returns the given raster valid data area.
bool getEqualizationParams(const te::rst::Raster &inRaster, const unsigned int inRasterIndex, const std::vector< unsigned int > &inputRastersBands, ProcessedRastersInfosT &processedRastersInfos, const te::sam::rtree::Index< unsigned int > &blendedRastersInfosTree, te::gm::MultiPolygon const *const validAreaDelimiterPolPtr, const te::rst::Raster &mosaicRaster, const unsigned int mosaicCenterRasterIdx, te::gm::MultiPolygon const *const mosaicValidAreaDelimiterPolPtr, std::vector< double > &rasterMeans, std::vector< double > &rasterStdDevs, std::vector< double > &offsets, std::vector< double > &scales, std::vector< double > &newRasterMeans, std::vector< double > &newRasterStdDevs) const
Calcule of input raster equalization parameters.
bool getRasterStats(const te::rst::Raster &inRaster, const std::vector< unsigned int > &inputRastersBands, te::gm::MultiPolygon const *const validAreaDelimiterPolPtr, std::vector< double > &rasterMeans, std::vector< double > &rasterStdDevs) const
Calcule of raster statistics.
bool getNextRasterIndex2Process(const double &globalMosaicCenterX, const double &globalMosaicCenterY, ProcessedRastersInfosT &procRastersInfos, te::gm::MultiPolygon const *const mosaicValidAreasUnionPtr, bool &mextRasterWasFound, unsigned int &mextRasterIndex)
Find the index of the next raster to process.
bool execute(AlgorithmOutputParameters &outputParams) _NOEXCEPT_OP(false)
Executes the algorithm using the supplied parameters.
bool m_isInitialized
Tells if this instance is initialized.
bool initialize(const AlgorithmInputParameters &inputParams) _NOEXCEPT_OP(false)
Initialize the algorithm instance making it ready for execution.
std::vector< ProcessedRasterInfosDataT > ProcessedRastersInfosT
void reset() _NOEXCEPT_OP(false)
Clear all internal allocated objects and reset the algorithm to its initial state.
bool isInitialized() const
Returns true if the algorithm instance is initialized and ready for execution.
InterpolationMethod Method
Allowed interpolation methods.
An abstract class for raster data strucutures.
A class that represents an R-tree.
Namespace for Raster Processing module of TerraLib.
Raster Processing algorithm base interface class.
An implementation of R-tree data structure for main memory.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.