How to convert dicom image world coordinates into Cartesian coordinates

30 views (last 30 days)
I have coordinates of arteries seed points in world coordinate system how can I convert them to the Cartesian ones, by using the DICOM header information of CTA image.
E.g I have 512x512x299volume of dicom images and Ihave a seedpoint represented in world coordinates say (54.3057 56.3043 78.9999), how could I get the corresponding cartesian coordinate of this world coordinate using header information in Matlab??
  5 Comments
Saman Tariq
Saman Tariq on 8 Dec 2019
Rik Thank you for your help but after subtracting from the ImagePositionPatient tag it still not gives integer values of coordinates.
Rik
Rik on 8 Dec 2019
Are you certain they should be integers?
Contact the person who created those coordinates.

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 8 Dec 2019
I suspect that when you talk about cartesian coordinates, you are referring to row, column, layer coordinates.
Note that typically for images, what you care about is coordinates relative to corner of the volume, rather than absolute coordinates. In such cases, you can typically translate coordinate systems just by knowing the x, y, and z resolution. However, you specifically asked for world coordinates, so you will have to pay attention to the Image Position (0020,0032) and Image Orientation (0020,0037). I have to say, though, that it is very rare to see an imaging scanner with an attached GPS, as would be necessary to work with world coordinates.
  3 Comments
Rik
Rik on 8 Dec 2019
CT is generally the easiest to work with. You only need to worry about the physical dimensions of the voxels. Then you can simply use one corner voxel as the origin, and use the voxel dimensions to translate coordinates in voxel offsets.
Note that the slice thickness sounds like the distance between two slice, but that information is actually encoded in the slice interval (which is an optional tag, so you might have to calculate it from the z position of two slices).
Saman Tariq
Saman Tariq on 8 Dec 2019
@Rik I only wanted to change coordinates my seedpoint (54.3057 56.3043 78.9999) so I don"t know which tag from dicom hearder is used and how it will be done.

Sign in to comment.

Categories

Find more on DICOM Format in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!