airlab-unibas / airlab

Image registration laboratory for 2D and 3D image data
Apache License 2.0
417 stars 92 forks source link
autograd image-alignment image-registration pytorch rapid-prototyping
Airlab logo docs status

Autograd Image Registration Laboratory

AirLab is an open laboratory for medical image registration. It provides an environment for rapid prototyping and reproduction of registration algorithms. The unique feature of AirLab is, that the analytic gradients of the objective function are computed automatically with fosters rapid prototyping. In addition, the device on which the computations are performed, on a CPU or a GPU, is transparent. AirLab is implemented in Python using PyTorch as tensor and optimization library and SimpleITK for basic image IO. It profits therefore from recent advances made by the machine learning community.

AirLab is not meant to replace existing registration frameworks nor it implements deep learning methods only. It is rather a laboratory for image registration algorithms for rapid prototyping and reproduction. Furthermore, it borrows key functionality from PyTorch (autograd and optimization) which is of course not limited to deep learning methods.

We refer to our arXiv preprint 2018 for a detailed introduction of AirLab and its feature.

Authors: Robin Sandkuehler and Christoph Jud

Documentation

Follow us on Twitter to get informed about the most recent features, achievements and bugfixes.

Getting Started

  1. Clone git repository: git clone https://github.com/airlab-unibas/airlab.git
  2. Make sure that following python libraries are installed:
    1. pytorch
    2. numpy
    3. SimpleITK
    4. matplotlib They can be installed with pip.

We recommend to start with the example applications provided in the example folder.

A Note on CPU Performance

The convolution operation, which is frequently used in AirLab, is performed in PyTorch. Currently, its CPU implementation is quite memory consuming. In order to process larger image data a GPU is required.

Dependencies

The project depends on following libraries:

History

The project started in the Center for medical Image Analysis & Navigation research group of the University of Basel.

Authors and Contributors

Tutorial

miccai

Check out our AIRLab tutorial at MICCAI 2019 in Shenzhen: https://airlab-unibas.github.io/MICCAITutorial2019/

License

AirLab is licensed under the Apache 2.0 license. For details, consider the LICENSE and NOTICE file.

If you can use this software in any way, please cite us in your publications:

[2018] Robin Sandkuehler, Christoph Jud, Simon Andermatt, and Philippe C. Cattin. "AirLab: Autograd Image Registration Laboratory". arXiv preprint arXiv:1806.09907, 2018. link

Contributing

We released AirLab to contribute to the community. Thus, if you find and/or fix bugs or extend the software please contribute as well and let us know or make a pull request.

We deeply appreciate the help of the following people:

Other Open Source Projects

AirLab depends on several third party open source project which are included as library. For details, consider the NOTICE file.