<br>Hi Wenjia,<br><br><br>Yes, <br>this is the default orientation for Analyze images.<br><br><br>   Regards<br><br><br>       Luis<br><br><br>---------------------------<br><div class="gmail_quote">On Sat, Aug 15, 2009 at 10:15 AM, wenjia <span dir="ltr">&lt;<a href="mailto:wenjia@robots.ox.ac.uk">wenjia@robots.ox.ac.uk</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Dear all,<br>
<br>
I have just found that when ITK reads an Analyze image with unknown orientation, it does not set the default image direction to identity. Instead, it sets the direction to<br>
<br>
 [1 0 0<br>
  0 0 -1<br>
  0 1 0].<br>
<br>
I am wondering why it uses this direction as default. Is this direction defined in any Analyze format standard? Is it possible to change the default to an identity matrix since it is easy to cope with?<br>
<br>
I have put a test Analyze file on the website: <a href="http://www.robots.ox.ac.uk/%7Ewenjia/data/" target="_blank">http://www.robots.ox.ac.uk/~wenjia/data/</a><br>
<br>
In addition, my ITK version is 3.14. I am using the following code for reading the direction,<br>
<br>
#include &quot;itkImage.h&quot;<br>
#include &quot;itkImageFileReader.h&quot;<br>
<br>
int main(int argc, char *argv[])<br>
{<br>
  // Check the number of input arguments<br>
  if(argc &lt; 2){<br>
    std::cout &lt;&lt; &quot;Read an image and show its direction&quot; &lt;&lt; std::endl;<br>
    std::cout &lt;&lt; &quot;Usage: &quot; &lt;&lt; argv[0] &lt;&lt; &quot; image&quot; &lt;&lt; std::endl;<br>
    return -1;<br>
  }<br>
<br>
  const char *filename = argv[1];<br>
<br>
  // Read the image<br>
  const unsigned int Dimension = 3;<br>
  typedef double InternalPixelType;<br>
  typedef itk::Image&lt;InternalPixelType, Dimension&gt; ImageType;<br>
  typedef itk::ImageFileReader&lt;ImageType&gt; ImageReaderType;<br>
<br>
  ImageReaderType::Pointer reader = ImageReaderType::New();<br>
  reader-&gt;SetFileName(filename);<br>
  reader-&gt;Update();<br>
  ImageType::Pointer image = reader-&gt;GetOutput();<br>
<br>
  // Show the direction<br>
  std::cout &lt;&lt; &quot;The image direction is:&quot; &lt;&lt; std::endl;<br>
  std::cout &lt;&lt; image-&gt;GetDirection() &lt;&lt; std::endl;<br>
<br>
  return 0;<br>
}<br>
<br>
<br>
Many thanks,<br>
Wenjia<br>
--<br>
Wenjia Bai<br>
D.Phil Student<br>
Wolfson Medical Vision Laboratory<br>
Department of Engineering<br>
University of Oxford<br>
_____________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at: <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">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" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
</blockquote></div><br>