lf_all_in_focus — LIGHTFIELD depth op

• Data kinds: lightfield × image2d → image2d

• Call: import fullseye as fs; fs.ledger.lf_all_in_focus(lf, slope_map, levels=None, *, n_levels=16, interp='linear', edge='nearest') (to call the implementation directly, import lightfield; lightfield.lf_all_in_focus(lf, slope_map, levels=None, *, n_levels=16, interp='linear', edge='nearest'); from the registry, opslightfield.get("lf_all_in_focus"))

Usage

Composite one everywhere-sharp image by refocusing each pixel at its own slope.

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

Detailed usage guide

• lightfield_depth family guide

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)

• lightfield_depth — py -3.11 examples/lightfield_depth.py

• poc_compound_eye — py -3.11 examples/poc_compound_eye.py

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

lf_from_mla · lf_disparity_to_depth

Same category (depth)

lf_depth_from_focus · lf_epi_slope · lf_disparity_to_depth · lf_plenoptic_design


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