[Insight-users] Access to Jacobian of LM Optimizer

Luis Ibanez luis.ibanez@kitware.com
Tue, 26 Nov 2002 13:24:22 -0500


Hi Mark,

The itkLevenbergMarquardtOptimizer allows to get
access to the internal vnl optimizer through the
GetOptimizer() method. This returns a pointer to
a vnl_levenberg_marquardt object.

The vnl_levenberg_marquardt class returns the
product of the Jacobian with its transpose at
the end of the optimization. This is returned
by the method:   get_JtJ();

This can be seen in

Insight/Code/Numerics/vxl/vnl/algo/vnl_levenberg_marquardt.h


Couldn't you compute the singular values of J
form JtJ ?

The problem with changing vnl code is that we
may want to make sure that the same modification
goes in the Vxl project. ITK has a snapshot
of the vnl library. Introducing unilateral changes
will make very hard to update from the vnl
trunk in the future.

You may want to post this same question to the
vxl_list.

     http://vxl.sourceforge.net/#mail


Please let us know if you can see a better way
to get around this problem.


   Thanks


     Luis


=======================================

Mark Hastenteufel wrote:

> Hallo!
> 
> I use the Levenberg-Marquardt Algorithm for 
> optimization. For the computation of the condition
> number I need access to the Jacobian matrix (condition
> number is computed via the singular values
> of the Jacobian).
> 
> Are there any ideas how to solve this problem? It
> seems that one have to change code in the vnl
> library!?
> 
> Thanks in advance,
> 
> Mark
> 
> 
>