Can ANTs Registration Parameters Be Changed in FMRIPREP

Hey guys:
Hope your 2019 is going well so far; keeping with my pattern of posts I’ve got another weird one for you. Please stick with my backstory for a sec.

I’m trying to get my cog neuro department to transfer from using other preprocessing softwares to using FMRIPREP. As part of my campaign our journal club is going a practical where different groups use different softwares (e.g. FSL, AFNI, FMRIPREP) to process the same data set under different conditions because I basically said FMRIPREP would trounce them all. The conditions are:
A) Adding and removing Slice timing
B) Using different registration parameters (e.g. different T1->MNI dofs and adding or removing nonlinear warping).

My question: I know there is already a flag for slice timing and different flags for the EPI->T1 dofs and bbregistration but is there anyway in FMRIPREP to change other registration parameters for the T1->MNI warp? I’ve been pretty deep into the FMRIPREP pipeline on GitHub and this does not seem to be the case. From my explorations I think a pretty close version to antsRegistrationSynQuick default is used and ideally for the purposes of this “assignment” I’d like to mess around with, for example, removing the ‘syn’ step entirely.

My follow-up question: Given that I don’t think this is an option in FMRIPREP do you happen to know which file in the working directory essentially gets outputted having gone through every step up until this point? So since we’ll be running the default pipeline for this assignment I suppose is there a file that has gone through slice timing and motion correction but NOT registration so I can just take that file and run antsRegistration separately with different parameters to show people the differences?

I want to make clear that I am aware - and will be teaching the group - that when ACTUALLY using FMRIPREP there will probably not be a need to do this, making the entire exercise a moot point but figured I should at least try some semblance at meeting the criteria of the assignment to get my point across.

Thanks guys!
Lauren

You could modify the registration settings deriving from these files: https://github.com/poldracklab/niworkflows/tree/master/niworkflows/data

In particular this one - https://github.com/poldracklab/niworkflows/blob/master/niworkflows/data/t1w-mni_registration_precise_000.json

You will also need to insert your modification into the pipeline. For that, I’d add a new command line argument and propagate the path to your custom json into the spatial normalization node.

That said, we’d be very interested in doing the same kind of analysis you are describing (and we actually hinted at that in the discussion of the paper). Let us know if you want to get more involved into the project.

2 Likes

Thanks @oesteban, I figured something involving a step like this would be necessary.

I’d really enjoy possibly getting involved in this project if I can in fact be of use. So like as of right now I don’t think I have any idea how to go about modifying the pipeline as you suggested but I’m going to look into it and see if I can figure it out. But if you think I could help in any way, I’m definitely down.

1 Like

Hello @oesteban,

I have a question related to this thread.

I am using ANTs to normalize my subjects’ MRI imaging to MNI space, and am looking for preset ANTs parameters that are commonly used for this purpose. I’ve heard people get great results with the parameters fmriprep uses, so I would like to adopt the same parameters. Does the .json file you pointed to ( https://github.com/poldracklab/niworkflows/blob/master/niworkflows/data/t1w-mni_registration_precise_000.json contain the default ANTs parameters used by fmriprep to normalize imaging to MNI space? What about the other .json files in that folder? I.e. t1w-mni_registration_precise_001.json, …002 and t1w-mni_registration_testing_000.json, …001, …002?

Thank you so much for any help you might provide!

Lou

Yes, that json file contains the default parameters. The other .json files contain alternative setting (e.g., for debugging, or as a fallback if the default parameters failed).

Hi, @lhopkins -

Just to note, if you are doing a software comparison and have any questions/concerns on some of the other software you are evaluating, as well, we are happy to discuss those and offer any advice.

–pt