Litcius/Paper detail

Scientific Computational Imaging Code (SCICO)

Thilo Balke, Fernando Davis, Cristina García–Cardona, Soumendu Majee, Michael T. McCann, Luke Pfister, Brendt Wohlberg

2022The Journal of Open Source Software22 citationsDOIOpen Access PDF

Abstract

Scientific Computational Imaging Code (SCICO) is a Python package for solving the inverse problems that arise in scientific imaging applications. Its primary focus is providing methods for solving ill-posed inverse problems by using an appropriate prior model of the reconstruction space. SCICO includes a growing suite of operators, cost functionals, regularizers, and optimization routines that may be combined to solve a wide range of problems, and is designed so that it is easy to add new building blocks. SCICO is built on top of JAX rather than NumPy, enabling GPU/TPU acceleration, just-in-time compilation, and automatic gradient functionality, which is used to automatically compute the adjoints of linear operators. An example of how to solve a multi-channel tomography problem with SCICO is shown in Figure The SCICO source code is available from GitHub, and pre-built packages are available from PyPI. It has extensive online documentation, including API documentation and usage examples, which can be run online at Google Colab and binder.

Topics & Concepts

Code (set theory)Computer scienceProgramming languageSet (abstract data type)Image and Signal Denoising MethodsCell Image Analysis TechniquesAdvanced Image Processing Techniques