![]() |
OTB
9.1.1
Orfeo Toolbox
|
#include <otbSOM.h>
Inheritance diagram for otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >:
Collaboration diagram for otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >:Public Types | |
| typedef itk::SmartPointer< const Self > | ConstPointer |
| typedef MapType::IndexType | IndexType |
| typedef ListSampleType::Pointer | ListSamplePointerType |
| typedef TListSample | ListSampleType |
| typedef MapType::Pointer | MapPointerType |
| typedef TMap | MapType |
| typedef MapType::PixelType | NeuronType |
| typedef itk::SmartPointer< Self > | Pointer |
| typedef MapType::RegionType | RegionType |
| typedef SOM | Self |
| typedef MapType::SizeType | SizeType |
| typedef TSOMLearningBehaviorFunctor | SOMLearningBehaviorFunctorType |
| typedef TSOMNeighborhoodBehaviorFunctor | SOMNeighborhoodBehaviorFunctorType |
| typedef itk::ImageSource< TMap > | Superclass |
| typedef NeuronType::ValueType | ValueType |
Public Member Functions | |
| virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
| virtual const char * | GetNameOfClass () const |
Static Public Member Functions | |
| static Pointer | New () |
Static Public Attributes | |
| static const unsigned int | MapDimension = MapType::ImageDimension |
| SizeType | m_MapSize |
| unsigned int | m_NumberOfIterations |
| double | m_BetaInit |
| double | m_BetaEnd |
| SizeType | m_NeighborhoodSizeInit |
| ValueType | m_MinWeight |
| ValueType | m_MaxWeight |
| bool | m_RandomInit |
| unsigned int | m_Seed |
| ListSamplePointerType | m_ListSample |
| SOMLearningBehaviorFunctorType | m_BetaFunctor |
| SOMNeighborhoodBehaviorFunctorType | m_NeighborhoodSizeFunctor |
| virtual void | SetNumberOfIterations (unsigned int _arg) |
| virtual unsigned int | GetNumberOfIterations () |
| virtual void | SetBetaInit (double _arg) |
| virtual double | GetBetaInit () |
| virtual void | SetBetaEnd (double _arg) |
| virtual double | GetBetaEnd () |
| virtual void | SetMinWeight (ValueType _arg) |
| virtual ValueType | GetMinWeight () |
| virtual void | SetMaxWeight (ValueType _arg) |
| virtual ValueType | GetMaxWeight () |
| virtual void | SetMapSize (SizeType _arg) |
| virtual SizeType | GetMapSize () |
| virtual void | SetNeighborhoodSizeInit (SizeType _arg) |
| virtual SizeType | GetNeighborhoodSizeInit () |
| virtual void | SetRandomInit (bool _arg) |
| virtual bool | GetRandomInit () |
| virtual void | SetSeed (unsigned int _arg) |
| virtual unsigned int | GetSeed () |
| itkGetObjectMacro (ListSample, ListSampleType) | |
| virtual void | SetListSample (ListSampleType *_arg) |
| void | SetBetaFunctor (const SOMLearningBehaviorFunctorType &functor) |
| void | SetNeighborhoodSizeFunctor (const SOMNeighborhoodBehaviorFunctorType &functor) |
| SOM () | |
| ~SOM () override | |
| void | GenerateOutputInformation () override |
| void | AllocateOutputs () override |
| void | GenerateData (void) override |
| virtual void | UpdateMap (const NeuronType &sample, double beta, SizeType &radius) |
| virtual void | Step (unsigned int currentIteration) |
| void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
| SOM (const Self &)=delete | |
| void | operator= (const Self &)=delete |
This class is responsible for the learning of a self organizing map from a set of vector represented by the input image (each vector is a pixel of the image).
The learning process iteratively select the best-response neuron for each input vector, enhancing its response and the response of its neighbors with respect to a certain radius, computed from an initial radius, and to a certain learning factor, decreasing at each iteration.
The behavior of the neighborhood is given by a functor (templated) which parameter is the current iteration. It returns a neighborhood of type
.
The behavior of the learning factor (hold by a beta variable) is given by an other functor which parameter is the current iteration. It returns a beta value of type double.
The SOMMap produced as output can be either initialized with a constant custom value or randomly generated following a normal law. The seed for the random initialization can be modified.
| typedef itk::SmartPointer<const Self> otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::ConstPointer |
| typedef MapType::IndexType otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::IndexType |
| typedef ListSampleType::Pointer otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::ListSamplePointerType |
| typedef TListSample otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::ListSampleType |
| typedef MapType::Pointer otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::MapPointerType |
| typedef TMap otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::MapType |
| typedef MapType::PixelType otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::NeuronType |
| typedef itk::SmartPointer<Self> otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::Pointer |
| typedef MapType::RegionType otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::RegionType |
| typedef SOM otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::Self |
| typedef MapType::SizeType otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::SizeType |
| typedef TSOMLearningBehaviorFunctor otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::SOMLearningBehaviorFunctorType |
| typedef TSOMNeighborhoodBehaviorFunctor otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::SOMNeighborhoodBehaviorFunctorType |
| typedef itk::ImageSource<TMap> otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::Superclass |
| typedef NeuronType::ValueType otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::ValueType |
|
protected |
Constructor
Definition at line 38 of file otbSOM.hxx.
|
overrideprotected |
Destructor
Definition at line 58 of file otbSOM.hxx.
|
privatedelete |
Size of the neurons map
|
overrideprotected |
| virtual::itk::LightObject::Pointer otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::CreateAnother | ( | void | ) | const |
|
overrideprotected |
Main computation method
Definition at line 176 of file otbSOM.hxx.
|
overrideprotected |
Output information redefinition
Definition at line 144 of file otbSOM.hxx.
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Runtime information macro
Reimplemented in otb::PeriodicSOM< TListSample, TMap, Functor::CzihoSOMLearningBehaviorFunctor, Functor::CzihoSOMNeighborhoodBehaviorFunctor >.
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
| otb::SOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >::itkGetObjectMacro | ( | ListSample | , |
| ListSampleType | |||
| ) |
Size of the neurons map
|
static |
Creation through object factory macro
|
privatedelete |
Size of the neurons map
|
overrideprotected |
PrintSelf method
Definition at line 225 of file otbSOM.hxx.
|
virtual |
Size of the neurons map
|
inline |
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
inline |
|
virtual |
Size of the neurons map
|
virtual |
Accessors
|
virtual |
Size of the neurons map
|
virtual |
Size of the neurons map
|
protectedvirtual |
Step one iteration.
Reimplemented in otb::PeriodicSOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >, otb::PeriodicSOM< TListSample, TMap, Functor::CzihoSOMLearningBehaviorFunctor, Functor::CzihoSOMNeighborhoodBehaviorFunctor >, and otb::SOMWithMissingValue< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >.
Definition at line 125 of file otbSOM.hxx.
|
protectedvirtual |
Update the output map with a new sample.
| sample | The new sample to learn, |
| beta | The learning coefficient, |
| radius | The radius of the nieghbourhood. |
Reimplemented in otb::PeriodicSOM< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >, otb::PeriodicSOM< TListSample, TMap, Functor::CzihoSOMLearningBehaviorFunctor, Functor::CzihoSOMNeighborhoodBehaviorFunctor >, and otb::SOMWithMissingValue< TListSample, TMap, TSOMLearningBehaviorFunctor, TSOMNeighborhoodBehaviorFunctor >.
Definition at line 69 of file otbSOM.hxx.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
static |
1.8.17