Open
Description
What happened?
Hi,
When I run nibabies-25.0.1 with --surface-recon-method mcribs --derivatives /precomputed
it doesn't produce any surfaces. However, when I remove the 2 options it works.
This is how my_precomputed folder looks like:
I'm using the outputs from iBeat2. Any clue what could be the issue? Thanks in advance.
Best regards,
Manuel
What command did you use?
sudo APPTAINER_TMPDIR=$PWD APPTAINER_CACHEDIR=$PWD apptainer run -B /EBC/home/mblesa/test_apptainer/BIDs_data:/data,/EBC/home/mblesa/test_apptainer/test_nibabies_mcribs_2:/out,/EBC/home/mblesa/test_apptainer/my_precomputed:/precomputed,/EBC/home/mblesa/test_apptainer/work:/scratch,/EBC/local/infantFS/freesurfer/license.txt:/opt/freesurfer/license.txt /EBC/home/mblesa/nibabies-25.0.1.sif /data /out participant --participant-label sub-9001 --anat-only --fs-license-file /opt/freesurfer/license.txt -w /scratch --skip_bids_validation --nthreads 16 --omp-nthreads 16 --age-months 0 --surface-recon-method mcribs --reference-anat T2w --derivatives /precomputed
What version of NiBabies are you using?
25.0.1
Relevant log output
250207-11:50:51,917 nipype.workflow INFO:
[Node] Executing "norm_rpt" <niworkflows.interfaces.reportlets.registration.SimpleBeforeAfterRPT>
250207-11:51:08,292 nipype.workflow INFO:
[Node] Finished "norm_rpt", elapsed time 16.373553s.
250207-11:51:12,25 nipype.workflow ERROR:
could not run node: nibabies_25_0_wf.single_subject_sub-9001_ses-01_wf.infant_single_t2w_fit_wf.mcribs_surface_recon_wf.mcribs_recon
250207-11:51:12,61 nipype.workflow CRITICAL:
nibabies failed: Traceback (most recent call last):
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/plugins/multiproc.py", line 66, in run_node
result["result"] = node.run(updatehash=updatehash)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 525, in run
result = self._run_interface(execute=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 643, in _run_interface
return self._run_command(execute)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 769, in _run_command
raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node mcribs_recon.
Cmdline:
MCRIBReconAll --deformablefastcollision --deformablejointhresh 1.000000 -nthreads 16 --surfrecon --surfreconmethod Deformable sub-9001_ses-01
Stdout:
sub-9001_ses-01 1.0 True False False
/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex:67: DeprecationWarning: The SafeConfigParser class has been renamed to ConfigParser in Python 3.2. This alias will be removed in Python 3.12. Use ConfigParser directly instead.
config = SafeConfigParser(defaults={'work_dir': work_dir, 'temp_dir': temp_dir})
/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex:868: DeprecationWarning: This method will be removed in Python 3.12. Use 'parser.read_file()' instead.
config.readfp(config_file)
Reconstructing cortical surfaces of sub-9001_ses-01 session 0
No input T1-weighted image found, using only T2-weighted image
> /opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/calculate-element-wise /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz -mask 0 -set 1 -pad 0 -out /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz binary
Dividing brain volume into disjoint regions
> /opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/subdivide-brain-image /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz /out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/regions.nii.gz -rh 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 50 52 54 56 58 60 62 63 65 67 69 71 73 75 77 79 81 86 -lh 1 3 5 7 9 11 13 15 17 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 64 66 68 70 72 74 76 78 80 82 87 -wm 51..82 1..4 40..47 85..87 48 49 50 -gm 5..16 20..39 -sb 40..47 85..87 114 172 48 -bs 19 -cb 17 18 172 -bs+cb True -subcortical-closing 5 -brainstem-closing 5 -cerebellum-closing 5 -fg /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz -output-inner-cortical-distance /out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/cortical-hull-dmap.nii.gz -hemispheres /masks/hemis.nii.gz
GenericImage<VoxelType>::GetRegion: Parameter out of range
Traceback (most recent call last):
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 932, in <module>
recon_neonatal_cortex(config=config, section=args.section, config_vars=config_vars,
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 564, in recon_neonatal_cortex
require_regions_mask(config, section, config_vars, stack, verbose)
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 200, in require_regions_mask
neoctx.subdivide_brain(
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/deformable/neonatal_cortex.py", line 929, in subdivide_brain
run('subdivide-brain-image', args=[segmentation, name], opts=opts)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/deformable/neonatal_cortex.py", line 183, in run
_run(tool, args=args, opts=opts, showcmd=showcmd, threads=threads)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 296, in run
raise e
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 281, in run
check_call(argv, verbose=1 if showcmd else 0)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 157, in check_call
_call(argv, verbose=verbose, execfunc=subprocess.check_call)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 145, in _call
return execfunc(argv)
^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/subdivide-brain-image', '/out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz', '/out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/regions.nii.gz', '-rh', '2', '4', '6', '8', '10', '12', '14', '16', '18', '20', '22', '24', '26', '28', '30', '32', '34', '36', '38', '40', '42', '44', '46', '50', '52', '54', '56', '58', '60', '62', '63', '65', '67', '69', '71', '73', '75', '77', '79', '81', '86', '-lh', '1', '3', '5', '7', '9', '11', '13', '15', '17', '21', '23', '25', '27', '29', '31', '33', '35', '37', '39', '41', '43', '45', '47', '49', '51', '53', '55', '57', '59', '61', '64', '66', '68', '70', '72', '74', '76', '78', '80', '82', '87', '-wm', '51..82', '1..4', '40..47', '85..87', '48', '49', '50', '-gm', '5..16', '20..39', '-sb', '40..47', '85..87', '114', '172', '48', '-bs', '19', '-cb', '17', '18', '172', '-bs+cb', 'True', '-subcortical-closing', '5', '-brainstem-closing', '5', '-cerebellum-closing', '5', '-fg', '/out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz', '-output-inner-cortical-distance', '/out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/cortical-hull-dmap.nii.gz', '-hemispheres', '/masks/hemis.nii.gz']' returned non-zero exit status 1.
Running command:
MCRIBSurfReconDeformable sub-9001_ses-01 1.0 True False False
Stderr:
Traceback:
Traceback (most recent call last):
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 404, in run
outputs = self.aggregate_outputs(runtime)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 433, in aggregate_outputs
predicted_outputs = self._list_outputs() # Predictions from _list_outputs
^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nibabies/interfaces/mcribs.py", line 252, in _list_outputs
self._verify_outputs('surfrecon', surfrecon_dir, error=True)
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nibabies/interfaces/mcribs.py", line 289, in _verify_outputs
raise FileNotFoundError(f'{step.capitalize()} missing: {fl}')
FileNotFoundError: Surfrecon missing: pial-lh-reordered.vtp
Traceback (most recent call last):
File "/opt/conda/envs/nibabies/bin/nibabies", line 8, in <module>
sys.exit(main())
^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nibabies/cli/run.py", line 104, in main
nibabies_wf.run(**_plugin)
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/workflows.py", line 625, in run
runner.run(execgraph, updatehash=updatehash, config=self.config)
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/plugins/base.py", line 223, in run
raise error from cause
RuntimeError: Traceback (most recent call last):
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/plugins/multiproc.py", line 66, in run_node
result["result"] = node.run(updatehash=updatehash)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 525, in run
result = self._run_interface(execute=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 643, in _run_interface
return self._run_command(execute)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 769, in _run_command
raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node mcribs_recon.
Cmdline:
MCRIBReconAll --deformablefastcollision --deformablejointhresh 1.000000 -nthreads 16 --surfrecon --surfreconmethod Deformable sub-9001_ses-01
Stdout:
sub-9001_ses-01 1.0 True False False
/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex:67: DeprecationWarning: The SafeConfigParser class has been renamed to ConfigParser in Python 3.2. This alias will be removed in Python 3.12. Use ConfigParser directly instead.
config = SafeConfigParser(defaults={'work_dir': work_dir, 'temp_dir': temp_dir})
/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex:868: DeprecationWarning: This method will be removed in Python 3.12. Use 'parser.read_file()' instead.
config.readfp(config_file)
Reconstructing cortical surfaces of sub-9001_ses-01 session 0
No input T1-weighted image found, using only T2-weighted image
> /opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/calculate-element-wise /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz -mask 0 -set 1 -pad 0 -out /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz binary
Dividing brain volume into disjoint regions
> /opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/subdivide-brain-image /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz /out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/regions.nii.gz -rh 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 50 52 54 56 58 60 62 63 65 67 69 71 73 75 77 79 81 86 -lh 1 3 5 7 9 11 13 15 17 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 64 66 68 70 72 74 76 78 80 82 87 -wm 51..82 1..4 40..47 85..87 48 49 50 -gm 5..16 20..39 -sb 40..47 85..87 114 172 48 -bs 19 -cb 17 18 172 -bs+cb True -subcortical-closing 5 -brainstem-closing 5 -cerebellum-closing 5 -fg /out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz -output-inner-cortical-distance /out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/cortical-hull-dmap.nii.gz -hemispheres /masks/hemis.nii.gz
GenericImage<VoxelType>::GetRegion: Parameter out of range
Traceback (most recent call last):
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 932, in <module>
recon_neonatal_cortex(config=config, section=args.section, config_vars=config_vars,
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 564, in recon_neonatal_cortex
require_regions_mask(config, section, config_vars, stack, verbose)
File "/opt/MCRIBS/bin/../MIRTK/MIRTK-install/lib/tools/recon-neonatal-cortex", line 200, in require_regions_mask
neoctx.subdivide_brain(
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/deformable/neonatal_cortex.py", line 929, in subdivide_brain
run('subdivide-brain-image', args=[segmentation, name], opts=opts)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/deformable/neonatal_cortex.py", line 183, in run
_run(tool, args=args, opts=opts, showcmd=showcmd, threads=threads)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 296, in run
raise e
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 281, in run
check_call(argv, verbose=1 if showcmd else 0)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 157, in check_call
_call(argv, verbose=verbose, execfunc=subprocess.check_call)
File "/opt/MCRIBS/MIRTK/MIRTK-install/lib/python/mirtk/subprocess.py", line 145, in _call
return execfunc(argv)
^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/opt/MCRIBS/MIRTK/MIRTK-install/lib/tools/subdivide-brain-image', '/out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_all_labels_manedit.nii.gz', '/out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/regions.nii.gz', '-rh', '2', '4', '6', '8', '10', '12', '14', '16', '18', '20', '22', '24', '26', '28', '30', '32', '34', '36', '38', '40', '42', '44', '46', '50', '52', '54', '56', '58', '60', '62', '63', '65', '67', '69', '71', '73', '75', '77', '79', '81', '86', '-lh', '1', '3', '5', '7', '9', '11', '13', '15', '17', '21', '23', '25', '27', '29', '31', '33', '35', '37', '39', '41', '43', '45', '47', '49', '51', '53', '55', '57', '59', '61', '64', '66', '68', '70', '72', '74', '76', '78', '80', '82', '87', '-wm', '51..82', '1..4', '40..47', '85..87', '48', '49', '50', '-gm', '5..16', '20..39', '-sb', '40..47', '85..87', '114', '172', '48', '-bs', '19', '-cb', '17', '18', '172', '-bs+cb', 'True', '-subcortical-closing', '5', '-brainstem-closing', '5', '-cerebellum-closing', '5', '-fg', '/out/sourcedata/mcribs/sub-9001_ses-01/TissueSeg/sub-9001_ses-01_brain_mask.nii.gz', '-output-inner-cortical-distance', '/out/sourcedata/mcribs/sub-9001_ses-01/SurfReconDeformable/sub-9001_ses-01/recon/cortical-hull-dmap.nii.gz', '-hemispheres', '/masks/hemis.nii.gz']' returned non-zero exit status 1.
Running command:
MCRIBSurfReconDeformable sub-9001_ses-01 1.0 True False False
Stderr:
Traceback:
Traceback (most recent call last):
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 404, in run
outputs = self.aggregate_outputs(runtime)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 433, in aggregate_outputs
predicted_outputs = self._list_outputs() # Predictions from _list_outputs
^^^^^^^^^^^^^^^^^^^^
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nibabies/interfaces/mcribs.py", line 252, in _list_outputs
self._verify_outputs('surfrecon', surfrecon_dir, error=True)
File "/opt/conda/envs/nibabies/lib/python3.11/site-packages/nibabies/interfaces/mcribs.py", line 289, in _verify_outputs
raise FileNotFoundError(f'{step.capitalize()} missing: {fl}')
FileNotFoundError: Surfrecon missing: pial-lh-reordered.vtp
Add any additional information or context about the problem here.
No response