warping and alignment optimization


We’re in a spring-cleaning / optimization mood over here, particularly with respect to warping and functional-to-anatomical alignment. For each, we’d like to select an option currently in play and compare it to something that might do better. Currently, with respect to warping, we use -tlrc_NL_warp and -tlrc_base MNI152_2009_template.nii.gz, otherwise, vanilla. Is there some default you’d most suggest playing with? (e.g., -anat_uniform_method from default to unifize?) Or maybe something you have in development that you’d like us to test drive? Same question for alignment. We currently use -align_opts_aea -cost lpc+ZZ. Tweaks suggested? Feel free to suggest more than one alternative per process and we’ll permute the warping and alignment processes, do some QA, and report back!

All best,


Hi, Paul-

For aligning to a template space, as well as for skullstripping an anatomical, we have started to recommend using @SSwarper before running afni_proc.py. There is an example of using that warpage information in your subsequence afni_proc.py command in the @SSwarper help file.

For aligning EPI and anatomical, we still recommend using the lpc+ZZ cost function (I’m not sure if it is the default yet, so you can still set it explicitly). Sometimes the “giant_move” is useful, or at least the “big move”, to do center of mass alignment at the start, in case the centers of mass are far apart initially:
-align_opts_aea -cost lpc+ZZ -giant_move
(The big move is less drastic, opening up the fit parameters less; there is more risk of getting stuck in a local min with giant_move, but hopefully the “+ZZ” aspect on the cost function would help outweigh that.)

You might also want to add in the automatic checking for LR flipping between the EPI and anat:
-align_opts_aea -check_flip
Free information to check about a possible header problem in the data.


Thanks, Paul! Some juicy bits in there. We’ll take @SSwarper for a spin and report back!