SDC with opposite PE directions on functional data

Hi all,
I’ve previously used QSIPrep and am now testing out fMRIPrep for the first time. I’ve been able to get it to run successfully with the most basic setup, but now I would like to learn how to get fMRIPrep to do SDC on my data.

Here is an example of what our data looks like:

sub-{ID}_ses-1_task-rest_dir-PA_run-001_bold.json    
sub-{ID}_ses-1_task-rest_dir-PA_run-001_events.tsv 
sub-{ID}_ses-1_task-rest_run-001_bold.nii.gz
sub-{ID}_ses-1_task-rest_dir-PA_run-001_bold.nii.gz  
sub-{ID}_ses-1_task-rest_run-001_bold.json          
sub-{ID}_ses-1_task-rest_run-001_events.tsv

As you can see, we have two resting state runs in opposite PE directions. In our custom preprocessing pipeline, we would take the first 4 volumes of each functional timeseries to do SDC. Is it possible to do something similar in fMRIPrep?

Also, does fMRIPrep removes the first x volumes in each timeseries?

Thank you!

Best,
Sofie

Hi @scchung,

In the future, please use the Software Support post category and template to provide more information (eg, you command, version, and BIDS validator output).

fMRIPrep does not do the QSIPrep or HCP style SDC where full reverse phase encoded runs can be used to correct each other. You would need to place the reverse phase encoded reference image (eg an average of those first four volumes) as an .epi file in the fmap folder, and use either IntendedFor or the b0FieldSource/Identifier json fields to associate it with the BOLD you are trying to correct.

Without a dedicated field map you may also consider SynBOLD-DisCo.

No, fMRIPrep does not remove any volumes. It will detect non-steady state volumes (usually at beginning of runs) that are added as regressor columns in your confounds file, which you can include in first-level modeling. You can also explicitly specify a number of initial dummy volumes in the command line.

Best,
Steven