25 #ifndef __TERRALIB_RP_INTERNAL_FILTER_H
26 #define __TERRALIB_RP_INTERNAL_FILTER_H
29 #include "../raster/Raster.h"
32 #include <boost/numeric/ublas/io.hpp>
33 #include <boost/numeric/ublas/matrix.hpp>
70 UserDefinedWindowT = 8
87 boost::numeric::ublas::matrix<double>
m_window;
102 AbstractParameters* clone() const;
126 void reset() throw(
te::rp::Exception );
132 AbstractParameters* clone() const;
140 bool execute( AlgorithmOutputParameters& outputParams ) throw(
te::rp::Exception );
143 void reset() throw(
te::rp::Exception );
149 bool isInitialized() const;
162 typedef
bool (
Filter::*FilterMethodPointerT)( const
te::rst::Raster& srcRaster,
163 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
164 const
unsigned int dstBandIdx, const
bool useProgress );
166 bool m_isInitialized;
178 bool RobertsFilter( const
te::rst::Raster& srcRaster,
179 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
180 const
unsigned int dstBandIdx, const
bool useProgress );
190 bool SobelFilter( const
te::rst::Raster& srcRaster,
191 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
192 const
unsigned int dstBandIdx, const
bool useProgress );
202 bool MeanFilter( const
te::rst::Raster& srcRaster,
203 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
204 const
unsigned int dstBandIdx, const
bool useProgress );
214 bool ModeFilter( const
te::rst::Raster& srcRaster,
215 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
216 const
unsigned int dstBandIdx, const
bool useProgress );
226 bool MedianFilter( const
te::rst::Raster& srcRaster,
227 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
228 const
unsigned int dstBandIdx, const
bool useProgress );
238 bool DilationFilter( const
te::rst::Raster& srcRaster,
239 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
240 const
unsigned int dstBandIdx, const
bool useProgress );
250 bool ErosionFilter( const
te::rst::Raster& srcRaster,
251 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
252 const
unsigned int dstBandIdx, const
bool useProgress );
262 bool UserDefinedFilter( const
te::rst::Raster& srcRaster,
263 const
unsigned int srcBandIdx,
te::rst::Raster& dstRaster,
264 const
unsigned int dstBandIdx, const
bool useProgress );
270 static
bool OrderFunction(
double i,
double j);
Base exception class for plugin module.
Raster Processing algorithm output parameters base interface.
std::string m_rType
Output raster data source type (as described in te::raster::RasterFactory ).
Raster Processing algorithm base interface class.
std::map< std::string, std::string > m_rInfo
The necessary information to create the raster (as described in te::raster::RasterFactory).
Raster Processing algorithm base interface.
An abstract class for raster data strucutures.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
A series of well-known filtering algorithms for images, linear and non-linear..
std::auto_ptr< te::rst::Raster > m_outputRasterPtr
A pointer the ge generated output raster (label image).
Filter output parameters.