ASTRA-based cone beam tomography reconstructions.
Project description
flexTOMO
This project is a part of the larger X-ray tomographic reconstruction toolbox comprised of flexDATA,, flexTOMO and flexCALC. flexTOMO provides a wrapper around the GPU-accelerated tomographic reconstruction toolbox ASTRA. The main purpose of this project is to provide an easy way to use cone-beam forward- and back-projectors. Another purpose is to collect various algebraic reconstruction algorithms, providing support for large disk-mapped arrays (memmaps) and subsets that allow to both accelerate convergence and to save RAM.
Getting Started
We recommend that the user installs conda package manager for Python 3.
Installing with conda
conda install flextomo -c cicwi -c astra-toolbox -c nvidia
Installing with pip
pip install flextomo
Installing from source
git clone https://github.com/cicwi/flextomo.git
cd flextomo
pip install -e .
Running the examples
To learn about the functionality of the package check out our examples/
folder. Examples are separated into blocks that are best to run in VS Code / Spyder environment step-by-step.
Modules
flexTOMO is comprised of two modules:
flextomo.phantom
: A very simple modelue with a few phantom object generatorsflextomo.project
: Main module that contains forward- and back-projectors, and algebraic reconstruction algorithms
Typical usage:
# Import:
import numpy
from flextomo import project
from flextomo import phantom
# Initialize projection images:
proj = numpy.zeros([512, 361, 512], dtype = 'float32')
# Define a simple projection geometry:
geom = geometry.circular(src2obj = 100, det2obj = 100, det_pixel = 0.01, ang_range = [0, 360])
# Create phantom and project into proj:
vol = phantom.abstract_nudes([512, 512, 512], geom, complexity = 10)
# Forward project:
project.forwardproject(proj, vol, geometry)
Authors and contributors
- Alexander Kostenko - Initial work
- Willem Jan Palenstijn - Packaging, installation and maintenance
- Alexander Skorikov - Packaging, installation and maintenance
See also the list of contributors who participated in this project.
How to contribute
Contributions are always welcome. If you have any issues, questions, or remarks, then please open an issue on GitHub.
License
This project is licensed under the GNU GENERAL PUBLIC License - see the LICENSE.md file for details
Acknowledgments
- To Willem Jan Palenstijn for endless advices regarding the use of ASTRA toolbox.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file flextomo-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: flextomo-1.0.0-py3-none-any.whl
- Upload date:
- Size: 15.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77138f1bc87bd6d0f1070804af6fa5abede8ce26606e6dd8ca49c64a9bcda0bd |
|
MD5 | 12fe6edc67cd5ac0fb2f2dda11cea75d |
|
BLAKE2b-256 | 704d63052b19d63c1110dcbbdc20cc5918b037ee3cbd51f3565afa2e9163ca0b |