fan_weighted_backproject#

diffct.analytical.fan_weighted_backproject(sinogram, src_pos, det_center, det_u_vec, detector_spacing, H, W, voxel_spacing=1.0, *, isocenter=None)[source]#

Voxel-driven fan-beam FBP backprojection with analytical constant.

Runs the dedicated fan-beam FBP gather kernel (one thread per output pixel, (sid_n/U_n)^2 distance weighting, linear interpolation of the filtered sinogram), applying the analytical factor sdd_n / (2 * pi * sid_n) to each view so a unit-density disk reconstructs to amplitude 1. Both distances are measured in the detector-normal direction per view, so the helper reduces to the classical sdd/(2*pi*sid) on a circular orbit. isocenter is a physical coordinate pair; by default it is inferred from the source lines along detector normals. Supply it explicitly for an ambiguous or non-circular acquisition. Analytical FBP remains acquisition-specific.