Loading...
Searching...
No Matches
MultiSourceClassifier.h
Go to the documentation of this file.
1/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3 This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5 TerraLib is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 TerraLib is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with TerraLib. See COPYING. If not, write to
17 TerraLib Team at <terralib-team@terralib.org>.
18 */
19
20/*!
21 \file terralib/rp/radar/MultiSourceCLassifier.h
22 \brief Performs multi source image classification.
23 */
24
25#ifndef __TERRALIB_RP_RADAR_INTERNAL_MULTISOURCECLASSIFIER_H
26#define __TERRALIB_RP_RADAR_INTERNAL_MULTISOURCECLASSIFIER_H
27
28#include "../Config.h"
31
32//#include <terralib/raster.h>
33#include "../Algorithm.h"
34
35#include <boost/numeric/ublas/matrix.hpp>
36
37#include <vector>
38#include <map>
39
40namespace te
41{
42 namespace rp
43 {
44 namespace radar
45 {
46 typedef std::complex< double > WishartFeatureType;
47 /*!
48 \class MultiSourceClassifier
49 \brief Performs multi source image classification.
50 \details Reference: B. C. Braga, C. d. C. Freitas and S. J. S. Sant'Anna, "Multisource classification based on uncertainty maps," 2015 IEEE International Geoscience and Remote Sensing Symposium (IGARSS), Milan, Italy, 2015, pp. 1630-1633, doi: 10.1109/IGARSS.2015.7326097.
51 */
53 public:
54
57
59
61
62 // overload
64
65 // overload
66 void reset();
67
68 // overload
70
71 bool isInitialized() const;
72
73 // bool loadSamples(te::rp::radar::MultiSourceClassifier::InputParameters::ClassSampleT,
74 // te::rp::radar::MultiSourceClassifier::InputParameters::ClassSamplesContainerT);
75
76 protected:
78
80
81 bool m_isInitialized; //!< Tells if this instance is initialized.
82
83 std::vector< std::vector< double > > m_stochasticDistance; //!< Stochastic distances container.
84
85 std::vector< std::vector< double > > m_statisticalTest; //!< Statistical tests container.
86
87 std::vector< std::vector< double > > m_pValue; //!< P-values container.
88
89 std::vector< unsigned int > m_degreesOfFreedom; //!< Degrees of freedom container.
90
91 std::map< unsigned int, std::vector< std::vector< double > > > m_imagesMaps;
92
93 std::map< unsigned int, std::vector< std::vector< double > > > m_distancesMaps;
94 };
95 } // end namespace radar
96 } // end namespace rp
97} // end namespace msc
98
99#endif
Raster Processing algorithm input parameters base interface.
Raster Processing algorithm output parameters base interface.
Raster Processing algorithm base interface.
Definition: Algorithm.h:42
Performs multi source image classification.
std::map< unsigned int, std::vector< std::vector< double > > > m_imagesMaps
bool initialize(const te::rp::AlgorithmInputParameters &inputParams)
Initialize the algorithm instance making it ready for execution.
std::vector< unsigned int > m_degreesOfFreedom
Degrees of freedom container.
MultiSourceClassifierInputParameters InputParameters
std::vector< std::vector< double > > m_statisticalTest
Statistical tests container.
void reset()
Clear all internal allocated objects and reset the algorithm to its initial state.
std::vector< std::vector< double > > m_pValue
P-values container.
MultiSourceClassifier::InputParameters m_inputParameters
Input execution parameters.
MultiSourceClassifier::OutputParameters m_outputParameters
Output execution parameters.
MultiSourceClassifierOutputParameters OutputParameters
std::vector< std::vector< double > > m_stochasticDistance
Stochastic distances container.
std::map< unsigned int, std::vector< std::vector< double > > > m_distancesMaps
bool isInitialized() const
Returns true if the algorithm instance is initialized and ready for execution.
bool execute(te::rp::AlgorithmOutputParameters &outputParams)
Executes the algorithm using the supplied parameters.
bool m_isInitialized
Tells if this instance is initialized.
std::complex< double > WishartFeatureType
TerraLib.
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:139