BOLD images not found by fMRIPost-AROMA

Summary of what happened:

First-time user. I ran fMRIPost-AROMA on docker. Spits an error message “No BOLD images found.”

Command used (and if a helper script was used, a link to the helper script or the command generated):

docker run --rm -it \
  -v ~/mridata/pilot_aaf/derivatives/fmriprep:/prep:ro \
  -v ~/mridata/pilot_aaf/derivatives/fmripost_aroma:/out \
  -v ~/mridata/pilot_aaf/work/fmripost_aroma:/work \
  nipreps/fmripost-aroma:main \
  /prep /out participant \
  --skip_bids_validation \
  --participant-label 03 \
  --denoising-method aggr \
  --melodic-dimensionality 20 \
  --nprocs 8 \
  --omp-nthreads 2 \
  --mem 24000 \
  --error-on-warnings \
  --notrack \
  -w /work

Version:

fMRIPost-AROMA version 0.1.dev1+g965d73c
fmriprep 24.0.1

Environment (Docker, Singularity / Apptainer, custom installation):

Ubuntu 20.04.6 LTS, Docker 4.33.0

Data formatted according to a validatable standard? Please provide the output of the validator:

Relevant log outputs (up to 20 lines):

250314-00:39:28,333 nipype.workflow IMPORTANT:
	 Building fMRIPost-AROMA's workflow:
           * BIDS dataset path: /prep.
           * Participant list: ['03'].
           * Run identifier: 20250314-003914_5412ef98-c56b-4ae3-9aae-17af47170915.
           * Output spaces: None.
250314-00:39:28,965 nipype.workflow INFO:
	 Derivatives-only workflow mode enabled
Process Process-2:
Traceback (most recent call last):
  File "/opt/conda/envs/fmripost_aroma/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
    self.run()
  File "/opt/conda/envs/fmripost_aroma/lib/python3.11/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/opt/conda/envs/fmripost_aroma/lib/python3.11/site-packages/fmripost_aroma/cli/workflow.py", line 115, in build_workflow
    retval['workflow'] = init_fmripost_aroma_wf()
                         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmripost_aroma/lib/python3.11/site-packages/fmripost_aroma/workflows/base.py", line 71, in init_fmripost_aroma_wf
    single_subject_wf = init_single_subject_wf(subject_id)
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmripost_aroma/lib/python3.11/site-packages/fmripost_aroma/workflows/base.py", line 208, in init_single_subject_wf
    raise RuntimeError(
RuntimeError: No BOLD images found for participant 03 and task <all>. All workflows require BOLD images. Please check your BIDS filters: None.

Screenshots / relevant information:

I am new to fMRI data analysis. The trial in my experimental paradigm involves some movement, making motion correction essential. That’s why I am trying to use ICA-AROMA and came across this software. However, I am having trouble running it, as it fails to recognize the BOLD images.

I have triple-checked that the subject directory, the func sub-directory, and all relevant BOLD images are correctly organized, but the issue persists.

~/mridata/pilot_aaf/derivatives/fmriprep/sub-03/func$ ls
...
sub-03_task-aaf_run-01_desc-brain_mask.json
sub-03_task-aaf_run-01_desc-brain_mask.nii.gz
sub-03_task-aaf_run-01_desc-confounds_timeseries.json
sub-03_task-aaf_run-01_desc-confounds_timeseries.tsv
sub-03_task-aaf_run-01_desc-coreg_boldref.json
sub-03_task-aaf_run-01_desc-coreg_boldref.nii.gz
sub-03_task-aaf_run-01_desc-hmc_boldref.json
sub-03_task-aaf_run-01_desc-hmc_boldref.nii.gz
sub-03_task-aaf_run-01_from-boldref_to-T1w_mode-image_desc-coreg_xfm.json
sub-03_task-aaf_run-01_from-boldref_to-T1w_mode-image_desc-coreg_xfm.txt
sub-03_task-aaf_run-01_from-orig_to-boldref_mode-image_desc-hmc_xfm.json
sub-03_task-aaf_run-01_from-orig_to-boldref_mode-image_desc-hmc_xfm.txt
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_boldref.json
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_boldref.nii.gz
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_desc-brain_mask.json
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_desc-brain_mask.nii.gz
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_desc-preproc_bold.json
sub-03_task-aaf_run-01_space-MNI152NLin2009cAsym_res-2_desc-preproc_bold.nii.gz

Thank you in advance.


Hi @m.kim,

You do not have the right output space from fMRIPrep. You need the MNI152NLin6Asym space (res 02).

Best,
Steven

2 Likes

I see. Thank you!

On a related note, can fMRIPost-AROMA be used in conjunction with XCP-D (i.e. fmriprep > fMRIPost-AROMA > XCP-D)?

Additionally, I do NOT need to turn on the (deprecated) --use-aroma option during fmriprep in order to run fMRIPost-AROMA, right?

Sorry if I am throwing a bunch of questions :sweat_smile:

Hi @m.kim,

Yes you can use post-aroma outputs in XCP. See docs here Processing Pipeline Details — xcp_d 0.10.7.dev2+gd43d167 documentation

Do not use the deprecated aroma flag in fmriprep.

Best,
Steven