<HTML>
<HEAD>
<TITLE>Re: [Insight-users] Difference between 3.4 and 3.14 for MattesMutualInformation Registration ?</TITLE>
</HEAD>
<BODY>
<FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Uma,<BR>
<BR>
In 3.14 there were several bug fixes that allow the methods to work with oriented images. &nbsp;<BR>
<BR>
If you have the opportunity, I&#8217;d recommend the following CMakeFlags to get the best performance, and the proper interpretation of image physical space for oriented images:<BR>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_OPTIMIZED_REGISTRATION_METHODS:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_REVIEW:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_TRANSFORM_IO_FACTORIES:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_ORIENTED_IMAGE_DIRECTION:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_IMAGE_BEHAVES_AS_ORIENTED_IMAGE:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_PORTABLE_ROUND:BOOL=ON \<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-DITK_USE_CENTERED_PIXEL_COORDINATES_CONSISTENTLY:BOOL=ON \<BR>
<BR>
You may want to look at the project that we&#8217;ve used extensively to do this for brain images:<BR>
<a href="http://www.nitrc.org/projects/multimodereg/">http://www.nitrc.org/projects/multimodereg/</a><BR>
<BR>
In creating the BRAINSFit package, we developed an extensive test suite to ensure that the registrations are occurring properly for a wide class of image physical space orientations.<BR>
<BR>
Hans<BR>
<BR>
<BR>
<BR>
On 3/28/10 6:57 AM, &quot;Uma Ranjan&quot; &lt;<a href="usranjan@gmail.com">usranjan@gmail.com</a>&gt; wrote:<BR>
<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Hi Luis,<BR>
 <BR>
 No, the images have (1,0,0/0,1,0/0,0,1) as direction cosines. Also, the images are from an in-line system which has identical slice spacing, so they are more or less registered already. I found that the 1.3 version of the same optimizer gave much better results. <BR>
 <BR>
And no - I have not turned ON REVIEW or ITK_USE_OPTIMIZED_REGISTRATION_METHODS. Will they help ? I only found that I was not setting the direction in the resampler, but setting it only made things worse for the rotation values.<BR>
 <BR>
regards<BR>
uma<BR>
<BR>
On Sat, Mar 27, 2010 at 11:32 PM, Luis Ibanez &lt;<a href="luis.ibanez@kitware.com">luis.ibanez@kitware.com</a>&gt; wrote:<BR>
</SPAN></FONT><BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'>Hi Uma,<BR>
<BR>
Do your images have Orientation ?<BR>
<BR>
That is, the value of their Direction matrix,<BR>
is it different from Identity ?<BR>
<BR>
If so, the behavior of ITK 3.14 will be more<BR>
appropriate than the behavior of ITK 3.4.<BR>
<BR>
Also:<BR>
<BR>
Have you turned ON the use of the REVIEW<BR>
directory ?<BR>
<BR>
are you using the flag<BR>
<BR>
ITK_USE_OPTIMIZED_REGISTRATION_METHODS  ?<BR>
<BR>
<BR>
---<BR>
<BR>
To assist you better, we will need more details<BR>
about the registration that you are performing.<BR>
<BR>
<BR>
     Thanks<BR>
<BR>
<BR>
            Luis<BR>
<BR>
<BR>
-----------------------------------------------------------------------<BR>
On Sat, Mar 27, 2010 at 1:26 PM, Uma Ranjan &lt;<a href="usranjan@gmail.com">usranjan@gmail.com</a>&gt; wrote:<BR>
&gt; Dear all,<BR>
&gt;<BR>
&gt;<BR>
&gt;  I see a difference in the transform values (and visual performance) between<BR>
&gt; ITK 3.4 and 3.14 versions for the same images and identical parameters.<BR>
&gt;<BR>
&gt;<BR>
&gt;<BR>
&gt;  I use VersorRigid3DTransform  with LinearInterpolateImageFunction as<BR>
&gt; interpolator,  MattesMutualInformationImageToImageMetric as metric and<BR>
&gt; VersorRigid3DTransformOptimizer as optimizer.<BR>
&gt;<BR>
&gt; The performance seemed to be better in 3.4. Is there anything additional<BR>
&gt; that I need to specify between the two versions ?<BR>
&gt;<BR>
&gt; I have set the following parameters for the optimizer :<BR>
&gt;    SetScales(optimizerScales), setMaximumStepLength(.),<BR>
&gt; setMinimumStepLength(.),SetNumberOfIterations(.), setRelaxationFactor(.),<BR>
&gt; MinimizeOn() ;<BR>
&gt;<BR>
&gt; For the Metric, I set the following :<BR>
&gt;<BR>
&gt;  SetNumberOfHistogramBins(), SetNumberOfSpatialSamples(.),<BR>
&gt; ReiniitalizeSeed(.),<BR>
&gt;<BR>
&gt; Best regards<BR>
&gt;<BR>
&gt; Uma Ranjan<BR>
&gt;<BR>
&gt; _____________________________________<BR>
&gt; Powered by www.kitware.com &lt;<a href="http://www.kitware.com/">http://www.kitware.com/</a>&gt; <BR>
&gt;<BR>
&gt; Visit other Kitware open-source projects at<BR>
&gt; <a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><BR>
&gt;<BR>
&gt; Kitware offers ITK Training Courses, for more information visit:<BR>
&gt; <a href="http://www.kitware.com/products/protraining.html">http://www.kitware.com/products/protraining.html</a><BR>
&gt;<BR>
&gt; Please keep messages on-topic and check the ITK FAQ at:<BR>
&gt; <a href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a><BR>
&gt;<BR>
&gt; Follow this link to subscribe/unsubscribe:<BR>
&gt; <a href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a><BR>
&gt;<BR>
&gt;<BR>
</SPAN></FONT></BLOCKQUOTE><FONT FACE="Calibri, Verdana, Helvetica, Arial"><SPAN STYLE='font-size:11pt'><BR>
<BR>
<HR ALIGN=CENTER SIZE="3" WIDTH="95%"></SPAN></FONT><FONT SIZE="2"><FONT FACE="Consolas, Courier New, Courier"><SPAN STYLE='font-size:10pt'>_____________________________________<BR>
Powered by www.kitware.com<BR>
<BR>
Visit other Kitware open-source projects at<BR>
<a href="http://www.kitware.com/opensource/opensource.html">http://www.kitware.com/opensource/opensource.html</a><BR>
<BR>
Kitware offers ITK Training Courses, for more information visit:<BR>
<a href="http://www.kitware.com/products/protraining.html">http://www.kitware.com/products/protraining.html</a><BR>
<BR>
Please keep messages on-topic and check the ITK FAQ at:<BR>
<a href="http://www.itk.org/Wiki/ITK_FAQ">http://www.itk.org/Wiki/ITK_FAQ</a><BR>
<BR>
Follow this link to subscribe/unsubscribe:<BR>
<a href="http://www.itk.org/mailman/listinfo/insight-users">http://www.itk.org/mailman/listinfo/insight-users</a><BR>
</SPAN></FONT></FONT></BLOCKQUOTE>
</BODY>
</HTML>