About ToMoBAR#
The general concept:#
ToMoBAR is a Python library (Matlab is not currently supported) of direct and model-based regularised iterative reconstruction algorithms with a plug-and-play capability. ToMoBAR offers you a selection of various data models and regularisers resulting in complex objectives for tomographic reconstruction. ToMoBAR uses ASTRA-Toolbox [VanAarle2015], for projection-backprojection parallel-beam geometry routines, which is a common geometry for X-ray synchrotron imaging [SX2022].
ToMoBAR can operate in GPU device-to-device fashion on CuPy arrays therefore ensuring a better computational efficiency. With GPU device controlling API reference exposed it can also support multi-GPU parallel computing [CT2020] .
What ToMoBAR can do:#
Reconstruct parallel-beam projection data in 2D and 3D using GPU-accelerated routines from ASTRA-toolbox [VanAarle2015].
Employ fast GPU-accelerated direct methods, such as FBP method in
tomobar.methodsDIR
and CuPy accelerated Fourier reconstructionFOURIER_INV()
intomobar.methodsDIR_CuPy
.Use advanced model-based regularised iterative schemes such as FISTA and ADMM proximal splitting algorithms in
tomobar.methodsIR
or even faster implementations with CuPy intomobar.methodsIR_CuPy
.The FISTA algorithm [BT2009], [Xu2016] offers various modifications: convergence acceleration with ordered-subsets, different data fidelities: PWLS, Huber, Group-Huber [PM2015], Students’t [KAZ1_2017], and SWLS [HOA2017] to deal with noise and various imaging artefacts, such as, rings, streaks.
Combine FISTA and ADMM methods with regularisers from the CCPi-Regularisation Toolkit [KAZ2019]. It is possible to construct different combinations of the objective function.
See more on ToMoBAR’s API in API reference.