107 lines (88 with data), 3.1 kB
#!/bin/bash
# multi-scan-script
#
# @brief: Run qDESS, Cubequant, and Cones analysis on super folder (absolute path) specified as an argument
#
# @folder structure:
# |subject_scans
# |patient01
# |qdess
# |cubequant
# |cones
# |patient02
# |qdess
# |cubequant
# |cones
# |patient03
# |qdess
# |cubequant
# |cones
# ...
#
# @usage (from terminal/command line):
# ./multi-scan-script PATH_TO_SUPER_FOLDER
# eg: "./multi-scan-script Users/john/Documents/subject_scans/"
#
# @initialization protocol:
# 1. run "chmod +x multi-scan-script" from the command line
# 2. Update `WEIGHTS_DIRECTORY` field below
#
# @notes:
# - If data already exists for subject, then script does not recalculate - delete `data` folder and rerun script to redo analysis
#
# @author: Arjun Desai, Stanford University
# (c) Stanford University, 2018
echo "This file is currently deprecated - if needed, please make an issue on the corresponding Github repository"
exit 125
WEIGHTS_DIRECTORY="/Users/arjundesai/Documents/stanford/research/msk_pipeline_raw/weights"
if [ -z "$WEIGHTS_DIRECTORY" ]; then
echo "Please define WEIGHTS_DIRECTORY in script. Use the absolute path"
exit 125
fi
if [ $# -eq 1 ]
then
SERIES="qdess"
else
SERIES=$2
fi
# find relevant dicom files
FILES=$(find $1 -type d -name $SERIES)
cd ..
for i in $FILES; do
DIRNAME=$(dirname $i)
SAVE_DIRNAME="$DIRNAME/data"
CUBEQUANT_DIRNAME="$DIRNAME/cubequant"
CONES_DIRNAME="$DIRNAME/cones"
TARGET_SCAN="$SAVE_DIRNAME/qdess_data/echo1.nii.gz"
MASK="$SAVE_DIRNAME/fc/fc.nii.gz"
CUBEQUANT_INTERREGISTERED_DATA="$SAVE_DIRNAME/cubequant_data/interregistered"
CUEQUANT_T1RHO="$SAVE_DIRNAME/cubequant_data/t1_rho.nii.gz"
CONES_INTERREGISTERED_DATA="$SAVE_DIRNAME/cones_data/interregistered"
CONES_T2STAR="$SAVE_DIRNAME/cones_data/t2_star.nii.gz"
echo ""
echo "----------Analyzing $DIRNAME---------"
# use qDESS to get femoral cartilage segmentation + 3D t2 maps
if [ ! -e $TARGET_SCAN ]; then
dosma --d $i --s $SAVE_DIRNAME qdess --fc segment --rms --weights_dir $WEIGHTS_DIRECTORY
dosma --l $SAVE_DIRNAME qdess --fc t2
fi
# interregister cubequant with qdess
if [ ! -e $CUBEQUANT_INTERREGISTERED_DATA ]; then
echo $CUBEQUANT_INTERREGISTERED_DATA
dosma --d $CUBEQUANT_DIRNAME --s $SAVE_DIRNAME cubequant interregister --ts $TARGET_SCAN --tm $MASK
fi
# cubequant 3D t1rho map
if [ ! -e $CUEQUANT_T1RHO ]; then
dosma --l $SAVE_DIRNAME cubequant t1_rho
fi
# interregister cones with qdess
if [ ! -e $CONES_INTERREGISTERED_DATA ]; then
dosma --d $CONES_DIRNAME --s $SAVE_DIRNAME cones interregister --ts $TARGET_SCAN --tm $MASK
fi
# cones 3D t2_star map
if [ ! -e $CONES_T2STAR ]; then
dosma --l $SAVE_DIRNAME cones t2_star
fi
# analyze femoral cartilage
python -m pipeline --l $SAVE_DIRNAME knee --fc --t2 --t2_star --t1_rho
done