Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

QALAS TR issue for Siemens MRI #680

Closed
cmadjar opened this issue Feb 24, 2023 · 3 comments
Closed

QALAS TR issue for Siemens MRI #680

cmadjar opened this issue Feb 24, 2023 · 3 comments

Comments

@cmadjar
Copy link

cmadjar commented Feb 24, 2023

Describe the bug

For some Siemens Primas syngo MR E11 and a syngo MRI XA30 QALAS datasets, the RepetitionTime field is incorrectly set.

Command run:

dcm2niix_dev_3eeef67e837 -ba n -z y -o ./ TIARK0002_414174_V02_QALAS_DICOMs

Which shows the following message:

Chris Rorden's dcm2niiX version v1.0.20221013  GCC9.4.0 x86-64 (64-bit Linux)
Found 640 DICOM file(s)
Warning: Discrepancy between reported (0.00574s) and estimated (0.9s) repetition time (issue 560).
Convert 640 DICOM as ./TIARK0002_414174_V02_QALAS_VE11E_DICOMs_QALAS3d_1p3mm_R2_20220922170957_18 (176x176x128x5)
Compress: "/bin/pigz" -b 960 -n -f -6 "./TIARK0002_414174_V02_QALAS_VE11E_DICOMs_QALAS3d_1p3mm_R2_20220922170957_18.nii"
Conversion required 4.235218 seconds (1.128302 for core code).

And in the JSON file, the following are set:

        "RepetitionTime": 0.9,
        "RepetitionTimeInversion": 0.00574,

FYI - the correct TR for this acquisition is indeed 0.00574. Not sure where the 0.9 comes from.

I looked at issue #560 and am not sure why this comes up for Siemens' QALAS acquisitions

Version

Let me know if I can provide additional information on this. Thank you!

@neurolabusc
Copy link
Collaborator

dcm2niix creates a BIDS format JSON file, where the term repetitiontime is defined by the BIDS standard. Note that many complex MR sequences can have many different repetition times.

Consider the classic MPRAGE T1-weighted scan. T1 is maximized by minimizing both the TR and the TE. The MPRAGE has a very long TR between inversion pulses, but a very short TR between the shallow (4-12º) α pulses. It is the brief TR of the α pulses that drive the T1 weighting. Unfortunately, different manufacturers use the DICOM Tag Repetition Time (0018,0080) to refer to different repetitions. To resolve this, the BIDS standard defines and disambiguates the fields, e.g. RepetitionTime, RepetitionTimeExcitation and RepetitionTimePreparation.

Note that your sequence is acquiring 5 volumes, and the BIDS RepetitionTime as defined by the time in seconds between the beginning of an acquisition of one volume and the beginning of acquisition of the volume following it is 0.9. With your sequence, the time between the inversion pulses that drive the signal contrast is 0.00574s. Therefore, dcm2niix is preserving the richness of your meta data by extracting the complexity of your data.

You may want to ensure that the software you use to process your images is aware of the BIDS definitions of these terms. The job of dcm2niix is complicated by the fact that sequences often contain many different TRs, manufacturers report TRs differently, different sequences are designed to emphasize different TRs, and many research sequences use manipulations that are not stored in the DICOM files. Therefore, the problem of extracting TRs into BIDS format is often underspecified.

I suggest you push your issue upstream with the tools designers that are processing the QALAS scans to have them generate validation datasets for the different manufacturers that can ensure their tools work robustly. Providing public validation datasets like dcm_qa_stc that provide samples of the same situation for different vendors helps ensure that we can develop robust tools to support the consistent extraction of defined terms.

@gagoski
Copy link

gagoski commented Mar 2, 2023

Thanks @cmadjar for posting this, and @neurolabusc for your reply.

After exploring more, together with @cmadjar we have concluded that the correct TR (i.e. "inner/short TR", between the alpha pulses) is written under the field "RepetionTime" in the json files generated from QALAS scans that have been done on GE, Philips and Siemens XA30A scanners.

For QALAS datasets acquired on Siemens VE11E/C QALAS baselines, the "RepetitionTime" is reported as 0.9. and the "inner/short TR" is reported under "RepetitionTimeInversion". My two comments related to this:

  1. If not reported under "RepetionTime" (like on XA30A Siemens, GE and Philips), It would be more accurate to report the "inner/short TR" as "RepetitionTimeExcitation" and not "RepetitionTimeInversion"
  2. The value of 0.9 is really the difference between two consecutive echo train readouts (some of which are preceded by an inversion pulse or T2 prep module). As @neurolabusc correctly said, the QALAS dataset consists of 5 volumes/contrasts, so these are separated by 0.9s. So this value technically is not a TR. What could be considered as a TR in this case, is the "outer TR" which in this case would be 0.9*5 = 4.5s.

Hope these comments are useful :) It is true that there are always going to be custom sequences that will be have their own specifics and it might be complex sometimes to capture the correct parameter values.

Thank you !
Borjan

@neurolabusc
Copy link
Collaborator

@borjan, feel free to share sample data, either through a public repository or privately to my institutional email. For any DICOM series where there are multiple volumes, dcm2niix should report the TR as the difference between onset times of successive volumes. This is required by the BIDS format. I suspect an issue you may be having is that some of your sequences are saving volumes as separate series (dcm2niix will use the DICOM TR for 3D data) versus a single series (dcm2niix will use the BIDS definition for 4D data).

  1. I agree that for your sequences, it would be accurate to report the short TR as RepetitionTimeExcitation and not RepetitionTimeInversion. A challenge is that the DICOM specification is vague on these topics, and different manufacturers use these terms differently and different sequences from a single manufacturer use them differently. dcm2niix tries to use heuristics based on manufacturer to guess these values, but as the DICOM images are under-specified this is not a perfect method.

  2. I agree that the value 0.9 is not technically the TR as an MR physicist would use for this sequence. However, it is explicitly the definition defined by BIDS. This reflects the BIDS origins in curating fMRI datasets. The JSON file created by dcm2niix is specifically designed to match the BIDS terminology.

Recently, the BIDS steering group has been directly engaging the DICOM working groups to help define enhanced DICOM tags that enable reproducible science. @yarikoptic and @CPernet are two new members of the BIDS steering committee that are part of this process. I think providing unambiguous terminology across manufacturers and sequence is our ultimate aim. In the mean time, we have to recognize that dcm2niix is making educated guesses when faced with ambiguous data, and always attempts to use the BIDS definition of terms.

I do expect that VE11 will be rapidly phased out now that Windows 7 is end of life. However, snug-discuss notes that the XA30 upgrade still has some regressions that makes centers reluctant to upgrade.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants