[Insight-users] Observations about Amoeba, ConjugateGradient and LBFGS optimizers

Efthymios Efstathiou efstates at iis.fraunhofer.de
Tue Sep 21 10:35:20 EDT 2010


Hi all,

I'm currently using ITK (3.16) for the registration of ultrasound 
images, making use of various metrics and optimizers.

I just observed some strange behaviour of some optimizers and would like 
to share it with you and request your help regarding these issues.

1) The Amoeba, ConjugateGradient and LBFGS optimizers produce false 
outputs by their GetCurrentPosition() (empty output position vector) and 
GetCurrentIteration() (always 0, not updated) methods, whereas by their 
GetValue() methods, they throw an exception. That leads me to the point 
that there are not any current data available for these optimizers. In 
order to get some values to display for tracing the progress of the 
optimization I'm using the "cached" versions of the above functions 
where available, which may not provide a value with accordance to the 
current parameters.

2) The ConjugateGradient optimizer in most cases after some iterations, 
having already found the optimal value and having stayed there for 
another few iterations, makes some new steps and reaches a position 
where the metric throws an exception because the images do not overlap 
at that position. This observation was also made some years ago:
http://www.itk.org/pipermail/insight-users/2005-June/013812.html

Thank you in advance for your time and help.

Best regrads,
Efthymios Efstathiou


More information about the Insight-users mailing list