#!/bin/tcsh -f
set CurDir = $PWD
if ("$1" == '' || "$1" == '-h' || "$1" == '-help' || "$2" == '') then
goto USAGE
endif
goto PARSE_COMMAND
Ret_PARSE_COMMAND:
goto CHECK_PROGRAMS
Ret_CHECK_PROGRAMS:
goto SET_VARIABLES
Ret_SET_VARIABLES:
goto CHECK_EXISTENCE
Ret_CHECK_EXISTENCE:
goto DOWNSAMPLE
Ret_DOWNSAMPLE:
goto STRIP_EXP_VOL
Ret_STRIP_EXP_VOL:
goto RESAMPLE
Ret_RESAMPLE:
goto REGISTER
Ret_REGISTER:
echo "Done."
goto END
PARSE_COMMAND:
#continue parsing for new options
set cleanup = 1
set Narg = $#
set cnt = 1
set cropt = '-coarserot'
set prefix = ''
set UseWarp = 0
set clpbelow = ''
set SA_in = ''
set EA_in = ''
set DownSample = 0
set StripSkull = 0
while ($cnt <= $Narg)
set donext = 1;
if ($donext && "$argv[$cnt]" == "-dxyz") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need value after -dxyz"
goto END
else
@ cnt ++
set DownSample = "$argv[$cnt]"
if ($DownSample < 0.3 || $DownSample > 4) then
echo "Error: Bad value for dxyz ($argv[$cnt])"
echo ""
goto END
endif
set donext = 0
endif
endif
if ($donext && "$argv[$cnt]" == "-EA_clip_below") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need Zmm after -EA_clip_below"
goto END
else
@ cnt ++
set clpbelow = "$argv[$cnt]"
set donext = 0
endif
endif
if ($donext && "$argv[$cnt]" == "-prefix") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need a string after -prefix"
goto END
else
@ cnt ++
set prefix = "$argv[$cnt]"
set donext = 0
endif
endif
if ($donext && "$argv[$cnt]" == "-surf_anat") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need a volume after -surf_anat"
goto END
else
@ cnt ++
set SA_in = "$argv[$cnt]"
set donext = 0
endif
endif
if ($donext && "$argv[$cnt]" == "-exp_anat") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need a volume after -exp_anat"
goto END
else
@ cnt ++
set EA_in = "$argv[$cnt]"
set donext = 0
endif
endif
if ($donext && "$argv[$cnt]" == "-wd") then
set UseWarp = 1;
set donext = 0
endif
if ($donext && "$argv[$cnt]" == "-strip_skull") then
set pLoc = $cnt
if ($pLoc == $Narg) then
echo "Need a parameter after -strip_skull"
goto END
else
@ cnt ++
if ("$argv[$cnt]" == "exp_anat") then
set StripSkull = 1;
else if ("$argv[$cnt]" == "both") then
set StripSkull = 3;
else
echo "Acceptable options for -strip_skull are 'exp_anat' or 'both'"
goto END
endif
endif
set donext = 0
endif
if ($donext && "$argv[$cnt]" == "-ncr") then
set cropt = '';
set donext = 0
endif
if ($donext && "$argv[$cnt]" == "-keep_tmp") then
set cleanup = 0;
set donext = 0
endif
#ADD NO NEW OPTIONS BELOW THIS LINE
if ($donext == 1 && $cnt == 1) then
set EA_in = "$argv[$cnt]"
echo "Note: Guessing that '$EA_in' is the experiment anatomy."
echo "Better use -exp_anat flag in your command."
echo ""
set donext = 0
endif
if ($donext == 1 && $cnt == 2) then
set SA_in = "$argv[$cnt]"
echo ""
echo "Note: Guessing that '$SA_in' is the surface anatomy."
echo "Better use -surf_anat flag in your command."
echo ""
set donext = 0
endif
if ($donext == 1 && $cnt == 3) then
#probably the dxyz parameter
set DownSample = $argv[$cnt]
if ("$DownSample" =~ *[^0-9]*) then
echo "Error: Option '$argv[$cnt]' not understood"
echo ""
goto END
endif
if ($DownSample < 0.3 || $DownSample > 4) then
echo "Error: Option '$argv[$cnt]' not understood"
echo ""
goto END
endif
set donext = 0
endif
if ($donext == 1) then
echo "Error: Option or parameter '$argv[$cnt]' not understood"
goto END
endif
@ cnt ++
end
if ("$SA_in" == "" || "$EA_in" == "") then
echo "Error: Failed to find surface and/or experiment anatomies on command line."
goto END
else
set ExpAnatPrefix = `@GetAfniPrefix $EA_in`
set ExpAnatView = `@GetAfniView $EA_in`
set SurfAnatPrefix = `@GetAfniPrefix $SA_in`
set SurfAnatView = `@GetAfniView $SA_in`
set SurfAnatPath = $SA_in:h
if ($SurfAnatPath == $SA_in:t) then
#no path given
set SurfAnatPath = .
endif
endif
goto Ret_PARSE_COMMAND
SET_VARIABLES:
set ExpAnat = $ExpAnatPrefix$ExpAnatView
set SurfAnat = $SurfAnatPrefix$SurfAnatView
set Resampled = 0 #flag set when resampling is done
set SkullStripped = 0
goto Ret_SET_VARIABLES
DOWNSAMPLE:
set Skip = 0
if ($DownSample != 0) then
echo "Downsampling ..."
cd $SurfAnatPath
set tmpPrefix = $SurfAnatPrefix"_"$DownSample"mm"
if (-f $tmpPrefix$SurfAnatView.BRIK) then
echo ""
echo "Warning: $tmpPrefix$SurfAnatView exists in $SurfAnatPath"
echo "Enter O/S/Q to Overwrite/Skip/Quit:"
set sel = $<
if ("$sel" == 'O' || "$sel" == 'o') then
rm -f $tmpPrefix$SurfAnatView.BRIK $tmpPrefix$SurfAnatView.HEAD
endif
if ("$sel" == 'S' || "$sel" == 's') then
echo "Skipping downsampling, existing data set $DownSample will be used"
set Skip = 1
endif
if ("$sel" == 'Q' || "$sel" == 'q') then
echo "Quitting ..."
goto END
endif
echo ""
endif
if ($Skip == 0) then
echo "running: adwarp -force -prefix $tmpPrefix -apar $SurfAnat -dpar $SurfAnat -dxyz $DownSample -resam Cu"
adwarp -force -prefix $tmpPrefix -apar $SurfAnat -dpar $SurfAnat -dxyz $DownSample -resam Cu
if(!(-f $tmpPrefix$SurfAnatView.BRIK || -f $tmpPrefix$SurfAnatView.BRIK.gz || -f $tmpPrefix$SurfAnatView.BRIK.Z || -f $tmpPrefix$SurfAnatView.BRIK.bz2 )) then
goto NO_DOWNGOOD_BADBAD
endif
endif
set SurfAnatPrefix = $tmpPrefix
set SurfAnat = $SurfAnatPrefix$SurfAnatView
cd $CurDir
endif
goto Ret_DOWNSAMPLE
STRIP_EXP_VOL:
#strip skull off of EXP_VOL
set Skip = 0
cd $CurDir
if ($StripSkull >= 1) then
set ExpAnat_NoSkullPrefix = $ExpAnatPrefix"_ns"
set ExpAnat_NoSkull = $ExpAnatPrefix"_ns"$ExpAnatView
echo "Stripping exp vol ..."
if (`@CheckForAfniDset $ExpAnat_NoSkull` > 0) then
echo ""
echo "Warning: $ExpAnat_NoSkull exists in $CurDir"
echo "Enter O/S/Q to Overwrite/Skip/Quit:"
set sel = $<
if ("$sel" == 'O' || "$sel" == 'o') then
rm -f $ExpAnat_NoSkull.BRIK* $ExpAnat_NoSkull.HEAD
endif
if ("$sel" == 'S' || "$sel" == 's') then
echo "Skipping stripping, existing data set $ExpAnat_NoSkull will be used"
set Skip = 1
endif
if ("$sel" == 'Q' || "$sel" == 'q') then
echo "Quitting ..."
goto END
endif
echo ""
endif
if ($Skip == 0) then
3dSkullStrip -input $ExpAnat -prefix $ExpAnat_NoSkull
if (`@CheckForAfniDset $ExpAnat_NoSkull` < 2) then
goto NO_SS
endif
endif
set ExpAnatPrefix = $ExpAnat_NoSkullPrefix
set ExpAnat = $ExpAnat_NoSkull
set SkullStripped = 1
endif
if ($StripSkull >= 2) then
set Skip = 0
set SurfAnat_NoSkullPrefix = $SurfAnatPrefix"_ns"
set SurfAnat_NoSkull = $SurfAnatPrefix"_ns"$SurfAnatView
echo "Stripping surf vol ..."
if (`@CheckForAfniDset $SurfAnatPath/$SurfAnat_NoSkull` > 0) then
echo ""
echo "Warning: $SurfAnatPath/$SurfAnat_NoSkull exists in $CurDir"
echo "Enter O/S/Q to Overwrite/Skip/Quit:"
set sel = $<
if ("$sel" == 'O' || "$sel" == 'o') then
rm -f $SurfAnatPath/$SurfAnat_NoSkull.BRIK* $SurfAnatPath/$SurfAnat_NoSkull.HEAD
endif
if ("$sel" == 'S' || "$sel" == 's') then
echo "Skipping stripping, existing data set $SurfAnatPath/$SurfAnat_NoSkull will be used"
set Skip = 1
endif
if ("$sel" == 'Q' || "$sel" == 'q') then
echo "Quitting ..."
goto END
endif
echo ""
endif
if ($Skip == 0) then
3dSkullStrip -input $SurfAnatPath/$SurfAnat -prefix $SurfAnatPath/$SurfAnat_NoSkull
if (`@CheckForAfniDset $SurfAnatPath/$SurfAnat_NoSkull` < 2) then
goto NO_SS
endif
endif
set SurfAnatOri = $SurfAnat
set SurfAnatPrefix = $SurfAnat_NoSkullPrefix
set SurfAnat = $SurfAnat_NoSkull
set SkullStripped = 2
endif
goto Ret_STRIP_EXP_VOL
RESAMPLE:
#resample Experiment volume to look like SurfAnat
set Skip = 0
cd $CurDir
set ExpAnat_ResampPrefix = $ExpAnatPrefix"_resamp_"$clpbelow
set ExpAnat_Resamp = $ExpAnat_ResampPrefix$SurfAnatView
echo ""
echo "resampling $ExpAnat to match $SurfAnatPath/$SurfAnat"
if (`@CheckForAfniDset $ExpAnat_Resamp.BRIK` > 0) then
echo ""
echo "Warning: $ExpAnat_Resamp exists in $CurDir"
echo "Enter O/S/Q to Overwrite/Skip/Quit:"
set sel = $<
if ("$sel" == 'O' || "$sel" == 'o') then
rm -f $ExpAnat_Resamp.BRIK* $ExpAnat_Resamp.HEAD
endif
if ("$sel" == 'S' || "$sel" == 's') then
echo "Skipping resampling, existing data set $ExpAnat_Resamp will be used"
set Skip = 1
endif
if ("$sel" == 'Q' || "$sel" == 'q') then
echo "Quitting ..."
goto END
endif
echo ""
endif
if ($Skip == 0) then
set tmpref = '___tmp__rs'"$ExpAnat_ResampPrefix"
if ($clpbelow != '') then
rm -rf ${tmpref}*.???? >& /dev/null
@clip_volume -below $clpbelow -input $ExpAnat -prefix $tmpref
set nxt = "$tmpref""$ExpAnatView"
if (!(-f $nxt.BRIK || -f $nxt.BRIK.gz || -f $nxt.BRIK.Z || -f $nxt.BRIK.bz2)) then
goto NO_RESAMP
endif
else
set nxt = "$ExpAnat"
endif
echo "3dresample -master $SurfAnatPath/$SurfAnat -prefix $ExpAnat_ResampPrefix -rmode Cu -inset $nxt"
echo ""
3dresample -master $SurfAnatPath/$SurfAnat -prefix $ExpAnat_ResampPrefix -rmode Cu -inset $nxt
if (!(-f $ExpAnat_Resamp.BRIK || -f $ExpAnat_Resamp.BRIK.gz || -f $ExpAnat_Resamp.BRIK.Z || -f $ExpAnat_Resamp.BRIK.bz2)) then
goto NO_RESAMP
endif
rm -rf ${tmpref}*.???? >& /dev/null
endif
set ExpAnatPrefix = $ExpAnat_ResampPrefix
set ExpAnat = $ExpAnat_Resamp
set Resampled = 1
goto Ret_RESAMPLE
REGISTER:
cd $CurDir
if ($prefix == '') then
set VolRegPrefix = $SurfAnatPrefix"_Alnd_Exp"
else
set VolRegPrefix = $prefix
endif
echo ""
if (-f $VolRegPrefix$SurfAnatView.BRIK) then
echo ""
echo "Warning: $VolRegPrefix$SurfAnatView exists in $CurDir"
echo "Enter O/Q to Overwrite/Quit:"
set sel = $<
if ("$sel" == 'O' || "$sel" == 'o') then
rm -f $VolRegPrefix$SurfAnatView.BRIK $VolRegPrefix$SurfAnatView.HEAD
endif
if ("$sel" == 'Q' || "$sel" == 'q') then
echo "Quitting ..."
goto END
endif
echo ""
endif
echo "Registering $SurfAnatPath/$SurfAnat to $ExpAnat"
if ($UseWarp == 0) then
echo "3dvolreg -wtrim -clipit -twopass -twodup -zpad 8 -rotcom -verbose -base $ExpAnat -prefix $VolRegPrefix $SurfAnatPath/$SurfAnat"
echo ""
3dvolreg -wtrim -clipit -twopass -twodup -zpad 8 -rotcom -verbose -base $ExpAnat -prefix $VolRegPrefix $SurfAnatPath/$SurfAnat
if (!(-f $SurfAnatPath/$VolRegPrefix$SurfAnatView.BRIK || -f $SurfAnatPath/$VolRegPrefix$SurfAnatView.BRIK.gz || -f $SurfAnatPath/$VolRegPrefix$SurfAnatView.BRIK.Z || -f $SurfAnatPath/$VolRegPrefix$SurfAnatView.BRIK.bz2)) then
goto NO_VOLREG
endif
set fview = $SurfAnatView
mv $SurfAnatPath/$VolRegPrefix* ./
else
set tmpref = '___tmp__zp'"$ExpAnatPrefix$SurfAnatPrefix"
rm -rf ${tmpref}*.???? >& /dev/null
set pd = 8
echo "3dZeropad -I $pd -S $pd -A $pd -P $pd -L $pd -R $pd -mm -prefix ./${tmpref}_pad $SurfAnatPath/$SurfAnat"
echo ""
3dZeropad -I $pd -S $pd -A $pd -P $pd -L $pd -R $pd -mm -prefix ./${tmpref}_pad $SurfAnatPath/$SurfAnat
3dZeropad -I $pd -S $pd -A $pd -P $pd -L $pd -R $pd -mm -prefix ./${tmpref}_refpad $ExpAnat
3dWarpDrive $cropt -twopass -verb -affine_general -cubic -final quintic \
-base ./${tmpref}_refpad$SurfAnatView -prefix ./${tmpref}_pad_wd ./${tmpref}_pad$SurfAnatView
if ($StripSkull > 2) then
#Have to apply same transform to original SurfAnat
3dZeropad -I $pd -S $pd -A $pd -P $pd -L $pd -R $pd -mm -prefix ./${tmpref}_padori $SurfAnatPath/$SurfAnatOri
3dWarp -matparent ./${tmpref}_pad_wd$SurfAnatView -quintic -prefix ./${tmpref}_pad_wdori ./${tmpref}_padori$SurfAnatView
set wdnext = ${tmpref}_pad_wdori
else
set wdnext = ${tmpref}_pad_wd
endif
3dZeropad -I -$pd -S -$pd -A -$pd -P -$pd -L -$pd -R -$pd -mm -prefix ./$VolRegPrefix ${wdnext}$SurfAnatView
#copy the WARPDRIVE_MATVEC_ fields to the zero unpadded dude
3drefit -atrcopy ${wdnext}$SurfAnatView WARPDRIVE_INPUT_IDCODE $VolRegPrefix$SurfAnatView
3drefit -atrcopy ${wdnext}$SurfAnatView WARPDRIVE_INPUT_NAME $VolRegPrefix$SurfAnatView
3drefit -atrcopy ${wdnext}$SurfAnatView WARPDRIVE_BASE_IDCODE $VolRegPrefix$SurfAnatView
3drefit -atrcopy ${wdnext}$SurfAnatView WARPDRIVE_MATVEC_FOR_000000 $VolRegPrefix$SurfAnatView
3drefit -atrcopy ${wdnext}$SurfAnatView WARPDRIVE_MATVEC_INV_000000 $VolRegPrefix$SurfAnatView
#differing views?
if ("$SurfAnatView" != "$ExpAnatView") then
3drefit -view $ExpAnatView $VolRegPrefix$SurfAnatView
set fview = $ExpAnatView
else
set fview = $SurfAnatView
endif
if (!(-f ./$VolRegPrefix$fview.BRIK || -f ./$VolRegPrefix$fview.BRIK.gz || -f ./$VolRegPrefix$fview.BRIK.Z || -f ./$VolRegPrefix$fview.BRIK.bz2)) then
goto NO_WARPDRIVE
endif
if ($cleanup == 1) then
rm -rf ${tmpref}*.???? ${tmpref}*.????.* >& /dev/null
endif
endif
#remove _resamp_
if ($Resampled == 1 && $cleanup == 1) then
echo "removing temporary bricks ..."
rm -f $ExpAnat_Resamp".HEAD"
rm -f $ExpAnat_Resamp".BRIK"
endif
#add a history note
3dNotes -h "`basename $0` $argv[*]" $VolRegPrefix$fview
goto Ret_REGISTER
CHECK_EXISTENCE:
if (`@CheckForAfniDset $ExpAnat` < 2) goto NO_EXPANAT
#if (!(-f $ExpAnat.HEAD || -f $ExpAnat)) goto NO_EXPANAT
#if (!(-f $ExpAnat.BRIK || -f $ExpAnat.BRIK.gz || -f $ExpAnat.BRIK.Z || -f $ExpAnat.BRIK.bz2)) then
# goto NO_EXPANAT
#endif
if (`@CheckForAfniDset $SurfAnatPath/$SurfAnat` < 2) goto NO_SURFANAT
#test -f $SurfAnatPath/$SurfAnat.HEAD || goto NO_SURFANAT
#if (!(-f $SurfAnatPath/$SurfAnat.BRIK || -f $SurfAnatPath/$SurfAnat.BRIK.gz || -f $SurfAnatPath/$SurfAnat.BRIK.Z || -f $SurfAnatPath/$SurfAnat.BRIK.bz2)) then
# goto NO_SURFANAT
#endif
#check for large center difference
set dist_cent = `@Center_Distance -dset $ExpAnat.HEAD $SurfAnatPath/$SurfAnat.HEAD`
if (`ccalc -form int -eval "step($dist_cent - 80)"`) then
echo ""
echo "*********** Warning *************"
echo "Dataset centers are $dist_cent mm"
echo "apart. If registration fails, try"
echo "recentering all the input data using"
echo "@Align_Centers -base $SurfAnatPath/$SurfAnat.HEAD -dset $ExpAnat.HEAD -child CHILDREN"
echo "and rerun `basename $0` using the shifted dset"
echo "See @Align_Centers for more help."
echo "*********************************"
echo ""
echo "Hit Enter to proceed or ctrl+c to quit."
echo ""
set junk = $<
else
echo "Center distance of $dist_cent mm"
endif
goto Ret_CHECK_EXISTENCE
CHECK_PROGRAMS:
set failed_pgms = 0
foreach test_command ( 3dvolreg adwarp @GetAfniView @GetAfniPrefix )
(which $test_command) >& /dev/null
if ( $status ) then
echo "program not found in path: $test_command"
@ failed_pgms ++
endif
end
if ( $failed_pgms ) then
echo "$failed_pgms program(s) not found"
goto END
endif
goto Ret_CHECK_PROGRAMS
NO_SURFANAT:
echo ""
echo "Error: No Surface Anatomy $SurfAnat (.HEAD or .BRIK) volume in $SurfAnatPath"
echo ""
goto END
NO_EXPANAT:
echo ""
echo "Error: No Experiment Anatomy $ExpAnat (.HEAD or .BRIK) in current directory"
echo ""
goto END
NO_DOWNGOOD_BADBAD:
echo ""
echo "Error: adwarp failed."
echo ""
goto END
NO_SS:
echo ""
echo "Error: SkullStripping failed."
echo ""
goto END
NO_VOLREG:
echo ""
echo "Error: 3dvolreg failed."
echo ""
goto END
NO_WARPDRIVE:
echo ""
echo "Error: 3dwarpdrive failed."
echo ""
goto END
NO_RESAMP:
echo ""
echo "Error: 3dresample failed."
echo ""
goto END
USAGE:
echo ""
echo "Usage: `basename $0` <-exp_anat Experiment_Anatomy> <-surf_anat Surface_Anatomy> "
echo " [dxyz] [-wd] [-prefix PREFIX] [-EA_clip_below CLP]"
echo "creates a version of Surface Anatomy that is registered to Experiment Anatomy."
echo ""
echo "Mandatory parameters:"
echo "<-exp_anat Experiment_Anatomy>: Name of high resolution anatomical data set in register "
echo " with experimental data."
echo "<-surf_anat Surface_Anatomy> Path and Name of high resolution antomical data set used to "
echo " create the surface."
echo ""
echo " NOTE: In the old usage, there were no -exp_anat and -surf_anat flags and the two "
echo " volumes had to appear first on the command line and in the proper order."
echo ""
echo "Optional parameters:"
echo " [-dxyz DXYZ]: This optional parameter indicates that the anatomical "
echo " volumes must be downsampled to dxyz mm voxel resolution before "
echo " registration. That is only necessary if 3dvolreg runs out of memory."
echo " You MUST have 3dvolreg that comes with afni distributions newer than "
echo " version 2.45l. It contains an option for reducing memory usage and "
echo " thus allow the registration of large data sets."
echo " [-wd]: Use 3dWarpDrive's general affine transform (12 param) instead of "
echo " 3dvolreg's 6 parameters."
echo " If the anatomical coverage differs markedly between 'Experiment "
echo " Anatomy' and 'Surface Anatomy', you might need to use -EA_clip_below "
echo " option or you could end up with a very distorted brain."
#echo " With more degrees of freedom, there is more room for the alignment not"
#echo " to converge very well, especially when spatial coverage of the two dsets"
#echo " is not the same. So use this option when you have to, not as the default."
echo " The default now is to use -coarserot option with 3dWarpDrive, this"
echo " should make the program more robust. If you want to try running without it"
echo " the add -ncr with -wd"
echo " I would be interested in examining cases where -wd option failed to "
echo " produce a good alignment."
echo " [-strip_skull WHICH]: Use 3dSkullStrip to remove non-brain tissue and "
echo " potentially improve the alignment. WHICH can be"
echo " one of 'exp_anat' or 'both'. In the first case,"
echo " the skull is removed from Experiment_Anatomy"
echo " dataset. With 'both' the skull is removed from"
echo " Experiment_Anatomy and Surface_Anatomy."
echo " [-EA_clip_below CLP]: Set slices below CLPmm in 'Experiment Anatomy' to zero."
echo " Use this if the coverage of 'Experiment Anatomy' dataset"
echo " extends far below the data in 'Surface Anatomy' dataset."
echo " To get the value of CLP, use AFNI to locate the slice"
echo " below which you want to clip and set CLP to the z coordinate"
echo " from AFNI's top left corner. Coordinate must be in RAI, DICOM."
echo " [-prefix PREFIX]: Use PREFIX for the output volume. Default is the prefix "
echo " of the 'Surface Anatomy' suffixed by _AlndExp."
echo " [-keep_tmp]: Keep temporary files for debugging. Note that you should"
echo " delete temporary files before rerunning the script."
echo ""
echo ""
echo "NOTE: You must run the script from the directory where Experiment Anatomy resides."
echo ""
echo "Example 1: For datasets with no relative distortion and comparable coverage."
echo " Using 6 param. rigid body transform."
echo "@SUMA_AlignToExperiment -exp_anat DemoSubj_spgrsa+orig. \"
echo " -surf_anat ../FreeSurfer/SUMA/DemoSubj_SurfVol+orig."
echo ""
echo "Example 2: For datasets with some distortion and different coverage."
echo " Using 12 param. transform and clipping of areas below cerebellum:"
echo "@SUMA_AlignToExperiment -exp_anat ABanat+orig. -surf_anat DemoSubj_SurfVol+orig. \"
echo " -wd -prefix DemoSubj_SurfVol_WD_AlndExp \"
echo " -EA_clip_below -30"
echo ""
echo "More help may be found at http://afni.nimh.nih.gov/ssc/ziad/SUMA/SUMA_doc.htm"
echo ""
echo "Ziad Saad (ziad@nih.gov)"
echo "SSCC/NIMH/ National Institutes of Health, Bethesda Maryland"
echo ""
goto END
END:
cd $CurDir
syntax highlighted by Code2HTML, v. 0.9.1