Dear AFNI experts,
I would like to ask for your advice on the spatial normalization of anatomical scans.
I warped the individual brains to the MNI template by setting the parameter “ -tlrc_base MNI_avg152T1+tlrc” in afni_proc.py. It worked well for most subjects, but I have a few participants for whom it failed.
The specific problems I have are:
The brain images are weirdly rotated/stretched out and completely miss the template (in 2/27 subjects – see the top image for an example).
The parietal portion of the brain gets cut off after normalization, although the imaging volume included the entire cerebrum (in 3/27 subjects – see the bottom image for an example); the anat-EPI alignment worked fine regardless, so this issue seems less critical, but I am still curious what could have gone wrong there.
Could you please recommend what preprocessing settings I could tweak to fix those issues?
My guess is that the problematic input anatomical dsets are pretty far away from overlapping well initially with the template base. We could check this with:
@djunct_overlap_check -ulay MNI_avg152T1+tlrc-olay ANATOMICAL_DSET -prefix IMAGE
What does the output IMAGE* file look like?
This might explain both issues #1 and #2 above:
the alignment process works by trying random parameters to rotate/translate/resize/etc. the input dset to get it to look “more like” the input anatomical (as quantitatively assessed by the cost function). If the initial overlap isn’t good, then the program is trying lots of potentially weird combinations, one of which might be rewarded by an unfortunately good cost function score, and the program works from there (called “getting stuck in a local minimum”).
The odd cutoff occurring in a warped dset is a side effect of how the alignment program applies warps; it tries to make warp dset that covers both the source and base dsets, for mapping one to the other. If the dsets are far away, the warp can run out of space in its grid, and then part of the source just doesn’t get mapped. This is actually something that is in the works of being changed within the code. But this occurs typically when the base and source dsets are far apart from each other.
On a side note, we often recommend people run @SSwarper on the anatomical for nonlinear alignment (warping) and skullstripping (SS) of the anatomical dset, prior to running afni_proc.py. Then, the created warps are entered as options to afni_proc.py and used within the processing. If you current alignment and processing looks good, then you can stay the course with your current processing stream. Some of the same “far from initial overlap” issues that are affecting your current nonlinear alignment might also affect your results if you used @SSwarper, as well (@SSwarper runs 3dQwarp under the hood, among a couple other steps, so the basic alignment tool is the same). But regardless, please let me know how those overlap images look—e.g., posting a couple here—and we can see if that is really the primary issue at present, or whether it is something else to troubleshoot.
Thank you for the quick reply! Here’s what the output of the @djunct_overlap_check tool looks like for the two problematic subjects (top image - weirdly rotated/stretched brain, bottom image - cut-off parietal lobe).
The tool also produces _DEOB images which show a somewhat closer alignment to the MNI template. I don’t do deobliquing as part of my pipeline. Is it something that could potentially be helpful?