te::rp::PCAFusion Class Reference

Fusion of a low-resolution multi-band image with a high resolution image using the PCA (Principal components analysis) method. More...

#include <PCAFusion.h>

Inheritance diagram for te::rp::PCAFusion:
te::rp::Algorithm

Classes

class  InputParameters
 PCAFusion input parameters. More...
 
class  OutputParameters
 PCAFusion output parameters. More...
 

Public Member Functions

bool execute (AlgorithmOutputParameters &outputParams) throw ( te::rp::Exception )
 Executes the algorithm using the supplied parameters. More...
 
bool initialize (const AlgorithmInputParameters &inputParams) throw ( te::rp::Exception )
 Initialize the algorithm instance making it ready for execution. More...
 
bool isInitialized () const
 Returns true if the algorithm instance is initialized and ready for execution. More...
 
 PCAFusion ()
 
void reset () throw ( te::rp::Exception )
 Clear all internal allocated objects and reset the algorithm to its initial state. More...
 
 ~PCAFusion ()
 

Protected Member Functions

bool loadRessampledRaster (std::auto_ptr< te::rst::Raster > &ressampledRasterPtr) const
 Load resampled data from the input image. More...
 
bool swapBandByHighResRaster (te::rst::Raster &pcaRaster, const unsigned int pcaRasterBandIdx)
 Swap the band values by the normalized high resolution raster data. More...
 

Protected Attributes

InputParameters m_inputParameters
 Input execution parameters. More...
 
bool m_isInitialized
 Tells if this instance is initialized. More...
 

Detailed Description

Fusion of a low-resolution multi-band image with a high resolution image using the PCA (Principal components analysis) method.

The PCA performs image fusion where the first principal component of the multi-spectral image is replaced by the histogram matched panchromatic imagery.

Note
Reference: Tania Stathaki, "Image Fusion: Algorithms and Applications", Elsevier, First edition 2008.
This algorithm expects both images to be aligned over the same geographic region. No reprojection or crop operations are performed.

Definition at line 50 of file PCAFusion.h.

Constructor & Destructor Documentation

te::rp::PCAFusion::PCAFusion ( )
te::rp::PCAFusion::~PCAFusion ( )

Member Function Documentation

bool te::rp::PCAFusion::execute ( AlgorithmOutputParameters outputParams)
throw (te::rp::Exception
)
virtual

Executes the algorithm using the supplied parameters.

Parameters
outputParamsOutput parameters.
Returns
true if OK, false on errors.

Implements te::rp::Algorithm.

bool te::rp::PCAFusion::initialize ( const AlgorithmInputParameters inputParams)
throw (te::rp::Exception
)
virtual

Initialize the algorithm instance making it ready for execution.

Parameters
inputParamsInput parameters.
Returns
true if OK, false on errors.
Note
A return error string can be obtained via te::rp::Module::getLastLogStr()

Implements te::rp::Algorithm.

bool te::rp::PCAFusion::isInitialized ( ) const
virtual

Returns true if the algorithm instance is initialized and ready for execution.

Returns
true if the algorithm instance is initialized and ready for execution.

Implements te::rp::Algorithm.

bool te::rp::PCAFusion::loadRessampledRaster ( std::auto_ptr< te::rst::Raster > &  ressampledRasterPtr) const
protected

Load resampled data from the input image.

Parameters
ressampledRasterPtrThe loaded and ressampled raster data.
Returns
true if ok, false on errors.
void te::rp::PCAFusion::reset ( )
throw (te::rp::Exception
)
virtual

Clear all internal allocated objects and reset the algorithm to its initial state.

Implements te::rp::Algorithm.

bool te::rp::PCAFusion::swapBandByHighResRaster ( te::rst::Raster pcaRaster,
const unsigned int  pcaRasterBandIdx 
)
protected

Swap the band values by the normalized high resolution raster data.

Parameters
pcaRasterThe PCA raster.
pcaRasterBandIdxThe band index where the values will be swapped.
Returns
true if ok, false on errors.

Member Data Documentation

InputParameters te::rp::PCAFusion::m_inputParameters
protected

Input execution parameters.

Definition at line 140 of file PCAFusion.h.

bool te::rp::PCAFusion::m_isInitialized
protected

Tells if this instance is initialized.

Definition at line 142 of file PCAFusion.h.


The documentation for this class was generated from the following file: