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, which provides features such as automatic gradient calculation and GPU acceleration.
Documentation is available online. If you use
this software for published work, please cite the corresponding JOSS
Paper (see bibtex entry
balke-2022-scico
in docs/source/references.bib
).
See the online documentation for installation instructions.
Usage examples are available as Python scripts and Jupyter Notebooks.
Example scripts are located in examples/scripts
. The corresponding
Jupyter Notebooks are provided in the
scico-data submodule and symlinked
to examples/notebooks
. They are also viewable on
GitHub or
nbviewer,
or can be run online by
binder.
SCICO is distributed as open-source software under a BSD 3-Clause
License (see the LICENSE
file for details).
LANL open source approval reference C20091.
(c) 2020-2024. Triad National Security, LLC. All rights reserved. This program was produced under U.S. Government contract 89233218CNA000001 for Los Alamos National Laboratory (LANL), which is operated by Triad National Security, LLC for the U.S. Department of Energy/National Nuclear Security Administration. All rights in the program are reserved by Triad National Security, LLC, and the U.S. Department of Energy/National Nuclear Security Administration. The Government has granted for itself and others acting on its behalf a nonexclusive, paid-up, irrevocable worldwide license in this material to reproduce, prepare derivative works, distribute copies to the public, perform publicly and display publicly, and to permit others to do so.