Skip to main content

Deep Learning Framework For Medical Image Analysis

Project description


Welcome to SAMITorch

Build Status GitHub All Releases GitHub issues GitHub GitHub contributors

SAMITorch is a deep learning framework for Shape Analysis in Medical Imaging laboratory of École de technologie supérieure using PyTorch library. It implements an extensive set of loaders, transformers, models and data sets suited for deep learning in medical imaging. Our objective is to build a tested, standard framework for quickly producing results in deep learning reasearch applied to medical imaging.

Table Of Contents




   author = {Çiçek, Özgün and Abdulkadir, Ahmed and Lienkamp, Soeren S. and Brox, Thomas and Ronneberger, Olaf},
   title = {3D U-Net: Learning Dense Volumetric Segmentation from Sparse Annotation},
   journal = {eprint arXiv:1606.06650},
   pages = {arXiv:1606.06650},
   url = {\#abs/2016arXiv160606650C},
   year = {2016},
   type = {Journal Article}


   author = {He, K. and Zhang, X. and Ren, S. and Sun, J.},
   title = {Deep Residual Learning for Image Recognition},
   booktitle = {2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
   pages = {770-778},
   ISBN = {1063-6919},
   DOI = {10.1109/CVPR.2016.90},
   type = {Conference Proceedings}

Diffusion imaging



pip install -r [path/to/requirements.txt]
python3 <main_script>.py

Project architecture

Folder structure

── samitorch
|    ├── configs                 - This folder contains the YAML configuration files.
|    │   ├──       - This file contains the definitions of different configuration classes.
|    │   |── resnet3d.yaml           - Standard ResNet 3D configuration file and model definition.
|    │   └── unet3d.yaml             - Standard UNet 3D configuration file and model definition.
|    |
|    ├── initializers            - This folder contains custom layer/op initializers.  
|    |   └──
|    │
|    ├── inputs                  - This folder contains anything relative to inputs to a network.
|    |   |──                - Contains Batch definition object used in training. 
|    |   |──             - Contains basic dataset definition for classification and segmentation.
|    |   |──               - Contains Enums for various methods.
|    |   |──                - Contains Patch definition used in segmentation problems.
|    |   |──               - Contains a Sample object.
|    |   |──         - Contains a series of common transformations.
|    |   └──                - Contains various utilitary methods.
|    |   
|    ├── models                  - This folder contains any standard and tested deep learning models.
|    │   |──               - Contains layer definitions. 
|    |   |──             - Contains a standard ResNet 3D model.
|    |   └──               - Contains a standard UNet 3D model.                   
|    |
|    |── parsers                 - This folder contains parsers definition used in SAMITorch.
|    |
|    ├── preprocessing           - This folder contains anything relative to input preprocessing, and scripts that must be executed prior training.
|    |
|    └── utils                   - This folder contains any utils you may need.
|         |──              - Contains file related utils methods.
|         |──      - Contains an object to build slices out of a data sets (for image segmentation).
|         └──            - Contains tensor related utils methods.            
── tests                   - Folder containing unit tests of the standard framework api and functions.

Main components

(To be documented shortly...)






If you find a bug or have an idea for an improvement, please first have a look at our contribution guideline. Then,

  • <input type="checkbox" disabled="" /> Create a branch by feature and/or bug fix
  • <input type="checkbox" disabled="" /> Get the code
  • <input type="checkbox" disabled="" /> Commit and push
  • <input type="checkbox" disabled="" /> Create a pull request

Branch naming

Instance Branch Description, Instructions, Notes
Stable stable Accepts merges from Development and Hotfixes
Development dev/ [Short description] [Issue number] Accepts merges from Features / Issues and Hotfixes
Features/Issues feature/ [Short feature description] [Issue number] Always branch off HEAD or dev/
Hotfix fix/ [Short feature description] [Issue number] Always branch off Stable

Commits syntax

Adding code:

+ Added [Short Description] [Issue Number]

Deleting code:

- Deleted [Short Description] [Issue Number]

Modifying code:

* Changed [Short Description] [Issue Number]

Merging branches:

Y Merged [Short Description]

To build documentation

SAMITorch uses Sphinx Documentation. To build doc, simply execute the following:

cd docs
sphinx-build -b html source build


Thanks to École de technologie supérieure, Hervé Lombaert and Christian Desrosiers for providing us a lab and helping us in our research activities.

Icons made by Freepik from is licensed by CC 3.0 BY

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for SAMITorch, version 0.2.7
Filename, size File type Python version Upload date Hashes
Filename, size SAMITorch-0.2.7.tar.gz (41.8 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page