[Insight-users] rigid 3d Registration question (still a newbie, feels like )

Atwood, Robert C r.atwood at imperial.ac.uk
Tue Jul 20 16:33:48 EDT 2004


Dear Luis and the list:
As a start at trying my 3d registration, I have looked into example
ImageRegistrationExample8 and the vvITKImageRegistration plugin. I have
found that for my test examples, the volview plugin works better, so I
was looking into the differences in implementation. I already applied
the 

itkNormalizedCorrelationImageToImageMetric

instead of the one originally in Example8.

 

In the following lines, the scales and StepLenght parameters are set,
how did you decide upon these values ?  
If I have a volume where each voxel is 1 unit and the entire volume is
100x100x100, is the value of optimizerScales[3] equal to 1/1000 or 1/10
? 

Also, I am unclear about what the difference between the 'Offset' as in
transform->GetOffset() and the 'Translation' as in versor rigid 3d
transform parameters [3][4][5] ?


Thanks!
Robert



in vvITKImageRegistration.cxx
    316   optimizerScales[0] = 1.0;
    317   optimizerScales[1] = 1.0;
    318   optimizerScales[2] = 1.0;
    319   optimizerScales[3] = 1.0/
    320
(10.0*info->InputVolumeSpacing[0]*info->InputVolumeDimensions[0]);
    321   optimizerScales[4] = 1.0/
    322
(10.0*info->InputVolumeSpacing[1]*info->InputVolumeDimensions[1]);
    323   optimizerScales[5] = 1.0/
    324
(10.0*info->InputVolumeSpacing[2]*info->InputVolumeDimensions[2]);
    325   m_Optimizer->SetScales(optimizerScales);
    326
    327   m_Optimizer->SetMaximumStepLength(1.0);
    328   m_Optimizer->SetMinimumStepLength(0.01);
    329


 In ImageRegistration8.cxx some different values are used:


     332   typedef OptimizerType::ScalesType       OptimizerScalesType;
    333   OptimizerScalesType optimizerScales(
transform->GetNumberOfParameters()         );
    334   const double translationScale = 1.0 / 1000.0;
    335
    336   optimizerScales[0] = 1.0;
    337   optimizerScales[1] = 1.0;
    338   optimizerScales[2] = 1.0;
    339   optimizerScales[3] = translationScale;
    340   optimizerScales[4] = translationScale;
    341   optimizerScales[5] = translationScale;
    342
    343   optimizer->SetScales( optimizerScales );
    344
    345   optimizer->SetMaximumStepLength( 1.000  );
    346   optimizer->SetMinimumStepLength( 0.001 );
    347



More information about the Insight-users mailing list