/selfsupervised3d

methods to support self-supervised learning with 3D images

Primary LanguageJupyter NotebookOtherNOASSERTION

selfsupervised3d

Build Status Coverage Status Documentation Status Python Versions DOI

This package provides functions to support self-supervised with 3D images (e.g., CT and MR structural images).

This work implements methods from by Doersch et al. [1] and Blendowski et al. [2]. This repository is re-implements the methods described in those papers. The code by Blendowski et al. [2] in their relevant code repository was extensively used as reference. We also implement a context autoencoder-style [3] self-supervised method.

This package was developed by Jacob Reinhold and the other students and researchers of the Image Analysis and Communication Lab (IACL).

Requirements

  • nibabel >= 2.5.0
  • numpy >= 1.17
  • pytorch >= 1.4

Installation

pip install git+git://github.com/jcreinhold/selfsupervised3d.git

Tutorial

5 minute Overview

Example Doersch-style [1,2] Notebook

Example Blendowski-style [2] Notebook

Example Context Encoder-style [3] Notebook

Test Package

Unit tests can be run from the main directory as follows:

nosetests -v tests

Citation

If you use the selfsupervised3d package in an academic paper, please use the following citation:

@misc{reinhold2020selfsupervised3d,
    author       = {Jacob Reinhold},
    title        = {{selfsupervised3d}},
    year         = 2020,
    doi          = {10.5281/zenodo.3841254},
    version      = {0.2.0},
    publisher    = {Zenodo},
    url          = {https://doi.org/10.5281/zenodo.3841254}
}

References

[1] Doersch, Carl, Abhinav Gupta, and Alexei A. Efros. "Unsupervised visual representation learning by context prediction." Proceedings of the IEEE international conference on computer vision. 2015.

[2] Blendowski, Maximilian, Hannes Nickisch, and Mattias P. Heinrich. "How to Learn from Unlabeled Volume Data: Self-supervised 3D Context Feature Learning." International Conference on Medical Image Computing and Computer-Assisted Intervention. Springer, Cham, 2019.

[3] Pathak, Deepak, et al. "Context encoders: Feature learning by inpainting." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.