OTB  6.7.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
otb::MRFOptimizerMetropolis Class Reference

#include <otbMRFOptimizerMetropolis.h>

+ Inheritance diagram for otb::MRFOptimizerMetropolis:
+ Collaboration diagram for otb::MRFOptimizerMetropolis:

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef Superclass::ParametersType ParametersType
 
typedef itk::SmartPointer< SelfPointer
 
typedef
itk::Statistics::MersenneTwisterRandomVariateGenerator 
RandomGeneratorType
 
typedef MRFOptimizerMetropolis Self
 
typedef MRFOptimizer Superclass
 
- Public Types inherited from otb::MRFOptimizer
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef itk::Array< double > ParametersType
 
typedef itk::SmartPointer< SelfPointer
 
typedef MRFOptimizer Self
 
typedef itk::Object Superclass
 
- Public Types inherited from itk::Object
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef Object Self
 
typedef LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

bool Compute (double deltaEnergy) override
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
void SetSingleParameter (double parameterVal)
 
void InitializeSeed (int seed)
 
void InitializeSeed ()
 
- Public Member Functions inherited from otb::MRFOptimizer
virtual unsigned int GetNumberOfParameters () const
 
const ParametersTypeGetParameters (void) const
 
virtual void SetParameters (const ParametersType &parameters)
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
virtual ModifiedTimeType GetMTime () const
 
virtual const std::string & GetObjectName () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
virtual void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual void SetReferenceCount (int) override
 
virtual void UnRegister () const noexceptoverride
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

 MRFOptimizerMetropolis ()
 
 ~MRFOptimizerMetropolis () override
 
- Protected Member Functions inherited from otb::MRFOptimizer
 MRFOptimizer ()
 
 ~MRFOptimizer () override
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void PrintSelf (std::ostream &os, Indent indent) const override
 
virtual void SetTimeStamp (const TimeStamp &time)
 
virtual ~Object ()
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

RandomGeneratorType::Pointer m_Generator
 
- Protected Attributes inherited from otb::MRFOptimizer
unsigned int m_NumberOfParameters
 
ParametersType m_Parameters
 
- Protected Attributes inherited from itk::LightObject
AtomicInt< int > m_ReferenceCount
 

Detailed Description

This is the optimizer class implementing the Metropolis algorithm.

This is one optimizer to be used in the MRF framework. This optimizer follows the metropolis algorithm to accept of reject the value proposed by the sampler.

The MRFOptimizerMetropolis has one parameter corresponding to the temperature T used to accept or reject proposed values. The proposed value is accepted with a probability:

\[ e^{\frac{-\Delta E}{T}} \]

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 51 of file otbMRFOptimizerMetropolis.h.

Member Typedef Documentation

Definition at line 58 of file otbMRFOptimizerMetropolis.h.

typedef Superclass::ParametersType otb::MRFOptimizerMetropolis::ParametersType

Definition at line 59 of file otbMRFOptimizerMetropolis.h.

Definition at line 57 of file otbMRFOptimizerMetropolis.h.

Definition at line 61 of file otbMRFOptimizerMetropolis.h.

Definition at line 55 of file otbMRFOptimizerMetropolis.h.

Definition at line 56 of file otbMRFOptimizerMetropolis.h.

Constructor & Destructor Documentation

otb::MRFOptimizerMetropolis::MRFOptimizerMetropolis ( )
inlineprotected

Definition at line 109 of file otbMRFOptimizerMetropolis.h.

otb::MRFOptimizerMetropolis::~MRFOptimizerMetropolis ( )
inlineoverrideprotected

Definition at line 117 of file otbMRFOptimizerMetropolis.h.

Member Function Documentation

bool otb::MRFOptimizerMetropolis::Compute ( double  deltaEnergy)
inlineoverridevirtual

Implements otb::MRFOptimizer.

Definition at line 76 of file otbMRFOptimizerMetropolis.h.

virtual::itk::LightObject::Pointer otb::MRFOptimizerMetropolis::CreateAnother ( void  ) const
virtual

Reimplemented from itk::Object.

virtual const char* otb::MRFOptimizerMetropolis::GetNameOfClass ( ) const
virtual

Reimplemented from otb::MRFOptimizer.

void otb::MRFOptimizerMetropolis::InitializeSeed ( int  seed)
inline

Methods to cancel random effects.

Definition at line 98 of file otbMRFOptimizerMetropolis.h.

void otb::MRFOptimizerMetropolis::InitializeSeed ( )
inline

Methods to cancel random effects.

Definition at line 102 of file otbMRFOptimizerMetropolis.h.

static Pointer otb::MRFOptimizerMetropolis::New ( )
static
void otb::MRFOptimizerMetropolis::SetSingleParameter ( double  parameterVal)
inline

Set parameter to a one array filled with paramVal.

Definition at line 68 of file otbMRFOptimizerMetropolis.h.

Member Data Documentation

RandomGeneratorType::Pointer otb::MRFOptimizerMetropolis::m_Generator
protected

Definition at line 118 of file otbMRFOptimizerMetropolis.h.


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