OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | List of all members
otb::MRFSamplerRandom< TInput1, TInput2 > Class Template Reference

#include <otbMRFSamplerRandom.h>

+ Inheritance diagram for otb::MRFSamplerRandom< TInput1, TInput2 >:
+ Collaboration diagram for otb::MRFSamplerRandom< TInput1, TInput2 >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef Superclass::EnergyFidelityPointer EnergyFidelityPointer
 
typedef Superclass::EnergyFidelityType EnergyFidelityType
 
typedef Superclass::EnergyRegularizationPointer EnergyRegularizationPointer
 
typedef Superclass::EnergyRegularizationType EnergyRegularizationType
 
typedef Superclass::InputImageNeighborhoodIterator InputImageNeighborhoodIterator
 
typedef Superclass::InputImagePixelType InputImagePixelType
 
typedef Superclass::LabelledImageNeighborhoodIterator LabelledImageNeighborhoodIterator
 
typedef Superclass::LabelledImagePixelType LabelledImagePixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::Statistics::MersenneTwisterRandomVariateGenerator RandomGeneratorType
 
typedef MRFSamplerRandom Self
 
typedef otb::MRFSampler< TInput1, TInput2 > Superclass
 
- Public Types inherited from otb::MRFSampler< TInput1, TInput2 >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef EnergyFidelityType::Pointer EnergyFidelityPointer
 
typedef MRFEnergy< TInput1, TInput2 > EnergyFidelityType
 
typedef EnergyRegularizationType::Pointer EnergyRegularizationPointer
 
typedef MRFEnergy< TInput2, TInput2 > EnergyRegularizationType
 
typedef itk::ConstNeighborhoodIterator< TInput1 > InputImageNeighborhoodIterator
 
typedef TInput1::PixelType InputImagePixelType
 
typedef itk::NeighborhoodIterator< TInput2 > LabelledImageNeighborhoodIterator
 
typedef TInput2::PixelType LabelledImagePixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef MRFSampler Self
 
typedef itk::Object Superclass
 

Public Member Functions

int Compute (const InputImageNeighborhoodIterator &itData, const LabelledImageNeighborhoodIterator &itRegul) override
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from otb::MRFSampler< TInput1, TInput2 >
virtual double GetDeltaEnergy ()
 
virtual double GetEnergyAfter () const
 
virtual double GetEnergyBefore () const
 
virtual double GetLambda ()
 
virtual unsigned int GetNumberOfClasses ()
 
virtual LabelledImagePixelType GetValue ()
 
virtual void SetEnergyFidelity (EnergyFidelityType *_arg)
 
virtual void SetEnergyRegularization (EnergyRegularizationType *_arg)
 
virtual void SetLambda (double _arg)
 
virtual void SetNumberOfClasses (unsigned int _arg)
 

Static Public Member Functions

static Pointer New ()
 
RandomGeneratorType::Pointer m_Generator
 
void InitializeSeed (int seed)
 
void InitializeSeed ()
 
 MRFSamplerRandom ()
 
 ~MRFSamplerRandom () override
 

Additional Inherited Members

- Protected Member Functions inherited from otb::MRFSampler< TInput1, TInput2 >
 MRFSampler ()
 
 ~MRFSampler () override
 
- Protected Attributes inherited from otb::MRFSampler< TInput1, TInput2 >
double m_DeltaEnergy
 
double m_EnergyAfter
 
double m_EnergyBefore
 
double m_EnergyCurrent
 
EnergyFidelityPointer m_EnergyFidelity
 
EnergyRegularizationPointer m_EnergyRegularization
 
double m_Lambda
 
unsigned int m_NumberOfClasses
 
LabelledImagePixelType m_Value
 
LabelledImagePixelType m_ValueCurrent
 

Detailed Description

template<class TInput1, class TInput2>
class otb::MRFSamplerRandom< TInput1, TInput2 >

This is the base class for sampler methods used in the MRF framework.

This is one sampler to be used int he MRF framework. This sampler select the value randomly according to a uniform probability.

This class is meant to be used in the MRF framework with the otb::MarkovRandomFieldFilter

Examples
Markov/MarkovClassification1Example.cxx, Markov/MarkovRegularizationExample.cxx, and Markov/MarkovRestorationExample.cxx.

Definition at line 46 of file otbMRFSamplerRandom.h.

Member Typedef Documentation

◆ ConstPointer

template<class TInput1 , class TInput2 >
typedef itk::SmartPointer<const Self> otb::MRFSamplerRandom< TInput1, TInput2 >::ConstPointer

Definition at line 52 of file otbMRFSamplerRandom.h.

◆ EnergyFidelityPointer

template<class TInput1 , class TInput2 >
typedef Superclass::EnergyFidelityPointer otb::MRFSamplerRandom< TInput1, TInput2 >::EnergyFidelityPointer

Definition at line 60 of file otbMRFSamplerRandom.h.

◆ EnergyFidelityType

template<class TInput1 , class TInput2 >
typedef Superclass::EnergyFidelityType otb::MRFSamplerRandom< TInput1, TInput2 >::EnergyFidelityType

Definition at line 58 of file otbMRFSamplerRandom.h.

◆ EnergyRegularizationPointer

template<class TInput1 , class TInput2 >
typedef Superclass::EnergyRegularizationPointer otb::MRFSamplerRandom< TInput1, TInput2 >::EnergyRegularizationPointer

Definition at line 61 of file otbMRFSamplerRandom.h.

◆ EnergyRegularizationType

template<class TInput1 , class TInput2 >
typedef Superclass::EnergyRegularizationType otb::MRFSamplerRandom< TInput1, TInput2 >::EnergyRegularizationType

Definition at line 59 of file otbMRFSamplerRandom.h.

◆ InputImageNeighborhoodIterator

template<class TInput1 , class TInput2 >
typedef Superclass::InputImageNeighborhoodIterator otb::MRFSamplerRandom< TInput1, TInput2 >::InputImageNeighborhoodIterator

Definition at line 54 of file otbMRFSamplerRandom.h.

◆ InputImagePixelType

template<class TInput1 , class TInput2 >
typedef Superclass::InputImagePixelType otb::MRFSamplerRandom< TInput1, TInput2 >::InputImagePixelType

Definition at line 57 of file otbMRFSamplerRandom.h.

◆ LabelledImageNeighborhoodIterator

template<class TInput1 , class TInput2 >
typedef Superclass::LabelledImageNeighborhoodIterator otb::MRFSamplerRandom< TInput1, TInput2 >::LabelledImageNeighborhoodIterator

Definition at line 55 of file otbMRFSamplerRandom.h.

◆ LabelledImagePixelType

template<class TInput1 , class TInput2 >
typedef Superclass::LabelledImagePixelType otb::MRFSamplerRandom< TInput1, TInput2 >::LabelledImagePixelType

Definition at line 56 of file otbMRFSamplerRandom.h.

◆ Pointer

template<class TInput1 , class TInput2 >
typedef itk::SmartPointer<Self> otb::MRFSamplerRandom< TInput1, TInput2 >::Pointer

Definition at line 51 of file otbMRFSamplerRandom.h.

◆ RandomGeneratorType

template<class TInput1 , class TInput2 >
typedef itk::Statistics::MersenneTwisterRandomVariateGenerator otb::MRFSamplerRandom< TInput1, TInput2 >::RandomGeneratorType

Definition at line 63 of file otbMRFSamplerRandom.h.

◆ Self

template<class TInput1 , class TInput2 >
typedef MRFSamplerRandom otb::MRFSamplerRandom< TInput1, TInput2 >::Self

Definition at line 49 of file otbMRFSamplerRandom.h.

◆ Superclass

template<class TInput1 , class TInput2 >
typedef otb::MRFSampler<TInput1, TInput2> otb::MRFSamplerRandom< TInput1, TInput2 >::Superclass

Definition at line 50 of file otbMRFSamplerRandom.h.

Constructor & Destructor Documentation

◆ MRFSamplerRandom()

template<class TInput1 , class TInput2 >
otb::MRFSamplerRandom< TInput1, TInput2 >::MRFSamplerRandom ( )
inlineprotected

Methods to cancel random effects.

Definition at line 95 of file otbMRFSamplerRandom.h.

◆ ~MRFSamplerRandom()

template<class TInput1 , class TInput2 >
otb::MRFSamplerRandom< TInput1, TInput2 >::~MRFSamplerRandom ( )
inlineoverrideprotected

Methods to cancel random effects.

Definition at line 100 of file otbMRFSamplerRandom.h.

Member Function Documentation

◆ Compute()

template<class TInput1 , class TInput2 >
int otb::MRFSamplerRandom< TInput1, TInput2 >::Compute ( const InputImageNeighborhoodIterator itData,
const LabelledImageNeighborhoodIterator itRegul 
)
inlineoverridevirtual

Implements otb::MRFSampler< TInput1, TInput2 >.

Definition at line 69 of file otbMRFSamplerRandom.h.

◆ CreateAnother()

template<class TInput1 , class TInput2 >
virtual::itk::LightObject::Pointer otb::MRFSamplerRandom< TInput1, TInput2 >::CreateAnother ( void  ) const

◆ GetNameOfClass()

template<class TInput1 , class TInput2 >
virtual const char* otb::MRFSamplerRandom< TInput1, TInput2 >::GetNameOfClass ( ) const
virtual

◆ InitializeSeed() [1/2]

template<class TInput1 , class TInput2 >
void otb::MRFSamplerRandom< TInput1, TInput2 >::InitializeSeed ( )
inline

Methods to cancel random effects.

Definition at line 87 of file otbMRFSamplerRandom.h.

◆ InitializeSeed() [2/2]

template<class TInput1 , class TInput2 >
void otb::MRFSamplerRandom< TInput1, TInput2 >::InitializeSeed ( int  seed)
inline

Methods to cancel random effects.

Definition at line 83 of file otbMRFSamplerRandom.h.

◆ New()

template<class TInput1 , class TInput2 >
static Pointer otb::MRFSamplerRandom< TInput1, TInput2 >::New ( )
static

Member Data Documentation

◆ m_Generator

template<class TInput1 , class TInput2 >
RandomGeneratorType::Pointer otb::MRFSamplerRandom< TInput1, TInput2 >::m_Generator
private

Methods to cancel random effects.

Definition at line 105 of file otbMRFSamplerRandom.h.


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