ct_scan op• Data kinds: voxel × ctgeometry → projstack
• Call: import fullseye as fs; fs.ledger.ct_forward_project(volume, geometry, device='auto') (to call the implementation directly, import ctscan; ctscan.ct_forward_project(volume, geometry, device='auto'); from the registry, opstomography.get("ct_forward_project"))
• GPU: none (CPU reference implementation only)
Project a volume along every ray of *geometry*: the discrete operator A.
Rays are sampled at one voxel step, trilinearly, a sample outside the volume counting zero. For a parallel slice this is the definition of tomography.radon_transform.
:param volume: (Z, Y, X) of the geometry's vol_shape. :param geometry: dict from ct_scan_geometry. :param device: "auto", "cpu" or "cuda". :returns: (view, V, U) float array of line integrals. :raises ValueError: on a shape that disagrees with the geometry. Empty input
(volume with 0 elements) raises ValueError.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• ct_scan_modes — py -3.11 examples/ct_scan_modes.py
projstack as input)ct_adjoint_project · fdk_reconstruct · sirt_reconstruct · os_sart_reconstruct · tv_reconstruct · ct_dual_energy_reconstruct
ct_scan)ct_scan_geometry · shepp_logan_3d · ellipsoid_phantom · ellipsoid_projections · ct_adjoint_project · fdk_reconstruct · sirt_reconstruct · os_sart_reconstruct
*Provenance: ctscan.py — TOMOGRAPHY operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.