Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fepegar/miccai-educational-challenge-2019
Tutorial about combining PyTorch and NiftyNet for deep learning and medical image computing
https://github.com/fepegar/miccai-educational-challenge-2019
cnn convolutional-neural-networks image-segmentation medical-image-processing medical-imaging miccai niftynet pytorch resnet tensorflow tensorflow-tutorials tutorial
Last synced: 2 months ago
JSON representation
Tutorial about combining PyTorch and NiftyNet for deep learning and medical image computing
- Host: GitHub
- URL: https://github.com/fepegar/miccai-educational-challenge-2019
- Owner: fepegar
- License: mit
- Created: 2019-07-24T10:43:33.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-08-24T12:22:19.000Z (over 5 years ago)
- Last Synced: 2024-04-10T08:05:08.619Z (9 months ago)
- Topics: cnn, convolutional-neural-networks, image-segmentation, medical-image-processing, medical-imaging, miccai, niftynet, pytorch, resnet, tensorflow, tensorflow-tutorials, tutorial
- Language: Jupyter Notebook
- Homepage:
- Size: 16.1 MB
- Stars: 14
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
*This is my submission to the [MICCAI Educational Challenge 2019](https://miccai-sb.github.io/challenge.html).*
*You can run the notebook on [Google Colab](https://colab.research.google.com/github/fepegar/miccai-educational-challenge-2019/blob/master/Combining_the_power_of_PyTorch_and_NiftyNet.ipynb) or render an already executed version on [nbviewer](https://nbviewer.jupyter.org/github/fepegar/miccai-educational-challenge-2019/blob/master/Combining_the_power_of_PyTorch_and_NiftyNet.ipynb?flush_cache=true).*
---
# Combining the power of PyTorch and NiftyNet
NiftyNet is "[an open source convolutional neural networks platform for medical image analysis and image-guided therapy](https://niftynet.io/)" built on top of [TensorFlow](https://www.tensorflow.org/). Due to its available implementations of successful architectures, patch-based sampling and straightforward configuration, it has become a [popular choice](https://github.com/NifTK/NiftyNet/network/members) to get started with deep learning in medical imaging.
PyTorch is "[an open source deep learning platform that provides a seamless path from research prototyping to production deployment](https://pytorch.org/)". It is low-level enough to offer a lot of control over what is going on under the hood during training, and its [dynamic computational graph](https://medium.com/intuitionmachine/pytorch-dynamic-computational-graphs-and-modular-deep-learning-7e7f89f18d1) allows for easy debugging. Being a generic deep learning framework, it is not tailored to the needs of the medical imaging field, although its popularity in this field is increasing rapidly.
One can [extend a NiftyNet application](https://niftynet.readthedocs.io/en/dev/extending_app.html), but it is not straightforward without being familiar with the framework and fluent in TensorFlow 1.X. Therefore it can be convenient to implement applications in PyTorch using NiftyNet models and functionalities. In particular, combining both frameworks allows for fast architecture experimentation and transfer learning.
So why not use [both](https://www.youtube.com/watch?v=vqgSO8_cRio&feature=youtu.be&t=5)? In this tutorial we will port the parameters of a model trained on NiftyNet to a PyTorch model and compare the results of running an inference using both frameworks.