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() ITK_OVERRIDE;
84 ITK_DISALLOW_COPY_AND_ASSIGN(LevenbergMarquardtOptimizer);
86 bool m_OptimizerInitialized;
88 unsigned int m_NumberOfIterations;
89 double m_ValueTolerance;
90 double m_GradientTolerance;
91 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