18 #ifndef itkLBFGSBOptimizerv4_h
19 #define itkLBFGSBOptimizerv4_h
22 #include "vnl/algo/vnl_lbfgsb.h"
23 #include "ITKOptimizersv4Export.h"
110 return m_InitialPosition;
114 void StartOptimization(
bool doOnlyInitialization =
false)
override;
117 void SetMetric(MetricType *metric)
override;
120 void SetLowerBound(
const BoundValueType & value);
122 itkGetConstReferenceMacro(LowerBound,BoundValueType);
125 void SetUpperBound(
const BoundValueType & value);
127 itkGetConstReferenceMacro(UpperBound,BoundValueType);
135 void SetBoundSelection(
const BoundSelectionType & select);
137 itkGetConstReferenceMacro(BoundSelection,BoundSelectionType);
145 virtual void SetCostFunctionConvergenceFactor(
double);
147 itkGetConstMacro(CostFunctionConvergenceFactor,
double);
150 virtual void SetMaximumNumberOfCorrections(
unsigned int);
152 itkGetConstMacro(MaximumNumberOfCorrections,
unsigned int);
155 void SetScales(
const ScalesType &)
override;
159 itkGetConstReferenceMacro(InfinityNormOfProjectedGradient,
double);
164 void PrintSelf(std::ostream & os,
Indent indent)
const override;
174 unsigned int m_MaximumNumberOfCorrections{5};
Superclass::ParametersType ParametersType
Light weight base class for most itk classes.
class ITK_FORWARD_EXPORT LBFGSBOptimizerHelperv4
Superclass::CostFunctionAdaptorType CostFunctionAdaptorType
Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. ...
Superclass::MetricType MetricType
Wrapper helper around vnl_lbfgsb.
Superclass::ScalesType ScalesType
BoundValueType m_LowerBound
BoundSelectionType m_BoundSelection
BoundValueType m_UpperBound
ParametersType m_InitialPosition
Control indentation during Print() invocation.
ParametersType & GetInitialPosition()
Abstract base for vnl lbfgs algorithm optimizers in ITKv4 registration framework. ...