diff options
author | Daniel M. Pelt <D.M.Pelt@cwi.nl> | 2015-02-24 12:35:45 +0100 |
---|---|---|
committer | Daniel M. Pelt <D.M.Pelt@cwi.nl> | 2015-02-24 12:35:45 +0100 |
commit | 3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f (patch) | |
tree | 72f1bf197b33cfb64f259089830910a9754e5893 /samples/s003_gpu_reconstruction.m | |
parent | e212ab0d4f84adafa0a2fe11f5e16f856504769a (diff) | |
download | astra-3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f.tar.gz astra-3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f.tar.bz2 astra-3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f.tar.xz astra-3cae1d138c53a3fd042de3d2c9d9a07cf0650e0f.zip |
Added Python interface
Diffstat (limited to 'samples/s003_gpu_reconstruction.m')
-rw-r--r-- | samples/s003_gpu_reconstruction.m | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/samples/s003_gpu_reconstruction.m b/samples/s003_gpu_reconstruction.m deleted file mode 100644 index efb5c68..0000000 --- a/samples/s003_gpu_reconstruction.m +++ /dev/null @@ -1,52 +0,0 @@ -% ----------------------------------------------------------------------- -% This file is part of the ASTRA Toolbox -% -% Copyright: 2010-2015, iMinds-Vision Lab, University of Antwerp -% 2014-2015, CWI, Amsterdam -% License: Open Source under GPLv3 -% Contact: astra@uantwerpen.be -% Website: http://sf.net/projects/astra-toolbox -% ----------------------------------------------------------------------- - -vol_geom = astra_create_vol_geom(256, 256); -proj_geom = astra_create_proj_geom('parallel', 1.0, 384, linspace2(0,pi,180)); - -% As before, create a sinogram from a phantom -P = phantom(256); -[sinogram_id, sinogram] = astra_create_sino_gpu(P, proj_geom, vol_geom); -figure(1); imshow(P, []); -figure(2); imshow(sinogram, []); - -astra_mex_data2d('delete', sinogram_id); - -% We now re-create the sinogram data object as we would do when loading -% an external sinogram -sinogram_id = astra_mex_data2d('create', '-sino', proj_geom, sinogram); - -% Create a data object for the reconstruction -rec_id = astra_mex_data2d('create', '-vol', vol_geom); - -% Set up the parameters for a reconstruction algorithm using the GPU -cfg = astra_struct('SIRT_CUDA'); -cfg.ReconstructionDataId = rec_id; -cfg.ProjectionDataId = sinogram_id; - -% Available algorithms: -% SIRT_CUDA, SART_CUDA, EM_CUDA, FBP_CUDA (see the FBP sample) - - -% Create the algorithm object from the configuration structure -alg_id = astra_mex_algorithm('create', cfg); - -% Run 150 iterations of the algorithm -astra_mex_algorithm('iterate', alg_id, 150); - -% Get the result -rec = astra_mex_data2d('get', rec_id); -figure(3); imshow(rec, []); - -% Clean up. Note that GPU memory is tied up in the algorithm object, -% and main RAM in the data objects. -astra_mex_algorithm('delete', alg_id); -astra_mex_data2d('delete', rec_id); -astra_mex_data2d('delete', sinogram_id); |