[Insight-users] Mattes Mutual Information Metric on 2D/3D registration

Lars Friedrich lars-friedrich at gmx.net
Thu Mar 20 09:23:11 EDT 2008


Hello itk-users,

I have two little questions concerning the general compatibility of 
itk::MattesMutualInformationImageToImageMetric (MMI) with 
2D/3D-registration implemented like IntensityBased2D3DRegistration 
(InsightApplications).

1. As I understand it, the MMI determines the bounds for its PDF in its 
::Initialize()-method. FixedImageMin/Max and movingImageMin/Max are 
detected by iterating over the fixed image region (fixed image) and 
buffered image region (moving image). I think that this is a problem for 
2D/3D-registration. Let's say the voxel value range in the moving image 
(3D volume) is 0 .. 255. The itk::RayCastInterpolateImageFunction, which 
acts as the interpolator in this registration approach, integrates the 
voxels along the ray determined by virtual x-ray geometry and therefore 
much higher intensities (in my case approximatly 0 ... 5000) result in 
the image plane. I think that is the reason why my metric function space 
for a rigid 3D transformation looks quite strange - so the MMI 
quantifies the similarity of the fixed and (interpolated) moving image 
w.r.t. a 'sub-PDF' of the 'real' PDF. Am I wrong?

2. If my statement in point 1 would be true: I could extend (inherit 
from itk::MattesMutualInformationImageToImageMetric or whatever) the MMI 
by providing the knowledge of the 'real' moving image intensity range by 
projecting (RayCaster) the 3D-volume (with the initial transformation) 
before and then search for the min/max values in the generated DRR. I 
could then override the internal properties in the MMI ...
But during the registration process the intensity range of the projected 
moving image continuously changes due to changes in the volume's pose 
(transformation). So, does it make sense to call MMI::Intialize() each 
time the tranformation is changed? Or would this rather confuse the 
optimizer?

If anyone of you has information and/or related knowledge on this topic, 
I would be very very grateful for an answer!!

regards,
Lars


More information about the Insight-users mailing list