Efficient way of coregistering and normalzing dataset with several runs

Hi All,

This seems like a basic problem, but I haven’t seen any answers for this yet. I’ve got a dataset with 6 runs and am using nipype to preprocess the data. Previously, with datasets with fewer runs, I did the coregistration and normalization for each functional run separately. With 6 runs, however, I was wondering if there is a more efficient way to set up a preprocessing pipeline for several runs?
Perhaps with a separate workflow for coregistration and normalization?
I have not found any example pipelines using several runs either…

Thank you very much,


Hi, have you heard about iterables in nipype? Not completely sure, but it might be what you’re looking for, here are some examples how to use it.


Yes, I have. I am using them already in order to iterate over each subject and functional run.
My question was whether there is a more efficient way to do the realignment, coregistration and normalization with a high number of functional runs. Is it reasonable to realign all functional runs for each subject together and then coregister the mean image across runs to the t1?

So then instead of iterating over subjects and runs I just select all functional scans at once and only iterate over subjects?



As far as I know, in SPM, the first volume of each run is aligned to the first volume of the whole session, and then each volume within each run is aligned to the first volume within each run. Is something like that feasible using nipype as well?

oh, I see, didn’t really get your question… Can try to look into the description, but maybe someone with more experience has suggestions.

the approach will depend on which software you are using through nipype: FSL, SPM, Nipy, etc.,. you can also try the canned workflows under fmri.