This repository contains the python implementation of the graph spectral alignment. We perform this spectral alignment to overcome the limitations of spectral graph convolution networks in our work "Graph Convolutions on Spectral Embeddings for Cortical Surface Parcellation", published in Medical Image Analysis, January 2019.
- main.py
- FreeSurfer brain surfaces is read from the "dataset" folder.
- Spectral embedding of the brain graph is computed.
- Spectral basis of each subject is aligned to a common reference from the dataset.
- Computed embeddings, transformation and aligned spectral embeddings are saved in "output" folder in ".pt" for DeepLearning algorithms later use in PyTorch.
- The MindBoggle brain surfaces dataset is available to download here.
- The FreeSurfer processed ADNI surfaces dataset is available to download here.
- math
- matplotlib
- mne
- nibabel
- numpy
- python3, pytorch>1.0
- pickle
- pandas
- scipy
- time, timeit
- vtk
- To use the requirements.txt file to create an identical environment on the same machine or another machine:
conda create --name myenv --file requirements_linux.txt
- To use the requirements.txt file to install its listed packages into an existing environment:
conda install --name myenv --file requirements_linux.txt
python3 main.py
Please cite our papers if you use this code in your own work:
@article{gopinath2019graph,
title={Graph convolutions on spectral embeddings for cortical surface parcellation},
author={Gopinath, Karthik and Desrosiers, Christian and Lombaert, Herve},
journal={Medical image analysis},
volume={54},
pages={297--305},
year={2019},
publisher={Elsevier}
}