This repository contains a mixed Python/C implementation of the gridding projectors with minimal oversampling.
For more information on the algorithm, please refer to the following publications:
-
F.Arcadu et al., "A Forward Regridding Method With Minimal Oversampling for Accurate and Efficient Iterative Tomographic Algorithms.", IEEE Trans. on Imag. Proc., 25(3), 2016.
-
F. Arcadu et al., "Fast gridding projectors for analytical and iterative tomographic reconstruction of differential phase contrast data.", Optics Express, 24(13), 2016.
Basic compilers like gcc and g++ and the FFTW library are required. The simplest way to use the code is with an Anaconda environment equipped with python-2.7, scipy, scikit-image and Cython.
Procedure:
-
Create the Anaconda environment (if not created yet):
conda create -n iter-rec python=2.7 anaconda
. -
Install required Python packages:
conda install -n iter-rec scipy scikit-image Cython
. -
Activate the environment:
source activate iter-rec
. -
git clone git@github.com:arcaduf/gridding_method_minimal_oversampling.git
. -
Install routines in C:
python setup.py
.
If setup.py
runs without giving any error all subroutines in C have been installed and
your python version meets all dependencies.
If you run python setup.py 1
(you can use any other character than 1), the
all executables, temporary and build folders are deleted, the test data are
placed in .zip files. In this way, the repository is restored to its original
status, right after the download.
Go inside the folder "scripts/" and run: python run_all_tests.py
When a plot is produced during the execution of a test, the script is halted until the plot window is manually closed.