ITK  4.2.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Private Member Functions | Private Attributes
itk::LevenbergMarquardtOptimizer Class Reference

#include <itkLevenbergMarquardtOptimizer.h>

+ Inheritance diagram for itk::LevenbergMarquardtOptimizer:
+ Collaboration diagram for itk::LevenbergMarquardtOptimizer:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef vnl_levenberg_marquardt InternalOptimizerType
typedef vnl_vector< double > InternalParametersType
typedef SmartPointer< SelfPointer
typedef LevenbergMarquardtOptimizer Self
typedef
MultipleValuedNonLinearVnlOptimizer 
Superclass
- Public Types inherited from itk::MultipleValuedNonLinearVnlOptimizer
typedef Superclass::ParametersType ParametersType
- Public Types inherited from itk::MultipleValuedNonLinearOptimizer
typedef CostFunctionType::Pointer CostFunctionPointer
typedef MultipleValuedCostFunction CostFunctionType
typedef Array2D< double > DerivativeType
typedef Array< double > MeasureType
- Public Types inherited from itk::NonLinearOptimizer
typedef Superclass::ScalesType ScalesType
- Public Types inherited from itk::Optimizer
- Public Types inherited from itk::Object
- Public Types inherited from itk::LightObject

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
vnl_levenberg_marquardt * GetOptimizer (void) const
const std::string GetStopConditionDescription () const
MeasureType GetValue () const
virtual void SetCostFunction (MultipleValuedCostFunction *costFunction)
void SetEpsilonFunction (double epsilon)
void SetGradientTolerance (double tol)
void SetNumberOfIterations (unsigned int iterations)
void SetValueTolerance (double tol)
void StartOptimization (void)
- Public Member Functions inherited from itk::MultipleValuedNonLinearVnlOptimizer
bool GetUseCostFunctionGradient () const
void SetUseCostFunctionGradient (bool)
void UseCostFunctionGradientOff ()
void UseCostFunctionGradientOn ()
virtual const MeasureTypeGetCachedValue ()
virtual const DerivativeTypeGetCachedDerivative ()
virtual const ParametersTypeGetCachedCurrentPosition ()
- Public Member Functions inherited from itk::MultipleValuedNonLinearOptimizer
virtual void SetCostFunction (CostFunctionType *costFunction)

Static Public Member Functions

static Pointer New ()

Protected Types

typedef
Superclass::CostFunctionAdaptorType 
CostFunctionAdaptorType
- Protected Types inherited from itk::MultipleValuedNonLinearVnlOptimizer
typedef ReceptorMemberCommand
< Self
CommandType

Protected Member Functions

 LevenbergMarquardtOptimizer ()
virtual ~LevenbergMarquardtOptimizer ()
- Protected Member Functions inherited from itk::MultipleValuedNonLinearVnlOptimizer
const CostFunctionAdaptorTypeGetCostFunctionAdaptor (void) const
CostFunctionAdaptorTypeGetCostFunctionAdaptor (void)
CostFunctionAdaptorTypeGetNonConstCostFunctionAdaptor (void) const
void PrintSelf (std::ostream &os, Indent indent) const
void SetCostFunctionAdaptor (CostFunctionAdaptorType *adaptor)
 MultipleValuedNonLinearVnlOptimizer ()
virtual ~MultipleValuedNonLinearVnlOptimizer ()
- Protected Member Functions inherited from itk::MultipleValuedNonLinearOptimizer
 MultipleValuedNonLinearOptimizer ()
virtual ~MultipleValuedNonLinearOptimizer ()
 NonLinearOptimizer ()
virtual ~NonLinearOptimizer ()
- Protected Member Functions inherited from itk::Optimizer
 Optimizer ()
virtual void SetCurrentPosition (const ParametersType &param)
virtual ~Optimizer ()
- Protected Member Functions inherited from itk::Object
 Object ()
bool PrintObservers (std::ostream &os, Indent indent) const
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 ()

Private Member Functions

 LevenbergMarquardtOptimizer (const Self &)
void operator= (const Self &)

Private Attributes

double m_EpsilonFunction
double m_GradientTolerance
unsigned int m_NumberOfIterations
bool m_OptimizerInitialized
double m_ValueTolerance
InternalOptimizerTypem_VnlOptimizer

Detailed Description

Wrap of the vnl_levenberg_marquardt algorithm.

Definition at line 32 of file itkLevenbergMarquardtOptimizer.h.


Member Typedef Documentation

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

Definition at line 40 of file itkLevenbergMarquardtOptimizer.h.

typedef Superclass::CostFunctionAdaptorType itk::LevenbergMarquardtOptimizer::CostFunctionAdaptorType
protected

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

Definition at line 80 of file itkLevenbergMarquardtOptimizer.h.

Internal optimizer type.

Definition at line 52 of file itkLevenbergMarquardtOptimizer.h.

InternalParameters typedef.

Definition at line 46 of file itkLevenbergMarquardtOptimizer.h.

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

Definition at line 39 of file itkLevenbergMarquardtOptimizer.h.

Standard "Self" typedef.

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

Definition at line 37 of file itkLevenbergMarquardtOptimizer.h.

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

Definition at line 38 of file itkLevenbergMarquardtOptimizer.h.


Constructor & Destructor Documentation

itk::LevenbergMarquardtOptimizer::LevenbergMarquardtOptimizer ( )
protected
virtual itk::LevenbergMarquardtOptimizer::~LevenbergMarquardtOptimizer ( )
protectedvirtual
itk::LevenbergMarquardtOptimizer::LevenbergMarquardtOptimizer ( const Self )
private

Member Function Documentation

virtual::itk::LightObject::Pointer itk::LevenbergMarquardtOptimizer::CreateAnother ( void  ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::MultipleValuedNonLinearOptimizer.

virtual const char* itk::LevenbergMarquardtOptimizer::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

vnl_levenberg_marquardt* itk::LevenbergMarquardtOptimizer::GetOptimizer ( void  ) const

Method for getting access to the internal optimizer.

const std::string itk::LevenbergMarquardtOptimizer::GetStopConditionDescription ( ) const
virtual

Get the reason for termination

Reimplemented from itk::Optimizer.

MeasureType itk::LevenbergMarquardtOptimizer::GetValue ( ) const

Get the current value

static Pointer itk::LevenbergMarquardtOptimizer::New ( )
static

Method for creation through the object factory.

Reimplemented from itk::MultipleValuedNonLinearOptimizer.

void itk::LevenbergMarquardtOptimizer::operator= ( const Self )
private

Command observer that will interact with the ITKVNL cost-function adaptor in order to generate iteration events. This will allow to overcome the limitation of VNL optimizers not offering callbacks for every iteration

Reimplemented from itk::MultipleValuedNonLinearVnlOptimizer.

virtual void itk::LevenbergMarquardtOptimizer::SetCostFunction ( MultipleValuedCostFunction costFunction)
virtual

Plug in a Cost Function into the optimizer

Implements itk::MultipleValuedNonLinearVnlOptimizer.

void itk::LevenbergMarquardtOptimizer::SetEpsilonFunction ( double  epsilon)
void itk::LevenbergMarquardtOptimizer::SetGradientTolerance ( double  tol)
void itk::LevenbergMarquardtOptimizer::SetNumberOfIterations ( unsigned int  iterations)
void itk::LevenbergMarquardtOptimizer::SetValueTolerance ( double  tol)
void itk::LevenbergMarquardtOptimizer::StartOptimization ( void  )
virtual

Start optimization with an initial value.

Reimplemented from itk::Optimizer.


Member Data Documentation

double itk::LevenbergMarquardtOptimizer::m_EpsilonFunction
private

Definition at line 90 of file itkLevenbergMarquardtOptimizer.h.

double itk::LevenbergMarquardtOptimizer::m_GradientTolerance
private

Definition at line 89 of file itkLevenbergMarquardtOptimizer.h.

unsigned int itk::LevenbergMarquardtOptimizer::m_NumberOfIterations
private

Definition at line 87 of file itkLevenbergMarquardtOptimizer.h.

bool itk::LevenbergMarquardtOptimizer::m_OptimizerInitialized
private

Definition at line 85 of file itkLevenbergMarquardtOptimizer.h.

double itk::LevenbergMarquardtOptimizer::m_ValueTolerance
private

Definition at line 88 of file itkLevenbergMarquardtOptimizer.h.

InternalOptimizerType* itk::LevenbergMarquardtOptimizer::m_VnlOptimizer
private

Definition at line 86 of file itkLevenbergMarquardtOptimizer.h.


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