Attenuation correction using .hdr format?

Dear CASToR users,

I’ve generated an attenuation map of the phantom using DICOM images (CT) in MATLAB. I managed to save the linear attenuation coefficients (cm^-1) in interfile (.hdr header and .img data) format. Then, I fed these files in castor reconstruction using ‘-atn atten_map.hdr’ command. But I could not able to perform the attenuation correction correctly. Attached is the screenshot of errors that generated during the reconstruction. Do I have to convert the attenuation map data in castor file format?

Any help will be appreciated. Thank you.




Sorry for the late answer but the mailing list seemed stuck for a while.

From your screenshot it seems that your .hdr file is not correct, it does not contain enough information. You can look at the .hdr files generated when reconstructing the benchmarks, to see what fields are missing in your .hdr.

The interfile format is actually very simple, .img is a simple binary file, though the order of writing elements of a multidimensional matrix should be C-style. In Matlab, the order is not C-style by default I think, but you can find information about the writing order on the internet. The .hdr file is a simple text file, you can open it with any text editor and add the required fields and information about the image.

Hope this helps,


Dear Ashok,

It looks like there is an issue with your interfile header. I attached an example of an interfile header working with CASToR. You could also see the required key in chapter 8 of the documentation.

Let me know if you still encounter issues.

Best regards,

NEMA_mumap_175x175x125_2x2x2_filtered.hdr (732 Bytes)