Skip to content
Snippets Groups Projects
Commit e787e541 authored by Matthew Webster's avatar Matthew Webster
Browse files

avw2fsl

parent 05c476bf
No related branches found
No related tags found
No related merge requests found
......@@ -41,14 +41,14 @@ ${FSLDIR}/bin/flirt -ref ${FSLDIR}/etc/standard/avg152T1_brain -in ${1}_brain -o
${FSLDIR}/bin/convert_xfm -inverse -omat std_2_${1}_brain.mat ${1}_brain_2_std.mat
# dilate (6mm) standard space structural segmentation, bring into t1 space and re-binarise
${FSLDIR}/bin/avwmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dil -dil -dil strucseg_2_${1}_brain
${FSLDIR}/bin/fslmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dilM -dilM -dilM strucseg_2_${1}_brain
${FSLDIR}/bin/flirt -in strucseg_2_${1}_brain -ref ${1}_brain -out strucseg_2_${1}_brain -applyxfm -init std_2_${1}_brain.mat
${FSLDIR}/bin/avwmaths strucseg_2_${1}_brain -bin strucseg_2_${1}_brain
${FSLDIR}/bin/fslmaths strucseg_2_${1}_brain -bin strucseg_2_${1}_brain
# produce t1-derived CSF mask and also dilate in-plane: 5 voxels outside central mask, 1 voxel inside mask
${FSLDIR}/bin/avwmaths ${1}_brain_pve_0 -thr 0.3 -bin ${1}_csf
${FSLDIR}/bin/avwmaths ${1}_csf -dil2 -dil2 -dil2 -dil2 -dil2 -sub strucseg_2_${1}_brain -thr 0.5 -bin ${1}_grot
${FSLDIR}/bin/avwmaths ${1}_csf -dil2 -mul strucseg_2_${1}_brain -add ${1}_grot -bin ${1}_csf_dil
${FSLDIR}/bin/fslmaths ${1}_brain_pve_0 -thr 0.3 -bin ${1}_csf
${FSLDIR}/bin/fslmaths ${1}_csf -kernel 2D -dilM -dilM -dilM -dilM -dilM -sub strucseg_2_${1}_brain -thr 0.5 -bin ${1}_grot
${FSLDIR}/bin/fslmaths ${1}_csf -kernel 2D -dilM -mul strucseg_2_${1}_brain -add ${1}_grot -bin ${1}_csf_dil
......@@ -60,23 +60,23 @@ ${FSLDIR}/bin/convert_xfm -inverse -omat ${1}_to_${2}.mat ${2}_to_${1}.mat
# transform t1 brain mask into t2 space, dilate slightly and apply to t2 to get t2 brain
${FSLDIR}/bin/flirt -in ${1}_brain_mask -out ${2}_brain_mask -ref ${2} -applyxfm -init ${1}_to_${2}.mat
#${FSLDIR}/bin/avwmaths ${2}_brain_mask -dil ${2}_brain_mask
${FSLDIR}/bin/avwmaths ${2}_brain_mask ${2}_brain_mask
${FSLDIR}/bin/avwmaths ${2} -mas ${2}_brain_mask ${2}_brain
#${FSLDIR}/bin/fslmaths ${2}_brain_mask -dilM ${2}_brain_mask
${FSLDIR}/bin/fslmaths ${2}_brain_mask ${2}_brain_mask
${FSLDIR}/bin/fslmaths ${2} -mas ${2}_brain_mask ${2}_brain
# run segmentation on t2; pve_0 should be CSF+lesions; transform into t1 space, remask with t1 brain mask
${FSLDIR}/bin/fast1 $t2segopts -c $nclasses -e -ov ${2}_brain
${FSLDIR}/bin/flirt -in $t2lesions -ref ${1} -out ${1}_lesion+CSF -applyxfm -init ${2}_to_${1}.mat
${FSLDIR}/bin/avwmaths ${1}_lesion+CSF -mas ${1}_brain_mask ${1}_lesion+CSF
${FSLDIR}/bin/fslmaths ${1}_lesion+CSF -mas ${1}_brain_mask ${1}_lesion+CSF
#### combine to remove CSF from CSF+lesions ############################################
# combine masks and use to mask out CSF from t2-derived lesion+CSF probability; output lesion volume
${FSLDIR}/bin/avwmaths_32R ${1}_csf -mul -1 -add 1 -mul ${1}_lesion+CSF -thr 0.3 -bin ${1}_lesions+ucsf
${FSLDIR}/bin/avwmaths_32R ${1}_csf_dil -mul -1 -add 1 -mul ${1}_lesion+CSF ${1}_lesions
echo `${FSLDIR}/bin/avwstats ${1}_lesions -m -v | awk '{print "2 k " ${1} " " $3 " * 1000 / p" }' | dc -` > ${1}_lesions.txt
${FSLDIR}/bin/fslmaths ${1}_csf -mul -1 -add 1 -mul ${1}_lesion+CSF -thr 0.3 -bin ${1}_lesions+ucsf -odt float
${FSLDIR}/bin/fslmaths ${1}_csf_dil -mul -1 -add 1 -mul ${1}_lesion+CSF ${1}_lesions -odt float
echo `${FSLDIR}/bin/fslstats ${1}_lesions -m -v | awk '{print "2 k " ${1} " " $3 " * 1000 / p" }' | dc -` > ${1}_lesions.txt
echo "${1} `cat ${1}_lesions.txt`"
# create display output
......
......@@ -57,14 +57,14 @@ ${FSLDIR}/bin/flirt -ref ${FSLDIR}/etc/standard/avg152T1_brain -in ${A}_brain -o
${FSLDIR}/bin/convert_xfm -inverse -omat std_2_${A}_brain.mat ${A}_brain_2_std.mat
# dilate (6mm) standard space ventricles+deep-grey, bring into t1 space and re-binarise to make "CENTRAL MASK"
${FSLDIR}/bin/avwmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dil -dil -dil strucseg_2_${A}_brain
${FSLDIR}/bin/fslmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dilM -dilM -dilM strucseg_2_${A}_brain
${FSLDIR}/bin/flirt -in strucseg_2_${A}_brain -ref ${A}_brain -out strucseg_2_${A}_brain -applyxfm -init std_2_${A}_brain.mat
${FSLDIR}/bin/avwmaths strucseg_2_${A}_brain -bin strucseg_2_${A}_brain
${FSLDIR}/bin/fslmaths strucseg_2_${A}_brain -bin strucseg_2_${A}_brain
# produce t1-derived CSF mask and also dilate in-plane: 5 voxels outside CENTRAL MASK, 1 voxel inside mask
${FSLDIR}/bin/avwmaths ${A}_brain_pve_0 -thr 0.3 -bin ${A}_csf
${FSLDIR}/bin/avwmaths ${A}_csf -dil2 -dil2 -dil2 -dil2 -dil2 -sub strucseg_2_${A}_brain -thr 0.5 -bin ${A}_grot
${FSLDIR}/bin/avwmaths ${A}_csf -dil2 -mul strucseg_2_${A}_brain -add ${A}_grot -bin ${A}_csf_dil
${FSLDIR}/bin/fslmaths ${A}_brain_pve_0 -thr 0.3 -bin ${A}_csf
${FSLDIR}/bin/fslmaths ${A}_csf -kernel 2D -dilM -dilM -dilM -dilM -dilM -sub strucseg_2_${A}_brain -thr 0.5 -bin ${A}_grot
${FSLDIR}/bin/fslmaths ${A}_csf -kernel 2D -dilM -mul strucseg_2_${A}_brain -add ${A}_grot -bin ${A}_csf_dil
......@@ -76,21 +76,21 @@ ${FSLDIR}/bin/convert_xfm -inverse -omat ${A}_to_${B}.mat ${B}_to_${A}.mat
# transform t1 brain mask into t2 space and apply to t2 to get t2_brain
${FSLDIR}/bin/flirt -in ${A}_brain_mask -out ${B}_brain_mask -ref $B -applyxfm -init ${A}_to_${B}.mat
${FSLDIR}/bin/avwmaths $B -mas ${B}_brain_mask ${B}_brain
${FSLDIR}/bin/fslmaths $B -mas ${B}_brain_mask ${B}_brain
# run segmentation on t2; $t2lesions should be CSF+lesions; transform into t1 space, remask with t1 brain mask
${FSLDIR}/bin/fast1 $t2segopts -c $nclasses -e -ov ${B}_brain
${FSLDIR}/bin/flirt -in $t2lesions -ref $A -out ${A}_lesion+CSF -applyxfm -init ${B}_to_${A}.mat
${FSLDIR}/bin/avwmaths ${A}_lesion+CSF -mas ${A}_brain_mask ${A}_lesion+CSF
${FSLDIR}/bin/fslmaths ${A}_lesion+CSF -mas ${A}_brain_mask ${A}_lesion+CSF
#### combine to remove CSF from CSF+lesions ############################################
# combine masks and use to mask out CSF from t2-derived lesion+CSF probability; output lesion volume
${FSLDIR}/bin/avwmaths_32R ${A}_csf_dil -mul -1 -add 1 -mul ${A}_lesion+CSF ${A}_lesions
${FSLDIR}/bin/avwmaths_32R ${A}_lesions -thr $lesion_thr ${A}_lesions_thr
echo `${FSLDIR}/bin/avwstats ${A}_lesions_thr -m -v | awk '{print "2 k " $1 " " $3 " * 1000 / p" }' | dc -` > ${A}_lesions.txt
${FSLDIR}/bin/fslmaths ${A}_csf_dil -mul -1 -add 1 -mul ${A}_lesion+CSF ${A}_lesions -odt float
${FSLDIR}/bin/fslmaths ${A}_lesions -thr $lesion_thr ${A}_lesions_thr -odt float
echo `${FSLDIR}/bin/fslstats ${A}_lesions_thr -m -v | awk '{print "2 k " $1 " " $3 " * 1000 / p" }' | dc -` > ${A}_lesions.txt
echo "$A `cat ${A}_lesions.txt`"
# create display output
......
......@@ -58,14 +58,14 @@ ${FSLDIR}/bin/flirt -ref ${FSLDIR}/etc/standard/avg152T1_brain -in ${A}_brain -o
${FSLDIR}/bin/convert_xfm -inverse -omat std_2_${A}_brain.mat ${A}_brain_2_std.mat
# dilate (6mm) standard space ventricles+deep-grey, bring into t1 space and re-binarise to make "CENTRAL MASK"
${FSLDIR}/bin/avwmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dil -dil -dil strucseg_2_${A}_brain
${FSLDIR}/bin/fslmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 3.5 -bin -dilM -dilM -dilM strucseg_2_${A}_brain
${FSLDIR}/bin/flirt -in strucseg_2_${A}_brain -ref ${A}_brain -out strucseg_2_${A}_brain -applyxfm -init std_2_${A}_brain.mat
${FSLDIR}/bin/avwmaths strucseg_2_${A}_brain -bin strucseg_2_${A}_brain
${FSLDIR}/bin/fslmaths strucseg_2_${A}_brain -bin strucseg_2_${A}_brain
# produce t1-derived CSF mask and also dilate in-plane: 5 voxels outside CENTRAL MASK, 1 voxel inside mask
${FSLDIR}/bin/avwmaths ${A}_brain_pve_0 -thr 0.3 -bin ${A}_csf
${FSLDIR}/bin/avwmaths ${A}_csf -dil2 -dil2 -dil2 -dil2 -dil2 -sub strucseg_2_${A}_brain -thr 0.5 -bin ${A}_grot
${FSLDIR}/bin/avwmaths ${A}_csf -dil2 -mul strucseg_2_${A}_brain -add ${A}_grot -bin ${A}_csf_dil
${FSLDIR}/bin/fslmaths ${A}_brain_pve_0 -thr 0.3 -bin ${A}_csf
${FSLDIR}/bin/fslmaths ${A}_csf -kernel 2D -dilM -dilM -dilM -dilM -dilM -sub strucseg_2_${A}_brain -thr 0.5 -bin ${A}_grot
${FSLDIR}/bin/fslmaths ${A}_csf -kernel 2D -dilM -mul strucseg_2_${A}_brain -add ${A}_grot -bin ${A}_csf_dil
......@@ -77,21 +77,21 @@ ${FSLDIR}/bin/convert_xfm -inverse -omat ${A}_to_${B}.mat ${B}_to_${A}.mat
# transform t1 brain mask into t2 space and apply to t2 to get t2_brain
${FSLDIR}/bin/flirt -in ${A}_brain_mask -out ${B}_brain_mask -ref $B -applyxfm -init ${A}_to_${B}.mat
${FSLDIR}/bin/avwmaths $B -mas ${B}_brain_mask ${B}_brain
${FSLDIR}/bin/fslmaths $B -mas ${B}_brain_mask ${B}_brain
# run segmentation on t2; $t2lesions should be CSF+lesions; transform into t1 space, remask with t1 brain mask
${FSLDIR}/bin/fast1 $t2segopts -c $nclasses -e -ov ${B}_brain
${FSLDIR}/bin/flirt -in $t2lesions -ref $A -out ${A}_lesion+CSF -applyxfm -init ${B}_to_${A}.mat
${FSLDIR}/bin/avwmaths ${A}_lesion+CSF -mas ${A}_brain_mask ${A}_lesion+CSF
${FSLDIR}/bin/fslmaths ${A}_lesion+CSF -mas ${A}_brain_mask ${A}_lesion+CSF
#### combine to remove CSF from CSF+lesions ############################################
# combine masks and use to mask out CSF from t2-derived lesion+CSF probability; output lesion volume
${FSLDIR}/bin/avwmaths_32R ${A}_csf_dil -mul -1 -add 1 -mul ${A}_lesion+CSF ${A}_lesions
${FSLDIR}/bin/avwmaths_32R ${A}_lesions -thr $lesion_thr ${A}_lesions_thr
echo `${FSLDIR}/bin/avwstats ${A}_lesions_thr -m -v | awk '{print "2 k " $1 " " $3 " * 1000 / p" }' | dc -` > ${A}_lesions.txt
${FSLDIR}/bin/fslmaths ${A}_csf_dil -mul -1 -add 1 -mul ${A}_lesion+CSF ${A}_lesions -odt float
${FSLDIR}/bin/fslmaths ${A}_lesions -thr $lesion_thr ${A}_lesions_thr -odt float
echo `${FSLDIR}/bin/fslstats ${A}_lesions_thr -m -v | awk '{print "2 k " $1 " " $3 " * 1000 / p" }' | dc -` > ${A}_lesions.txt
echo "$A `cat ${A}_lesions.txt`"
# create display output
......
......@@ -53,8 +53,8 @@ sdo="-m"
dostd=0
stdmask=0
stdroi=""
origin3=37 # `avwval ${FSLDIR}/etc/standard/avg152T1 origin3`
pixdim3=2 # `avwval ${FSLDIR}/etc/standard/avg152T1 pixdim3`
origin3=37 # `fslval ${FSLDIR}/etc/standard/avg152T1 origin3`
pixdim3=2 # `fslval ${FSLDIR}/etc/standard/avg152T1 pixdim3`
while [ _$1 != _ ] ; do
......@@ -101,8 +101,8 @@ sdo="${sdo}${is_t2}"
echo "---------- extract brain --------------------------------------------" >> ${A}_to_${B}.siena
${FSLDIR}/bin/bet $A ${A}_brain -s -m $betopts >> ${A}_to_${B}.siena
${FSLDIR}/bin/bet $B ${B}_brain -s -m $betopts >> ${A}_to_${B}.siena
${FSLDIR}/bin/avwmaths++ ${A}_brain -sub `$FSLDIR/bin/avwstats++ ${A}_brain -p 0` -mas ${A}_brain_mask ${A}_brain -odt float
${FSLDIR}/bin/avwmaths++ ${B}_brain -sub `$FSLDIR/bin/avwstats++ ${B}_brain -p 0` -mas ${B}_brain_mask ${B}_brain -odt float
${FSLDIR}/bin/fslmaths ${A}_brain -sub `$FSLDIR/bin/fslstats ${A}_brain -p 0` -mas ${A}_brain_mask ${A}_brain -odt float
${FSLDIR}/bin/fslmaths ${B}_brain -sub `$FSLDIR/bin/fslstats ${B}_brain -p 0` -mas ${B}_brain_mask ${B}_brain -odt float
echo "" >> ${A}_to_${B}.siena
echo "---------- register brains and skulls -------------------------------" >> ${A}_to_${B}.siena
......@@ -111,18 +111,18 @@ ${FSLDIR}/bin/siena_flirt $A $B >> ${A}_to_${B}.siena 2>&1
echo "" >> ${A}_to_${B}.siena
echo "---------- produce valid masks --------------------------------------" >> ${A}_to_${B}.siena
XDIM=`${FSLDIR}/bin/avwval $A dim1` ; XDIM=`echo "$XDIM 2 - p" | dc -`
YDIM=`${FSLDIR}/bin/avwval $A dim2` ; YDIM=`echo "$YDIM 2 - p" | dc -`
ZDIM=`${FSLDIR}/bin/avwval $A dim3` ; ZDIM=`echo "$ZDIM 2 - p" | dc -`
${FSLDIR}/bin/avwmaths ${A}_brain_mask -mul 0 -add 1 -roi 1 $XDIM 1 $YDIM 1 $ZDIM 0 1 ${A}_valid_mask
XDIM=`${FSLDIR}/bin/avwval $B dim1` ; XDIM=`echo "$XDIM 2 - p" | dc -`
YDIM=`${FSLDIR}/bin/avwval $B dim2` ; YDIM=`echo "$YDIM 2 - p" | dc -`
ZDIM=`${FSLDIR}/bin/avwval $B dim3` ; ZDIM=`echo "$ZDIM 2 - p" | dc -`
${FSLDIR}/bin/avwmaths ${B}_brain_mask -mul 0 -add 1 -roi 1 $XDIM 1 $YDIM 1 $ZDIM 0 1 ${B}_valid_mask
XDIM=`${FSLDIR}/bin/fslval $A dim1` ; XDIM=`echo "$XDIM 2 - p" | dc -`
YDIM=`${FSLDIR}/bin/fslval $A dim2` ; YDIM=`echo "$YDIM 2 - p" | dc -`
ZDIM=`${FSLDIR}/bin/fslval $A dim3` ; ZDIM=`echo "$ZDIM 2 - p" | dc -`
${FSLDIR}/bin/fslmaths ${A}_brain_mask -mul 0 -add 1 -roi 1 $XDIM 1 $YDIM 1 $ZDIM 0 1 ${A}_valid_mask
XDIM=`${FSLDIR}/bin/fslval $B dim1` ; XDIM=`echo "$XDIM 2 - p" | dc -`
YDIM=`${FSLDIR}/bin/fslval $B dim2` ; YDIM=`echo "$YDIM 2 - p" | dc -`
ZDIM=`${FSLDIR}/bin/fslval $B dim3` ; ZDIM=`echo "$ZDIM 2 - p" | dc -`
${FSLDIR}/bin/fslmaths ${B}_brain_mask -mul 0 -add 1 -roi 1 $XDIM 1 $YDIM 1 $ZDIM 0 1 ${B}_valid_mask
${FSLDIR}/bin/flirt -in ${B}_valid_mask -ref $A -out ${B}_valid_mask_to_${A} -applyxfm -init ${B}_to_${A}.mat -paddingsize 0
${FSLDIR}/bin/flirt -in ${A}_valid_mask -ref $B -out ${A}_valid_mask_to_${B} -applyxfm -init ${A}_to_${B}.mat -paddingsize 0
${FSLDIR}/bin/avwmaths ${A}_valid_mask -mul ${B}_valid_mask_to_${A} ${A}_valid_mask_with_$B
${FSLDIR}/bin/avwmaths ${B}_valid_mask -mul ${A}_valid_mask_to_${B} ${B}_valid_mask_with_$A
${FSLDIR}/bin/fslmaths ${A}_valid_mask -mul ${B}_valid_mask_to_${A} ${A}_valid_mask_with_$B
${FSLDIR}/bin/fslmaths ${B}_valid_mask -mul ${A}_valid_mask_to_${B} ${B}_valid_mask_with_$A
if [ $dostd = 1 ] ; then
echo "" >> ${A}_to_${B}.siena
......@@ -143,20 +143,20 @@ if [ $dostd = 1 ] ; then
if [ $stdmask = 1 ] ; then
${FSLDIR}/bin/flirt -in ${FSLDIR}/etc/standard/avg152T1_brain_mask_dil2 -ref $A -out ${A}_stdmask -applyxfm -init ${A}_to_std_inv.mat
${FSLDIR}/bin/flirt -in ${FSLDIR}/etc/standard/avg152T1_brain_mask_dil2 -ref $B -out ${B}_stdmask -applyxfm -init ${B}_to_std_inv.mat
${FSLDIR}/bin/avwmaths ${A}_stdmask -thr 0.5 -bin ${A}_stdmask
${FSLDIR}/bin/avwmaths ${B}_stdmask -thr 0.5 -bin ${B}_stdmask
${FSLDIR}/bin/avwmaths ${A}_brain_mask -mas ${A}_stdmask ${A}_brain_mask
${FSLDIR}/bin/avwmaths ${B}_brain_mask -mas ${B}_stdmask ${B}_brain_mask
${FSLDIR}/bin/fslmaths ${A}_stdmask -thr 0.5 -bin ${A}_stdmask
${FSLDIR}/bin/fslmaths ${B}_stdmask -thr 0.5 -bin ${B}_stdmask
${FSLDIR}/bin/fslmaths ${A}_brain_mask -mas ${A}_stdmask ${A}_brain_mask
${FSLDIR}/bin/fslmaths ${B}_brain_mask -mas ${B}_stdmask ${B}_brain_mask
fi
if [ "$stdroi" != "" ] ; then
${FSLDIR}/bin/avwmaths ${FSLDIR}/etc/standard/avg152T1_brain_mask -mul 0 -add 1 $stdroi ${A}_and_${B}_stdmask
${FSLDIR}/bin/fslmaths ${FSLDIR}/etc/standard/avg152T1_brain_mask -mul 0 -add 1 $stdroi ${A}_and_${B}_stdmask
${FSLDIR}/bin/flirt -in ${A}_and_${B}_stdmask -ref $A -out ${A}_stdmask -applyxfm -init ${A}_to_std_inv.mat
${FSLDIR}/bin/flirt -in ${A}_and_${B}_stdmask -ref $B -out ${B}_stdmask -applyxfm -init ${B}_to_std_inv.mat
${FSLDIR}/bin/avwmaths ${A}_stdmask -thr 0.5 -bin ${A}_stdmask
${FSLDIR}/bin/avwmaths ${B}_stdmask -thr 0.5 -bin ${B}_stdmask
${FSLDIR}/bin/avwmaths ${A}_valid_mask_with_$B -mul ${A}_stdmask ${A}_valid_mask_with_$B
${FSLDIR}/bin/avwmaths ${B}_valid_mask_with_$A -mul ${B}_stdmask ${B}_valid_mask_with_$A
${FSLDIR}/bin/fslmaths ${A}_stdmask -thr 0.5 -bin ${A}_stdmask
${FSLDIR}/bin/fslmaths ${B}_stdmask -thr 0.5 -bin ${B}_stdmask
${FSLDIR}/bin/fslmaths ${A}_valid_mask_with_$B -mul ${A}_stdmask ${A}_valid_mask_with_$B
${FSLDIR}/bin/fslmaths ${B}_valid_mask_with_$A -mul ${B}_stdmask ${B}_valid_mask_with_$A
fi
fi
......@@ -179,7 +179,7 @@ echo "" >> ${A}_to_${B}.siena
pbvc_average=`echo "10 k $pbvc_forward $pbvc_backward - 2.0 / p" | dc -`
echo "finalPBVC $pbvc_average %" >> ${A}_to_${B}.siena
${FSLDIR}/bin/avwmaths ${A}_to_${B}_flow -mul -1 ${A}_to_${B}_flowneg
${FSLDIR}/bin/fslmaths ${A}_to_${B}_flow -mul -1 ${A}_to_${B}_flowneg
${FSLDIR}/bin/overlay 0 0 ${A}_halfwayto_${B} -a ${A}_to_${B}_flow 0.01 1 ${A}_to_${B}_flowneg 0.01 1 ${A}_halfwayto_${B}_render
if [ $debug = 0 ] ; then
......
......@@ -27,13 +27,13 @@ m=$3
M=`echo "5 k 1.0 $m / p" | dc -`
shift 3
o1=`${FSLDIR}/bin/avwval ${input} dim1`
o2=`${FSLDIR}/bin/avwval ${input} dim2`
o3=`${FSLDIR}/bin/avwval ${input} dim3`
o1=`${FSLDIR}/bin/fslval ${input} dim1`
o2=`${FSLDIR}/bin/fslval ${input} dim2`
o3=`${FSLDIR}/bin/fslval ${input} dim3`
v1=`${FSLDIR}/bin/avwval ${input} pixdim1 | sed "s/-//g"`
v2=`${FSLDIR}/bin/avwval ${input} pixdim2 | sed "s/-//g"`
v3=`${FSLDIR}/bin/avwval ${input} pixdim3 | sed "s/-//g"`
v1=`${FSLDIR}/bin/fslval ${input} pixdim1 | sed "s/-//g"`
v2=`${FSLDIR}/bin/fslval ${input} pixdim2 | sed "s/-//g"`
v3=`${FSLDIR}/bin/fslval ${input} pixdim3 | sed "s/-//g"`
t1=`echo "5 k $m 1.0 - $o1 * $v1 * _0.5 * p" | dc -`
t2=`echo "5 k $m 1.0 - $o2 * $v2 * _0.5 * p" | dc -`
......
......@@ -48,14 +48,14 @@ ${FSLDIR}/bin/convert_xfm -omat ${A}_halfwayto_${B}_inv.mat -inverse ${A}_halfwa
${FSLDIR}/bin/convert_xfm -omat ${A}_halfwayto_${B}_to_std.mat -concat ${A}_to_std.mat ${A}_halfwayto_${B}_inv.mat
# dilate flow image, -> standard space -> mask with ss edge image -> blur -> remask
${FSLDIR}/bin/avwmaths ${A}_to_${B}_flow -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil ${A}_to_${B}_flow_dil
${FSLDIR}/bin/avwmaths ${B}_to_${A}_flow -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil -dil ${A}_to_${B}_flow_dilback
${FSLDIR}/bin/avwmaths ${A}_to_${B}_flow_dil -sub ${A}_to_${B}_flow_dilback -div 2 ${A}_to_${B}_flow_dil
${FSLDIR}/bin/fslmaths ${A}_to_${B}_flow -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM ${A}_to_${B}_flow_dil
${FSLDIR}/bin/fslmaths ${B}_to_${A}_flow -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM -dilM ${A}_to_${B}_flow_dilback
${FSLDIR}/bin/fslmaths ${A}_to_${B}_flow_dil -sub ${A}_to_${B}_flow_dilback -div 2 ${A}_to_${B}_flow_dil
/bin/rm ${A}_to_${B}_flow_dilback*
${FSLDIR}/bin/flirt -in ${A}_to_${B}_flow_dil -ref ${FSLDIR}/etc/standard/avg152T1_brain -out ${A}_to_${B}_flow_to_std -applyxfm -init ${A}_halfwayto_${B}_to_std.mat
${FSLDIR}/bin/avwmaths ${A}_to_${B}_flow_to_std -mas ${FSLDIR}/etc/standard/avg152T1_edges ${A}_to_${B}_flow_to_std
${FSLDIR}/bin/fslmaths ${A}_to_${B}_flow_to_std -mas ${FSLDIR}/etc/standard/avg152T1_edges ${A}_to_${B}_flow_to_std
${FSLDIR}/bin/ip ${A}_to_${B}_flow_to_std ${A}_to_${B}_flow_to_std 0 -s 10
${FSLDIR}/bin/avwmaths ${A}_to_${B}_flow_to_std -mas ${FSLDIR}/etc/standard/avg152T1_edges ${A}_to_${B}_flow_to_std
${FSLDIR}/bin/fslmaths ${A}_to_${B}_flow_to_std -mas ${FSLDIR}/etc/standard/avg152T1_edges ${A}_to_${B}_flow_to_std
# cleanup
if [ $debug = 0 ] ; then
......
......@@ -50,8 +50,8 @@ betopts=""
segopts=""
nseg=3
stdroi=""
origin3=37 # `avwval ${FSLDIR}/etc/standard/avg152T1 origin3`
pixdim3=2 # `avwval ${FSLDIR}/etc/standard/avg152T1 pixdim3`
origin3=37 # `fslval ${FSLDIR}/etc/standard/avg152T1 origin3`
pixdim3=2 # `fslval ${FSLDIR}/etc/standard/avg152T1 pixdim3`
imtype=-t1
while [ _$1 != _ ] ; do
......@@ -102,7 +102,7 @@ fi
echo "---------- extract brain --------------------------------------------" >> ${I}.sienax
${FSLDIR}/bin/bet $I ${I}_brain -s -m $betopts >> ${I}.sienax
${FSLDIR}/bin/avwmaths++ ${I}_brain -sub `$FSLDIR/bin/avwstats++ ${I}_brain -p 0` -mas ${I}_brain_mask ${I}_brain -odt float
${FSLDIR}/bin/fslmaths ${I}_brain -sub `$FSLDIR/bin/fslstats ${I}_brain -p 0` -mas ${I}_brain_mask ${I}_brain -odt float
echo "" >> ${I}.sienax
echo "---------- register to stdairach space using brain and skull --------" >> ${I}.sienax
......@@ -120,19 +120,19 @@ echo "---------- mask with std mask ---------------------------------------" >
${FSLDIR}/bin/convert_xfm -inverse -omat ${I}2std_inv.mat ${I}2std.mat
MASK=${FSLDIR}/etc/standard/avg152T1_brain_mask_dil
if [ "$stdroi" != "" ] ; then
${FSLDIR}/bin/avwmaths $MASK $stdroi ${I}_stdmaskroi
${FSLDIR}/bin/fslmaths $MASK $stdroi ${I}_stdmaskroi
MASK=${I}_stdmaskroi
fi
${FSLDIR}/bin/flirt -in $MASK -ref ${I}_brain -out ${I}_stdmask -applyxfm -init ${I}2std_inv.mat
${FSLDIR}/bin/avwmaths ${I}_stdmask -thr 0.5 -bin ${I}_stdmask
${FSLDIR}/bin/avwmaths ${I}_brain -mask ${I}_stdmask ${I}_stdmaskbrain
${FSLDIR}/bin/fslmaths ${I}_stdmask -thr 0.5 -bin ${I}_stdmask
${FSLDIR}/bin/fslmaths ${I}_brain -mas ${I}_stdmask ${I}_stdmaskbrain
if [ $regional = 1 ] ; then
${FSLDIR}/bin/flirt -in ${FSLDIR}/etc/standard/avg152T1_strucseg_periph -ref ${I}_brain -out ${I}_stdmask_segperiph -applyxfm -init ${I}2std_inv.mat
${FSLDIR}/bin/avwmaths ${I}_stdmask_segperiph -thr 0.5 -bin ${I}_stdmask_segperiph
${FSLDIR}/bin/avwmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 4.5 -bin ${I}_tmpmask
${FSLDIR}/bin/fslmaths ${I}_stdmask_segperiph -thr 0.5 -bin ${I}_stdmask_segperiph
${FSLDIR}/bin/fslmaths ${FSLDIR}/etc/standard/avg152T1_strucseg -thr 4.5 -bin ${I}_tmpmask
${FSLDIR}/bin/flirt -in ${I}_tmpmask -ref ${I}_brain -out ${I}_stdmask_segvent -applyxfm -init ${I}2std_inv.mat
${FSLDIR}/bin/avwmaths ${I}_stdmask_segvent -thr 0.5 -bin ${I}_stdmask_segvent
${FSLDIR}/bin/fslmaths ${I}_stdmask_segvent -thr 0.5 -bin ${I}_stdmask_segvent
/bin/rm ${I}_tmpmask*
fi
......@@ -142,21 +142,21 @@ if [ $nseg = 2 ] ; then
${FSLDIR}/bin/fast1 -c 2 $imtype -e -ov $segopts ${I}_stdmaskbrain >> ${I}.sienax 2>&1
echo "" >> ${I}.sienax
echo "---------- convert brain volume into normalised volume --------------" >> ${I}.sienax
S=`${FSLDIR}/bin/avwstats ${I}_stdmaskbrain_pve_1 -m -v`
S=`${FSLDIR}/bin/fslstats ${I}_stdmaskbrain_pve_1 -m -v`
xa=`echo $S | awk '{print $1}'`
xb=`echo $S | awk '{print $3}'`
ubrain=`echo "2 k $xa $xb * 1 / p" | dc -`
nbrain=`echo "2 k $xa $xb * $vscale * 1 / p" | dc -`
else
if [ _$lm != _ ] ; then
${FSLDIR}/bin/avwmaths_32R $lm -bin -mul -1 -add 1 -mul ${I}_stdmaskbrain ${I}_stdmaskbrain
${FSLDIR}/bin/fslmaths $lm -bin -mul -1 -add 1 -mul ${I}_stdmaskbrain ${I}_stdmaskbrain -odt float
fi
${FSLDIR}/bin/fast1 $imtype -e -ov $segopts ${I}_stdmaskbrain >> ${I}.sienax 2>&1
if [ _$lm != _ ] ; then
${FSLDIR}/bin/avwmaths_32R $lm -bin -max ${I}_stdmaskbrain_pve_2 ${I}_stdmaskbrain_pve_2
${FSLDIR}/bin/avwmaths_32SI $lm -bin -mul 3 -max ${I}_stdmaskbrain_seg ${I}_stdmaskbrain_seg
${FSLDIR}/bin/fslmaths $lm -bin -max ${I}_stdmaskbrain_pve_2 ${I}_stdmaskbrain_pve_2 -odt float
${FSLDIR}/bin/fslmaths $lm -bin -mul 3 -max ${I}_stdmaskbrain_seg ${I}_stdmaskbrain_seg -odt int
fi
echo "" >> ${I}.sienax
......@@ -164,29 +164,29 @@ else
echo "" >> ${I}.sienax
echo "tissue volume unnormalised-volume" >> ${I}.sienax
if [ $regional = 1 ] ; then
${FSLDIR}/bin/avwmaths_32R ${I}_stdmaskbrain_pve_1 -mas ${I}_stdmask_segperiph ${I}_stdmaskbrain_pve_1_segperiph
S=`${FSLDIR}/bin/avwstats ${I}_stdmaskbrain_pve_1_segperiph -m -v`
${FSLDIR}/bin/fslmaths ${I}_stdmaskbrain_pve_1 -mas ${I}_stdmask_segperiph ${I}_stdmaskbrain_pve_1_segperiph -odt float
S=`${FSLDIR}/bin/fslstats ${I}_stdmaskbrain_pve_1_segperiph -m -v`
xa=`echo $S | awk '{print $1}'`
xb=`echo $S | awk '{print $3}'`
uxg=`echo "2 k $xa $xb * 1 / p" | dc -`
xg=`echo "2 k $xa $xb * $vscale * 1 / p" | dc -`
echo "pgrey $xg $uxg (peripheral grey)" >> ${I}.sienax
${FSLDIR}/bin/avwmaths_32R ${I}_stdmaskbrain_pve_0 -mas ${I}_stdmask_segvent ${I}_stdmaskbrain_pve_0_segvent
S=`${FSLDIR}/bin/avwstats ${I}_stdmaskbrain_pve_0_segvent -m -v`
${FSLDIR}/bin/fslmaths ${I}_stdmaskbrain_pve_0 -mas ${I}_stdmask_segvent ${I}_stdmaskbrain_pve_0_segvent -odt float
S=`${FSLDIR}/bin/fslstats ${I}_stdmaskbrain_pve_0_segvent -m -v`
xa=`echo $S | awk '{print $1}'`
xb=`echo $S | awk '{print $3}'`
uxg=`echo "2 k $xa $xb * 1 / p" | dc -`
xg=`echo "2 k $xa $xb * $vscale * 1 / p" | dc -`
echo "vcsf $xg $uxg (ventricular CSF)" >> ${I}.sienax
fi
S=`${FSLDIR}/bin/avwstats ${I}_stdmaskbrain_pve_1 -m -v`
S=`${FSLDIR}/bin/fslstats ${I}_stdmaskbrain_pve_1 -m -v`
xa=`echo $S | awk '{print $1}'`
xb=`echo $S | awk '{print $3}'`
ugrey=`echo "2 k $xa $xb * 1 / p" | dc -`
ngrey=`echo "2 k $xa $xb * $vscale * 1 / p" | dc -`
echo "GREY $ngrey $ugrey" >> ${I}.sienax
S=`${FSLDIR}/bin/avwstats ${I}_stdmaskbrain_pve_2 -m -v`
S=`${FSLDIR}/bin/fslstats ${I}_stdmaskbrain_pve_2 -m -v`
xa=`echo $S | awk '{print $1}'`
xb=`echo $S | awk '{print $3}'`
uwhite=`echo "2 k $xa $xb * 1 / p" | dc -`
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment