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...
 
const std::string & getErrorMessage () const
 Return the current error message if there is any. 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::unique_ptr< te::rst::Raster > &ressampledRasterPtr) const
 Load resampled data from the input image. More...
 
void setErrorMessage (const std::string &newErrorMessage)
 Set the current error message. 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 ( )

Definition at line 132 of file PCAFusion.cpp.

References te::rp::PCAFusion::InputParameters::reset(), and ~PCAFusion().

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

Referenced by PCAFusion().

Member Function Documentation

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.

Definition at line 336 of file PCAFusion.cpp.

References m_isInitialized.

void te::rp::PCAFusion::reset ( )
throw (te::rp::Exception
)
virtual

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

Reimplemented from te::rp::Algorithm.

Definition at line 280 of file PCAFusion.cpp.

References m_inputParameters, m_isInitialized, te::rp::Algorithm::reset(), and te::rp::PCAFusion::InputParameters::reset().

void te::rp::Algorithm::setErrorMessage ( const std::string &  newErrorMessage)
protectedinherited

Set the current error message.

Parameters
newErrorMessageNew error message;

Definition at line 49 of file rp/Algorithm.cpp.

References te::rp::Algorithm::m_errorMessage.

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

Member Data Documentation

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

Input execution parameters.

Definition at line 140 of file PCAFusion.h.

Referenced by execute(), initialize(), loadRessampledRaster(), reset(), and swapBandByHighResRaster().

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

Tells if this instance is initialized.

Definition at line 142 of file PCAFusion.h.

Referenced by execute(), initialize(), isInitialized(), and reset().


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