lf_all_in_focus — LIGHTFIELD depth op

Datenarten: lightfield × image2dimage2d

Aufruf: import lightfield; lightfield.lf_all_in_focus(lf, slope_map, levels=None, *, n_levels=16, interp='linear', edge='nearest') (oder opslightfield.get("lf_all_in_focus"))

Verwendung

Setzt ein überall scharfes Bild zusammen, indem jedes Pixel mit seiner eigenen Steigung refokussiert wird.

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

Builds a focal stack at *levels* and, for every pixel, takes the slice whose

level is closest to `slope_map` there. This is the "2-D image" half of what

a plenoptic camera delivers, at the full depth range rather than the depth of

field of one focus setting.

*levels* controls which refocus planes are actually rendered, and the

`None` default has two documented branches — a continuous slope map has

one distinct value per pixel, and rendering a refocus plane for each of

those would be tens of thousands of full-frame shifts:

• if *slope_map* holds at most *n_levels* distinct values (the case when

it came from :func:lf_depth_from_focus with `subpixel=False`), those

exact values are used and the composite is exact;

• otherwise the map's range is quantised to *n_levels* evenly spaced

planes (default 16), which is a real approximation: a pixel whose true

slope falls between two planes is refocused at the nearer one. Pass

*levels* explicitly — e.g. the sweep you handed

:func:lf_depth_from_focus — when that matters.

Returns a `(H, W)` 2-D image.

Raises `ValueError`: *lf* not a valid light field, a *slope_map* that

is not 2-D / not `(H, W)` / non-finite, *levels* empty or over the stack

caps, *n_levels* outside `[1, MAX_STACK_SLICES]`, unknown *interp* /

*edge*.

Ausführlicher Anwendungsleitfaden

Leitfaden zur Familie lightfield_depth

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)

lightfield_depthpy -3.11 examples/lightfield_depth.py

Typkompatible Folge-Operatoren (nehmen image2d als Eingabe)

lf_from_mla · lf_disparity_to_depth

Gleiche Kategorie (depth)

lf_depth_from_focus · lf_epi_slope · lf_disparity_to_depth · lf_plenoptic_design


*Provenance: lightfield.py — LIGHTFIELD 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.