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

BIDS json file doesn't contain MultiBandAccelerationFactor for DWI sequences #141

Closed
mvdoc opened this issue Nov 2, 2017 · 8 comments
Closed

Comments

@mvdoc
Copy link

mvdoc commented Nov 2, 2017

Hi,
using heudiconv I realized that for DWI sequences dcm2niix doesn't store the field MultiBandAccelerationFactor. See nipy/heudiconv#110 for more info.

The information seem to be present in the dicom headers though (assuming I'm looking at the right field):

GRAPPA 2 (in this case the json file contains "ParallelReductionFactorInPlane": 2 correctly)

[bids@rolando test_dwi_dcm2niix] > grep 0051,1011 dump_dwi_grappa.txt
(0051,1011) LO [p2]                                     #   2, 1 Unknown Tag & Data

SMS 4

[bids@rolando test_dwi_dcm2niix] > grep 0051,1011 dump_dwi_sms.txt
(0051,1011) LO [s4]                                     #   2, 1 Unknown Tag & Data

This is the version we're using

bids@rolando:~/test_dwi_dcm2niix$ dcm2niix
Compression will be faster with 'pigz' installed
Chris Rorden's dcm2niiX version v1.0.20170923 (OpenJPEG build) GCC6.3.0 (64-bit Linux)
@neurolabusc
Copy link
Collaborator

I see you are using v1.0.20170923 - can you test to see if the latest release also has this problem. dcm2niix should read multiband directly from the CSA header rather than relying on the DICOM header. If there is still a problem, I would guess it is because you are using the Siemens SMS product rather than the CMRR sequences. I do not have the Siemens SMS license, so if this is the case I would be grateful if you could send me a sample dataset to examine.

@mvdoc
Copy link
Author

mvdoc commented Nov 3, 2017

I can confirm that with the latest release the MultiBand field is not reported. I'm emailing you a sample dataset of the DWI without acceleration/with grappa/with sms.

Thanks!

@neurolabusc
Copy link
Collaborator

Thanks for the example. If you compile the latest source code you will get v1.0.20171103 - this will detect multi-band from 0051,1011 if the CSA tag MosaicRefAcqTimes is missing. However, note that without MosaicRefAcqTimes you will not get slice timing parameters. The fact that MosaicRefAcqTimes is a defect of your images, and I suggest you work with your vendor (Siemens) to document and fix this issue with their VE11C.

@mvdoc
Copy link
Author

mvdoc commented Nov 3, 2017

Thank you!

@neurolabusc
Copy link
Collaborator

Hello, can I suggest you acquire your diffusion data with the mosaic option selected. I just checked our system, and if you do not have this checked each 2D slice is saved as a separate DICOM image and the MosaicRefAcqTimes CSA tag is omitted. Without that you will not get the SliceTiming field in your BIDS file. That will help you use eddy_cuda's --slspec file option. As an aside I keep the trace, ADC, FA and tensor buttons unchecked, as you can create better derived images after processing with dwidenoise, topup and eddy.

mosaics

@mvdoc
Copy link
Author

mvdoc commented Nov 9, 2017

@neurolabusc thank you so much for this! I will try on our system and run some tests.

@mharms
Copy link
Collaborator

mharms commented Nov 9, 2017 via email

@mvdoc
Copy link
Author

mvdoc commented Nov 10, 2017

Today I tested with the mosaic option on, and everything works perfectly. Thank you!!

yarikoptic added a commit to neurodebian/dcm2niix that referenced this issue Jan 24, 2018
* commit 'v1.0.20171017-3-g9ccc4c0':
  Detect SMS using 0051,1011 if MosaicRefAcqTimes missing rordenlab#141
  Hide NIfTI sliceOrder if protocolSliceNumber1 > 1
  SliceTiming for reversed image numbering https://github.com/neurolabusc/dcm2niix/issues/40
  Update dcm_qa submodule.
  New version (v1.0.20171017)
  Added link rordenlab#138
  Store mulbiband factor in NIfTI descrip field (e.g. "mb=2") https://www.nitrc.org/forum/message.php?msg_id=22593
  Add patient sex, weight, etc, https://www.nitrc.org/forum/message.php?msg_id=22567
  Add ImageOrientationPatientDICOM and InPlanePhaseEncodingDirectionDICOM for 3D undistortion
  Compiling with CentOS 7: rordenlab#137
  BIDS 1.0.2 DelayTime field for sparse fMRI
  Add InstitutionalDepartmentName
  Get ProtocolName from CSA header if it is not in DICOM header nipy/heudiconv#80
  Change name of output tag of two variables to match DICOM
  Group PixelBandwidth with DwellTime in output json
  Vanquish compiler warnings.
  Report lower order shims prior to higher order (requested by mharms)
  Handle Siemens product gradient offsets?
  More Siemens information saved to BIDS
  BIDS: Do not set multiband factor for 3D EPI, report as "MRAcquisitionType": "3D",
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