-
Notifications
You must be signed in to change notification settings - Fork 228
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
DICOM volume converted to NIfTI as a series with both hemispheres #556
Comments
@mr-jaemin can you help me resolve this? This is an example of a ZIP2 acquisition. Typically we detect ZIP2 using two conditionals:
The issue with the data from @ghisvail is that the tag LocationsInAcquisition is not present in the dataset. Due to this, dcm2niix assumes the data is not ZIP2, and assumes that any discrepancy between 0018,0050 and 0018,0088 reflect a spatial gap between neighboring slices. Here are the relevant tags from this series:
This series would be correctly converted if we relax the ZIP2 detection removing the conditional:
But I suspect this would have widespread unintended consequences for non-ZIP2 images where a slice gap is present. To my eye, this looks like an old dataset using a very old GE software version. Is there any trick to robustly detecting ZIP2? @ghisvail dcm2niix aspires to convert all DICOMs, regardless of the acquisition. I presume this is a very early implementation of ZIP2, and it is unclear if we can automatically detect this without profound consequences to correctly specified DICOM images. If this is a one-off conversion of archival data, I would suggest patching dcm2niix as I describe above to handle this unusual data. As ever, when planning new acquisitions, I would always recommend not artificially interpolating data to a higher resolution (e.g. ZIP2). From my perspective, this artificially increases disk requirements, slows processing and is incompatible with some post processing. |
@mr-jaemin perhaps one solution would be to detect ZIP2 if SliceThickness |
As always, thank you very much Chris for your prompt replies. I understand the challenges on your end, please take your time to work on a proper fix. Meanwhile I'll compile a custom version with the fix you suggested for converting this specific dataset.
Sadly, we have no control over the exam protocol which produced this dataset. |
It is pretty unusual, true, but one could do it to increase SNR (having thicker slices than without overlap); if the slice excitation time between overlapping slices is long enough, there would be no cross-talk. |
One solution would be to read GE Protocol Data Block (0025,101B), particularly "IOPT". This data includes "ZIP2" string as shown below:
|
@ghisvail can you test out the latest commit to the development branch, I think it resolves this issue. I added a new check that counts the number of times a spatial position is repeated in a dataset. If this does not match the number of volumes in the dataset and the data is from GE, it will determine if ZIP2 can resolve the issue. If there is still a conflict, a warning is generated. This is a more generalized solution than what @mr-jaemin suggested, and can help detect other errors. @ghisvail do you have the bandwidth to help with updating the MRIcron Debian release to the latest version and supporting QT5 (vs GTK2)? I have been delaying releasing v1.2.20211006 until this is resolved. If you are too busy, I can send a request to the Debian medical team. |
Le jeudi 11 novembre 2021 à 05:07 -0800, Chris Rorden a écrit :
@ghisvail can you test out the latest commit to the development
branch, I think it resolves this issue. I added a new check that
counts the number of times a spatial position is repeated in a
dataset. If this does not match the number of volumes in the dataset
and the data is from GE, it will determine if ZIP2 can resolve the
issue. If there is still a conflict, a warning is generated. This is
a more generalized solution than what @mr-jaemin suggested, and can
help detect other errors.
Sounds good. I can test that and report tomorrow.
@ghisvail do you have the bandwidth to help with updating the MRIcron
Debian release to the latest version and supporting QT5 (vs GTK2)? I
have been delaying releasing v1.2.20211006 until this is resolved. If
you are too busy, I can send a request to the Debian medical team.
The team is pretty busy at the moment, myself included.
I could aim for some time in December.
|
I confirm it does 👍 Thank you so much Chris! |
Hi Chris,
Describe the bug
I have a DICOM consisting of a single brain volume acquired with a spoiled gradient echo sequence on a GE scanner. After successful conversion, the resulting NIfTI volume contains a series consisting of two half-volumes covering each hemisphere instead of a single volume.
To reproduce
T13D.zip
dcm2niix -z y .
inside the DICOM folder.The logs should display:
Take notice of the dimensions parsed by dcm2niix (256x256x82x2) versus the actual ones (256x256x164).
The DICOM file is rendered properly as a single volume.
The NIfTI file is detected as a series of 2 volumes.
Output log
log.txt
Version
dcm2niiX version v1.0.20211006 Clang13.0.0 x86-64 (64-bit MacOS)
Let me know if you need further information or if I missed something.
Cheers,
Ghis
The text was updated successfully, but these errors were encountered: