vamtoolbox.projector.Projector3DParallel#

Module Contents#

Classes#

Projector3DParallelAstra

Projector3DParallelPython

Attributes#

astra_available

vamtoolbox.projector.Projector3DParallel.astra_available = True#
class vamtoolbox.projector.Projector3DParallel.Projector3DParallelAstra(target_geo, proj_geo)#
forward(x)#

Forward projector operation (b = Ax)

backward(b)#

Backward projector operation (x = A^Tb)

class vamtoolbox.projector.Projector3DParallel.Projector3DParallelPython(target_geo, proj_geo)#
generateOccSinogram(occ_array)#

Create sinogram containing minimum values of ‘s’ within the occlusion map

Returns:

  • occ_sinogram (nd_array)

  • Npixels x Nangles x Nslices

forward(target)#

Computes forward Radon transform of the target space object accounting for reduced projection contribution due to occlusion shadowing

Inputs#

target : nd_array Npixels x Npixels x Npixels array that contains the target space object

returns:
  • projection (nd_array)

  • Npixels x Nangles x Nslices array of forward Radon transform with occlusion shadowing

backward(projection)#

Computes inverse Radon transform of projection accounting for reduced dose deposition due to occlusion shadowing

Inputs#

projection : nd_array Npixels x Nangles x Nslices array that contains the projection space sinogram of the target

returns:
  • reconstruction (nd_array)

  • Npixels x Npixels x Npixels array of inverse Radon transform with occlusion shadowing

getOccShadow(i, j, angle, t, s)#