Raster processing auxiliary functions. More...

Enumerations

enum  te::rp::WaveletAtrousFilterType { te::rp::InvalidWAFilter, te::rp::B3SplineWAFilter, te::rp::TriangleWAFilter }
 Wavelet Atrous Filter types. More...
 

Functions

TERPEXPORT bool te::rp::ComposeBands (te::rp::FeederConstRaster &feeder, const std::vector< unsigned int > &inputRasterBands, const te::rst::Interpolator::Method &interpMethod, const std::map< std::string, std::string > &outputRasterInfo, const std::string &outputDataSourceType, std::auto_ptr< te::rst::Raster > &outputRasterPtr)
 Compose a set of bands into one multi-band raster. More...
 
void TERPEXPORT te::rp::Convert2DoublesVector (void *inputVector, const int inputVectorDataType, unsigned int inputVectorSize, double *outputVector)
 Convert vector elements. More...
 
void TERPEXPORT te::rp::ConvertDoublesVector (double *inputVector, unsigned int inputVectorSize, const int outputVectorDataType, void *outputVector)
 Convert a doubles vector. More...
 
TERPEXPORT bool te::rp::ConvertIHS2RGB (const te::rst::Raster &inputIHSRaster, const unsigned int intensityBandIdx, const unsigned int hueBandIdx, const unsigned int saturationBandIdx, const double rgbRangeMin, const double rgbRangeMax, te::rst::Raster &outputRGBRaster)
 IHS to RGB conversion. More...
 
TERPEXPORT bool te::rp::ConvertRGB2IHS (const te::rst::Raster &inputRGBRaster, const unsigned int redBandIdx, const unsigned int greenBandIdx, const unsigned int blueBandIdx, const double rgbRangeMin, const double rgbRangeMax, te::rst::Raster &outputIHSRaster)
 RGB to IHS conversion. More...
 
bool TERPEXPORT te::rp::Copy2DiskRaster (const te::rst::Raster &inputRaster, const std::string &fileName)
 Create a new raster into a GDAL datasource. More...
 
bool TERPEXPORT te::rp::CreateNewGdalRaster (const te::rst::Grid &rasterGrid, std::vector< te::rst::BandProperty * > bandsProperties, const std::string &fileName, RasterHandler &outRasterHandler)
 Create a new raster into a GDAL datasource. More...
 
bool TERPEXPORT te::rp::CreateNewGdalRaster (const te::rst::Grid &rasterGrid, std::vector< te::rst::BandProperty * > bandsProperties, const std::string &fileName, std::auto_ptr< te::rst::Raster > &outRasterPtr)
 Create a new raster into a GDAL datasource. More...
 
bool TERPEXPORT te::rp::CreateNewMemRaster (const te::rst::Grid &rasterGrid, std::vector< te::rst::BandProperty * > bandsProperties, RasterHandler &outRasterHandler)
 Create a new raster into a new memory datasource. More...
 
bool TERPEXPORT te::rp::CreateNewRaster (const te::rst::Grid &rasterGrid, const std::vector< te::rst::BandProperty * > &bandsProperties, const std::string &outDataSetName, const std::string &dataSourceType, RasterHandler &outRasterHandler)
 Create a new raster into the givem data source. More...
 
bool TERPEXPORT te::rp::CreateNewRaster (const te::rst::Grid &rasterGrid, const std::vector< te::rst::BandProperty * > &bandsProperties, const std::string &outDataSetName, te::da::DataSource &outDataSource, RasterHandler &outRasterHandler)
 Create a new raster into the givem data source. More...
 
bool TERPEXPORT te::rp::CreateNewRaster (const te::rst::Grid &rasterGrid, const std::vector< te::rst::BandProperty * > &bandsProperties, const std::map< std::string, std::string > &rasterInfo, const std::string &rasterType, std::auto_ptr< te::rst::Raster > &outRasterPtr)
 Create a new raster into the givem data source. More...
 
template<typename MatrixElementT >
bool te::rp::CreateRasterFileFromMatrix (const te::rp::Matrix< MatrixElementT > &matrix, const bool normalize, const std::string &fileName)
 Create a tiff file from a matrix. More...
 
TERPEXPORT boost::numeric::ublas::matrix< double > te::rp::CreateWaveletAtrousFilter (const WaveletAtrousFilterType &filterType)
 Create a Wavele Atrous Filter. More...
 
TERPEXPORT bool te::rp::DecomposeBands (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::map< std::string, std::string > > &outputRastersInfos, const std::string &outputDataSourceType, std::vector< boost::shared_ptr< te::rst::Raster > > &outputRastersPtrs)
 Decompose a multi-band raster into a set of one-band rasters. More...
 
TERPEXPORT bool te::rp::DirectPrincipalComponents (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, boost::numeric::ublas::matrix< double > &pcaMatrix, te::rst::Raster &pcaRaster, const std::vector< unsigned int > &pcaRasterBands, const unsigned int maxThreads)
 Generate all principal components from the given input raster. More...
 
TERPEXPORT bool te::rp::DirectWaveletAtrous (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, te::rst::Raster &waveletRaster, const unsigned int levelsNumber, const boost::numeric::ublas::matrix< double > &filter)
 Generate all wavelet planes from the given input raster. More...
 
TERPEXPORT std::vector< std::string > te::rp::GetBandNames ()
 Returns a vector os with band's names. More...
 
TERPEXPORT bool te::rp::GetCovarianceValue (const te::rst::Band &band1, const te::rst::Band &band2, const unsigned int maxThreads, double const *const mean1ValuePtr, double const *const mean2ValuePtr, double &covarianceValue)
 Get the covariance of band pixel values. More...
 
void TERPEXPORT te::rp::GetDataTypeRange (const int dataType, double &min, double &max)
 Returns the real data type range (all values that can be represented by the given data type). More...
 
TERPEXPORT bool te::rp::GetDetailedExtent (const te::rst::Grid &grid, te::gm::LinearRing &detailedExtent)
 Create a datailed extent from the given grid. More...
 
TERPEXPORT std::pair< double, double > te::rp::GetDigitalNumberBandInfo (std::string bandName)
 Returns the maximun and minimum digital numbers of a given sensor/band. More...
 
TERPEXPORT double te::rp::GetDigitalNumberBandMax (std::string bandName)
 Returns the maximum digital number of a given sensor/band. More...
 
TERPEXPORT double te::rp::GetDigitalNumberBandMin (std::string bandName)
 Returns the minimum digital number of a given sensor/band. More...
 
TERPEXPORT bool te::rp::GetIndexedDetailedExtent (const te::rst::Grid &grid, te::gm::LinearRing &indexedDetailedExtent)
 Create a indexed (lines,columns) datailed extent from the given grid. More...
 
TERPEXPORT bool te::rp::GetMeanValue (const te::rst::Band &band, const unsigned int maxThreads, double &meanValue)
 Get the mean of band pixel values. More...
 
TERASTEREXPORT std::vector< te::gm::Point * > te::rst::GetRandomPointsInRaster (const te::rst::Raster &inputRaster, unsigned int numberOfPoints=1000)
 Creates a vector of random positions (points) inside the raster. More...
 
TERPEXPORT std::string te::rp::GetSensorFilename ()
 Returns a json filename with spectral sensors parameters. More...
 
TERPEXPORT std::map< std::string, SpectralSensorParams > te::rp::getSensorParams ()
 Returns a map with spectral sensors parameters defined in SpectralSensor.json file. More...
 
TERPEXPORT SpectralSensorParams te::rp::GetSpectralBandInfo (std::string bandName)
 Returns the maximun and minimum reflectance values of a given sensor/band. More...
 
TERPEXPORT double te::rp::GetSpectralBandMax (std::string bandName)
 Returns the maximum reflectance value of a given sensor/band. More...
 
TERPEXPORT double te::rp::GetSpectralBandMin (std::string bandName)
 Returns the minimum reflectance value of a given sensor/band. More...
 
TERPEXPORT bool te::rp::GetStdDevValue (const te::rst::Band &band, const unsigned int maxThreads, double const *const meanValuePtr, double &stdDevValue)
 Get the standard deviation of band pixel values. More...
 
TERPEXPORT bool te::rp::InversePrincipalComponents (const te::rst::Raster &pcaRaster, const boost::numeric::ublas::matrix< double > &pcaMatrix, te::rst::Raster &outputRaster, const std::vector< unsigned int > &outputRasterBands, const unsigned int maxThreads)
 Regenerate the original raster from its principal components. More...
 
TERPEXPORT bool te::rp::InverseWaveletAtrous (const te::rst::Raster &waveletRaster, const unsigned int levelsNumber, te::rst::Raster &outputRaster, const std::vector< unsigned int > &outputRasterBands)
 Regenerate the original raster from its wavelets planes. More...
 
TERPEXPORT bool te::rp::NormalizeRaster (te::rst::Raster &inputRaster, double nmin=0.0, double nmax=255.0)
 Normalizes one raster in a given interval. More...
 
TERPEXPORT bool te::rp::RasterSlicing (const te::rst::Raster &inputRaster, const unsigned int inputRasterBand, const bool createPaletteRaster, const unsigned int slicesNumber, const bool eqHistogram, const std::map< std::string, std::string > &rasterInfo, const std::string &rasterType, const bool enableProgress, std::vector< te::rst::BandProperty::ColorEntry > const *const palettePtr, std::auto_ptr< te::rst::Raster > &outRasterPtr)
 Generate all wavelet planes from the given input raster. More...
 
TERPEXPORT bool te::rp::RemapValues (const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const boost::numeric::ublas::matrix< double > &remapMatrix, te::rst::Raster &outputRaster, const std::vector< unsigned int > &outputRasterBands, const unsigned int maxThreads)
 Remap pixel values using a remap function matrix. More...
 
TERPEXPORT void te::rp::SaveSensorParams (std::map< std::string, SpectralSensorParams > &)
 Saves in SpectralSensor.json file the spectral sensors parameters. More...
 

Detailed Description

Raster processing auxiliary functions.

Enumeration Type Documentation

Wavelet Atrous Filter types.

Enumerator
InvalidWAFilter 

Invalid filter type.

B3SplineWAFilter 

Spline filter type.

TriangleWAFilter 

Triangle filter type.

Definition at line 73 of file Functions.h.

Function Documentation

TERPEXPORT bool te::rp::ComposeBands ( te::rp::FeederConstRaster feeder,
const std::vector< unsigned int > &  inputRasterBands,
const te::rst::Interpolator::Method interpMethod,
const std::map< std::string, std::string > &  outputRasterInfo,
const std::string &  outputDataSourceType,
std::auto_ptr< te::rst::Raster > &  outputRasterPtr 
)

Compose a set of bands into one multi-band raster.

Parameters
feederInput rasters feeder.
inputRasterBandsInput raster bands (one band for each input raster).
interpMethodThe interpolator method to use.
outputRasterInfoOutput raster connection info.
outputDataSourceTypeOutput raster datasource type.
outputRasterPtrA pointer to the generated output raster.
Returns
true if OK, false on errors.
Note
The first raster Grid will be taken as reference for the composed raster.

Referenced by te::rp::CreateRasterFileFromMatrix().

void TERPEXPORT te::rp::Convert2DoublesVector ( void *  inputVector,
const int  inputVectorDataType,
unsigned int  inputVectorSize,
double *  outputVector 
)

Convert vector elements.

Parameters
inputVectorInput vector.
inputVectorDataTypeInput vector data type.
inputVectorSizeThe numer of input vector elements.
outputVectorA pré-allocated output vector.
Note
The types are listed in terralib/datatype/DataTypes.h

Referenced by te::rp::GetDataTypeRange().

void TERPEXPORT te::rp::ConvertDoublesVector ( double *  inputVector,
unsigned int  inputVectorSize,
const int  outputVectorDataType,
void *  outputVector 
)

Convert a doubles vector.

Parameters
inputVectorInput vector.
inputVectorSizeThe numer of input vector elements.
inputVectorDataTypeInput vector data type.
outputVectorA pré-allocated output vector.
Note
The types are listed in terralib/datatype/DataTypes.h

Referenced by te::rp::GetDataTypeRange().

TERPEXPORT bool te::rp::ConvertIHS2RGB ( const te::rst::Raster inputIHSRaster,
const unsigned int  intensityBandIdx,
const unsigned int  hueBandIdx,
const unsigned int  saturationBandIdx,
const double  rgbRangeMin,
const double  rgbRangeMax,
te::rst::Raster outputRGBRaster 
)

IHS to RGB conversion.

Parameters
inputIHSRasterThe input raster.
intensityBandIdxThe intensity band index.
hueBandIdxThe hue band index.
saturationBandIdxThe saturation band index.
rgbRangeMinThe minimum RGB value.
rgbRangeMaxThe maximum RGB value.
outputRGBRasterAn output pré-initiated raster (with the same dimensions of inputIHSRaster) where the RGB data will be written.
Returns
true if OK, false on errors.
Note
IHS data with the following channels ranges: I:[0,1] H:[0,2pi] (radians) S:[0,1].

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::ConvertRGB2IHS ( const te::rst::Raster inputRGBRaster,
const unsigned int  redBandIdx,
const unsigned int  greenBandIdx,
const unsigned int  blueBandIdx,
const double  rgbRangeMin,
const double  rgbRangeMax,
te::rst::Raster outputIHSRaster 
)

RGB to IHS conversion.

Parameters
inputRGBRasterThe input raster.
redBandIdxThe red band index.
greenBandIdxThe red band index.
blueBandIdxThe red band index.
rgbRangeMinThe minimum RGB value.
rgbRangeMaxThe maximum RGB value.
outputIHSRasterAn output pré-initiated raster (with the same dimensions of inputRGBRaster) where the IHS data will be written (double or float as the data type).
Returns
true if OK, false on errors.
Note
The outputIHSRaster mas have a float or double data type.
IHS data with the following channels ranges: I:[0,1] H:[0,2pi] (radians) S:[0,1].

Referenced by te::rp::CreateRasterFileFromMatrix().

bool TERPEXPORT te::rp::Copy2DiskRaster ( const te::rst::Raster inputRaster,
const std::string &  fileName 
)

Create a new raster into a GDAL datasource.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
fileNameThe output tif file name.
outRasterHandlerThe created raster handler.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewGdalRaster ( const te::rst::Grid rasterGrid,
std::vector< te::rst::BandProperty * >  bandsProperties,
const std::string &  fileName,
RasterHandler outRasterHandler 
)

Create a new raster into a GDAL datasource.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
fileNameThe output tif file name.
outRasterHandlerThe created raster handler.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewGdalRaster ( const te::rst::Grid rasterGrid,
std::vector< te::rst::BandProperty * >  bandsProperties,
const std::string &  fileName,
std::auto_ptr< te::rst::Raster > &  outRasterPtr 
)

Create a new raster into a GDAL datasource.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
fileNameThe output tif file name.
outRasterPtrThe created raster pointer.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewMemRaster ( const te::rst::Grid rasterGrid,
std::vector< te::rst::BandProperty * >  bandsProperties,
RasterHandler outRasterHandler 
)

Create a new raster into a new memory datasource.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
outRasterHandlerThe created raster handler.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewRaster ( const te::rst::Grid rasterGrid,
const std::vector< te::rst::BandProperty * > &  bandsProperties,
const std::string &  outDataSetName,
const std::string &  dataSourceType,
RasterHandler outRasterHandler 
)

Create a new raster into the givem data source.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
outDataSetNameThe data set name to give to the created data set.
dataSourceTypeThe data source type string (i.e. GDAL, MEM.)( See te::rst::RasterFactory dictionary for valid registered values ).
outRasterHandlerThe created raster handler.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewRaster ( const te::rst::Grid rasterGrid,
const std::vector< te::rst::BandProperty * > &  bandsProperties,
const std::string &  outDataSetName,
te::da::DataSource outDataSource,
RasterHandler outRasterHandler 
)

Create a new raster into the givem data source.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
outDataSetNameThe data set name to give to the created data set.
outDataSourceThe data source to use when creating the output data set.
outRasterHandlerThe created raster handler.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
bool TERPEXPORT te::rp::CreateNewRaster ( const te::rst::Grid rasterGrid,
const std::vector< te::rst::BandProperty * > &  bandsProperties,
const std::map< std::string, std::string > &  rasterInfo,
const std::string &  rasterType,
std::auto_ptr< te::rst::Raster > &  outRasterPtr 
)

Create a new raster into the givem data source.

Parameters
rasterGridThe template grid used to create the output raster.
bandsPropertiesThe template band properties used to create the output raster.
rasterInfoThe output raster info (specific driver info).
rasterTypeThe output raster type (specific driver name - See te::rst::RasterFactory dictorary for more info).
outRasterPtrThe created raster pointer.
Returns
true if OK, false on errors.
Note
All bandsProperties pointed objects will be acquired by this function and must not be deleted.
TERPEXPORT boost::numeric::ublas::matrix< double > te::rp::CreateWaveletAtrousFilter ( const WaveletAtrousFilterType filterType)

Create a Wavele Atrous Filter.

Parameters
filterTypeThe filter type.
Returns
the created filter.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::DecomposeBands ( const te::rst::Raster inputRaster,
const std::vector< unsigned int > &  inputRasterBands,
const std::vector< std::map< std::string, std::string > > &  outputRastersInfos,
const std::string &  outputDataSourceType,
std::vector< boost::shared_ptr< te::rst::Raster > > &  outputRastersPtrs 
)

Decompose a multi-band raster into a set of one-band rasters.

Parameters
inputRasterInput raster.
inputRasterBandsInput raster bands.
outputRastersInfosOutput rasters connections infos. (one info for each decomposed band).
outputDataSourceTypeOutput raster datasource type.
outputRastersPtrsPointers to the generated outputs rasters.
Returns
true if OK, false on errors.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::DirectPrincipalComponents ( const te::rst::Raster inputRaster,
const std::vector< unsigned int > &  inputRasterBands,
boost::numeric::ublas::matrix< double > &  pcaMatrix,
te::rst::Raster pcaRaster,
const std::vector< unsigned int > &  pcaRasterBands,
const unsigned int  maxThreads 
)

Generate all principal components from the given input raster.

Parameters
inputRasterInput raster.
inputRasterBandsInput raster bands.
pcaMatrixThe matrix generated over the principal components process.
pcaRasterThe pré-initiated output PCA raster (with the same dimensions of inputRaster) and double as the data type.
pcaRasterBandsOutput raster bands.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::DirectWaveletAtrous ( const te::rst::Raster inputRaster,
const std::vector< unsigned int > &  inputRasterBands,
te::rst::Raster waveletRaster,
const unsigned int  levelsNumber,
const boost::numeric::ublas::matrix< double > &  filter 
)

Generate all wavelet planes from the given input raster.

Parameters
inputRasterInput raster.
inputRasterBandsInput raster bands.
waveletRasterThe pré-initiated output wavelet raster (with the same dimensions of inputRaster) and double as the data type.
levelsNumberThe number of decomposed wavelet levels to generate for each input raster band;
filterThe square filter to use.
Returns
true if OK, false on errors.
Note
The band order of the generated wavelet levels: { [ band0-smoothed0, band0-wavelet0, ... , band0-smoothedN, band0-waveletN ], ... }
The number of bands of waveletRaster must be ( inputRasterBands.size() * 2 * levelsNumber ) at least.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT std::vector<std::string> te::rp::GetBandNames ( )

Returns a vector os with band's names.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::GetCovarianceValue ( const te::rst::Band band1,
const te::rst::Band band2,
const unsigned int  maxThreads,
double const *const  mean1ValuePtr,
double const *const  mean2ValuePtr,
double &  covarianceValue 
)

Get the covariance of band pixel values.

Parameters
band1The input band 1.
band2The input band 2.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
mean1ValuePtrA pointer to a pre-calculated band1 mean value or zero if it does not exist.
mean2ValuePtrA pointer to a pre-calculated band2 mean value or zero if it does not exist.
covarianceValueThe calculated covariance value.
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

void TERPEXPORT te::rp::GetDataTypeRange ( const int  dataType,
double &  min,
double &  max 
)
inline

Returns the real data type range (all values that can be represented by the given data type).

Parameters
dataTypeThe data type.
minThe minimum value.
maxThe maximum value.
Note
The types are listed in terralib/datatype/DataTypes.h

Definition at line 215 of file Functions.h.

References te::rp::Convert2DoublesVector(), te::rp::ConvertDoublesVector(), te::rst::GetDataTypeRanges(), and TERPEXPORT.

TERPEXPORT bool te::rp::GetDetailedExtent ( const te::rst::Grid grid,
te::gm::LinearRing detailedExtent 
)

Create a datailed extent from the given grid.

Parameters
gridInput grid.
detailedExtentThe created detailed extent.
Returns
true if ok, false on errors.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT std::pair<double, double> te::rp::GetDigitalNumberBandInfo ( std::string  bandName)

Returns the maximun and minimum digital numbers of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT double te::rp::GetDigitalNumberBandMax ( std::string  bandName)

Returns the maximum digital number of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT double te::rp::GetDigitalNumberBandMin ( std::string  bandName)

Returns the minimum digital number of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::GetIndexedDetailedExtent ( const te::rst::Grid grid,
te::gm::LinearRing indexedDetailedExtent 
)

Create a indexed (lines,columns) datailed extent from the given grid.

Parameters
gridInput grid.
indexedDetailedExtentThe created detailed extent.
Returns
true if ok, false on errors.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::GetMeanValue ( const te::rst::Band band,
const unsigned int  maxThreads,
double &  meanValue 
)

Get the mean of band pixel values.

Parameters
bandThe input raster band.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
meanValueThe calculated mean value.
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERASTEREXPORT std::vector<te::gm::Point*> te::rst::GetRandomPointsInRaster ( const te::rst::Raster inputRaster,
unsigned int  numberOfPoints = 1000 
)

Creates a vector of random positions (points) inside the raster.

Parameters
inputRasterThe given raster.
numberOfPointsThe number of random positions to be created (default = 1000).
Returns
A vector of random positions (points).

Referenced by te::rst::Round().

TERPEXPORT std::string te::rp::GetSensorFilename ( )

Returns a json filename with spectral sensors parameters.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT std::map<std::string, SpectralSensorParams > te::rp::getSensorParams ( )

Returns a map with spectral sensors parameters defined in SpectralSensor.json file.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT SpectralSensorParams te::rp::GetSpectralBandInfo ( std::string  bandName)

Returns the maximun and minimum reflectance values of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT double te::rp::GetSpectralBandMax ( std::string  bandName)

Returns the maximum reflectance value of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT double te::rp::GetSpectralBandMin ( std::string  bandName)

Returns the minimum reflectance value of a given sensor/band.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::GetStdDevValue ( const te::rst::Band band,
const unsigned int  maxThreads,
double const *const  meanValuePtr,
double &  stdDevValue 
)

Get the standard deviation of band pixel values.

Parameters
bandThe input raster band.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
meanValuePtrA pointer to a pre-calculated band mean value or zero if it does not exist.
stdDevValueThe calculated standard deviation value.
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::InversePrincipalComponents ( const te::rst::Raster pcaRaster,
const boost::numeric::ublas::matrix< double > &  pcaMatrix,
te::rst::Raster outputRaster,
const std::vector< unsigned int > &  outputRasterBands,
const unsigned int  maxThreads 
)

Regenerate the original raster from its principal components.

Parameters
pcaRasterThe principal components raster (with the same dimensions of outputRaster).
pcaMatrixThe matrix generated by the direct principal components process.
outputRasterThe regenerated output raster (with the same dimentions.
outputRasterBandsOutput raster bands.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::InverseWaveletAtrous ( const te::rst::Raster waveletRaster,
const unsigned int  levelsNumber,
te::rst::Raster outputRaster,
const std::vector< unsigned int > &  outputRasterBands 
)

Regenerate the original raster from its wavelets planes.

Parameters
waveletRasterThe input wavelet raster (with the same dimensions of outputRaster).
levelsNumberThe number of decomposed wavelet levels present inside the wavelet raster.
outputRasterThe regenerated output raster.
outputRasterBandsOutput raster bands.
Returns
true if OK, false on errors.
Note
The band order of the expected wavelet levels: { [ band0-smoothed0, band0-wavelet0, ... , band0-smoothedN, band0-waveletN ], ... }
The number of bands of waveletRaster must be ( outputRasterBands.size() * 2 * levelsNumber ) at least.
Only the wavelet bands and the last smoothed band are used.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::NormalizeRaster ( te::rst::Raster inputRaster,
double  nmin = 0.0,
double  nmax = 255.0 
)

Normalizes one raster in a given interval.

Parameters
inputRasterThe given raster.
nminThe new minimum value (default = 0.0).
nmaxThe new maximum value (default = 255.0).
Returns
true if normalization occurs and false otherwise.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT bool te::rp::RasterSlicing ( const te::rst::Raster inputRaster,
const unsigned int  inputRasterBand,
const bool  createPaletteRaster,
const unsigned int  slicesNumber,
const bool  eqHistogram,
const std::map< std::string, std::string > &  rasterInfo,
const std::string &  rasterType,
const bool  enableProgress,
std::vector< te::rst::BandProperty::ColorEntry > const *const  palettePtr,
std::auto_ptr< te::rst::Raster > &  outRasterPtr 
)

Generate all wavelet planes from the given input raster.

Parameters
inputRasterInput raster.
inputRasterBandInput raster band.
createPaletteRasterIf true a paletted raster will be created instead of a multi-band raster..
slicesNumberThe number of historgram slices to create;
eqHistogramIf true, the input raster will historgram will be equalized before the slicing process.
rasterInfoThe output raster info (specific driver info).
rasterTypeThe output raster type (specific driver name - See te::rst::RasterFactory dictorary for more info).
enableProgressEnable/disable the progress interface.
palettePtrA pointer to an optional user given palette (if null, an fixed step pallete will be generated).
outRasterPtrThe output sliced raster pointer.
Returns
true if OK, false on errors.

Referenced by te::rp::GetTPConvexHullArea().

TERPEXPORT bool te::rp::RemapValues ( const te::rst::Raster inputRaster,
const std::vector< unsigned int > &  inputRasterBands,
const boost::numeric::ublas::matrix< double > &  remapMatrix,
te::rst::Raster outputRaster,
const std::vector< unsigned int > &  outputRasterBands,
const unsigned int  maxThreads 
)

Remap pixel values using a remap function matrix.

Parameters
inputRasterInput raster.
inputRasterBandsInput raster bands.
remapMatrixThe remap function matrix.
outputRasterThe pré-initiated output raster (with the same dimentions of inputRaster).
outputRasterBandsOutput raster bands.
maxThreadsThe maximum number of threads to use (0-auto, 1-single thread used).
Returns
true if OK, false on errors.
Note
Optimized for rasters where the used bands have the same blocking scheme.

Referenced by te::rp::CreateRasterFileFromMatrix().

TERPEXPORT void te::rp::SaveSensorParams ( std::map< std::string, SpectralSensorParams > &  )

Saves in SpectralSensor.json file the spectral sensors parameters.

Referenced by te::rp::CreateRasterFileFromMatrix().