[Insight-users] Mutual Information based Registration on different ROIs for moving and fixed images

Luis Ibanez luis.ibanez at kitware.com
Tue Jun 30 11:08:25 EDT 2009


Hi Sharath,

Thanks for the clear description of the problem that you are facing.


The simplest way of restricting the computation of the metric to
a region of the image is to set the "FixedImageRegion".


The typical call will look like

    registration->SetFixedImageRegion( fixedRegion );


You will find many examples of this call in programs in the
directory:

               Insight/Examples/Registration


Using the FixedImageMask is also a way of restricting the
computation of the metric to use a subset of the pixels in
the fixed image, but it is more expensive in computation
time that just setting the FixedImageRegion.  Masks are
justified when the region that you want to focus on, is not
a rectangular region, but, has an irregular shape.


For this to work, it is *VERY* important that you set
correctly the origin of the child image.

In principle the origin should be set in such a way that
if you render both images in physical space, the child
image will overlap to the correct location in the parent
image.

This will be done correctly by the RegionOfInterest
image filter, for example.

If you have not set the origin of the child image this
way, then you should have to initialize properly the
translation of the Transform that you are using (Affine
in your case).

When you compute this Translation please keep in
mind that *ALL* the registration process is performed
in Physical Units, and never in pixel units. Therefore
the translation should take into account the origin of
both images, and the pixel spacing of both images.


If you need help with this calculation, please post
to the mailing list the values of Origin and Pixel
Spacing of both images.

Also, please post the values of the Direction matrix
(the direction cosines of the image) since they will
matter for the computation of the Translation in
Physical Space.

---

Just FYI, you can use different masks for the
FixedImage and the Moving image by calling the
methods


    SetFixedImageMask()
    SetMovingImageMask()

That, said, please note that you probably don't
need to use Masks here, and you should be able
to do this by simply setting properly the call for
SetFixedImageRegion().



       Regards,


               Luis


--------------------------------------------------------------------------
On Mon, Jun 29, 2009 at 10:30 PM, Sharath Venkatesha <sharath20284 at yahoo.com
> wrote:

>
> Hi,
>
> I am trying to register 2 images  - the first is a parent image (2000 *
> 2000 pixels) and the second is a child image ( 640* 480 pixels) which is any
> sub-part of the parent image.
>
> I am using the following combination:
>
> MutualInformationHistogramImageToImageMetric +
> MultiResolutionImageRegistrationMethod + AffineTransform +
> RegularStepGradientDescentOptimizer
>
> **** How can I adapt to take only a specified ROI in the parent image and
> full child image for Mutual Information calculation?
>
> I tried to use SetFixedImageMask() with a mask image (size of parent image,
> with only the ROI having non-zero values) and set the metric.  It failed
> with an exception.
>
> **** I assume this mask applied for both fixed and moving images. How can I
> apply different masks for fixed and moving images?
>
> Image Details:
> Moving Image (child image) : 640*480
> Fixed Image(parent image): 2000*2000
> Approximate start of corresponding area of moving image in fixed image (
> top-left) (x,y) = (600,800)
> Approximate area of mask ROI (area to be considered for MI in the Fixed
> image) : 1200 * 800
>
>
> **** What initial translation values and transform center should I use for
> initializing AffineTransform ?
>
> **** How can I determine the approximate start point and region in the
> parent image for calculation Mutual Information ? ( As of now, I am assuming
> these values)
>
> Thanks,
>
> Sharath Venkatesha
>
>
>
>
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20090630/b7decf3c/attachment.htm>


More information about the Insight-users mailing list