AFNI Message Board

Dear AFNI users-

We are very pleased to announce that the new AFNI Message Board framework is up! Please join us at:

https://discuss.afni.nimh.nih.gov

Existing user accounts have been migrated, so returning users can login by requesting a password reset. New users can create accounts, as well, through a standard account creation process. Please note that these setup emails might initially go to spam folders (esp. for NIH users!), so please check those locations in the beginning.

The current Message Board discussion threads have been migrated to the new framework. The current Message Board will remain visible, but read-only, for a little while.

Sincerely, AFNI HQ

History of AFNI updates  

|
December 12, 2013 05:18PM
Sorry for the long post!
The 4 question below boil into
What is the best way manage MNI coordinates and afni_restproc.py output? (just one line change in the tsch script?!)

[and bonus question] Is tlrc's use in AFNI historically motivated? Why TT over MNI?

Thanks!
Will




We're running afni_restproc to emulate the Power Neuroimage 2012 pipeline. We already ran some 300 subjects through restpreproc (in TT_N27). Ultimately we want to use MNI ROI masks and report findings in MNI space. As far as I can tell via -help or the python source, there is no switch/argument to change the default TT_N27 space.

Our work-arounds include
(a) warping ROI masks into TT_N27 and save worring about reporint finding when we have some,
adwarp -resam NN -apar $AFNIPATH/TT_N27+tlrc -dpar masks/bb264Mask_MNI+tlrc -prefix masks/bb264Mask_N27 -force 
3dresample masks/bb264Mask_N27+tlrc 
3dresample -master $subjexample -inset masks/bb264Mask_N27+tlrc -prefix masks/bb264Mask_N27_3x3x3

This is the current solution, but it I imagine it will be difficult or inaccurate when we report back MNI coordinates.
a1) How do others convert between TT and MNI when reporting coordinates?


(b) warping the final clean output of restproc.py into MNI,
3dWarp -overwrite -tta2mni -quintic -prefix pm.cleanEPI_MNI pm.cleanEPI+tlrc
# maybe resample for comparison
#3dresample -master $(dirname $(which afni))/*MNI_avg152T2*HEAD -inset pm.cleanEPI_MNI+tlrc. -prefix pm.cleanEPI_MNI_grid

This adds another round of interpolation. [see picture below]
b2) How well does tta2mni work? Is it just an affine transform, or is the warp piecewise or nonlinear (yale)?
Eyeballing says the interpolation results in a different image


(c) modifying the tsch script generated by restproc.py to use MNI as the only space (in addition to original) and rerunning
# change tsch script from TT_N27 to MNI_avg152T1+tlrc
@auto_tlrc -base MNI_avg152T1+tlrc  -input T1+orig

This is likely what we will do, but it requires rerunning a little more than a weekend of computation time and is less maintainable ( sed on afni_restproc output's script could break in future afni releases?).
c3) Is MNI_avg152T1 the best reference brain to use?
c4) Are there other parts of the generated script that will need to be changed? (If it were this straight forward, wouldn't there be a user facing option in restpreproc.py?)




We use afni_restproc.py like:
   afni_restproc.py \
        -despike off \
        -aseg $aseg \
        -anat $t1 \
        -epi  ${t2%%.HEAD} \
        -script $runtype.tcsh \
        -dest $runtype \
        -prefix pm \
        -tlrc \
        -dvarscensor \
        -episize 3 \
        -dreg \
        -smoothfirst \
        -smoothrad 6 \
        -smoothtogether \
        -bandpass \
        -includebrain \
        -polort 0 \
        -globalwm \
        -censorleft 1 \
        -censorright 2 \
        -fdlimit 0.5 \
        -dvarslimit 5 \
        -modenorm 2>&1 | tee ${runtype}_$sid.log ;;

top is mni via 3dwarp -tta2mni
bottom is mni via @auto_tlrc
Subject Author Posted

afni_restproc.py in MNI space

Will Foran December 12, 2013 05:18PM

Re: afni_restproc.py in MNI space

Daniel Glen December 12, 2013 09:37PM

Re: afni_restproc.py in MNI space

Rayus December 13, 2013 11:04AM