Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cern/tigre
TIGRE: Tomographic Iterative GPU-based Reconstruction Toolbox
https://github.com/cern/tigre
cuda gpus image-reconstruction matlab python tigre tomography toolbox x-ray
Last synced: 12 days ago
JSON representation
TIGRE: Tomographic Iterative GPU-based Reconstruction Toolbox
- Host: GitHub
- URL: https://github.com/cern/tigre
- Owner: CERN
- License: bsd-3-clause
- Created: 2016-06-13T12:22:21.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-10-24T16:59:03.000Z (3 months ago)
- Last Synced: 2024-10-25T04:24:45.008Z (3 months ago)
- Topics: cuda, gpus, image-reconstruction, matlab, python, tigre, tomography, toolbox, x-ray
- Language: MATLAB
- Homepage:
- Size: 154 MB
- Stars: 573
- Watchers: 44
- Forks: 188
- Open Issues: 71
-
Metadata Files:
- Readme: README.md
- Changelog: changelog.md
- Contributing: contributing.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![Documentation Status](https://readthedocs.org/projects/tigre/badge/?version=latest)](https://tigre.readthedocs.io/en/latest/?badge=latest)
[![All Contributors](https://img.shields.io/badge/all_contributors-12-orange.svg?style=flat-square)](#contributors-)
TIGRE: Tomographic Iterative GPU-based Reconstruction Toolbox
======TIGRE is an open-source toolbox for fast and accurate 3D tomographic
reconstruction for any geometry. Its focus is on iterative algorithms
for improved image quality that have all been optimized to run on GPUs
(including multi-GPUs) for improved speed. It combines the higher level
abstraction of MATLAB or Python with the performance of CUDA at a lower level in order to make
it both fast and easy to use.TIGRE is free to download and distribute: use it, modify it, add to it,
share it. Our aim is to provide a wide range of easy-to-use algorithms
for the tomographic community "off the shelf". We would like to build a
stronger bridge between algorithm developers and imaging
researchers/clinicians by encouraging and supporting contributions from
both sides into TIGRE.TIGRE remains under development as we are still adding new features
(e.g., motion compensation). If you have any request for a specific
application, do not hesitate to [contact us](#contact) or open a [discussion thread](https://github.com/CERN/TIGRE/discussions)!- [TIGRE features](#features)
- [Installation instructions](#installation)
- [FAQ](#faq)
- [Further reading](#further-reading)
- [Contact](#contact)
- [Licensing](#licensing)## TIGRE features
TIGRE is a GPU-based CT reconstruction software repository that contains a wide variety of iterative algorithms.
- **MATLAB** and **Python** libraries for high-performance x-ray absorption tomographic reconstruction.
- State-of-the-art implementations of projection and backprojection operations on **GPUs** (including **multi-GPUs**), with a simple interface using higher level languages to facilitate the development of new methods.
- **Flexible CT geometry:** Cone Beam, Parallel Beam, Digital Tomosynthesis, C-arm CT, and any other geometry. Geometric parameters are defined per projection, not per scan.
- A wide range of reconstruction algorithms for CT.
- Filtered backprojection (FBP,FDK) and variations (different filters, Parker weights, ...)
- **Iterative algorithms**
- Gradient-based algorithms (SART, OS-SART, SIRT, ASD-POCS, OS-ASD-POCS, B-ASD-POCS-β, PCSD, AwPCSD, Aw-ASD-POCS) with multiple tuning parameters (Nesterov acceleration, initialization, parameter reduction, ...)
- Krylov subspace algorithms (CGLS, LSQR, hybrid LSQR, LSMR, IRN-TV-CGLS, hybrid-fLSQR-TV, AB/BA-GMRES)
- Statistical reconstruction (MLEM)
- Variational methods (FISTA, SART-TV)
- TV denoising for 3D images.
- Basic image loading functionality.
- A variety of plotting functions.
- Image quality metrics.- Nikon and Varian and Phillips (DICOM) scanner data loaders.
## Installation
MATLAB and Python builds are both fully supported.
- [Installation instructions and requirements for MATLAB](Frontispiece/MATLAB_installation.md).
- [Installation instructions and requirements for Python](Frontispiece/python_installation.md).
**Advanced, not required to run TIGRE**, will change the source code. Only do if performance is critical.
- [Tune TIGRE for machine. Tricks to slightly speed up the code](Frontispiece/Tune_TIGRE.md)
## FAQ
For answers to frequently asked questions [click here](Frontispiece/FAQ.md).
If you have new question not answered in the FAQ, please [contact us](#contact), join the [Slack group](#contact) or open a [discussion thread](https://github.com/CERN/TIGRE/discussions).
## Gallery
To see a gallery of images of different CT modalities reconstructed using TIGRE [click here](Frontispiece/Gallery.md).
## Further Reading
If you want more information on TIGRE and its algorithms, [click here](Frontispiece/Further_reading.md).
## Contact
Contact the authors directly at:
[[email protected]](mailto:[email protected]) or [[email protected]](mailto:[email protected])
for any questions/comments or if you want to be added to the mailing list or the Slack team.
The Slack team is a good place for chatting about development and questions about TIGRE. Please send an email to the authors and you will receive an invitation.
## Licensing
The creation of TIGRE was supported by the University of Bath and CERN. It is released under the BSD License, meaning you can use and modify the software freely. However, you **must** cite the original authors.
For more information read [the license file][1] or the [BSD License Definition][2].If you use TIGRE, please reference the following papers:
**TIGRE: A MATLAB-GPU toolbox for CBCT image reconstruction**
*Ander Biguri, Manjit Dosanjh, Steven Hancock and Manuchehr Soleimani*
**Biomedical Physics & Engineering Express, Volume 2, Number 5**
[Read the article (open access)][3]And especially if you use images bigger than 5123 or multiple GPUs
**Arbitrarily large iterative tomographic reconstruction on multiple GPUs using the TIGRE toolbox**
*Ander Biguri, Reuben Lindroos, Robert Bryll, Hossein Towsyfyan, Hans Deyhle, Ibrahim El khalil Harrane, Richard
Boardman, Mark Mavrogordato, Manjit Dosanjh, Steven Hancock, Thomas Blumensath*
**Journal of Parallel and Distributed Computing**
[Read the article][4],
[Preprint][5]## Contributors
Biguri
💻 💡 🤔 🚧 🔬 👀 ✅
yliu88au
💻 🐛
Reuben Lindroos
💻 🐛 🎨 🤔
genusn
💻 🐛
Yi DU
💻 🐛 🔬
tsadakane
💻 🎨 🤔 🐛 ✅
S. Co1
💻 🎨 🔧
Daveelvt
💻 🔬
phernst
🐛 💻
malena-sabate
🔬 💻
Emilien Valat
🔬 💻
zez666
🐛 💻
[1]: LICENSE.txt
[2]: http://www.linfo.org/bsdlicense.html
[3]: http://iopscience.iop.org/article/10.1088/2057-1976/2/5/055010
[4]: https://doi.org/10.1016/j.jpdc.2020.07.004
[5]: https://arxiv.org/abs/1905.03748