Rationale for SDC method priority in fMRIPrep

Hello all,

Does anyone know what the rationale behind the order of preferred susceptibility distortion correction methods in fMRIPrep is? It seems a little odd to me that blip-up/blip-down methods are preferred over B0 mapping or estimation methods, but I’m really not that knowledgeable about distortion correction.

@oesteban will be a better resource here, but I believe the assumption is that you’ll generally only acquire one type fieldmap. If it becomes an issue that people have multiple and want to run a comparison, they/we could add a --fmap <suffix> selector.

Hi @tsalo,

Yes, as Chris mentioned, the idea is that most of the times you’ll see only one field map correction method. In the case that both fieldmap and blip-up/down are available, my experience is that blip-up/blip-down methodologies seem to perform more reliably (and perhaps a bit better).

Finally, there is the card of the “IntendedFor” metadata field that you can use to assign correction methods to images (fMRIPrep will only use fieldmap information on images pointed at by this metadata field).

That all said, we of course welcome suggestions and understand that there are use cases where these heuristics are not particularly good. Happy to hear more from you (I think I can roughly guess where you are coming from :slight_smile: )

@oesteban @effigies Thank you both for responding.

I don’t predict ever coming across a situation where the same file has multiple different kinds of “field maps” intended for it (so the priority order probably never comes up), but it’s good to know why it’s set the way it is.

I’m looking into how to implement dynamic distortion correction into fMRIPrep, and I am starting to wonder if it’s better to do a dynamic version of a suboptimal method (phasediff) or a static version of a better method (blip-up/blip-down), and thus what the priority order should be. Still, though, I guess that’s something that will come with testing, once there are complex multi-echo fMRI data available. Hopefully I’ll be able to add some to OpenNeuro soon.