radon_volume — TOMOGRAPHY volume op

Data kinds: voxelsinostack

Call: import tomography; tomography.radon_volume(volume, angles_deg=None, n_detectors=None, oversample=1) (or opstomography.get("radon_volume"))

Usage

Project every slice of a `(Z, H, W) volume -> a (Z, A, D)` stack.

Parallel-beam geometry with the rotation axis along `Z`, which is the case

where the 3-D problem really is a stack of independent 2-D ones — each slice

projects into its own sinogram and nothing crosses between them. (A cone beam

does not have this property and is not implemented; saying so is cheaper than

a wrong `FDK`.)

The output's axis order is `(slice, angle, detector) so that stack[k]`

is a sinogram in this module's own convention and every 2-D operator here

applies to it unchanged.

:param volume: `(Z, H, W) float volume, Z >= 1`.

:param angles_deg: view angles; `None -> uniform [0, 180)`, 180 views.

:param n_detectors: bins; `None` -> covers the in-plane diagonal.

:param oversample: ray samples per pixel, `1 .. 8`.

:returns: `(Z, n_angles, n_detectors)` float64 stack.

:raises ValueError: on a non-3-D input or a stack over

:data:MAX_STACK_ELEMENTS.

References (sample data, literature)

• 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.

Runnable examples (verified samples that actually call this op)

tomography_reconstructpy -3.11 examples/tomography_reconstruct.py

Ops the type connects to (they accept sinostack as input)

fbp_volume

Same category (volume)

fbp_volume


*Provenance: tomography.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.