25 #ifndef __TERRALIB_RP_INTERNAL_CONTRAST_H
26 #define __TERRALIB_RP_INTERNAL_CONTRAST_H
73 HistogramEqualizationContrastT = 2,
74 SetMeanAndStdContrastT = 3,
100 void reset() throw( te::rp::Exception );
106 AbstractParameters* clone() const;
139 void reset() throw( te::rp::Exception );
145 AbstractParameters* clone() const;
153 bool execute( AlgorithmOutputParameters& outputParams ) throw( te::rp::Exception );
156 void reset() throw( te::rp::Exception );
161 bool isInitialized() const;
168 typedef
void (
Contrast::*RemapFuncPtrT)( const
double& inValue,
174 bool m_isInitialized;
180 bool execLinearContrast();
186 bool execHistogramEqualizationContrast();
192 bool execSetMeanAndStdContrast();
202 bool remapBandLevels( const te::rst::Band& inRasterBand,
203 te::rst::Band& outRasterBand, RemapFuncPtrT remapFuncPtr,
204 const
bool enableProgress );
207 double m_offSetGainRemap_offset;
208 double m_offSetGainRemap_gain;
217 inline
void offSetGainRemap( const
double& inValue,
double& outValue )
219 outValue = ( inValue + m_offSetGainRemap_offset ) * m_offSetGainRemap_gain;
std::vector< unsigned int > m_outRasterBands
Bands to be processed from the output raster.
te::rst::Raster * m_outRasterPtr
A pointer to a valid initiated raster instance where the result must be written, leave NULL to create...
Raster Processing algorithm base interface class.
Contrast output parameters.
std::vector< unsigned int > m_inRasterBands
Bands to be processed from the input raster.
std::vector< double > m_lCMaxInput
The contrast maximum input greyscale value of each band.
std::map< std::string, std::string > m_createdOutRasterInfo
The necessary information to create the raster (as described in te::raster::RasterFactory), leave empty if the result must be written to the raster pointed m_outRasterPtr.
Raster Processing algorithm base interface.
std::string m_createdOutRasterDSType
Output raster data source type (as described in te::raster::RasterFactory ), leave empty if the resul...
te::rst::Raster const * m_inRasterPtr
Input raster.
std::vector< double > m_lCMinInput
The contrast minimum input greyscale value of each band.
ContrastType m_type
The contrast type to be applied.
bool m_enableProgress
Enable/Disable the progress interface (default:false).
Contrast input parameters.
std::auto_ptr< te::rst::Raster > m_createdOutRasterPtr
A pointer to the created output raster instance, or an empty pointer empty if the result must be writ...
std::vector< double > m_hECMaxInput
The contrast maximum input greyscale value of each band.
Raster Processing algorithm output parameters base interface.
An abstract class for raster data strucutures.
std::vector< double > m_sMASCMeanInput
The mean greyscale to be applied in each band.
std::vector< double > m_sMASCStdInput
The standard deviation to be applied in each band.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
Raster Processing algorithm input parameters base interface.