gratopy
A cornerstone in applying projection methods is to define for which geometry the projection has to be computed. Thus, the first step in using gratopy is always creating an instance of gratopy.ProjectionSettings
defining the geometry, and thus internally precomputing relevant quantities.
gratopy.ProjectionSettings
The functions forwardprojection
and backprojection
perform the projection operations based on the geometry defined in projectionsetting. The images img and the sinograms sino need to be interpreted and behave as described in Getting started.
gratopy.forwardprojection
gratopy.backprojection
Based on these forward and backward operators, one can implement a variety of reconstruction algorithms, where the toolbox's focus is on iterative methods (as those in particular are dependent on efficient implementation). The following constitute a few easy-to-use examples which also serve as illustration on how gratopy can be included in custom pyopencl
implementations.
gratopy.landweber
gratopy.conjugate_gradients
gratopy.total_variation
gratopy.normest
gratopy.weight_sinogram
For convenient testing, a phantom generator is included which creates a modified two-dimensional phantom of arbitrary size.
gratopy.phantom
The following contains the documentation for a set of internal functions which could be of interest for developers. Note that these might be subject to change in the future.
gratopy.radon
gratopy.radon_ad
gratopy.radon_struct
gratopy.fanbeam
gratopy.fanbeam_ad
gratopy.fanbeam_struct
gratopy.create_code