RayTransform¶
-
class
odl.tomo.operators.ray_trafo.
RayTransform
(*args, **kwargs)[source]¶ Bases:
odl.operator.operator.Operator
Linear X-Ray (Radon) transform operator between L^p spaces.
- Attributes
adjoint
Adjoint of this operator.
domain
Set of objects on which this operator can be evaluated.
- geometry
impl
Implementation name string.
inverse
Return the operator inverse.
is_functional
True
if this operator’s range is aField
.is_linear
True
if this operator is linear.range
Set in which the result of an evaluation of this operator lies.
Methods
_call
(self, x[, out])Forward projection.
derivative
(self, point)Return the operator derivative at
point
.get_impl
(self[, use_cache])Fetches or instantiates implementation backend for evaluation.
norm
(self[, estimate])Return the operator norm of this operator.
-
__init__
(self, vol_space, geometry, \*\*kwargs)[source]¶ Initialize a new instance.
- Parameters
- vol_space
DiscretizedSpace
Discretized reconstruction space, the domain of the forward operator or the range of the adjoint (back-projection).
- geometry
Geometry
Geometry of the transform that contains information about the data structure.
- vol_space
- Other Parameters
- impl{
None
, ‘astra_cuda’, ‘astra_cpu’, ‘skimage’}, optional Implementation back-end for the transform. Supported back-ends:
'astra_cuda'
: ASTRA toolbox, using CUDA, 2D or 3D'astra_cpu'
: ASTRA toolbox using CPU, only 2D'skimage'
: scikit-image, only 2D parallel with square reconstruction space.
For the default
None
, the fastest available back-end is used.- proj_space
DiscretizedSpace
, optional Discretized projection (sinogram) space, the range of the forward operator or the domain of the adjoint (back-projection). Default: Inferred from parameters.
- use_cachebool, optional
If
True
, data is cached. This gives a significant speed-up at the expense of a notable memory overhead, both on the GPU and on the CPU, since a full volume and a projection dataset are stored. That may be prohibitive in 3D. Default: True- kwargs
Further keyword arguments passed to the projector backend.
- impl{
Notes
The ASTRA backend is faster if data are given with
dtype='float32'
and storage order ‘C’. Otherwise copies will be needed.