gray op• Data kinds: voxel → voxel
• Call: import fullseye as fs; fs.ledger.vol_gamma(vol, gamma) (to call the implementation directly, import volgray; volgray.vol_gamma(vol, gamma); from the registry, ops3d.get("vol_gamma"))
Gamma (power-law) correction on the volume's own range (HALCON `pow_image`).
Normalises `[min, max] to [0, 1], applies t**gamma`, and maps the
result back to the original `[min, max]` — so the volume's extremes are
fixed points and only the mid-tones move: `gamma > 1` darkens them,
`gamma < 1 brightens them, gamma == 1` is the identity. The transform
is strictly monotone, so intensity *ordering* is always preserved.
A constant volume is returned unchanged (no range to normalise —
see the module docstring's flat-volume note).
Parameters
----------
vol : array_like, shape (D, H, W)
Input volume (coerced to float64; NaN/Inf rejected).
gamma : float
Exponent, `> 0 (fail-closed: gamma <= 0` is not a monotone
intensity map).
Returns
-------
ndarray, shape (D, H, W), float64
The gamma-corrected volume, same `[min, max]` range as the input.
Raises
------
ValueError
Non-3-D / non-finite input, or `gamma <= 0`.
• 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.
• gray_window_level — py -3.11 examples_3d/gray_window_level.py
voxel as input)voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa
gray)vol_window_level · vol_equalize · vol_stretch
*Provenance: volgray.py — 3D 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.