Skip to content
Snippets Groups Projects
bedpost_datacheck 1.58 KiB
#!/bin/sh

if [ $# -lt 1 ]; then 
    echo "Usage: $0 data_dir"
    exit 1;
fi

DIR=$1;
for img in ${DIR}/data ${DIR}/nodif ${DIR}/nodif_brain_mask ;do
    if [ `${FSLDIR}/bin/imtest $img` -eq 1 ] ; then
	echo $img
	${FSLDIR}/bin/avwinfo $img;
	echo ""
    else
	echo $img does not exist;
    fi
done

for bv in ${DIR}/bvals ${DIR}/bvecs;do
    echo " num lines in $bv "
    cat $bv |grep -v "^[ 	]*$"|wc -l
    echo " num words in $bv "
    cat $bv|wc -w
done

if [ `${FSLDIR}/bin/imtest ${DIR}/data` -eq 1 -a `${FSLDIR}/bin/imtest ${DIR}/nodif_brain_mask` -eq 1 ];then

    dx=`${FSLDIR}/bin/avwval ${DIR}/data dim1`
    dy=`${FSLDIR}/bin/avwval ${DIR}/data dim2`
    dz=`${FSLDIR}/bin/avwval ${DIR}/data dim3`
    dt=`${FSLDIR}/bin/avwval ${DIR}/data dim4`
    
    nbmx=`${FSLDIR}/bin/avwval ${DIR}/nodif_brain_mask dim1`
    nbmy=`${FSLDIR}/bin/avwval ${DIR}/nodif_brain_mask dim2`
    nbmz=`${FSLDIR}/bin/avwval ${DIR}/nodif_brain_mask dim3`
    
    
    if [ $dx -ne $nbmx -o  $dy -ne $nbmy -o $dz -ne $nbmz ];then 
	echo "data dimensions do not match mask dimensions"
    fi
    
    bvallen=`cat ${DIR}/bvals|grep -v "^[ 	]*$"|wc -w`
    bveclenw=`cat ${DIR}/bvecs|wc -w`
    bveclenl=`cat ${DIR}/bvecs|grep -v "^[ 	]*$"|wc -l`
    bveclen=`echo "$bveclenw / $bveclenl"|bc`

    
    if [ $bveclen -ne $bvallen ];then
	echo "bvecs and bvals are incompatible"
    fi
    if [ $bvallen -ne $dt ];then 
	echo "number of elements in bvals is not equal to number of vols in data"
    fi
    if [ $bveclen -ne $dt ];then 
	echo "number of elements per line in bvecs is not equal to number of vols in data"
    fi
	
fi