summaryrefslogtreecommitdiffstats
path: root/samples/s001_sinogram_par2d.m
blob: 9f50c14cda500fe819a5e39e46549341487d7292 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
%------------------------------------------------------------------------
% This file is part of the
% All Scale Tomographic Reconstruction Antwerp Toolbox ("ASTRA-Toolbox")
%
% Copyright: iMinds-Vision Lab, University of Antwerp
% License: Open Source under GPLv3
% Contact: mailto:astra@ua.ac.be
% Website: http://astra.ua.ac.be
%------------------------------------------------------------------------

% Create a basic 256x256 square volume geometry
vol_geom = astra_create_vol_geom(256, 256);

% Create a parallel beam geometry with 180 angles between 0 and pi, and
% 384 detector pixels of width 1.
% For more details on available geometries, see the online help of the
% function astra_create_proj_geom .
proj_geom = astra_create_proj_geom('parallel', 1.0, 384, linspace2(0,pi,180));

% Create a 256x256 phantom image using matlab's built-in phantom() function
P = phantom(256);

% Create a sinogram using the GPU.
% Note that the first time the GPU is accessed, there may be a delay
% of up to 10 seconds for initialization.
[sinogram_id, sinogram] = astra_create_sino_gpu(P, proj_geom, vol_geom);

figure(1); imshow(P, []);
figure(2); imshow(sinogram, []);


% Free memory
astra_mex_data2d('delete', sinogram_id);