photon_uncertainty — PHOTON counting op

Data kinds: image2dimage2d

Call: import photoncount; photoncount.photon_uncertainty(counts, relative=False, zero_floor=0.0) (or opsphoton.get("photon_uncertainty"))

Usage

Per-pixel Poisson error bar of a photon-count frame.

For a Poisson variable the variance *equals* the mean, so the one-sigma

uncertainty of a single measurement `N is sqrt(N)` — no calibration, no

noise model to fit. With `relative=True` the returned map is the relative

uncertainty `1/sqrt(N)` instead (its reciprocal is the per-pixel SNR).

*zero_floor* replaces counts below it before the square root. It exists

because `N = 0 gives sqrt(0) = 0`, i.e. "this pixel is exactly zero

with no uncertainty", which is wrong: the 95% Poisson upper limit for a

single observed zero is about 3 photons. Set `zero_floor=1.0` for the

common "one-count prior" convention. It is not applied silently — the

default is 0.0 and the absolute map really does return 0 there.

Returns a float64 `(H, W)` image.

Raises `ValueError`: negative, non-finite or non-2-D *counts*, a

negative *zero_floor*, and — instead of returning `inf` —

`relative=True` with any pixel at 0 after the floor (that is the division

`1/sqrt(0); pass zero_floor > 0` to say what a zero should mean).

Detailed usage guide

photon_timeresolved 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)

photon_timeresolvedpy -3.11 examples/photon_timeresolved.py

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

photon_sample · photon_statistics · anscombe_transform · anscombe_inverse

Same category (counting)

photon_sample · photon_statistics


*Provenance: photoncount.py — PHOTON 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.