Search code examples
c#imagedicom

DICOM multiplanar image reconstruction


My problem is, that I have to develop a program, that can open DICOM CT images in C# (without any library) and I should process the axial, coronal and sagittal images as well. I have figured these out, but the coronal and sagittal image reslution is not right. I checked out a million forums and questions, but I just didn't get the right way to find the coronal, sagittal resolutions. If someone can give me a formula or something I would be very happy.

As far as I saw these are the information needed to get the resoltion:

  • Width and Height: 512x512
  • Number of images: 518
  • (0018, 0050) Slice Thickness: 1.25
  • (0018, 0080) Spacing Between Slices: 0.625
  • (0028, 0030) Pixel Spacing: 0.845703 / 0.845703

But I calculate the Spacing Between Slices from the (0020, 0032) Image Position (Patient), which is 0.625 And I don't really know what is the connection between these information, what is the formula to get the right resolution. And my exact question is: What is the resolution of the coronal, and sagittal images?

If you guys need any more information about the slices just let me know. Thank you in advance :)

EDIT: I checked with RadiAnt DICOM Viewer that the coronal/sagittal resolution should be 512x383. If anyone knows the formula why the result is 383. Please let me know. Meanwhile I'll try to figure out myself.


Solution

  • I think I've managed to get a close solution. 1-2 pixels off from the RadiAnt version, but this is the best I could get:

    Coronal image height/Sagittal image width: number of images * spacing between slices / pixel spacing

    For example: 518 * 0.625 / 0.845703 = 382

    RadiAnt image resolution: 512x383. My image resolution: 512x382

    This solution works for some studies I tested with, but not for one or two from the internet. As kritzel_sw said it may vary. Hope this one will help a little for somebody else as well.