ITK/Release 4/Refactor Numerical Libraries/Inventory/Non-Linear Optimization
From KitwarePublic
< ITK | Release 4 | Refactor Numerical Libraries | Inventory(Redirected from ITK Release 4/Refactor Numerical Libraries/Inventory/Non-Linear Optimization)
Jump to navigationJump to search
Optimizers
LBFGSB Optimizer
The LBFGSB optimizer is commonly used for optimization problems involving a high dimensional parametric space.
The LBFGSB optimizer provides the functionality of defining bounds for each one of the parameters in the optimization space.
Examples
The optimizer is commonly used to drive Deformable registration problems.
Specific examples can be found in
ITK/Examples/Registration/
- DeformableRegistration4.cxx
- DeformableRegistration6.cxx
- DeformableRegistration7.cxx
- DeformableRegistration8.cxx
- DeformableRegistration12.cxx
They can be run by doing:
ctest -R DeformableRegistration4 -V
Of particular interest is the 3D example in
- DeformableRegistration8.cxx
Because it uses
- The LBFSGB optimizer
- And computes in 3D image
The Code
In ITK
The ITK optimizer class can be found in
ITK/Modules/Numerics/Optimizers
in the files
./src/itkLBFGSBOptimizer.cxx ./include/itkLBFGSBOptimizer.h
and a test is available at
./test/itkLBFGSBOptimizerTest.cxx
In VXL
The ITK class invokes the VXL class in
ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo/vnl_lbfgsb.cxx ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo/vnl_lbfgsb.h