<div dir="ltr"><div dir="ltr"><div>Hi Romain, <br></div><div><br></div><div>To learn which rotation matrix would be needed, you could load the 
dataset into 3d Slicer and inspect the direction cosine in the Volumes 
module. See <a href="https://download.slicer.org/" target="_blank">https://download.slicer.org/</a><br></div><div><br></div><div>That
 said, considering that VTK is orientation-less (there are no direction 
cosines associated with vtkImageData), building an medical image viewer 
is a significant amount of work. <br></div><div><br></div><div>Also worth noting that there is a proposal to add orientation into vtkImageData but some more validation is needed, see <a href="https://www.slicer.org/wiki/Documentation/Labs/VTK-Orientation" target="_blank">https://www.slicer.org/wiki/Documentation/Labs/VTK-Orientation</a></div><div><br></div><div>Hth</div><div>Jc<br></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Dec 11, 2018 at 8:12 AM Romain LEGUAY <<a href="mailto:romain.leguay@gmail.com">romain.leguay@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hello everyone,<div><br></div><div>I'm trying to create a viewer of dicom with anatomical views (axial, sagittal and coronal) from a radiologist point of view.</div><div><br></div><div>As starting point, I use the example provided in vtkDICOM module : <a href="https://github.com/dgobbi/vtk-dicom/blob/master/Examples/TestDICOMDisplay.cxx" target="_blank">testDicomDisplay</a>. <br></div><div>It uses vtkDICOMReader with SetMemoryRowOrderToFileNative activated.</div><div><br></div><div>When I try to display an axial CT scan, I don't obtain expected orientation as you can see in pic1: the sagittal view is in Posterior -> Anterior direction.</div><div><div><img src="cid:ii_jpjmp4x50" alt="pic1.png" width="542" height="294"><br></div></div><div><br></div><div>When I try to display a sagittal CT scan, I have different orientations:</div><div><div><img src="cid:ii_jpjms77f1" alt="pic2.png" width="542" height="294"><br></div></div><div><br></div><div>To fix this orientation problem, I tried to create some transformation matrices that converts</div><div>Patient Coordinates (DICOM) to World Coordinate (VTK coordinates).</div><div><br></div><div>To do this, I follow those steps:</div><div>* get the patient matrix (Pm) using the method vtkDICOMReader::GetPatientMatrix (if I understand correctly, this matrix is in DICOM space)</div><div>* create the rotation (Rm) from DICOM space to VTK space (rotation on VTK X-axis around the origin point): </div><div>1 0 0 0</div><div>0 -1 0 0</div><div>0 0 -1 0</div><div>0 0 0 1</div><div>* Multiply Pm by Rm to obtain the matrix PRm to go from Patient Coordinates to VTK Coordinates.</div><div>* Use the Matrix PRm with a point in IJK coordinates (voxel coordinates) multiplied by the spacing.</div><div><br></div><div>I know I made a mistake because I don't have the result expected but I don't know what I did wrong...</div><div><br></div><div>Can someone provide me some tips please?</div><div><br></div><div>Thank you,</div><div><br></div><div>Romain</div><div><br></div><div><br></div><div><br></div><div><br></div></div></div></div></div></div></div></div></div>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the VTK FAQ at: <a href="http://www.vtk.org/Wiki/VTK_FAQ" rel="noreferrer" target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br>
<br>
Search the list archives at: <a href="http://markmail.org/search/?q=vtkusers" rel="noreferrer" target="_blank">http://markmail.org/search/?q=vtkusers</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="https://public.kitware.com/mailman/listinfo/vtkusers" rel="noreferrer" target="_blank">https://public.kitware.com/mailman/listinfo/vtkusers</a><br>
</blockquote></div></div>