Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.7%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: epapoutsellis
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 24.9 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 29
  • Releases: 1
Created over 3 years ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog License Citation

README.md

| Master | Development | Anaconda binaries | |--------|-------------|-------------------| | Build Status | Build Status |conda version conda last release conda platforms conda dowloads |

CIL - Core Imaging Library

Binder

The Core Imaging Library (CIL) is an open-source Python framework for tomographic imaging with particular emphasis on reconstruction of challenging datasets. Conventional filtered backprojection reconstruction tends to be insufficient for highly noisy, incomplete, non-standard or multichannel data arising for example in dynamic, spectral and in situ tomography. CIL provides an extensive modular optimisation framework for prototyping reconstruction methods including sparsity and total variation regularisation, as well as tools for loading, preprocessing and visualising tomographic data.

Documentation

The documentation for CIL can be accessed here.

Installation of CIL

Binary installation of CIL can be done with conda. Install a new environment using:

bash conda create --name cil -c conda-forge -c intel -c ccpi cil=22.1.0

To install CIL and the additional packages and plugins needed to run the CIL demos install the environment with:

```bash

conda create --name cil -c conda-forge -c intel -c astra-toolbox -c ccpi cil=22.1.0 astra-toolbox tigre ccpi-regulariser tomophantom ```

where,

astra-toolbox will allow you to use CIL with the ASTRA toolbox projectors (GPLv3 license).

tigre will allow you to use CIL with the TIGRE toolbox projectors (BSD license).

ccpi-regulariser will give you access to the CCPi Regularisation Toolkit.

tomophantom Tomophantom will allow you to generate phantoms to use as test data.

cudatoolkit If you have GPU drivers compatible with more recent CUDA versions you can modify this package selector (installing tigre via conda requires 9.2).

Dependency

CIL's optimised FDK/FBP recon module requires: 1. the Intel Integrated Performance Primitives Library (license) which can be installed via conda from the intel channel. 2. TIGRE, which can be installed via conda from the ccpi channel.

Getting Started with CIL

CIL on binder

Binder

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

CIL Videos

Building CIL from source code

Getting the code

In case of development it is useful to be able to build the software directly. You should clone this repository as ```bash

git clone --recurse-submodule git@github.com:TomographicImaging/CIL.git The use of `--recurse-submodule` is necessary if the user wants the examples data to be fetched (they are needed by the unit tests). We have moved such data, previously hosted in this repo at `Wrappers/Python/data` to the [CIL-data](https://github.com/TomographicImaging/CIL-Data) repository and linked it to this one as submodule. If the data is not available it can be fetched in an already cloned repository as bash

git submodule update --init ```

Build dependencies

To create a conda environment with all the dependencies for building CIL run:

bash sh scripts/create_local_env_for_cil_development.sh -n NUMPY_VERSION -p PYTHON_VERSION -e ENVIRONMENT_NAME

Or with the CIL build and test dependencies: bash sh scripts/create_local_env_for_cil_development_tests.sh -n NUMPY_VERSION -p PYTHON_VERSION -e ENVIRONMENT_NAME

And then install CIL in to this environment using CMAKE.

Build with CMake

CMake and a C++ compiler are required to build the source code. Let's suppose that the user is in the source directory, then the following commands should work:

bash mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=<install_directory> cmake --build . --target install

If targeting an active conda environment then the <install_directory> can be set to ${CONDA_PREFIX}.

If not installing to a conda environment then the user will also need to set the locations of the IPP library and includes, and the path to CIL.

By default the location of the IPP library and includes is ${CMAKE_INSTALL_PREFIX}/lib and ${CMAKE_INSTALL_PREFIX}/include respectively. To pass the location of the IPP library and headers please pass the following parameters:

```bash

cmake .. -DCMAKEINSTALLPREFIX= -DIPPLIBRARY=<pathtoipplibrary> -DIPPINCLUDE=<pathtoippincludes> ```

The user will then need to add the path <install_directory>/lib to the environment variable PATH or LD_LIBRARY_PATH, depending on system OS.

References

[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. Pre-print

[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. Pre-print

Owner

  • Name: Vaggelis Papoutsellis
  • Login: epapoutsellis
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
abstract: "The Core Imaging Library (CIL) is an open-source Python framework for tomographic imaging 
           with particular emphasis on reconstruction of challenging datasets. Conventional filtered 
           backprojection reconstruction tends to be insufficient for highly noisy, incomplete, non-standard
           or multichannel data arising for example in dynamic, spectral and in situ tomography. CIL 
           provides an extensive modular optimisation framework for prototyping reconstruction methods 
           including sparsity and total variation regularisation, as well as tools for loading, preprocessing 
           and visualising tomographic data."
authors:
  - name: UK Research and Innovation and University of Manchester
date-released: "08-01-18"
identifiers:
  - description: "This is the collection of archived snapshots of all versions of the Core Imaging Library"
    type: doi
    value: 10.5281/zenodo.4746198
  - description: "This is the archived snapshot of version 21.3.1 of the Core Imaging Library"
    type: doi
    value: 10.5281/zenodo.5825832
  - description: "This is the archived snapshot of version 21.3.0 of the Core Imaging Library"
    type: doi
    value: 10.5281/zenodo.5752905
  - description: "This is the archived snapshot of version 21.2.0 of the Core Imaging Library"
    type: doi
    value: 10.5281/zenodo.5012886
keywords:
  - "tomographic imaging"
  - research
  - tomography
  - reconstruction
  - imaging
  - hyperspectral
  - optimisation
license: Apache-2.0
message: "If you use this software, please cite both the article from preferred-citation and the software itself."
preferred-citation:
  authors:
    - family-names: Jørgensen
      given-names: Jakob Sauer
    - family-names: Ametova
      given-names: Evelina
    - family-names: Burca
      given-names: Genoveva
    - family-names: Fardell
      given-names: Gemma
    - family-names: Murgatroyd
      given-names: Laura
    - family-names: Papoutsellis
      given-names: Evangelos
    - family-names: Pasca
      given-names: Edoardo
    - family-names: Thielemans
      given-names: Kris
    - family-names: Turner
      given-names: Martin
    - family-names: Warr
      given-names: Ryan
    - family-names: Lionheart
      given-names: William RB
    - family-names: Withers
      given-names: Philip J     
  title: "Core Imaging Library - Part I: a versatile Python framework for tomographic imaging"
  type: article
  doi: 10.1098/rsta.2020.0192
  issue: 2204
  volume: 379
  journal: "Philosophical Transactions of The Royal Society A"
  year: 2021
repository-code: "https://github.com/TomographicImaging/CIL.git"
title: "CIL"
version: 21.3.1

GitHub Events

Total
  • Push event: 1
Last Year
  • Push event: 1