[Insight-users] demons \w MI and BSpline optimization
Luis Ibanez
luis.ibanez at kitware.com
Sun Apr 15 10:58:42 EDT 2007
Hi Ruben
1) The implementation of the Demons deformable registration filter
is closely related to the concept of optical flow, and to the
minimization of the MeanSquares difference between the two images
to be registered.
You could replace the concept of optical flow in the Demons
algorithm by modifying the code of the file:
Insight/Code/Algorithms/
itkDemonsRegistrationFunction.txx
In particular the method ComputeUpdate().
In your case, instead of computing the difference value
speedValue = fixedValue - movingValue
in line 246.
You could use these two values to cumulate a joint probability
just as the Mattes Mutual information metric does.
Note that for the case of Demons, you may have to perform
two passes. One for estimating the Joint histogram of the
two images given the current deformation field; and another
pass for estimating how an intensity change (due to a displacement
of the deformation field) in one pixel will modify the total
value of Mutual Information that you already estimated. From
this variational value, Demons could compute the update for
the deformation field.
2) One effective way of proceeding with the fine-tunning of
optimization parameters is to attach some visualization
to this process, so that you can follow up the progress
at every iteration. You may want to attach a module of
VTK visualization to the Command Observer that you probably
already have connected to the LBFGSB optimizer.
By visually following the progress of the deformation field
you will be in a much better position for fine tunning the
parameters of the optimizer.
Regards,
Luis
------------------------
Ruben Schilling wrote:
> Hi all,
>
> I have two questions:
>
> (1)
> I am wondering whether there is an example out using some variant of
> mutual information with some demons algorithm. I didn't find anything
> in the software guide nor the examples. It seems, that it would be
> interesting to compare its performance to the BSpline + mutual
> information registration.
> From the literature I don't see why it wouldn't be possible, since the
> demons only rely on similarity measure and distance to compute the
> forces, which does not limit one to e.g. squared differences. Is there
> a reason in optical flow, why we couldn't use demons with mutual
> information? Can't we replace the intensity similarity of optical flow
> with mutual information similarity?
> Has anyone tried this yet? Is there a reason why there is no example (I
> thought it would be a rather general demand to have it).
>
>
> (2)
> I am optimizing currently also the DeformableRegistration8.cxx example
> (under consideration of DeformableRegistration6.cxx). Are there any
> general guidelines in optimizing the LBFGSB optimizer used? I find it
> quite non-trivial, because I don't have the necessary background on
> non-linear optimization theory. Especially for using the BSplines I
> find it hard, I can imagine setting e.g. the right scalings in an
> affine transform, but for a BSpline grid the parameters are the
> displacements of the nodes, right? Are there any general
> hints/guidelines how to procede here?
>
>
>
> To make my point clear, I am actually trying to solve a difficult
> practical problem with multi-modalities and I am not intending to start
> any debate on which elastic transform is better. I am combining the
> elastic transform with a quite successful rigid and affine "pre-
> registration", but still the remaining problem is difficult enough,
> this is why I would like to explore all techniques available (yes, I do
> also consider FEM but haven't started on it for now).
>
>
> I would be grateful for comments on these matters.
>
> best regards
> Ruben
>
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
More information about the Insight-users
mailing list