[Insight-users] rigid2D registration fails to rotate images

Richard Beare richard.beare at gmail.com
Fri Mar 5 19:56:55 EST 2010


Good initialization is essential for all registration, with the
rotation component often the most critical. If the rotation is greater
than 15 degrees then you're probably going to have trouble.

If you're trying to build an automated process rather than a one off,
then here are some options.

Moments based initialization as a first step. This is good if the
scene is reasonably simple, or you have masks defining the regions of
interest. You can check how similar the major moments are. If they are
sufficiently dissimilar then the initialization is likely to be
accurate along the major axis, but potentially flipped. In this case
you need to try both options and select the one that gives the best
resulting cost. If the moments are similar then the initialization
will be unreliable and sensitive to small changes, so you need to try
a series of angles covering the entire 360 degrees and select the best
result as defined by your cost metric.

On Sat, Mar 6, 2010 at 11:45 AM, Darren Weber
<darren.weber.lists at gmail.com> wrote:
>
> I've got a couple of images that clearly need nearly 180 degree rotation for
> registration, see:
> ftp://anonymous@ftp.buckinstitute.org/dweber/section0004_w1.tif
> ftp://anonymous@ftp.buckinstitute.org/dweber/section0005_w1.tif
> The registration fails to rotate the images into alignment.  I'm using:
> // Registration components
> #include "itkImageRegistrationMethod.h"
> #include "itkMeanSquaresImageToImageMetric.h"
> #include "itkLinearInterpolateImageFunction.h"
> #include "itkRegularStepGradientDescentOptimizer.h"
> // Transforms
> #include "itkCenteredRigid2DTransform.h"
> #include "itkCenteredTransformInitializer.h"
>
> What can I do about it?  Have I selected the wrong transform for rotations?
> I've prepared a package of my test program and data for download here:
> ftp://anonymous@ftp.buckinstitute.org/dweber/itkRegistrationTest.tar.gz
> The program is built against ITK 3.16 (and it uses Boost).
> TIA,
> Darren
>
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://www.kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users
>
>


More information about the Insight-users mailing list