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.