Option to not average session fieldmaps during preprocessing with fmriprep

Hi Contributors,

Thanks for all the work you put into fmriprep, what a great tool! I have been preprocessing imaging data with it for a few months and have some questions.

We acquired multiple fieldmaps with the intention of applying them to specific BOLD runs (fieldmap json files contain uniquely specified intendedfor statements). Our participants are young and are often given a break midway through the session. I have read previous posts suggesting the benefits of merging fieldmaps within the same session (Average field maps across tasks and runs · Issue #747 · nipreps/fmriprep · GitHub), but in our use-case due to differences in shim settings and changes in head position across fieldmaps, I would prefer to keep them seperate.

If I understand correctly, by default, fmriprep creates an average from fieldmaps acquired in the same session. Is there a way to disable this averaging (i.e. keep fieldmaps separate and apply them to specific BOLD runs)?


Hi @loudcaterpillar

That is not the case. fMRIPrep applies fieldmaps only when they are specifically asked to be associated with particular BOLD runs.

Yes, in the fmap JSON files, you can add the IntendedFor field. For each one, you specify which BOLD runs the fmap should be applied to, relative to the subject level folder. An example might be:

IntendedFor: ["ses-XX/func/sub-YY_ses-XX_task-ZZ_bold.nii.gz"]

Multiple BOLD files can be added separated by commas.