26 #ifndef __TERRALIB_RP_INTERNAL_RASTERATTRIBUTES_H
27 #define __TERRALIB_RP_INTERNAL_RASTERATTRIBUTES_H
30 #include "../statistics/core/NumericStatisticalSummary.h"
31 #include "../statistics/core/NumericStatisticalComplexSummary.h"
38 #include <boost/numeric/ublas/io.hpp>
39 #include <boost/numeric/ublas/matrix.hpp>
96 std::vector<std::complex<
double> > getComplexValuesFromBand(const
te::rst::Raster& raster,
unsigned int band, const
te::gm::Polygon& polygon);
109 std::vector<
double> getValuesFromBand(const
te::rst::Raster& raster,
unsigned int band, const
te::gm::Polygon& polygon);
121 void getValuesFromBand(const
te::rst::Raster& raster,
unsigned int band, const
te::gm::Polygon& polygon, std::map<
double,
int>& values);
134 std::vector<std::vector<std::complex<
double> > > getComplexValuesFromRaster(const
te::rst::Raster& raster, const
te::gm::Polygon& polygon, std::vector<
unsigned int> bands,
unsigned int rowstep = 1,
unsigned int colstep = 1);
147 std::vector<std::vector<
double> > getValuesFromRaster(const
te::rst::Raster& raster, const
te::gm::Polygon& polygon, std::vector<
unsigned int> bands,
unsigned int rowstep = 1,
unsigned int colstep = 1);
156 te::stat::NumericStatisticalSummary getStatistics(std::vector<
double>& pixels);
168 void getStatisticsFromPolygon(const
te::rst::Raster& raster,
unsigned int band, const
te::gm::Polygon& polygon,
te::stat::NumericStatisticalSummary &summary,
double noDataValue = 0.0);
177 te::stat::NumericStatisticalComplexSummary getComplexStatistics(std::vector <std::complex <
double> >& pixels);
189 boost::numeric::ublas::matrix<
double> getCovarianceMatrix(const std::vector<std::vector<
double> >& vpixels, const std::vector<
double>& vmeans);
201 boost::numeric::ublas::matrix<std::complex <
double> > getComplexCovarianceMatrix(const std::vector<std::vector<std::complex <
double> > >& vpixels, const std::vector<std::complex <
double > >& vmeans);
224 boost::numeric::ublas::matrix<
double> getGLCM(const
te::rst::Raster& rin,
unsigned int band,
int dx,
int dy,
225 double minPixel,
double maxPixel,
unsigned int gLevels = 256);
247 boost::numeric::ublas::matrix<
double> getGLCM(const
te::rst::Raster& rin,
unsigned int band,
int dx,
int dy,
248 const
te::gm::Polygon& polygon,
double minPixel,
double maxPixel,
unsigned int gLevels = 256);
260 te::rp::
Texture getGLCMMetrics(
boost::numeric::ublas::matrix<
double> glcm,
double noDataValue = 0.0);
263 bool m_enableTaskProgress;
A structure to hold the set of GLCM metrics.
Raster Processing algorithm output parameters base interface.
Raster Processing algorithm base interface.
Extraction of attributes from Raster, Bands, and Polygons.
bool execute(AlgorithmOutputParameters &outputParams) _NOEXCEPT_OP(false)
Executes the algorithm using the supplied parameters.
RasterAttributes(bool enableTaskProgress=true)
Public constructor.
bool initialize(const AlgorithmInputParameters &inputParams) _NOEXCEPT_OP(false)
Initialize the algorithm instance making it ready for execution.
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.
A structure to hold the set of GLCM metrics.
#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).
An exception class for the XML module.