I’m trying to convert DICOM data from a preclinical scanner of the company Mediso. Conversion works in general, but while the b-value is detected correctly, the directions in the gradient table are all
0 0 0.
I can see in the DICOM data, that the directions are stored in
0018,9089. But this tag seems to be nested under
FFFE,E000? Perhaps this nesting is the problem?
[DCM] 0018 9076 SQ 40 2258 > DiffusionGradientDirectionSequence
[DCM] FFFE E000 UN 32 2270 - Item
[DCM] 0018 9089 FD 24 2278 DiffusionGradientOrientation 0.93754 -0.34099 -0.068877
Your help would be very much appreciated!
I’ve had a quick look into this, I think the issue is that the code in MRtrix expects this information to be stored in a multiframe DICOM, but it looks like this is a single-frame DICOM. I can probably fix this, but I’d be very concerned about breaking DICOM import in other contexts… If you can share some of these datasets, I could look into it and see if I can modify the code to support these types of data without breaking everything else… Would that be possible?
Thank you, Donald, for looking into this. Sure, happy to share a dataset. Will send you a download link via direct message.
Thanks again, Marco
Thanks for the data. It’s as I thought, and this requires quite a deep change to the way we handle DICOM (mostly conceptually – the change to the code itself is relatively minor). I’ve created a pull request for it, which you can find here. If you’re comfortable compiling from source, please check it out and have a go. I’m a bit hesitant to merge it to the main codebase too early given how critical correct DICOM handling is to everything, so it might take a while before this makes it out to release…
Just compiled the branch and can confirm that it works. Thanks a lot for adding this so quickly!