fdk_reconstruct — TOMOGRAPHY ct_scan op

• Datenarten: projstack × ctgeometry → voxel

• Aufruf: import fullseye as fs; fs.ledger.fdk_reconstruct(projections, geometry, filter_name='ramp', cutoff=1.0, device='auto', allow_incomplete=False) (die Implementierung direkt: import ctscan; ctscan.fdk_reconstruct(projections, geometry, filter_name='ramp', cutoff=1.0, device='auto', allow_incomplete=False); aus dem Register: opstomography.get("fdk_reconstruct"))

• GPU: nein (nur CPU-Referenzimplementierung)

Verwendung

Gefilterte Rückprojektion für jeden Scan mit Formel: FDK und seine Verwandten.

> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.

The Feldkamp-Davis-Kress steps, on one code path: weight each sample by the cosine of its ray and by the scan's redundancy, ramp-filter along the detector rows, then back-project with the (DSO / U)^2 weight. A fan is one row, a short scan takes Parker's weight, an offset detector Wang's, a helix a row window normalised per voxel, laminography a sin(tilt) scale, and a parallel beam has no divergence weight. The equiangular detector takes the (gamma / sin gamma)^2 kernel.

A scan with no formula, or an arc too short to determine the object, is refused and named: use sirt_reconstruct or tv_reconstruct.

:param projections: (view, V, U) line integrals. :param geometry: dict from ct_scan_geometry. :param filter_name: one of tomography.FILTERS except "none". :param cutoff: fraction of Nyquist to keep, (0, 1]. :param device: "auto", "cpu" or "cuda". :param allow_incomplete: reconstruct an arc under the minimum anyway. The result

is missing a wedge of the object and the density reads low.

:returns: (Z, Y, X) float attenuation volume. :raises ValueError: on a shape that disagrees with the geometry, a tomosynthesis

scan, or an incomplete arc. Empty input (projections with 0 elements) raises

ValueError.

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• ct_scan_modes — py -3.11 examples/ct_scan_modes.py

• poc_ct_casting_sparse_views — py -3.11 examples/poc_ct_casting_sparse_views.py

• poc_real_walnut_cbct — py -3.11 examples/poc_real_walnut_cbct.py

Typkompatible Folge-Operatoren (nehmen voxel als Eingabe)

radon_volume · ct_forward_project

Gleiche Kategorie (ct_scan)

ct_scan_geometry · shepp_logan_3d · ellipsoid_phantom · ellipsoid_projections · ct_forward_project · ct_adjoint_project · sirt_reconstruct · os_sart_reconstruct


*Provenance: ctscan.py — TOMOGRAPHY Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.