18 #ifndef itkLevenbergMarquardtOptimizer_h
19 #define itkLevenbergMarquardtOptimizer_h
22 #include "vnl/algo/vnl_levenberg_marquardt.h"
23 #include "ITKOptimizersExport.h"
56 vnl_levenberg_marquardt * GetOptimizer()
const;
59 virtual void StartOptimization(
void) ITK_OVERRIDE;
64 void SetNumberOfIterations(
unsigned int iterations);
66 void SetValueTolerance(
double tol);
68 void SetGradientTolerance(
double tol);
70 void SetEpsilonFunction(
double epsilon);
75 virtual const std::
string GetStopConditionDescription() const ITK_OVERRIDE;
79 virtual ~LevenbergMarquardtOptimizer();
84 LevenbergMarquardtOptimizer(const
Self &) ITK_DELETE_FUNCTION;
85 void operator=(const
Self &) ITK_DELETE_FUNCTION;
87 bool m_OptimizerInitialized;
89 unsigned int m_NumberOfIterations;
90 double m_ValueTolerance;
91 double m_GradientTolerance;
92 double m_EpsilonFunction;
Light weight base class for most itk classes.
This class is a base for the Optimization methods that optimize a multi-valued function.
This class is a base for the CostFunctions returning a multiple values.
SmartPointer< Self > Pointer
Superclass::CostFunctionAdaptorType CostFunctionAdaptorType
vnl_vector< double > InternalParametersType
LevenbergMarquardtOptimizer Self
SmartPointer< const Self > ConstPointer
Wrap of the vnl_levenberg_marquardt algorithm.
MultipleValuedNonLinearVnlOptimizer Superclass
vnl_levenberg_marquardt InternalOptimizerType