tv_reconstruct — TOMOGRAPHY ct_scan op

• Datenarten: projstack × ctgeometry → voxel

• Aufruf: import fullseye as fs; fs.ledger.tv_reconstruct(projections, geometry, tv_weight=0.0003, n_iter=200, initial=None, nonnegative=True, device='auto', on_iter=None) (die Implementierung direkt: import ctscan; ctscan.tv_reconstruct(projections, geometry, tv_weight=0.0003, n_iter=200, initial=None, nonnegative=True, device='auto', on_iter=None); aus dem Register: opstomography.get("tv_reconstruct"))

• GPU: nein (nur CPU-Referenzimplementierung)

Verwendung

Totalvariations-Rekonstruktion mit der primal-dualen Methode von Chambolle und Pock.

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

Solves min 0.5 ||A x - p||^2 + w ||grad x||_1 with x >= 0, in the form Sidky, Jorgensen & Pan 2012 give for CT. The prior says that the object is piecewise constant, which is what lets it fill data that was never measured: few views and limited angle. On an object that is not piecewise constant it paints the same flat patches, so a low residual here is not evidence of truth.

*tv_weight* is in units of ||A||^2 times the volume scale, so that one value behaves alike across grid sizes.

:param projections: (view, V, U) line integrals. :param geometry: dict from ct_scan_geometry. :param tv_weight: strength of the prior, >= 0. :param n_iter: primal-dual iterations, 1 .. 5000. :param initial: starting volume; None gives zeros. :param nonnegative: enforce x >= 0. :param device: "auto", "cpu" or "cuda". :param on_iter: optional on_iter(iteration, volume). :returns: (Z, Y, X) float volume. :raises ValueError: on a shape that disagrees with the geometry or a negative

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

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 · fdk_reconstruct · sirt_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.