hue_saturation — GFX2D isp op

• Data kinds: rgb → rgb

• Call: import fullseye as fs; fs.ledger.hue_saturation(rgb, hue_deg=0.0, saturation=1.0) (implementation को सीधे call करना हो तो import gfx2d; gfx2d.hue_saturation(rgb, hue_deg=0.0, saturation=1.0), registry से लेना हो तो opsgfx2d.get("hue_saturation"))

उपयोग

BT.601 YCbCr में hue को *hue_deg* से घुमाता है और saturation को *saturation* से scale करता है: luma रखा जाता है, chroma vector (Cb, Cr) घुमाया और scale किया जाता है। आउटपुट [0, 1] पर clip किया जाता है।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

Ground truth: hue_deg=0, saturation=1 is the identity to 1e-15; rotating by +t then -t returns the input; saturation=0 gives a grey image whose value is the BT.601 luma of the input. A hue rotation is not a channel permutation (120 degrees does not swap R->G->B exactly), because the RGB cube is not a cylinder around the grey axis — said here so nobody tests for it. Raises ValueError: non-finite *hue_deg*, or *saturation* < 0.

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• raw_to_display_isp — py -3.11 examples/raw_to_display_isp.py

वे अगले ops जिनसे type जुड़ता है (rgb को input के रूप में लेते हैं)

srgb_to_linear · linear_to_srgb · blend_mode · light_mask · normal_map_decode · bloom · vignette · chromatic_aberration

इसी category के (isp)

raw_black_level · raw_dead_pixel_mask · raw_dead_pixel_correct · lens_shading_gain · lens_shading_correct · awb_gains · rgb_apply_gains · raw_apply_gains


*Provenance: gfx2d.py — GFX2D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.