Code Monkey home page Code Monkey logo

fastmri's Introduction

fastMRI

LICENSE CircleCI

Website and Leaderboards | Dataset | GitHub | Publications

Accelerating Magnetic Resonance Imaging (MRI) by acquiring fewer measurements has the potential to reduce medical costs, minimize stress to patients and make MR imaging possible in applications where it is currently prohibitively slow or expensive.

fastMRI is a collaborative research project from Facebook AI Research (FAIR) and NYU Langone Health to investigate the use of AI to make MRI scans faster. NYU Langone Health has released fully anonymized knee and brain MRI datasets that can be downloaded from the fastMRI dataset page. Publications associated with the fastMRI project can be found at the end of this README.

This repository contains convenient PyTorch data loaders, subsampling functions, evaluation metrics, and reference implementations of simple baseline methods. It also contains implementations for methods in some of the publications of the fastMRI project.

Documentation

Documentation for the fastMRI dataset and baseline reconstruction performance can be found in our paper on arXiv. The paper is updated on an ongoing basis for dataset additions and new baselines.

For code documentation, most functions and classes have accompanying docstrings that you can access via the help function in IPython. For example:

from fastmri.data import SliceDataset

help(SliceDataset)

Dependencies and Installation

We have tested this code using:

  • Ubuntu 18.04
  • Python 3.8
  • CUDA 10.1
  • CUDNN 7.6.5

First install PyTorch according to the directions at the PyTorch Website for your operating system and CUDA setup.

Then, navigate to the fastmri root directory and run

pip install -e .

pip will handle all package dependencies. After this you should be able to run most of the code in the repository.

Package Structure & Usage

The repository is centered around the fastmri module. The following breaks down the basic structure:

fastmri: Contains a number of basic tools for complex number math, coil combinations, etc.

  • fastmri.data: Contains data utility functions from original data folder that can be used to create sampling masks and submission files.
  • fastmri.models: Contains reconstruction models, such as the U-Net and VarNet.
  • fastmri.pl_modules: PyTorch Lightning modules for data loading, training, and logging.

Examples and Reproducibility

The fastmri_examples and banding_removal folders include code for reproducibility. The baseline models were used in the arXiv paper:

fastMRI: An Open Dataset and Benchmarks for Accelerated MRI ({J. Zbontar*, F. Knoll*, A. Sriram*} et al., 2018)

A brief summary of implementions based on papers with links to code follows. For completeness we also mention work on active acquisition, which is hosted in another repository.

Testing

Run pytest tests. By default integration tests that use the fastMRI data are skipped. If you would like to run these tests, set SKIP_INTEGRATIONS to False in the conftest.

Training a model

The data README has a bare-bones example for how to load data and incorporate data transforms. This jupyter notebook contains a simple tutorial explaining how to get started working with the data.

Please look at this U-Net demo script for an example of how to train a model using the PyTorch Lightning framework.

Submitting to the Leaderboard

Run your model on the provided test data and create a zip file containing your predictions. fastmri has a save_reconstructions function that saves the data in the correct format.

Upload the zip file to any publicly accessible cloud storage (e.g. Amazon S3, Dropbox etc). Submit a link to the zip file on the challenge website. You will need to create an account before submitting.

License

fastMRI is MIT licensed, as found in the LICENSE file.

Cite

If you use the fastMRI data or code in your project, please cite the arXiv paper:

@inproceedings{zbontar2018fastMRI,
    title={{fastMRI}: An Open Dataset and Benchmarks for Accelerated {MRI}},
    author={Jure Zbontar and Florian Knoll and Anuroop Sriram and Tullie Murrell and Zhengnan Huang and Matthew J. Muckley and Aaron Defazio and Ruben Stern and Patricia Johnson and Mary Bruno and Marc Parente and Krzysztof J. Geras and Joe Katsnelson and Hersh Chandarana and Zizhao Zhang and Michal Drozdzal and Adriana Romero and Michael Rabbat and Pascal Vincent and Nafissa Yakubova and James Pinkerton and Duo Wang and Erich Owens and C. Lawrence Zitnick and Michael P. Recht and Daniel K. Sodickson and Yvonne W. Lui},
    journal = {ArXiv e-prints},
    archivePrefix = "arXiv",
    eprint = {1811.08839},
    year={2018}
}

List of Papers

The following lists titles of papers from the fastMRI project. The corresponding abstracts, as well as links to preprints and code can be found here.

  1. Zbontar, J., Knoll, F., Sriram, A., Murrell, T., Huang, Z., Muckley, M. J., ... & Lui, Y. W. (2018). fastMRI: An open dataset and benchmarks for accelerated MRI. arXiv preprint arXiv:1811.08839.
  2. Zhang, Z., Romero, A., Muckley, M. J., Vincent, P., Yang, L., & Drozdzal, M. (2019). Reducing uncertainty in undersampled MRI reconstruction with active acquisition. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 2049-2058.
  3. Defazio, A. (2019). Offset Sampling Improves Deep Learning based Accelerated MRI Reconstructions by Exploiting Symmetry. arXiv preprint, arXiv:1912.01101.
  4. Knoll, F., Zbontar, J., Sriram, A., Muckley, M. J., Bruno, M., Defazio, A., ... & Lui, Y. W. (2020). fastMRI: A Publicly Available Raw k-Space and DICOM Dataset of Knee Images for Accelerated MR Image Reconstruction Using Machine Learning. Radiology: Artificial Intelligence, 2(1), page e190007.
  5. Knoll, F., Murrell, T., Sriram, A., Yakubova, N., Zbontar, J., Rabbat, M., ... & Recht, M. P. (2020). Advancing machine learning for MR image reconstruction with an open competition: Overview of the 2019 fastMRI challenge. Magnetic Resonance in Medicine, 84(6), pages 3054-3070.
  6. Sriram, A., Zbontar, J., Murrell, T., Zitnick, C. L., Defazio, A., & Sodickson, D. K. (2020). GrappaNet: Combining parallel imaging with deep learning for multi-coil MRI reconstruction. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 14315-14322.
  7. Recht, M. P., Zbontar, J., Sodickson, D. K., Knoll, F., Yakubova, N., Sriram, A., ... & Zitnick, C. L. (2020). Using Deep Learning to Accelerate Knee MRI at 3T: Results of an Interchangeability Study. American Journal of Roentgenology, 215(6), pages 1421-1429.
  8. Pineda, L., Basu, S., Romero, A., Calandra, R., & Drozdzal, M. (2020). Active MR k-space Sampling with Reinforcement Learning. In International Conference on Medical Image Computing and Computer-Assisted Intervention, pages 23-33.
  9. Sriram, A., Zbontar, J., Murrell, T., Defazio, A., Zitnick, C. L., Yakubova, N., ... & Johnson, P. (2020). End-to-End Variational Networks for Accelerated MRI Reconstruction. In International Conference on Medical Image Computing and Computer-Assisted Intervention, pages 64-73.
  10. Defazio, A., Murrell, T., & Recht, M. P. (2020). MRI Banding Removal via Adversarial Training. In Advances in Neural Information Processing Systems.
  11. Muckley, M. J., Riemenschneider, B., Radmanesh, A., Kim, S., Jeong, G., Ko, J., ... & Knoll, F. (2020). State-of-the-art Machine Learning MRI Reconstruction in 2020: Results of the Second fastMRI Challenge. arXiv preprint arXiv:2012.06318.

fastmri's People

Contributors

mmuckley avatar anuroopsriram avatar tullie avatar gregbruss avatar z-fabian avatar karn1986 avatar adefazio avatar kapoor1992 avatar sbhadra2020 avatar alexslee avatar hasibzunair avatar luisenp avatar zaccharieramzi avatar

Stargazers

Andrew Chen avatar

Forkers

gbosdet

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.