Difference between revisions of "Documentation/Nightly/Modules/DeepInfer"

From Slicer Wiki
Jump to: navigation, search
 
(15 intermediate revisions by the same user not shown)
Line 24: Line 24:
 
<!-- ---------------------------- -->
 
<!-- ---------------------------- -->
 
{{documentation/{{documentation/version}}/module-section|Module Description}}
 
{{documentation/{{documentation/version}}/module-section|Module Description}}
DeepInfer is an Open-Source Deep Learning Deployment Toolkit for medical imaging and Image-Guided Therapy. With DeepInfer 3D Slicer users can deploy trained
+
[[File:Deepinfer-256.png|128px|]]
 +
<br>
 +
DeepInfer is an open-source deep learning deployment toolkit for medical imaging and image-guided therapy. With DeepInfer 3D Slicer users can deploy trained
 
deep learning and machine learning models in their workflow. Also,  DeepInfer allows machine learning experts to package,
 
deep learning and machine learning models in their workflow. Also,  DeepInfer allows machine learning experts to package,
 
ship, and deploy their models, thereby additionally allowing clinical researchers and biomedical engineers to use
 
ship, and deploy their models, thereby additionally allowing clinical researchers and biomedical engineers to use
 
task-specific deep models, without the need for further software development and configuration.
 
task-specific deep models, without the need for further software development and configuration.
 +
 
{{documentation/{{documentation/version}}/module-section|Setup Guide}}
 
{{documentation/{{documentation/version}}/module-section|Setup Guide}}
 +
In order to use DeepInfer, [https://www.docker.com/ Docker] is required to be installed and configured properly.
 +
==== Windows ====
 +
Docker for Windows requires Windows 10 Pro (64bit) and Microsoft Hyper-V. You also need to enable virtualization in BIOS settings.
 +
* [https://docs.docker.com/docker-for-windows/install/ Docker installation guide for Windows]
 +
* VERY IMPORTANT: Share drive C with docker containers from settings.
 +
[[File:DockerWindows.PNG|600px|]]<br><br>
  
 +
==== Mac OS X ====
 +
* [https://docs.docker.com/docker-for-mac/install/#install-and-run-docker-for-mac Docker installation guide for MAC]
  
<!-- ----------------------------
+
==== Ubuntu ====
{{documentation/{{documentation/version}}/module-section|Tutorials}}-->
+
* [https://docs.docker.com/engine/installation/linux/ubuntu/ Docker installation guide for Ubuntu]
<big>Windows</big><br>
+
* Give non-root access to docker using this [http://askubuntu.com/a/477554 guide].
  
<big>Mac OS X</big><br>
+
{{documentation/{{documentation/version}}/module-section|Demo}}
 
+
* [https://www.youtube.com/watch?v=7k_SLtmM2Kw Demo Video]
<big>Linux</big><br>
 
  
 
<!-- ---------------------------- -->
 
<!-- ---------------------------- -->
 
{{documentation/{{documentation/version}}/module-section|Panels and their use}}
 
{{documentation/{{documentation/version}}/module-section|Panels and their use}}
 +
[[File:Deepinfer-panels.png|600px|]]
 +
 +
{{documentation/{{documentation/version}}/module-section|Deployed Models}}
 +
==== Prostate Segmentation in Targeted MRI-Guided Biopsy ====
 +
This model is trained for the task of rough delineation of the prostate gland that is a necessary step in MRI-guided targeted biopsy. The deployed model is trained on transaxial T2-weighted MRIs of the prostate (without endorectal coil on a 3T MRI machine) collected during MR-guided prostate biopsy procedures. The network based on a customized variant of the U-Net architecture. The network is trained on N = 224 patients on a total number of 26250 2D slices of prostate images and achieved 76.25% accuracy on N = 57 validation patients (2184 2D slices).<br><br>
 +
 +
[[File:Prostate-deepinfer.png|800px|]]<br><br>
  
 
<!-- ---------------------------- -->
 
<!-- ---------------------------- -->
{{documentation/{{documentation/version}}/module-section|References}}
+
{{documentation/{{documentation/version}}/module-section|Citing DeepInfer}}
*
+
To acknowledge DeepInfer and 3D Slicer, please cite the please cite the [http://www.deepinfer.org DeepInfer web site] and following publications when publishing work that uses or incorporates DeepInfer and 3D Slicer:
 +
 
 +
* Mehrtash, A., Pesteie, M., Hetherington, J., Behringer, P.A., Kapur, T., Wells, W.M., Rohling, R., Fedorov, A. and Abolmaesumi, P., 2017, March. [http://www.spl.harvard.edu/publications/item/view/3076 DeepInfer: open-source deep learning deployment toolkit for image-guided therapy.] In SPIE Medical Imaging (pp. 101351K-101351K). International Society for Optics and Photonics.
 +
 
 +
* Fedorov A., Beichel R., Kalpathy-Cramer J., Finet J., Fillion-Robin J-C., Pujol S., Bauer C., Jennings D., Fennessy F.M., Sonka M., Buatti J., Aylward S.R., Miller J.V., Pieper S., Kikinis R. [http://www.spl.harvard.edu/publications/item/view/2219 3D Slicer as an Image Computing Platform for the Quantitative Imaging Network.] Magn Reson Imaging. 2012 Nov;30(9):1323-41. PMID: 22770690. PMCID: PMC3466397.
  
 
<!-- ---------------------------- -->
 
<!-- ---------------------------- -->
 
{{documentation/{{documentation/version}}/module-section|Information for Developers}}
 
{{documentation/{{documentation/version}}/module-section|Information for Developers}}
* [https://github.com/deepinfer/Slicer-DeepInfer Slicer-DeepInfer Module Source Code]
+
==== Architecture ====
* [https://github.com/DeepInfer/Model-Registry Model Registry]
+
The figure below shows the architecture of the DeepInfer toolkit, which has three components: the Docker engine,
 +
the DeepInfer 3D Slicer extension [1], and the cloud model registry [2].
 +
The Docker engine consists of local Docker containers that include the deployed models, as well as all of the required deep learning frameworks, which
 +
process incoming data and produce respective results.
 +
Data streaming between the Docker engine and the GUI is achieved by sharing a local folder with the specific Docker image.<br><br>
 +
[[File:Deepifner-arch.png|800px|]]<br><br>
 +
 
 +
[https://github.com/deepinfer/Slicer-DeepInfer Slicer-DeepInfer Module Source Code]
 +
[https://github.com/DeepInfer/Model-Registry Model Registry]
 +
 
 +
==== Packaging and Deployment Example ====
 +
[https://github.com/mehrtash/Prostate-Segmenter Prostate Segmenter Repository] is an example of the code that can be used as a reference to package and deploy a model in DeepInfer.
 +
It shows how you can build a docker and package trained weights inside.
 +
 
 +
* [https://github.com/mehrtash/Prostate-Segmenter/blob/master/docker/Dockerfile.cpu Example of a CPU DockerFile]
 +
* [https://github.com/mehrtash/Prostate-Segmenter/blob/master/fit.py Example of a python file that is called by running Docker]
  
 
<!-- ---------------------------- -->
 
<!-- ---------------------------- -->

Latest revision as of 00:36, 12 August 2017

Home < Documentation < Nightly < Modules < DeepInfer


For the latest Slicer documentation, visit the read-the-docs.


Introduction and Acknowledgements

Extension: DeepInfer
Acknowledgments: This work is funded by NIH Grant No.P41EB015898, Natural Sciences andEngineering Research Council (NSERC) of Canada and the Canadian Institutes of Health Research (CIHR).
Authors: Alireza Mehrtash(SPL), Mehran Pesteie ()
Contact: Alireza Mehrtash, <email>mehrtash@bwh.harvard.edu</email>
webite: DeepInfer Website
License: Slicer License


Surgical Planning Laboratory (SPL)  

Module Description

Deepinfer-256.png
DeepInfer is an open-source deep learning deployment toolkit for medical imaging and image-guided therapy. With DeepInfer 3D Slicer users can deploy trained deep learning and machine learning models in their workflow. Also, DeepInfer allows machine learning experts to package, ship, and deploy their models, thereby additionally allowing clinical researchers and biomedical engineers to use task-specific deep models, without the need for further software development and configuration.

Setup Guide

In order to use DeepInfer, Docker is required to be installed and configured properly.

Windows

Docker for Windows requires Windows 10 Pro (64bit) and Microsoft Hyper-V. You also need to enable virtualization in BIOS settings.

DockerWindows.PNG

Mac OS X

Ubuntu

Demo

Panels and their use

Deepinfer-panels.png

Deployed Models

Prostate Segmentation in Targeted MRI-Guided Biopsy

This model is trained for the task of rough delineation of the prostate gland that is a necessary step in MRI-guided targeted biopsy. The deployed model is trained on transaxial T2-weighted MRIs of the prostate (without endorectal coil on a 3T MRI machine) collected during MR-guided prostate biopsy procedures. The network based on a customized variant of the U-Net architecture. The network is trained on N = 224 patients on a total number of 26250 2D slices of prostate images and achieved 76.25% accuracy on N = 57 validation patients (2184 2D slices).

Prostate-deepinfer.png

Citing DeepInfer

To acknowledge DeepInfer and 3D Slicer, please cite the please cite the DeepInfer web site and following publications when publishing work that uses or incorporates DeepInfer and 3D Slicer:

Information for Developers

Architecture

The figure below shows the architecture of the DeepInfer toolkit, which has three components: the Docker engine, the DeepInfer 3D Slicer extension [1], and the cloud model registry [2]. The Docker engine consists of local Docker containers that include the deployed models, as well as all of the required deep learning frameworks, which process incoming data and produce respective results. Data streaming between the Docker engine and the GUI is achieved by sharing a local folder with the specific Docker image.

Deepifner-arch.png

  1. Slicer-DeepInfer Module Source Code
  2. Model Registry

Packaging and Deployment Example

Prostate Segmenter Repository is an example of the code that can be used as a reference to package and deploy a model in DeepInfer. It shows how you can build a docker and package trained weights inside.