[Insight-users] Tune Parameters
Luis Ibanez
luis.ibanez at kitware.com
Sat, 28 Feb 2004 10:45:40 -0500
Hi Valli,
It will be quite difficult, if not impossible
to find parameters that will work for every
combination of image modalities.
I would suggest you to do a "medical-centerd"
application where the user has options for
registering:
- CT to CT
- CT to PET
- MRI to PET
... and so on
then fine tune parameters independently for each
combination of image modalities that you are
offering.
The reason is that parameters such as the
optimizer step length are dependent on the
amount of noise in the metric, and that noise
depends on the image modality of the images.
--
Here are some guidelines:
A) Translation scales should be about:
1.0 for the diagonal elements of the rotation matrix
10.0 for the non-diagonal elements
1.0 / (physical extent of the image) for translation element.
B) For numbrer of iterations you can usually go quite
high. If you tune the other parameters correctly,
the number of iteration should never be exhausted.
It is actually more important to setup a "Cancel"
button in your GUI, and let the user decide when
he/she has waited enough.
C) Initialization is key in registration. Any hint
that the user have about the correction needed to
register the image should be provided to the program
via the SetInitialParameters(). This becomes more
of a user interaction issue, since you don't want
Doctors typing the components of a Quaternion:
You can do a simple user interaction in the GUI
for getting a rapid estimation of the rigid part
of the transform. Just by requiring the user to
click on four point on the images you can compute
a firt estimation of the transformation.
A good initialization will make unnecessary many
of the fine tunning efforts that you are facing
right now.
D) You can also be formal and setup a script for
exploring the parameters space for you. Let it
running for a couple of days and then use the
best combinations found as default parameters
for your registration (again, this should be
done modality by modality).
That could be a paper for an Open Access Journal...
if there were one capable to publish source code :-)
Regards,
Luis
--------------------
valli gummadi wrote:
> Hi All,
>
> Our objective is to develop a registration tool which would work on single / muliti modality images.
> We used
> MattesMutualInformationImageToImageMetric
> LinearInterpolateImageFunction
> MultiResolutionImageRegistrationMethod
> RecursiveMultiResolutionPyramidImageFilter
> CenteredAffineTransform
> RegularStepGradientDescentOptimizer
> classes in achieving the above tasks.
>
> We had to fine tune the parameters such as TranslateScale,StepLength,Iterations,Levels etc. for the classes. The parameters had to be modified / fine tuned for each and every dataset. I worked with SPECT SPECT volumes, MR SPECT, and CT PET volumes. We could fine tune the parameters by trial and error method to improve the registration of these datasets.
>
> The problem is that if I need to fine tune these parameters for every dataset by trial and error method it is real tough. Instead We would like to know more about these parameters so that the fine tuning work becomes simpler for us.
> I would like to know the relation between images and the parameters.
> For example, I know the rotation included in the moving image. If i know the parameter which is related with rotation then it will be easy for me to make the application to work for various datasets..
>
>
>
> Thankig you,
> Regards,
> Srivalli.
>