Fusion of a low-resolution multi-band image with a high resolution image using the IHS method. More...
#include <IHSFusion.h>
Classes | |
class | InputParameters |
IHSFusion input parameters. More... | |
class | OutputParameters |
IHSFusion 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... | |
IHSFusion () | |
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... | |
void | reset () throw ( te::rp::Exception ) |
Clear all internal allocated objects and reset the algorithm to its initial state. More... | |
~IHSFusion () | |
Protected Member Functions | |
bool | getRGBRange (double &rgbMin, double &rgbMax) const |
Get the minimum and maximum values from the RGB input image. More... | |
bool | getStatistics (const te::rp::Matrix< float > &matrix, float &mean, float &variance) const |
Get statistics from the given matrix. More... | |
bool | loadIHSData (const double &rgbMin, const double rgbMax, te::rp::Matrix< float > &intensityData, te::rp::Matrix< float > &hueData, te::rp::Matrix< float > &saturationData) const |
Load resampled IHS data from the input image. More... | |
bool | saveIHSData (const double &rgbMin, const double rgbMax, const te::rp::Matrix< float > &intensityData, const te::rp::Matrix< float > &hueData, const te::rp::Matrix< float > &saturationData, const std::string &rType, const std::map< std::string, std::string > &rInfo, std::unique_ptr< te::rst::Raster > &outputRasterPtr) const |
Save resampled IHS data as RGB data to the output image. More... | |
void | setErrorMessage (const std::string &newErrorMessage) |
Set the current error message. More... | |
bool | swapIntensity (te::rp::Matrix< float > &intensityData) |
Swap the intensity data by the high resolution image data. More... | |
Protected Attributes | |
InputParameters | m_inputParameters |
Input execution parameters. More... | |
bool | m_isInitialized |
Tells if this instance is initialized. More... | |
Fusion of a low-resolution multi-band image with a high resolution image using the IHS method.
The IHS is one of the widespread image fusion methods in the remote sensing community and has been employed as a standard procedure in many commercial packages; IHS is the intrinsic method when the intensity channel is replaced by the high-resolution Pan image.
Definition at line 56 of file IHSFusion.h.
te::rp::IHSFusion::IHSFusion | ( | ) |
te::rp::IHSFusion::~IHSFusion | ( | ) |
|
virtual |
Executes the algorithm using the supplied parameters.
outputParams | Output parameters. |
Implements te::rp::Algorithm.
|
inherited |
Return the current error message if there is any.
|
protected |
Get the minimum and maximum values from the RGB input image.
rgbMin | RGB minimum value. |
rgbMax | RGB maximum value. |
|
protected |
Get statistics from the given matrix.
matrix | Input matrix. |
mean | Mean value. |
variance | Variance value. |
|
virtual |
Initialize the algorithm instance making it ready for execution.
inputParams | Input parameters. |
Implements te::rp::Algorithm.
|
virtual |
Returns true if the algorithm instance is initialized and ready for execution.
Implements te::rp::Algorithm.
|
protected |
Load resampled IHS data from the input image.
rgbMin | RGB minimum value. |
rgbMax | RGB maximum value. |
intensityData | Intensity channel data. |
hueData | Hue channel data. |
saturationData | Saturation channel data. |
|
virtual |
Clear all internal allocated objects and reset the algorithm to its initial state.
Reimplemented from te::rp::Algorithm.
|
protected |
Save resampled IHS data as RGB data to the output image.
rgbMin | RGB minimum value. |
rgbMax | RGB maximum value. |
intensityData | Intensity channel data. |
hueData | Hue channel data. |
saturationData | Saturation channel data. |
|
protectedinherited |
Set the current error message.
newErrorMessage | New error message; |
|
protected |
Swap the intensity data by the high resolution image data.
intensityData | Intensity channel data. |
|
protected |
Input execution parameters.
Definition at line 152 of file IHSFusion.h.
|
protected |
Tells if this instance is initialized.
Definition at line 154 of file IHSFusion.h.