#!/bin/sh CURDIR=`pwd` SUBJECT_LIST=subjects_list.txt #SUBJECT_LIST=test_list.txt # Do Loop for SUBJECT in `cat ${SUBJECT_LIST}` do echo "Estimating subject ${SUBJECT}'s spatial normalization ..." cd ${CURDIR}/${SUBJECT} ; mkdir -p reg ; cd reg ln -s ${CURDIR}/${SUBJECT}/mprage_brain.nii.gz highres.nii.gz ln -s ${FSLDIR}/data/standard/MNI152_T1_2mm_brain.nii.gz standard.nii.gz ln -s ${FSLDIR}/data/standard/MNI152_T1_2mm.nii.gz standard_head.nii.gz ln -s ${CURDIR}/${SUBJECT}/mprage.nii.gz highres_head.nii.gz ln -s ${FSLDIR}/data/standard/MNI152_T1_2mm_brain_mask_dil.nii.gz standard_mask.nii.gz echo "func --> highres ..." flirt -ref highres.nii.gz -in ${CURDIR}/${SUBJECT}/example_func_brain.nii.gz -out example_func2highres -omat example_func2highres.mat -cost corratio -dof 6 -searchrx -90 90 -searchry -90 90 -searchrz -90 90 -interp trilinear convert_xfm -inverse -omat highres2example_func.mat example_func2highres.mat slicer example_func2highres.nii.gz highres.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png example_func2highres1.png ; slicer highres.nii.gz example_func2highres.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png example_func2highres2.png ; pngappend example_func2highres1.png - example_func2highres2.png example_func2highres.png; /bin/rm -f sl?.png echo "highres --> standard (affine tranformation) ..." flirt -ref standard -in highres.nii.gz -out highres2standard -omat highres2standard.mat -cost corratio -dof 12 -searchrx -90 90 -searchry -90 90 -searchrz -90 90 -interp trilinear echo "highres --> standard (nonlinear tranformation) ..." fnirt --in=highres_head.nii.gz --aff=highres2standard.mat --cout=highres2standard_warp.nii.gz --iout=highres2standard.nii.gz --jout=highres2standard_jac.nii.gz --config=T1_2_MNI152_2mm --ref=standard_head.nii.gz --refmask=standard_mask.nii.gz --warpres=10,10,10 convert_xfm -inverse -omat standard2highres.mat highres2standard.mat slicer highres2standard.nii.gz standard.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png highres2standard1.png ; slicer standard.nii.gz highres2standard.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png highres2standard2.png ; pngappend highres2standard1.png - highres2standard2.png highres2standard.png; /bin/rm -f sl?.png echo "func --> standard ..." convert_xfm -omat example_func2standard.mat -concat highres2standard.mat example_func2highres.mat applywarp --ref=standard.nii.gz --in=${CURDIR}/${SUBJECT}/example_func_brain.nii.gz --out=example_func2standard.nii.gz --warp=highres2standard_warp.nii.gz --premat=example_func2highres.mat convert_xfm -inverse -omat standard2example_func.mat example_func2standard.mat slicer example_func2standard.nii.gz standard.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png example_func2standard1.png ; slicer standard.nii.gz example_func2standard.nii.gz -s 2 -x 0.35 sla.png -x 0.45 slb.png -x 0.55 slc.png -x 0.65 sld.png -y 0.35 sle.png -y 0.45 slf.png -y 0.55 slg.png -y 0.65 slh.png -z 0.35 sli.png -z 0.45 slj.png -z 0.55 slk.png -z 0.65 sll.png ; pngappend sla.png + slb.png + slc.png + sld.png + sle.png + slf.png + slg.png + slh.png + sli.png + slj.png + slk.png + sll.png example_func2standard2.png ; pngappend example_func2standard1.png - example_func2standard2.png example_func2standard.png; /bin/rm -f sl?.png done echo "All done! Let's leave for the next step...!"