Creation of objects: the creators
module¶
-
astra.creators.
astra_dict
(intype)[source]¶ Creates a dict to use with the ASTRA Toolbox.
Parameters: intype ( string
) – Type of the ASTRA object.Returns: dict
– An ASTRA dict of typeintype
.
-
astra.creators.
create_backprojection
(data, proj_id, returnData=True)[source]¶ Create a backprojection of a sinogram (2D).
Parameters: - data (
numpy.ndarray
orint
) – Sinogram data or ID. - proj_id (
int
) – ID of the projector to use. - returnData (
bool
) – If False, only return the ID of the backprojection.
Returns: int
or (int
,numpy.ndarray
) – IfreturnData=False
, returns the ID of the backprojection. Otherwise, returns a tuple containing the ID of the backprojection and the backprojection itself, in that order.- data (
-
astra.creators.
create_backprojection3d_gpu
(data, proj_geom, vol_geom, returnData=True)[source]¶ Create a backprojection of a sinogram (3D) using CUDA.
Parameters: - data (
numpy.ndarray
orint
) – Sinogram data or ID. - proj_geom (
dict
) – Projection geometry. - vol_geom (
dict
) – Volume geometry. - returnData (
bool
) – If False, only return the ID of the backprojection.
Returns: int
or (int
,numpy.ndarray
) – IfreturnData=False
, returns the ID of the backprojection. Otherwise, returns a tuple containing the ID of the backprojection and the backprojection itself, in that order.- data (
-
astra.creators.
create_proj_geom
(intype, *args)[source]¶ Create a projection geometry.
This method can be called in a number of ways:
create_proj_geom('parallel', detector_spacing, det_count, angles)
:Parameters: - detector_spacing (
float
) – Distance between two adjacent detector pixels. - det_count (
int
) – Number of detector pixels. - angles (
numpy.ndarray
) – Array of angles in radians.
Returns: A parallel projection geometry.
create_proj_geom('fanflat', det_width, det_count, angles, source_origin, origin_det)
:Parameters: - det_width (
float
) – Size of a detector pixel. - det_count (
int
) – Number of detector pixels. - angles (
numpy.ndarray
) – Array of angles in radians. - source_origin – Position of the source.
- origin_det – Position of the detector
Returns: A fan-beam projection geometry.
create_proj_geom('fanflat_vec', det_count, V)
:Parameters: - det_count (
int
) – Number of detector pixels. - V (
numpy.ndarray
) – Vector array.
Returns: A fan-beam projection geometry.
create_proj_geom('parallel3d', detector_spacing_x, detector_spacing_y, det_row_count, det_col_count, angles)
:Parameters: - detector_spacing_* (
float
) – Distance between two adjacent detector pixels. - det_row_count (
int
) – Number of detector pixel rows. - det_col_count (
int
) – Number of detector pixel columns. - angles (
numpy.ndarray
) – Array of angles in radians.
Returns: A parallel projection geometry.
create_proj_geom('cone', detector_spacing_x, detector_spacing_y, det_row_count, det_col_count, angles, source_origin, origin_det)
:Parameters: - detector_spacing_* (
float
) – Distance between two adjacent detector pixels. - det_row_count (
int
) – Number of detector pixel rows. - det_col_count (
int
) – Number of detector pixel columns. - angles (
numpy.ndarray
) – Array of angles in radians. - source_origin (
float
) – Distance between point source and origin. - origin_det (
float
) – Distance between the detector and origin.
Returns: A cone-beam projection geometry.
create_proj_geom('cone_vec', det_row_count, det_col_count, V)
:Parameters: - det_row_count (
int
) – Number of detector pixel rows. - det_col_count (
int
) – Number of detector pixel columns. - V (
numpy.ndarray
) – Vector array.
Returns: A cone-beam projection geometry.
create_proj_geom('parallel3d_vec', det_row_count, det_col_count, V)
:Parameters: - det_row_count (
int
) – Number of detector pixel rows. - det_col_count (
int
) – Number of detector pixel columns. - V (
numpy.ndarray
) – Vector array.
Returns: A parallel projection geometry.
create_proj_geom('sparse_matrix', det_width, det_count, angles, matrix_id)
:Parameters: - det_width (
float
) – Size of a detector pixel. - det_count (
int
) – Number of detector pixels. - angles (
numpy.ndarray
) – Array of angles in radians. - matrix_id (
int
) – ID of the sparse matrix.
Returns: A projection geometry based on a sparse matrix.
- detector_spacing (
-
astra.creators.
create_projector
(proj_type, proj_geom, vol_geom)[source]¶ Create a 2D projector.
Parameters: - proj_type (
string
) – Projector type, such as'line'
,'linear'
, ... - proj_geom (
dict
) – Projection geometry. - vol_geom (
dict
) – Volume geometry.
Returns: int
– The ID of the projector.- proj_type (
-
astra.creators.
create_reconstruction
(rec_type, proj_id, sinogram, iterations=1, use_mask='no', mask=array([], dtype=float64), use_minc='no', minc=0, use_maxc='no', maxc=255, returnData=True, filterType=None, filterData=None)[source]¶ Create a reconstruction of a sinogram (2D).
Parameters: - rec_type (
string
) – Name of the reconstruction algorithm. - proj_id (
int
) – ID of the projector to use. - sinogram (
numpy.ndarray
orint
) – Sinogram data or ID. - iterations (
int
) – Number of iterations to run. - use_mask (
'yes'
or'no'
) – Whether to use a mask. - mask (
numpy.ndarray
orint
) – Mask data or ID - use_minc (
'yes'
or'no'
) – Whether to force a minimum value on the reconstruction pixels. - minc (
float
) – Minimum value to use. - use_maxc (
'yes'
or'no'
) – Whether to force a maximum value on the reconstruction pixels. - maxc (
float
) – Maximum value to use. - returnData (
bool
) – If False, only return the ID of the reconstruction. - filterType (
string
) – Which type of filter to use for filter-based methods. - filterData (
numpy.ndarray
) – Optional filter data for filter-based methods.
Returns: int
or (int
,numpy.ndarray
) – IfreturnData=False
, returns the ID of the reconstruction. Otherwise, returns a tuple containing the ID of the reconstruction and reconstruction itself, in that order.- rec_type (
-
astra.creators.
create_sino
(data, proj_id, returnData=True, gpuIndex=None)[source]¶ Create a forward projection of an image (2D).
Parameters: - data (
numpy.ndarray
orint
) – Image data or ID. - proj_id (
int
) – ID of the projector to use. - returnData (
bool
) – If False, only return the ID of the forward projection. - gpuIndex (
int
) – Optional GPU index.
Returns: int
or (int
,numpy.ndarray
)If
returnData=False
, returns the ID of the forward projection. Otherwise, returns a tuple containing the ID of the forward projection and the forward projection itself, in that order.- data (
-
astra.creators.
create_sino3d_gpu
(data, proj_geom, vol_geom, returnData=True, gpuIndex=None)[source]¶ Create a forward projection of an image (3D).
Parameters: - data (
numpy.ndarray
orint
) – Image data or ID. - proj_geom (
dict
) – Projection geometry. - vol_geom (
dict
) – Volume geometry. - returnData (
bool
) – If False, only return the ID of the forward projection. - gpuIndex (
int
) – Optional GPU index.
Returns: int
or (int
,numpy.ndarray
) – IfreturnData=False
, returns the ID of the forward projection. Otherwise, returns a tuple containing the ID of the forward projection and the forward projection itself, in that order.- data (
-
astra.creators.
create_vol_geom
(*varargin)[source]¶ Create a volume geometry structure.
This method can be called in a number of ways:
create_vol_geom(N)
:returns: A 2D volume geometry of size \(N \times N\). create_vol_geom((Y, X))
:returns: A 2D volume geometry of size \(Y \times X\). create_vol_geom(Y, X)
:returns: A 2D volume geometry of size \(Y \times X\). create_vol_geom(Y, X, minx, maxx, miny, maxy)
:returns: A 2D volume geometry of size \(Y \times X\), windowed as \(minx \leq x \leq maxx\) and \(miny \leq y \leq maxy\). create_vol_geom((Y, X, Z))
:returns: A 3D volume geometry of size \(Y \times X \times Z\). create_vol_geom(Y, X, Z)
:returns: A 3D volume geometry of size \(Y \times X \times Z\). create_vol_geom(Y, X, Z, minx, maxx, miny, maxy, minz, maxz)
:returns: A 3D volume geometry of size \(Y \times X \times Z\), windowed as \(minx \leq x \leq maxx\) and \(miny \leq y \leq maxy\) and \(minz \leq z \leq maxz\) .