No automatic averaging of fieldmaps with multiple directions in qsiprep?

Summary of what happened:

I have one DWI scan and two fieldmaps (one normal and one with inverted polarity) organised the following directory structure:

.
├── anat
│   ├── sub-gr01_T1w.json
│   └── sub-gr01_T1w.nii.gz
├── dwi
│   ├── sub-gr01_dwi.bval
│   ├── sub-gr01_dwi.bvec
│   ├── sub-gr01_dwi.json
│   └── sub-gr01_dwi.nii.gz
└── fmap
    ├── sub-gr01_acq-invpol_epi.json
    ├── sub-gr01_acq-invpol_epi.nii.gz
    ├── sub-gr01_acq-norm_epi.json
    └── sub-gr01_acq-norm_epi.nii.gz

The JSON files for the fieldmaps have the required “IntendedFor” field. Qsiprep seems to recognise the fieldmaps just fine as I can see on top of the HTML output file:

Summary

    Subject ID: sub-gr01
    Structural images: 1 T1-weighted
    Diffusion-weighted series: inputs 3, outputs 1
        Output Name: sub-gr01
        Scan group: sub-gr01 (PE Dir j-)
            DWI Files:
            /path/sub-gr01/dwi/sub-gr01_dwi.nii.gz
            Fieldmap type: epi
            suffix: epi
            epi: ['/path/sub-gr01/fmap/sub-gr01_acq-dwi_dir-invpol_epi.nii.gz', '/path/sub-gr01/fmap/sub-gr01_acq-dwi_dir-norm_epi.nii.gz']
    Resampling targets: ACPC
    Transform targets: ['ACPC', 'MNI152NLin2009cAsym']

However, in the section “B0 field mapping” of the report it seems that only one of the fieldmaps was used (namely the one with the inverted polarity):

A total of 2 distortion groups were included in the data data. Distortion group ‘0 -1 0 0.047626’ was represented by image 4 from sub-gr01_dwi.nii.gz. Distortion group ‘0 1 0 0.047626’ was represented by image 0 from sub-gr01_acq-dwi_dir-invpol_epi.nii.gz.

The other fieldmaps seems to have been ignored and B0 average map were derived from the DWI images and used instead? Or am I misunderstanding the output here? Hence, my question is how do I get qsiprep to average/combine my fieldmaps and use both for correction?

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

qsiprep command: /opt/conda/envs/qsiprep/bin/qsiprep /path/ /path/derivatives/qsiprep/ participant -w /path/tmp/qsiprep/ --participant-label sub-gr01 --skip-bids-validation --output-resolution 1.7 --fs-license-file /path/license.txt --resource-monitor --nthreads 16 --stop-on-first-crash

Version:

qsiprep version: 1.0.1.dev0+gee9aa2e.d20250115

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

Singularity image, derived from Docker image according to instructions on web site.


Hi @t_p,

Yes, only the inverted polarity is needed because the same polarity part comes from the b0 in the DWI itself.

Best,
Steven

1 Like

Okay, thank you for clarifying. I was somehow under the impression that one should always use also the “normal” fieldmap, but you’re tight that it actually doesn’t make a difference.

I recently stumbled in the same issue.

It looks like the qsiprep approach (selecting the blipup/down data used for fieldmapping based on better correlation with the dataset) is OK for “HCP style” acquisitions.
However, if one acquires dwi data with a single polarity AND two opposed polarities data for fieldmapping, with parameters that allow better quality (typically no multiband and longer TR), this approach invariably results in selecting a b0 from the dwi series and combine it with the opposite polarity from the fieldmapping series.
The reason is fairly clear: the “fieldmap” series are less correlated to dwi scans than a scan from the dwi series itself, nonetheless the “fieldmap” series are intrinsically better quality and less artifacts, so they should be more suitable for computations. Moreover, combining data with different features/artifacts does not look the optimal choice, and may be criticized by reviewers.

I would suggest to conisder including an option to disbale automated selection of data for fieldmapping and force to honor the “IntendedFor” (or B0field… in future) statement.

a switch to allow using more than one image for fieldmaps would be also useful.
Thank, Federico

1 Like