Running MRIQC docker version: nipreps/mriqc:22.0.6 and came into several edge cases where subjects have the following value error:
cannot do a non-empty take from an empty axes
This appears to have come up for someone else (github issue) in an older version of MRIQC but cannot seem to identify the cause. I have 27 instances of this error. All remaining steps completed without errors. Wanted to ask here before opening issue on git
crash log:
Node: mriqc_wf.anatMRIQC.ComputeIQMs.measures
Working directory: /wd/mriqc_wf/anatMRIQC/ComputeIQMs/_in_file_..bids_dir..sub-*[redacted]*..anat..*[redacted]*_T2w.nii.gz/measures
Node inputs:
air_msk = <undefined>
artifact_msk = <undefined>
head_msk = <undefined>
human = True
in_bias = <undefined>
in_file = <undefined>
in_fwhm = <undefined>
in_noinu = <undefined>
in_pvms = <undefined>
in_segm = <undefined>
in_tpms = <undefined>
mni_tpms = <undefined>
rot_msk = <undefined>
Traceback (most recent call last):
File "/opt/conda/lib/python3.9/site-packages/mriqc/engine/plugin.py", line 60, in run_node
result["result"] = node.run(updatehash=updatehash)
File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 524, in run
result = self._run_interface(execute=True)
File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 642, in _run_interface
return self._run_command(execute)
File "/opt/conda/lib/python3.9/site-packages/nipype/pipeline/engine/nodes.py", line 750, in _run_command
raise NodeExecutionError(
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node measures.
Traceback (most recent call last):
File "/opt/conda/lib/python3.9/site-packages/nipype/interfaces/base/core.py", line 398, in run
runtime = self._run_interface(runtime)
File "/opt/conda/lib/python3.9/site-packages/mriqc/interfaces/anatomical.py", line 164, in _run_interface
stats = summary_stats(inudata, pvmdata, airdata, erode=erode)
File "/opt/conda/lib/python3.9/site-packages/mriqc/qc/anatomical.py", line 637, in summary_stats
"p95": float(np.percentile(img[mask == 1], 95)),
File "<__array_function__ internals>", line 180, in percentile
File "/opt/conda/lib/python3.9/site-packages/numpy/lib/function_base.py", line 4134, in percentile
return _quantile_unchecked(
File "/opt/conda/lib/python3.9/site-packages/numpy/lib/function_base.py", line 4383, in _quantile_unchecked
r, k = _ureduce(a,
File "/opt/conda/lib/python3.9/site-packages/numpy/lib/function_base.py", line 3702, in _ureduce
r = func(a, **kwargs)
File "/opt/conda/lib/python3.9/site-packages/numpy/lib/function_base.py", line 4552, in _quantile_ureduce_func
result = _quantile(arr,
File "/opt/conda/lib/python3.9/site-packages/numpy/lib/function_base.py", line 4658, in _quantile
take(arr, indices=-1, axis=DATA_AXIS)
File "<__array_function__ internals>", line 180, in take
File "/opt/conda/lib/python3.9/site-packages/numpy/core/fromnumeric.py", line 190, in take
return _wrapfunc(a, 'take', indices, axis=axis, out=out, mode=mode)
File "/opt/conda/lib/python3.9/site-packages/numpy/core/fromnumeric.py", line 57, in _wrapfunc
return bound(*args, **kwds)
IndexError: cannot do a non-empty take from an empty axes.