colorspace op• Data kinds: lab → rgbimage
• Call: import fullseye as fs; fs.ledger.lab_to_rgb(lab, white=(0.95047, 1.0, 1.08883)) (to call the implementation directly, import imgmetrics; imgmetrics.lab_to_rgb(lab, white=(0.95047, 1.0, 1.08883)); from the registry, opsimgmetrics.get("lab_to_rgb"))
CIE L*a*b* → sRGB [0, 1]. Out-of-gamut colours are clipped, so a round trip through rgb_to_lab only matches inside the gamut (pinned by a test).
Procedure: fy = (L + 16) / 116, fx = fy + a / 500, fz = fy - b / 200 are turned back into XYZ with the inverse of xyz_to_lab (multiplying by white), the inverse of the XYZ→linear RGB matrix is applied, and then the sRGB transfer function. Before the transfer function, linear RGB is silently clipped to [0, 1] -- this is what "out-of-gamut colours are clipped" actually is, and no exception is raised.
• lab: any shape whose last axis is 3.
• white: pass the same white point as used in rgb_to_lab (not validated).
• Return value: float64 of the same shape as the input, gamma-encoded sRGB in the range [0, 1]. For 8 bit, the caller multiplies by 255 and rounds.
• Failure (MetricContractError): the last axis is not 3.
• image_difference_metrics family guide
• colorimetry — Colorimetry and spectra — colour is fixed only by spectrum × illuminant × observer
• 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.
• image_quality_metrics — py -3.11 examples/image_quality_metrics.py
rgbimage as input)rgb_to_lab · rgb_to_xyz · delta_e_map · luma_limited_u8 · rank_data · tid2013_index · fsimc · fsim_pair
colorspace)rgb_to_lab · rgb_to_xyz · xyz_to_lab
*Provenance: imgmetrics.py — IMGMETRICS 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.