daviddmc / SVoRT

SVoRT: Iterative Transformer for Slice-to-Volume Registration in Fetal Brain MRI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Slice-to-Volume Registration Transformer (SVoRT)

This repo is the official implementation of the paper 'SVoRT: Iterative Transformer for Slice-to-Volume Registration in Fetal Brain MRI'

Resources

Requirements

  • python 3.9
  • pytorch 1.10
  • pyyaml
  • scikit-image
  • antpy
  • scipy
  • nibabel

Training from scratch

Generate training data

To generate training data, please download the CRL atlas and FeTA dataset v2.1, unzip them in dataset/, and run preprocessing.py. You may also add your own training data (see RegisteredDataset in .src/data/dataset.py).

Modify hyperparameters

The hyperparameters of data simulation and model are stored in ./src/config/.

Run the training script

python train.py --config ./config/config_SVoRTv2.yaml \
                --output ../results/SVoRTv2

Pretrained model

To use the pretrained model, please first download the pretrain weights.

Testing

python test.py --config ./config/config_SVoRTv2.yaml \
               --output ../results/SVoRTv2/test_output \
               --checkpoint ../results/SVoRTv2/checkpoint.pt

Citation

@inproceedings{xu2022svort,
  title={SVoRT: Iterative Transformer for Slice-to-Volume Registration in Fetal Brain MRI},
  author={Xu, Junshen and Moyer, Daniel and Grant, P Ellen and Golland, Polina and Iglesias, Juan Eugenio and Adalsteinsson, Elfar},
  booktitle={International Conference on Medical Image Computing and Computer-Assisted Intervention},
  pages={3--13},
  year={2022},
  organization={Springer}
}

Contact

For questions, please send an email to junshen@mit.edu

About

SVoRT: Iterative Transformer for Slice-to-Volume Registration in Fetal Brain MRI

License:MIT License


Languages

Language:Python 56.8%Language:Cuda 39.0%Language:C++ 4.1%