Fmriprep v23.1.3 motion correction for multi-echo dataset

Hi Experts!

I am looking to preprocess a multi-echo fMRI dataset in fmriprep for use in the tedana denoising workflow. I noticed some older posts (~2019-2020) as well as fmriprep readthedocs documentation from old versions ~1.1.2 which state that motion correction parameters are computed for a single echo then applied to all echos in the workflow.

My question… I don’t see any reference to the separate computation of motion parameters for a single echo and application to all echos in recent versions of fmriprep documentation v23.X.X. It also appears from the logs that motion correction parameters are estimated and applied independently for each echo. Is my reading of the more recent versions of fmriprep workflow accurate?

I am looking to follow tedana’s current preprocessing recommendations which suggest using the echo with best contrast to estimate motion correction parameters and apply to subsequent echos. I am struggling to confirm if this is the current method implemented in fmriprep or if it has been replaced in newer versions for a more streamlined approach.

Thanks in advance for the clarification!

Calculating motion on a single echo and applying to all echoes is still the recommendation for tedana. I’m not an fmriprep user, but I’d be surprised if they’ve changed that, so maybe this is just a documentation issue. @tsalo or @effigies might be able to better answer that part of your question.

Hope this helps.


Correct. That has not changed, and I haven’t heard any arguments for changing it, so there are no plans in that area.

We can definitely always improve the documentation, and I would like to invite you @amhe4269 to make a suggestion of where you expected/would expect to find that.

Wonderful! Thanks so much for the confirmation, and quick response. The older versions of fmriprep documentation is very clear, maybe just recycle some of the language from the old documentation? In the Processing Pipeline Details section, under Bold Preprocessing (v1.2.2) includes text:

In the case of multi-echo BOLD data, each echo is processed independently. The two exceptions to this occur for head-motion estimation and T2* map creation.

For the head-motion estimation workflow, only the first echo is submitted as this echo is expected to have the highest contrast between gray and white matter. For T2* map creation, all echos are considered jointly to look at voxel-wise T2* decay.

Thanks again!