25 #ifndef __TERRALIB_RP_INTERNAL_CONTRAST_H 
   26 #define __TERRALIB_RP_INTERNAL_CONTRAST_H 
   84               DecorrelationEnhancementT 
 
  172             AbstractParameters* clone() const;
 
  205             void reset() throw( te::rp::Exception );
 
  211             AbstractParameters* clone() const;
 
  219         bool execute( AlgorithmOutputParameters& outputParams ) throw( te::rp::Exception );
 
  222         void reset() throw( te::rp::Exception );
 
  227         bool isInitialized() const;
 
  234         typedef 
void (
Contrast::*RemapFuncPtrT)( const 
double& inValue, 
 
  240         bool m_isInitialized; 
 
  246         bool execLinearContrast();
 
  252         bool execHistogramEqualizationContrast();
 
  258         bool execSquareContrast();      
 
  264         bool execSquareRootContrast(); 
 
  270         bool execLogContrast();         
 
  276         bool execSetMeanAndStdContrast();
 
  282         bool execDecorrelationEnhancement();
 
  292         bool remapBandLevels( const te::rst::Band& inRasterBand,
 
  293           te::rst::Band& outRasterBand, RemapFuncPtrT remapFuncPtr,
 
  294           const 
bool enableProgress );
 
  297         double m_offSetGainRemap_offset1;
 
  298         double m_offSetGainRemap_offset2;
 
  299         double m_offSetGainRemap_gain;
 
  302         double m_squareRemap_factor;
 
  306         double m_squareRootRemap_gain;        
 
  309         double m_logRemap_gain;
 
  310         double m_logRemap_offset;                
 
  318         inline 
void offSetGainRemap( const 
double& inValue, 
double& outValue )
 
  320           outValue = ( ( inValue + m_offSetGainRemap_offset1 ) * m_offSetGainRemap_gain )
 
  321             + m_offSetGainRemap_offset2;
 
  330         inline void squareRemap( 
const double& inValue, 
double& outValue )
 
  332           outValue = m_squareRemap_factor * std::pow( inValue, 2.0 );
 
  343           outValue = m_squareRootRemap_gain * std::sqrt( inValue );
 
  352         inline void logRemap( 
const double& inValue, 
double& outValue )
 
  354           outValue = m_logRemap_gain * std::log10( inValue + m_logRemap_offset + 1.0 );
 
te::rst::Raster * m_outRasterPtr
A pointer to a valid initiated raster instance where the result must be written, leave NULL to create...
 
Base exception class for plugin module. 
 
void squareRemap(const double &inValue, double &outValue)
Remap on gray level using a square. 
 
void logRemap(const double &inValue, double &outValue)
Remap on gray level using a log. 
 
Raster Processing algorithm output parameters base interface. 
 
Raster Processing algorithm base interface class. 
 
void squareRootRemap(const double &inValue, double &outValue)
Remap on gray level using a square root. 
 
Raster Processing algorithm base interface. 
 
An abstract class for raster data strucutures. 
 
std::vector< unsigned int > m_outRasterBands
Bands to be processed from the output raster. 
 
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
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::string m_createdOutRasterDSType
Output raster data source type (as described in te::raster::RasterFactory ), leave empty if the resul...
 
Contrast output parameters. 
 
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.