TerraLib 4.1
TePDIHants Class Reference

This is the class for Harmonic Analysis of NDVI Time-Series (HANTS). Given the input raster with NDVI values (nb = time-series size), it computes its corresponding smoothed NDVI values in the output raster. Note: The original program was developed in IDL-ENVI by Allard de Wit (http://www.ittvis.com/language/en-US/UserCommunity/CodeLibrary/id/1166.aspx) and modified by Julio Cesar D. M. Esquerdo (julio@cnptia.embrapa.br). Requirements: FFTW library for fast Fourier transform. More...

#include <TePDIHants.hpp>

Inheritance diagram for TePDIHants:
TePDIAlgorithm

List of all members.

Public Member Functions

 TePDIHants ()
 ~TePDIHants ()
bool CheckParameters (const TePDIParameters &parameters) const

Protected Member Functions

void ResetState (const TePDIParameters &params)
bool RunImplementation ()

Detailed Description

This is the class for Harmonic Analysis of NDVI Time-Series (HANTS). Given the input raster with NDVI values (nb = time-series size), it computes its corresponding smoothed NDVI values in the output raster. Note: The original program was developed in IDL-ENVI by Allard de Wit (http://www.ittvis.com/language/en-US/UserCommunity/CodeLibrary/id/1166.aspx) and modified by Julio Cesar D. M. Esquerdo (julio@cnptia.embrapa.br). Requirements: FFTW library for fast Fourier transform.

Author:
Alexandre Noma <alex.noma@gmail.com>
Emiliano F. Castejon <castejon@dpi.inpe.br>
Note:
The general required parameters:
Parameters:
input_raster( TePDITypes::TePDIRasterPtrType ) - The input data with NDVI values, where the number of bands corresponds to the time-series size.
output_raster( TePDITypes::TePDIRasterPtrType ) - The output data with the smoothed NDVI values.
mask_raster( TePDITypes::TePDIRasterPtrType ) - Mask for the input data. 0: do not perform algorithm on the current pixel.
freqs(int[]) - 1D array with frequences that should be selected from the fourier spectrum. i.e. freqs[]={0,1,2,3} to use the fourier compoments 0 (mean), 1 (1 sine wave), 2 (2 sine waves) and 3.
nfreqs(int) - number of selected frequencies.
range(double[]) - Array of size 2 to specify the minimum and maximum valid data values, i.e. range[]={1000,10000}.
FET(double) - Fit Error Tolerance, is maximum tolerable downward deviation between fourier fit and NDVI data values (in DN values).
TAT(int) - Throw-Away-Threshold, maximum number of points that may be thrown away by the FFT fitting.
iMAX(int) - maximum number of iterations to be performed.
Examples:

TePDIHants_test.cpp.


Constructor & Destructor Documentation

TePDIHants::TePDIHants ( )

Default Constructor.

TePDIHants::~TePDIHants ( )

Default Destructor


Member Function Documentation

bool TePDIHants::CheckParameters ( const TePDIParameters parameters) const [virtual]

Checks if the supplied parameters fits the requirements of each PDI algorithm implementation.

Error log messages must be generated. No exceptions generated.

Parameters:
parametersThe parameters to be checked.
Returns:
true if the parameters are OK. false if not.

Implements TePDIAlgorithm.

void TePDIHants::ResetState ( const TePDIParameters params) [protected, virtual]

Reset the internal state to the initial state.

Parameters:
paramsThe new parameters referente at initial state.

Implements TePDIAlgorithm.

bool TePDIHants::RunImplementation ( ) [protected, virtual]

Runs the current algorithm implementation.

Returns:
true if OK. false on error.

Implements TePDIAlgorithm.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines