#include <itkLevenbergMarquardtOptimizer.h>
Wrap of the vnl_levenberg_marquardt algorithm.
Definition at line 38 of file itkLevenbergMarquardtOptimizer.h.
Public Member Functions | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
const char * | GetNameOfClass () const override |
vnl_levenberg_marquardt * | GetOptimizer () const |
std::string | GetStopConditionDescription () const override |
MeasureType | GetValue () const |
void | SetCostFunction (MultipleValuedCostFunction *costFunction) override |
void | SetEpsilonFunction (double epsilon) |
void | SetGradientTolerance (double tol) |
void | SetNumberOfIterations (unsigned int iterations) |
void | SetValueTolerance (double tol) |
void | StartOptimization () override |
![]() | |
const char * | GetNameOfClass () const override |
bool | GetUseCostFunctionGradient () const |
void | SetUseCostFunctionGradient (bool) |
void | UseCostFunctionGradientOff () |
void | UseCostFunctionGradientOn () |
virtual const MeasureType & | GetCachedValue () const |
virtual const DerivativeType & | GetCachedDerivative () const |
virtual const ParametersType & | GetCachedCurrentPosition () const |
![]() | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
virtual void | SetCostFunction (CostFunctionType *costFunction) |
![]() | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
const char * | GetNameOfClass () const override |
![]() | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
virtual const ParametersType & | GetCurrentPosition () const |
virtual const ParametersType & | GetInitialPosition () const |
const char * | GetNameOfClass () const override |
virtual void | SetInitialPosition (const ParametersType ¶m) |
void | SetScales (const ScalesType &scales) |
virtual const ScalesType & | GetScales () const |
virtual const ScalesType & | GetInverseScales () const |
![]() | |
unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) const |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexcept override |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
![]() | |
Pointer | Clone () const |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static Pointer | New () |
![]() | |
static Pointer | New () |
![]() | |
static Pointer | New () |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Protected Types | |
using | CostFunctionAdaptorType = Superclass::CostFunctionAdaptorType |
![]() | |
using | CommandType = ReceptorMemberCommand<Self> |
using | CostFunctionAdaptorType = MultipleValuedVnlCostFunctionAdaptor |
Protected Member Functions | |
LevenbergMarquardtOptimizer () | |
~LevenbergMarquardtOptimizer () override | |
![]() | |
CostFunctionAdaptorType * | GetCostFunctionAdaptor () |
const CostFunctionAdaptorType * | GetCostFunctionAdaptor () const |
CostFunctionAdaptorType * | GetNonConstCostFunctionAdaptor () const |
MultipleValuedNonLinearVnlOptimizer () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void | SetCostFunctionAdaptor (CostFunctionAdaptorType *adaptor) |
~MultipleValuedNonLinearVnlOptimizer () override | |
![]() | |
MultipleValuedNonLinearOptimizer () | |
~MultipleValuedNonLinearOptimizer () override=default | |
![]() | |
NonLinearOptimizer ()=default | |
~NonLinearOptimizer () override | |
![]() | |
Optimizer () | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | SetCurrentPosition (const ParametersType ¶m) |
~Optimizer () override=default | |
![]() | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
~Object () override | |
![]() | |
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 Attributes | |
double | m_EpsilonFunction {} |
double | m_GradientTolerance {} |
unsigned int | m_NumberOfIterations {} |
bool | m_OptimizerInitialized {} |
double | m_ValueTolerance {} |
std::unique_ptr< InternalOptimizerType > | m_VnlOptimizer |
Additional Inherited Members | |
![]() | |
CostFunctionPointer | m_CostFunction {} |
![]() | |
ParametersType | m_CurrentPosition {} |
bool | m_ScalesInitialized { false } |
![]() | |
std::atomic< int > | m_ReferenceCount {} |
using itk::LevenbergMarquardtOptimizer::ConstPointer = SmartPointer<const Self> |
Definition at line 47 of file itkLevenbergMarquardtOptimizer.h.
|
protected |
Definition at line 96 of file itkLevenbergMarquardtOptimizer.h.
using itk::LevenbergMarquardtOptimizer::InternalOptimizerType = vnl_levenberg_marquardt |
Internal optimizer type.
Definition at line 59 of file itkLevenbergMarquardtOptimizer.h.
using itk::LevenbergMarquardtOptimizer::InternalParametersType = vnl_vector<double> |
InternalParameters type alias.
Definition at line 56 of file itkLevenbergMarquardtOptimizer.h.
Definition at line 46 of file itkLevenbergMarquardtOptimizer.h.
Standard "Self" type alias.
Definition at line 44 of file itkLevenbergMarquardtOptimizer.h.
Definition at line 45 of file itkLevenbergMarquardtOptimizer.h.
|
protected |
Referenced by GetNameOfClass().
|
overrideprotected |
|
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::LightObject.
|
overridevirtual |
Reimplemented from itk::LightObject.
References LevenbergMarquardtOptimizer().
vnl_levenberg_marquardt * itk::LevenbergMarquardtOptimizer::GetOptimizer | ( | ) | const |
Method for getting access to the internal optimizer.
|
overridevirtual |
Get the reason for termination
Reimplemented from itk::Optimizer.
MeasureType itk::LevenbergMarquardtOptimizer::GetValue | ( | ) | const |
Get the current value
|
static |
Method for creation through the object factory.
|
overridevirtual |
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 | ) |
|
overridevirtual |
Start optimization with an initial value.
Reimplemented from itk::Optimizer.
|
private |
Definition at line 104 of file itkLevenbergMarquardtOptimizer.h.
|
private |
Definition at line 103 of file itkLevenbergMarquardtOptimizer.h.
|
private |
Definition at line 101 of file itkLevenbergMarquardtOptimizer.h.
|
private |
Definition at line 99 of file itkLevenbergMarquardtOptimizer.h.
|
private |
Definition at line 102 of file itkLevenbergMarquardtOptimizer.h.
|
private |
Definition at line 100 of file itkLevenbergMarquardtOptimizer.h.