lf_disparity_to_depth — LIGHTFIELD depth op

Data kinds: image2ddepth

Call: import lightfield; lightfield.lf_disparity_to_depth(slope, focal_px=1000.0, baseline=1.0, *, far_depth=None, min_slope=1e-06) (or opslightfield.get("lf_disparity_to_depth"))

Usage

Slope (px per angular step) -> metric depth, the camera-array model.

For a rectified array of viewpoints spaced *baseline* apart with focal

length *focal_px* expressed in pixels of the sub-aperture image, a point

at distance `Z shifts by |s| = focal_px * baseline / Z` pixels per

step. Inverting: `Z = focal_px * baseline / |s|`, returned in whatever

length unit *baseline* was given in (mm in, mm out).

Only `|s|` enters, deliberately. The *sign* of the slope says which side of

the focal plane a point is on, and which sign means "nearer" depends on how

the angular axis was oriented when the field was decoded — a convention this

module cannot know and refuses to guess. If your decode puts near objects at

negative slope, negate before calling.

*far_depth* is the fail-closed switch for the `s -> 0` pole (a point at

infinity has zero parallax). `None (default) makes any |s| < min_slope`

a `ValueError` naming how many pixels were affected — mask them, or pass an

explicit saturation distance as *far_depth* and get that value there. There

is no silent `inf` and no silent clamp.

Accepts a scalar or any array; returns the same shape (a scalar in gives a

0-d array out, so downstream code has one type to handle).

Raises `ValueError`: non-finite *slope* / *focal_px* / *baseline*, a

non-positive *focal_px* / *baseline* / *min_slope*, a negative *far_depth*,

and `|slope| < min_slope anywhere when *far_depth* is None`.

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_depthpy -3.11 examples/lightfield_depth.py

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

Same category (depth)

lf_depth_from_focus · lf_epi_slope · lf_all_in_focus · 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.