nipreps / fmriprep

fMRIPrep is a robust and easy-to-use pipeline for preprocessing of diverse fMRI data. The transparent workflow dispenses of manual intervention, thereby ensuring the reproducibility of the results.
https://fmriprep.org
Apache License 2.0
634 stars 293 forks source link

recon-all -s sub-001 exited with ERROR: FOV=272.000 > 256 #3004

Closed marcomeixner closed 1 year ago

marcomeixner commented 1 year ago

Hallo,

I am following this tutorial: https://reproducibility.stanford.edu/fmriprep-tutorial-running-the-docker-image/#fmriprep1

I ran the fmriprep-docker with this command: /home/user/.local/bin/fmriprep-docker /media/SamSSD/fmriprep/bids_input/ /media/SamSSD/fmriprep/fmriprep_output/ participant --participant-label 001 --fs-license-file $FREESURFER_HOME/license.txt

With a validated bids subject in the input folder: /media/SamSSD/fmriprep/bids_input ├── dataset_description.json └── sub-001 ├── anat │   ├── sub-001_T1w.json │   └── sub-001_T1w.nii.gz ├── fmap │   ├── sub-001_run-01_magnitude1.json │   ├── sub-001_run-01_magnitude1.nii.gz │   ├── sub-001_run-01_phasediff.json │   ├── sub-001_run-01_phasediff.nii.gz │   ├── sub-001_run-02_magnitude1.json │   ├── sub-001_run-02_magnitude1.nii.gz │   ├── sub-001_run-02_phasediff.json │   └── sub-001_run-02_phasediff.nii.gz └── func ├── sub-001_task-ecode_run-01_bold.json ├── sub-001_task-ecode_run-01_bold.nii.gz ├── sub-001_task-ecode_run-02_bold.json └── sub-001_task-ecode_run-02_bold.nii.gz

Early on I get this error / warning:

230510-15:31:38,940 nipype.workflow WARNING: [Node] Error on "fmriprep_23_0_wf.single_subject_001_wf.anat_preproc_wf.surface_recon_wf.autorecon1" (/tmp/work/fmriprep_23_0_wf/single_subject_001_wf/anat_preproc_wf/surface_recon_wf/autorecon1) 230510-15:31:40,480 nipype.workflow ERROR: Node autorecon1 failed to run on host 7e2dcf7f0062. 230510-15:31:40,487 nipype.workflow ERROR: Saving crash info to /out/sub-001/log/20230510-153011_bb651a00-2b63-4b69-9330-3bc51176d573/crash-20230510-153140-root-autorecon1-685a3708-f03c-4842-a08f-91f2ea7105c3.txt Traceback (most recent call last): File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node result["result"] = node.run(updatehash=updatehash) File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 527, in run result = self._run_interface(execute=True) File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 645, in _run_interface return self._run_command(execute) File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 771, in _run_command raise NodeExecutionError(msg) nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node autorecon1.

And the script crashes with this error:

****************************************
ERROR! FOV=272.000 > 256
Include the flag -cw256 with recon-all!
Inspect orig.mgz to ensure the head is fully visible.
****************************************

Linux 7e2dcf7f0062 5.19.0-41-generic #42~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 18 17:40:00 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

recon-all -s sub-001 exited with ERRORS at Wed May 10 15:31:38 UTC 2023

For more details, see the log file /out/sourcedata/freesurfer/sub-001/scripts/recon-all.log
To report a problem, see http://surfer.nmr.mgh.harvard.edu/fswiki/BugReporting

Stderr:

Traceback: RuntimeError: subprocess exited with code 1.

Thanks a lot for your help!

Marco

effigies commented 1 year ago

Are you able to share this subject's T1w image?

effigies commented 1 year ago

I see a couple options. The straightforward one is using the --no-submm-recon flag. That will allow the image to be cropped to 256mm and resampled to 1mm isotropic voxels, which is FreeSurfer's default. We generally pass the -hires flag for sub-mm voxels, but because you have such a large field-of-view, that's causing problems.

The alternative is that you could crop your image yourself to <256mm. With pixdims of 1x0.85x0.85 and dims of 240x320x320, you could crop 20 off the last two dimensions like:

fslroi input.nii.gz output.nii.gz 0 -1 10 300 10 300

(0-end for x, 10-309 for y, 10-309 for z).

marcomeixner commented 1 year ago

With the --no-submm-recon flag it works like a charm, thank you so much!