U-Shape Bundle Analysis

Note: all of the source code can be found on the "dmri" branch on the Freesurfer Github page. The link can be found here:

https://github.com/freesurfer/freesurfer/tree/dmri/anatomicuts

How to Run

Note by running the executable with no parameters will also give information on how to run the program

Main Bundle Analysis Program

Usage: ./bundleAnalysis.sh <Patient File> <OPTION: DTI>

DTI is an option that allows more metrics about the FA values to be outputted based on 4 volumes

If specific files are wanted to be used or files cannot be found, run the programs individually (read below)

Individually

Group by Endpoints

Usage: ./dmri_groupByEndpoints -s <streamlineFile> -i <imageFile> -d <outputDirectory>

The program will take in a streamline file and an image file, cluster the streamlines, and output TRK files to the output directory

Extract Surface Measurements

Usage: ./dmri_extractSurfaceMeasurements -i <streamlineFile(s)> -sl <Left Hemisphere Surface> -tl <Left Thickness File> -cl <Left Curvature File> -sr <Right Hemisphere Surface> -tr <Right Thickness File> -cl <Right Curvature File> -o <outputDirectory>

OPTIONAL FLAG: -fa <number of Measures> <Given Name 1> <File 1> ... <Given Name X> <File X>

The program will take in streamlines, a full brain surface with overlay files, an output directory, and possibly image files, and will output surface metrics, such as thickness and curvature as well as FA at the endpoints of the streamlines

Additional Programs

Change Endpoints

Usage: ./dmri_changeEndpoints -i <streamlineFile> -sl <Left Hemisphere Surface> -sr <Right Hemisphere Surface> -ol <Left Overlay Filename> -or <Right Overlay Filename> -itk <Itk Volume File> -fs <FS Volume File>

The program will take in two volumes, a streamline, a surface, and the names of the overlay file that will be created. It will assign the endpoints of the streamline to a set number (usually a value of 1, but can be changed by adjusting the value of the variable at the top)

Plots

Usage: python3 ./dmri_plots.py <inputDirectory> <Grouping CSV> <Structure Name>

The program will take in an input Directory (containing subject directories), a CSV files that divides the subjects into groups, and the name of a structure. For every subject, multiple violin plots are created to organize the data from every column of the structure's CSV file. The plot will be further explained below.