<div dir="ltr"><div><div><div>Dear all,<br><br>I read a .mha meta image file using vtkMetaImageReader, then use the input image to initialize a new image, and output with vtkMetaImageWriter. The code is:<br><br>    vtkSmartPointer&lt;vtkMetaImageReader&gt; reader = vtkSmartPointer&lt;vtkMetaImageReader&gt;::New();<br>
    reader-&gt;SetFileName(argv[1]);<br>    reader-&gt;Update();<br>    vtkSmartPointer&lt;vtkImageData&gt; img = reader-&gt;GetOutput();<br><br><br>    vtkSmartPointer&lt;vtkImageData&gt; outImage = vtkSmartPointer&lt;vtkImageData&gt;::New();<br>
    outImage-&gt;SetDimensions(img-&gt;GetDimensions());<br>    outImage-&gt;SetOrigin(img-&gt;GetOrigin());<br>    outImage-&gt;SetSpacing(img-&gt;GetSpacing());<br>    outImage-&gt;SetInformation(img-&gt;GetInformation());<br>
    outImage-&gt;SetNumberOfScalarComponents(1);<br>    outImage-&gt;SetScalarType(img-&gt;GetScalarType());<br>    outImage-&gt;AllocateScalars();<br><br>    vtkSmartPointer&lt;vtkMetaImageWriter&gt; writer = vtkSmartPointer&lt;vtkMetaImageWriter&gt;::New();<br>
    writer-&gt;SetFileName(&quot;aa.mhd&quot;);<br>    writer-&gt;SetRAWFileName(&quot;aa.raw&quot;);<br>    writer-&gt;SetInput(outImage);<br>    writer-&gt;Write();<br><br><br><br></div>But the output image header information is different from the input. The input image has the header:<br>
ObjectType = Image<br>NDims = 3<br>BinaryData = True<br>BinaryDataByteOrderMSB = False<br>CompressedData = False<br>TransformMatrix = 0 1 0 0 0 -1 -1 0 0<br>Offset = 86.6449 -133.929 116.786<br>CenterOfRotation = 0 0 0<br>
AnatomicalOrientation = ASL<br>ElementSpacing = 1 1 1.3<br>DimSize = 256 256 130<br>ElementType = MET_SHORT<br>ElementDataFile = LOCAL<br><br><br><br></div>The output image header is:<br><br>ObjectType = Image<br>NDims = 3<br>
BinaryData = True<br>BinaryDataByteOrderMSB = False<br>CompressedData = True<br>CompressedDataSize = 16584<br>TransformMatrix = 1 0 0 0 1 0 0 0 1<br>Offset = 86.6449 -133.929 116.786<br>CenterOfRotation = 0 0 0<br>ElementSpacing = 1 1 1.3<br>
DimSize = 256 256 130<br>AnatomicalOrientation = ???<br>ElementType = MET_SHORT<br>ElementDataFile = aa.raw<br><br><br></div>The AnatomicalOrientation and TransformMatrix are different...<br><br>Could I get some advice on how to copy the input image&#39;s such info to the output image?<br>
<br>Thank you!<br><br>Best,<br>yi<br></div>