openmrslab / suspect

MRS processing tools
https://suspect.readthedocs.io/en/latest/
MIT License
31 stars 23 forks source link

Support loading RDA from Siemens XA60 #173

Open darrencl opened 1 month ago

darrencl commented 1 month ago

Suspect currently couldn't read a RDA format coming from Siemens XA60 software version.

Upon further inspection, some of the headers are changed, particularly the Siemens' VOI info.

In the old RDA, there are VoiPosition, VoiNormal, etc., but in the new RDA it was replaced by Slab and MidSlab, which are both 2D arrays.

VoiPosition, VoiNormal, etc. contain the information related to Voxel and if I recall correctly, VOI stands for "Volume of Interest". This is the same with what Siemens uses in the TWIX data. Suspect needs these VOI info in order to construct the MRS object.

When looking into accompanying DICOM files, the CSA header is also removed. Instead, it uses Slab and MidSlab info as well. As for DICOM, we can use the suspect.io.load_dicom instead of suspect.io.load_siemens_dicom, although that means we won't be able to run the to_scanner() method.

We will need to translate the voxel info in suspect's MRS object metadata to use Slab and MidSlab instead of the old VOIs. This means, we might also be able to add the transform to the general DICOM reader (suspect.io.load_dicom).

By googling, Slab and MidSlab are in the DICOM standard. See: https://dicom.innolitics.com/ciods/mr-spectroscopy/mr-spectroscopy/00189126