[Insight-users] Bug (?) in MultiResolutionImageRegistrationMethod (FixedImageRegion issue)

Luis Ibanez luis.ibanez@kitware.com
Mon, 16 Sep 2002 08:52:25 -0400


Hi Luc,

You are right, the MultiResolutionImageRegistrationMethod is
setting the FixedImageRegion to the size of the BufferedRegion
and overriding the user setting.

You are also right about the need for adapting the region size
according to the scale fo the pryramid level.

I'm doing these modifications and will let you know when they
are ready (it shouldn't take too long).


Thanks for pointing this out.


Luis


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

Luc Bracoud wrote:

> Hi,
> 
> I've been using ITK for a few months in order to register various type 
> of data, through a pipeline inspired from MultiResMIRegistration example.
> I've always been registering "full" images so far (the FixedImageRegion 
> being set to the BufferedRegion), and the results were great (after 
> "some" parameters tuning.... :-)).
> But now that I try to register images over reduced regions, I notice 
> that there's no difference between results no matter which 
> FixedImageRegion I set.
> 
> Invoking metric->DebugOn(), i realized that my FixedImageRegion settings 
> were not taken into account (another call to SetFixedImageRegion was 
> made) .
> After having a look at the code, I saw that the reason of this problem 
> is that I set the FixedImageRegion when an IterationEvent is generated 
> by MultiResolutionImageRegistrationMethod::StartRegistration level-loop, 
> but a further call to MultiResolutionImageRegistrationMethod::Initialize 
> forces FixedImageRegion back to its maximum size 
> (m_Metric->SetFixedImageRegion(m_FixedImagePyramid->GetOutput(m_CurrentLevel)->    
> GetBufferedRegion() );).
> 
> This means user settings concerning FixedImageRegion will never be taken 
> into account.
> Furthermore, as it is necessary to adapt the FixedImageRegion to each 
> level (shrinking it according to the shrink factors of the current 
> level), I think the MultiResolutionPyramidImageFilter should somehow 
> have the ability to generate an ImageRegion according to an input 
> ImageRegion, the current level, and its shrink factors at this level. 
> And then the RegistrationMethod could take this into account when 
> setting the metric parameters.
> 
> Could you please tell me if I'm right and it's indeed an ITK bug, or if 
> I just missed something along the way?? (maybe are we meant to manually 
> set the BufferedRegion of each pyramid level)
> (and if it's a bug, I'd of course be very grateful if anyone could fix 
> it :-))
> 
> Thanks for reading me.
> Luc.
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users@public.kitware.com
> http://public.kitware.com/mailman/listinfo/insight-users
>