OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
otb::SOMMap< TNeuron, TDistance, VMapDimension > Class Template Reference

#include <otbSOMMap.h>

+ Inheritance diagram for otb::SOMMap< TNeuron, TDistance, VMapDimension >:
+ Collaboration diagram for otb::SOMMap< TNeuron, TDistance, VMapDimension >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::DirectionType DirectionType
 
typedef DistanceType::Pointer DistancePointerType
 
typedef TDistance DistanceType
 
typedef Superclass::IndexType IndexType
 
typedef TNeuron NeuronType
 
typedef itk::SmartPointer< SelfPointer
 
typedef Superclass::PointType PointType
 
typedef Superclass::RegionType RegionType
 
typedef SOMMap Self
 
typedef Superclass::SizeType SizeType
 
typedef Superclass::SpacingType SpacingType
 
typedef otb::VectorImage< typename TNeuron::ComponentType, VMapDimension > Superclass
 
- Public Types inherited from otb::VectorImage< itk::VariableLengthVector< double > ::ComponentType, 2 >
typedef itk::DefaultVectorPixelAccessorFunctor< SelfAccessorFunctorType
 
using ConstPointer = itk::SmartPointer< const Self >
 
using ConstWeakPointer = itk::WeakPointer< const Self >
 
typedef Superclass::DirectionType DirectionType
 
typedef Superclass::IndexType IndexType
 
typedef Superclass::InternalPixelType InternalPixelType
 
typedef Superclass::IOPixelType IOPixelType
 
typedef itk::VectorImageNeighborhoodAccessorFunctor< SelfNeighborhoodAccessorFunctorType
 
typedef Superclass::OffsetType OffsetType
 
typedef Superclass::PixelContainer PixelContainer
 
typedef Superclass::PixelType PixelType
 
using Pointer = itk::SmartPointer< Self >
 
typedef Superclass::PointType PointType
 
typedef Superclass::RegionType RegionType
 
using Self = VectorImage
 
typedef Superclass::SizeType SizeType
 
typedef Superclass::SpacingType SpacingType
 
using Superclass = itk::VectorImage< itk::VariableLengthVector< double > ::ComponentType, VImageDimension >
 
typedef Superclass::ValueType ValueType
 
using VectorType = ImageMetadataInterfaceBase::VectorType
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
IndexType GetWinner (const NeuronType &sample)
 
- Public Member Functions inherited from otb::VectorImage< itk::VariableLengthVector< double > ::ComponentType, 2 >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual VectorType GetGeoTransform (void) const
 
virtual const char * GetNameOfClass () const
 
VectorType GetUpperLeftCorner (void) const
 
VectorType GetUpperRightCorner (void) const
 
VectorType GetLowerLeftCorner (void) const
 
VectorType GetLowerRightCorner (void) const
 
SpacingType GetSignedSpacing () const
 
virtual void SetSignedSpacing (SpacingType spacing)
 
virtual void SetSignedSpacing (double spacing[VImageDimension])
 
virtual void SetNumberOfComponentsPerPixel (unsigned int n) override
 
void CopyInformation (const itk::DataObject *) override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
NeighborhoodAccessorFunctorType GetNeighborhoodAccessor ()
 
const NeighborhoodAccessorFunctorType GetNeighborhoodAccessor () const
 
- Public Member Functions inherited from otb::ImageCommons
double GetGCPCol (unsigned int GCPnum) const
 
unsigned int GetGCPCount (void) const
 
std::string GetGCPId (unsigned int GCPnum) const
 
std::string GetGCPInfo (unsigned int GCPnum) const
 
std::string GetGCPProjection (void) const
 
double GetGCPRow (unsigned int GCPnum) const
 
const GCPGetGCPs (unsigned int GCPnum) const
 
double GetGCPX (unsigned int GCPnum) const
 
double GetGCPY (unsigned int GCPnum) const
 
double GetGCPZ (unsigned int GCPnum) const
 
ImageMetadataGetImageMetadata ()
 
const ImageMetadataGetImageMetadata () const
 
std::string GetProjectionRef (void) const
 
bool HasSensorGeometry () const
 
void SetBandImageMetadata (ImageMetadata::ImageMetadataBandsType imd)
 
void SetImageMetadata (ImageMetadata imd)
 
void SetProjectionRef (const std::string &wkt)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::VectorImage< itk::VariableLengthVector< double > ::ComponentType, 2 >
static Pointer New ()
 

Protected Member Functions

void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
 SOMMap ()
 
 ~SOMMap () override
 
- Protected Member Functions inherited from otb::VectorImage< itk::VariableLengthVector< double > ::ComponentType, 2 >
 VectorImage ()
 
 ~VectorImage () override
 

Private Member Functions

void operator= (const Self &)=delete
 
 SOMMap (const Self &)=delete
 

Additional Inherited Members

- Public Attributes inherited from otb::ImageCommons
ImageMetadata m_Imd
 
- Static Public Attributes inherited from otb::VectorImage< itk::VariableLengthVector< double > ::ComponentType, 2 >
static const unsigned int ImageDimension
 

Detailed Description

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
class otb::SOMMap< TNeuron, TDistance, VMapDimension >

This class represent a Self Organizing Map.

The Self organizing map (or Kohonen map) is a type of neural networks. It is based on an analogy with the visual cortex, where similar inputs activate neighbor neurons.

This class extends the Image object, where each pixel represents a neuron in the map. It is templated with a distance parameter used to compute the neuron response to an input. Thanks to the extension of the Image object, reading and writing is supported through standard image readers and writers.

The training is done via the SOM class, and the activation map can be produced with the SOMActivationBuilder class.

See also
SOM
SOMActivationBuilder

Definition at line 53 of file otbSOMMap.h.

Member Typedef Documentation

◆ ConstPointer

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef itk::SmartPointer<const Self> otb::SOMMap< TNeuron, TDistance, VMapDimension >::ConstPointer

Definition at line 61 of file otbSOMMap.h.

◆ DirectionType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::DirectionType otb::SOMMap< TNeuron, TDistance, VMapDimension >::DirectionType

Definition at line 80 of file otbSOMMap.h.

◆ DistancePointerType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef DistanceType::Pointer otb::SOMMap< TNeuron, TDistance, VMapDimension >::DistancePointerType

Definition at line 75 of file otbSOMMap.h.

◆ DistanceType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef TDistance otb::SOMMap< TNeuron, TDistance, VMapDimension >::DistanceType

Definition at line 74 of file otbSOMMap.h.

◆ IndexType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::IndexType otb::SOMMap< TNeuron, TDistance, VMapDimension >::IndexType

Superclass related typedefs

Definition at line 78 of file otbSOMMap.h.

◆ NeuronType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef TNeuron otb::SOMMap< TNeuron, TDistance, VMapDimension >::NeuronType

There is no runtime information macro since this class has to be considered to as a simple VectorImage // itkTypeMacro(SOMMap, VectorImage); Template parameters related typedefs

Definition at line 64 of file otbSOMMap.h.

◆ Pointer

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef itk::SmartPointer<Self> otb::SOMMap< TNeuron, TDistance, VMapDimension >::Pointer

Definition at line 60 of file otbSOMMap.h.

◆ PointType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::PointType otb::SOMMap< TNeuron, TDistance, VMapDimension >::PointType

Definition at line 83 of file otbSOMMap.h.

◆ RegionType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::RegionType otb::SOMMap< TNeuron, TDistance, VMapDimension >::RegionType

Definition at line 81 of file otbSOMMap.h.

◆ Self

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef SOMMap otb::SOMMap< TNeuron, TDistance, VMapDimension >::Self

Standard typedefs

Definition at line 58 of file otbSOMMap.h.

◆ SizeType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::SizeType otb::SOMMap< TNeuron, TDistance, VMapDimension >::SizeType

Definition at line 79 of file otbSOMMap.h.

◆ SpacingType

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef Superclass::SpacingType otb::SOMMap< TNeuron, TDistance, VMapDimension >::SpacingType

Definition at line 82 of file otbSOMMap.h.

◆ Superclass

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
typedef otb::VectorImage<typename TNeuron::ComponentType, VMapDimension> otb::SOMMap< TNeuron, TDistance, VMapDimension >::Superclass

Definition at line 59 of file otbSOMMap.h.

Constructor & Destructor Documentation

◆ SOMMap() [1/2]

template<class TNeuron , class TDistance , unsigned int VMapDimension>
otb::SOMMap< TNeuron, TDistance, VMapDimension >::SOMMap
protected

Constructor

Definition at line 34 of file otbSOMMap.hxx.

◆ ~SOMMap()

template<class TNeuron , class TDistance , unsigned int VMapDimension>
otb::SOMMap< TNeuron, TDistance, VMapDimension >::~SOMMap
overrideprotected

Destructor

Definition at line 42 of file otbSOMMap.hxx.

◆ SOMMap() [2/2]

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
otb::SOMMap< TNeuron, TDistance, VMapDimension >::SOMMap ( const Self )
privatedelete

Member Function Documentation

◆ CreateAnother()

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
virtual::itk::LightObject::Pointer otb::SOMMap< TNeuron, TDistance, VMapDimension >::CreateAnother ( void  ) const

◆ GetWinner()

template<class TNeuron , class TDistance , unsigned int VMapDimension>
SOMMap< TNeuron, TDistance, VMapDimension >::IndexType otb::SOMMap< TNeuron, TDistance, VMapDimension >::GetWinner ( const NeuronType sample)

Get The index of the winning neuron for a sample.

Parameters
samplethe sample.
Returns
The index of the winning neuron.

Get The index of the winning neuron for a sample.

Parameters
sampleThe sample
Returns
The index of the winning neuron.

Definition at line 52 of file otbSOMMap.hxx.

◆ New()

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
static Pointer otb::SOMMap< TNeuron, TDistance, VMapDimension >::New ( )
static

Creation through object factory macro

◆ operator=()

template<class TNeuron = itk::VariableLengthVector<double>, class TDistance = itk::Statistics::EuclideanDistanceMetric<TNeuron>, unsigned int VMapDimension = 2>
void otb::SOMMap< TNeuron, TDistance, VMapDimension >::operator= ( const Self )
privatedelete

◆ PrintSelf()

template<class TNeuron , class TDistance , unsigned int VMapDimension>
void otb::SOMMap< TNeuron, TDistance, VMapDimension >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

PrintSelf method

Definition at line 83 of file otbSOMMap.hxx.


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