nipy / heudiconv

Flexible DICOM conversion into structured directory layouts
https://heudiconv.readthedocs.io
Other
235 stars 125 forks source link

Support for Single Voxel Spectroscopy #381

Open c42f opened 5 years ago

c42f commented 5 years ago

Hi guys, we're working on curating a dataset containing a mixture of MRI and single voxel MRS data acquired on Siemens scanners (primarily Siemens Prisma).

Currently the BIDS standard doesn't have a section dealing with MRS data, but there is a draft available.

Our current plan is to write a standalone script which augments an existing BIDS dataset according to the above proto-standard. We're wondering whether you would consider having code for this in heudiconv itself, and if so how it would best be integrated. I feel that it could be useful to have some code publicly available to do this (perhaps it could spur the completion of this part of the standard which appears to have stalled?)

There are some challenges for this project

For reading MRS data, there is the python library suspect which seems dormant but somewhat maintained. Or we could just start out with something simple which unpacks the CSA header directly from the DICOM.

Any thoughts about how to move forward would be gratefully appreciated!

CC @darrencl

mgxd commented 5 years ago

hi @c42f

With all the different BIDS extensions popping up, feature creep is looming... the standalone script idea sounds good to me. Ideally it could be used complementary with heudiconv.

we could just start out with something simple which unpacks the CSA header directly from the DICOM.

we are currently doing this here:

https://github.com/nipy/heudiconv/blob/bad781a6e4ef6aba1400c7b56170efdfd326da17/heudiconv/dicoms.py#L492-L511

Though it might be a good time to extract that bit from here / dcmstack and add it into nibabel proper.

yarikoptic commented 2 years ago

Thank you @c42f for this issue. Now that it aged, and hopefully MRS got a bit more formalized in BEP022 (BIDS issue: https://github.com/bids-standard/bids-specification/issues/680) and said to be moving into BIDS specification some time soonish, might be good time to start working on its support. And thanks for suspect reference -- it is indeed seems to be maintained, so I would vot to contribute to it and integrate instead of redoing related functionality in heudiconv.

May be for starters we should get some typical data samples from Siemens and Philips and start bolting on its support? I would be really interested to see how it could fit into https://github.com/nipy/heudiconv/blob/master/heudiconv/heuristics/reproin.py heuristic.

CC might be of interest also for @dnkennedy

pvelasco commented 2 years ago

Here (spec2nii) is another spectroscopy-to-nifti converter listed in the dcm2niix README.md.

yarikoptic commented 2 years ago

oh, nice find @pvelasco and kudos to @wtclarke for working on spec2nii. sample data for spec2nii seems under git LFS on https://git.fmrib.ox.ac.uk/wclarke/spec2nii_test_data .

c42f commented 2 years ago

Hey thanks for the replies here, spec2nii looks pretty great. I'm not working on anything related to MRS (or indeed, MR) anymore, so I'll defer the design and implementation of this to others :-)

wtclarke commented 2 years ago

Hi Everyone,

Happy to support something utilising spec2nii if needed, or conversely help get some utility into spec2nii if it's desired. Re the BIDS specification, its moving forwards slowly with a multi-centre study soon to pilot its use for SVS data.