18 #ifndef itkLBFGSBOptimizerv4_h
19 #define itkLBFGSBOptimizerv4_h
22 #include "vnl/algo/vnl_lbfgsb.h"
23 #include "ITKOptimizersv4Export.h"
108 return m_InitialPosition;
112 virtual void StartOptimization(
bool doOnlyInitialization =
false) ITK_OVERRIDE;
115 virtual
void SetMetric(MetricType *metric) ITK_OVERRIDE;
118 void SetLowerBound(const BoundValueType & value);
120 itkGetConstReferenceMacro(LowerBound,BoundValueType);
123 void SetUpperBound(const BoundValueType & value);
125 itkGetConstReferenceMacro(UpperBound,BoundValueType);
133 void SetBoundSelection(const BoundSelectionType & select);
135 itkGetConstReferenceMacro(BoundSelection,BoundSelectionType);
143 virtual
void SetCostFunctionConvergenceFactor(
double);
145 itkGetConstMacro(CostFunctionConvergenceFactor,
double);
148 virtual
void SetMaximumNumberOfCorrections(
unsigned int);
150 itkGetConstMacro(MaximumNumberOfCorrections,
unsigned int);
153 virtual
void SetScales(const ScalesType &) ITK_OVERRIDE;
157 itkGetConstReferenceMacro(InfinityNormOfProjectedGradient,
double);
161 virtual ~LBFGSBOptimizerv4() ITK_OVERRIDE;
162 virtual
void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
172 ITK_DISALLOW_COPY_AND_ASSIGN(LBFGSBOptimizerv4);
174 unsigned int m_MaximumNumberOfCorrections;
177 BoundValueType m_LowerBound;
178 BoundValueType m_UpperBound;
179 BoundSelectionType m_BoundSelection;
Superclass::CostFunctionAdaptorType CostFunctionAdaptorType
Light weight base class for most itk classes.
Superclass::MetricType MetricType
SmartPointer< const Self > ConstPointer
Superclass::ScalesType ScalesType
Limited memory Broyden Fletcher Goldfarb Shannon minimization with simple bounds. ...
Wrapper helper around vnl_lbfgsb.
ParametersType & GetInitialPosition(void)
Array< long > BoundSelectionType
Array< double > BoundValueType
LBFGSOptimizerBasev4< vnl_lbfgsb > Superclass
Superclass::ParametersType ParametersType
SmartPointer< Self > Pointer
Control indentation during Print() invocation.
Abstract base for vnl lbfgs algorithm optimizers in ITKv4 registration framework. ...