<span class="gmail_quote"></span>Hi,<br>
<div>
<br>
I am using VersorRigid3DTransform to register two 3D volumes with
MutualInformationImageToImageMetric. The parameters I am setting are as follows: <br>
<br>
metric->SetFixedImageStandardDeviation( atof(argv[7]) ); //0.4<br>
metric->SetMovingImageStandardDeviation( atof(argv[8]) ); //0.4<br>
metric->SetNumberOfSpatialSamples( atof(argv[9]) ); // 100<br>
<br>
typedef OptimizerType::ScalesType OptimizerScalesType;<br>
OptimizerScalesType optimizerScales( transform->GetNumberOfParameters() );<br>
const double translationScale = 1.0 / atof(argv[11]); // was 1000<br>
<br>
float optimizerScale = atof(argv[10]); // was 1<br>
<br>
optimizerScales[0] = optimizerScale;<br>
optimizerScales[1] = optimizerScale;<br>
optimizerScales[2] = optimizerScale;<br>
optimizerScales[3] = translationScale;<br>
optimizerScales[4] = translationScale;<br>
optimizerScales[5] = translationScale;<br>
<br>
optimizer->SetScales( optimizerScales );<br>
<br>
optimizer->SetMaximumStepLength( atof(argv[4]) ); //was 0.2000 <br>
optimizer->SetMinimumStepLength( atof(argv[5]) ); //was 0.0001 <br>
<br>
optimizer->SetNumberOfIterations( atoi(argv[6]) ); //was 200 <br>
<br>
optimizer->MaximizeOn();<br>
<br>
<br>
I am using CenteredTransformInitializer to initialize center for
registration. When registration is perfomed, only rotation parameters
are changed during registration, however only fractional translation
such as 0.01 is observed. I tried changing translation scale maximum
and minimum step length but it is not translating at all and only
rotation is effected by change of these paremeters. <br>
<br>
I used following parameters<br>
<br>
Fixed.mha Moving.mha Registered.mha 0.1 0.01 100 0.4 0.4 2000 1 1<br>
0.1 = Max Step Length<br>
0.01 = Min Step Length<br>
100 = Iterations<br>
0.4 = Fixed SD<br>
0.4 = Moving SD<br>
2000 = bins<br>
1 = translation scale <br>
1 = optimizer scale<br>
<br>
Which resulted in no chnage in translation <br>
<br>
0 0.0646858 [-0.0125372, -0.0222413, 0.0704458, -9876.84, -9834.56, 9869.13]<br>
<br>
1 0.0575174 [-0.00579253, -0.0163355, 0.0340948, -9876.84, -9834.56, 9869.13<br>
]<br>
2 0.0579627 [-0.0332293, 0.00705638, 0.0237937, -9876.84, -9834.56, 9869.13]<br>
<br>
3 0.05574 [-0.0502068, 0.0262169, -0.0035953, -9876.84, -9834.56, 9869.13]<br>
4 0.070265 [-0.0734341, 0.0536047, -0.0140631, -9876.84, -9834.56, 9869.13]<br>
5 0.0551803 [-0.0578176, 0.0849285, -0.000649574, -9876.84, -9834.56, 9869.1<br>
3]<br>
6 0.0417816 [-0.0477029, 0.0848597, 0.0354581, -9876.84, -9834.56, 9869.13]<br>
7 0.0451694 [-0.0409363, 0.090942, 0.0190652, -9876.84, -9834.56, 9869.13]<br>
8 0.0616735 [-0.0335143, 0.0856553, 0.0211531, -9876.84, -9834.56, 9869.13]<br>
9 0.0351133 [-0.0260303, 0.0912713, 0.021662, -9876.84, -9834.56, 9869.13]<br>
<br>I changed translation scale from 0.0001 to 1000 and same for optimizer scale but no difference. Any suggestion.<br></div><div><span class="sg">
<br>
Matt <br>
<br>
</span></div>