Forward and backprojectors¶
In cone-beam computed tomography (CBCT), forward and backprojectors are crucial components of the reconstruction algorithms. RTK implements multiple forward and backprojectors, each tailored to different purposes.
All projector classes in RTK are implemented as ITK filters. They inherit from either rtk::ForwardProjectionImageFilter
or rtk::BackProjectionImageFilter
, both inheriting from itk::InPlaceImageFilter
.
Forward projectors¶
An intuitive design for a forward projector would be:
but ITK’s filter output has the same information (size, spacing, direction, …) by default as the first input. This could be changed but it was deemed simpler to chose the following design:
Forward projections of the second input are then added to the first input. Because forward projectors inherit from itk::InplaceImageFilter
, there is still a single memory buffer for the projections. Projections filled with a constant, 0 by default, can be generated with rtk::ConstantImageSource
which only generates the requested part in the memory buffer.
RTK supports the following forward projector implementations :
Cuda based projector:
Back projectors¶
Similarly, the design chosen for RTK back projectors is:
RTK supports the following back projector implementations :
Cuda based projector: