Core Imaging Library

Core Imaging Library (CIL) is an open-source Python framework for tomographic imaging with particular emphasis on reconstruction of challenging datasets. It provides state-of-the-art iterative algorithms and regularisers for tomographic inverse problems, and can use projectors from the ASTRA-Toolbox and TIGRE.

Publications and examples

  1. Jørgensen JS et al. 2021 Core Imaging Library Part I: a versatile python framework for tomographic imaging. Phil. Trans. R. Soc. A 20200192.
    Code at https://github.com/TomographicImaging/Paper-2021-RSTA-CIL-Part-I
  2. Papoutsellis E et al. 2021 Core Imaging Library - Part II: multichannel reconstruction for dynamic and spectral
    tomography
    . Phil. Trans. R. Soc. A 20200193.
    Code at https://github.com/TomographicImaging/Paper-2021-RSTA-CIL-Part-II

Jupyter Notebooks usage examples without any local installation are provided in Binder. Please click the launch binder icon below. For more information, go to CIL-Demos and https://mybinder.org.

Installing CIL

CIL source code is available on GitHub and binary distribution is with anaconda packages. This makes installation simple, so once you have miniconda you can install CIL in a new environment with one line.
conda create --name cil -c conda-forge -c ccpi cil
and CIL can be enhanced by using plugins: for example including the ASTRA-toolbox and CCPi-Regularisation-Toolkit.
conda install ccpi-regulariser -c conda-forge -c ccpi
conda install cil-astra -c conda-forge -c ccpi -c astra-toolbox/label/dev cudatoolkit=x.y

Full installation including manual build and install

Should you wish to install CIL please refer to the CIL GitHub Installation repository for complete information.

About CIL

CIL (Core Imaging Library) aims to combine the best of the two worlds, the emergence of new standard and challenging tomography problems with novel optimisation software, all within a single easy-to-use, highly modular and configurable Python library.

Users can apply common reconstruction methods, or prototype their own, to now deal with noisy, incomplete, non-standard and multi-channel tomographic data sets. This provides alternative solutions when conventional FBP (Filtered Backprojection) type methods and proprietary software fail to produce satisfactory results. Particular emphasis is on enabling a variety of regularised reconstruction methods within a “plug and play” structure in which different data fidelities, regularisers, constraints and algorithms can be easily selected and combined. In addition to reconstruction, CIL supplies tools for loading, preprocessing, visualising and exporting data for subsequent analysis and visual exploration.

CIL is open-source software released under the Apache v2.0 license, while individual plugins may have a different license, for example ccpi.plugins.astra is GPLv3.

Documentation and examples

Please refer to the following 2 papers:

  1. Jørgensen JS et al. 2021 Core Imaging Library Part I: a versatile python framework for tomographic imaging. Phil. Trans. R. Soc. A 20200192. Code at https://github.com/TomographicImaging/Paper-2021-RSTA-CIL-Part-I
  2. Papoutsellis E et al. 2021 Core Imaging Library - Part II: multichannel reconstruction for dynamic and spectral
    tomography
    . Phil. Trans. R. Soc. A 20200193. Code at https://github.com/TomographicImaging/Paper-2021-RSTA-CIL-Part-II

CIL comes with documentation and a number of example codes to help the user get started and contribute.

Jupyter Notebooks usage examples without any local installation are provided in Binder. Please click the launch binder icon below. For more information, go to CIL-Demos and https://mybinder.org.

Join the developer's list, for support and to be kept informed of future software development.

To refence your use of this software please refer to www.ccpi.ac.uk/cil webpage in your publications