Open jhauneuro opened 4 months ago
Here is what the error looks like in qsiprep 0.22.0:
EddyInputError: Mismatch between no of slices in multi-band structure and in image file.
Terminating program
Stderr:
Traceback:
Traceback (most recent call last):
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/nipype/interfaces/base/core.py", line 453, in aggregate_outputs
setattr(outputs, key, val)
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/nipype/interfaces/base/traits_extension.py", line 330, in validate
value = super(File, self).validate(objekt, name, value, return_pathlike=True)
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/nipype/interfaces/base/traits_extension.py", line 135, in validate
self.error(objekt, name, str(value))
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/traits/base_trait_handler.py", line 74, in error
raise TraitError(
traits.trait_errors.TraitError: The 'out_corrected' trait of an ExtendedEddyOutputSpec instance must be a pathlike object or string representing an existing file, but a value of '/scratch/qsiprep_0_22_wf/sub_NDARAA932XZU_wf/dwi_preproc_dir_AP_wf/hmc_sdc_wf/eddy/eddy_corrected.nii.gz' <class 'str'> was specified.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/nipype/interfaces/base/core.py", line 400, in run
outputs = self.aggregate_outputs(runtime)
File "/opt/conda/envs/qsiprep/lib/python3.10/site-packages/nipype/interfaces/base/core.py", line 460, in aggregate_outputs
raise FileNotFoundError(msg)
FileNotFoundError: No such file or directory '/scratch/qsiprep_0_22_wf/sub_NDARAA932XZU_wf/dwi_preproc_dir_AP_wf/hmc_sdc_wf/eddy/eddy_corrected.nii.gz' for output 'out_corrected' of a ExtendedEddy interface
240801-21:39:50,724 cli WARNING:
Errors occurred while generating reports for participants: NDARAA932XZU (1).
1
I re-ran this participant using qsiprep 0.19.1 and it completed successfully. I don't why I am getting a mismatch error in the later versions.
Hi @jhauneuro are you sure your data is bids valid and does it contain SliceTiming? We added the slice-to-volume correction in these recent versions, which will look at your slice timings from the json sidecars. These will have to match the number of slices or there will be an issue with slice to volume.
@mattcieslak yes, the json files were generated from the dicoms using dcm2niix. They show 82 slice times and the image dimensions are 128x128x82.
The data are also not multi-band so the error message doesn't make much sense to me.
I realized I had run 0.19.1 without intra-volume correction (eddy --mporder option). I reran 0.22.0 without intra-volume correction and this time it completed without error. The issue is likely related to the different image orientation of this dataset – It was acquired on a GE scanner with a sagittal slice acquisition and oriented PSR+.
For some reason qsiprep sometimes has difficulties with non-LAS+ oriented data (e.g., see issue #800 that I reported for this dataset, and also issue #793.
It would be nice to run intra-volume correction on this data since there is a lot of motion in this data.
Summary
I am getting an error when preprocessing dwi data with no T1w data using the latest qsiprep version. I was able to successfully preprocess this dataset using qsiprep v0.19.1 but get an error using the latest version.
Additional details
What were you trying to do?
I am trying to preprocess my dwi data.
What did you expect to happen?
I was expecting the preprocessing to complete successfully.
What actually happened?
I first got an error saying that no T1w images were found. Then I added
--anat-modality none
to my command and got a different error (see below).Reproducing the bug
I also tried using
--dwi-only
and get a very similar error as above.