post opなし → lut(引数だけで決まる op —— 画像やデータの入力を取らない)import fullseye as fs; fs.ledger.color_lut(size=17, gain=(1.0, 1.0, 1.0), lift=(0.0, 0.0, 0.0), gamma=(1.0, 1.0, 1.0), saturation=1.0) (実装を直接呼ぶなら import gfx2d; gfx2d.color_lut(size=17, gain=(1.0, 1.0, 1.0), lift=(0.0, 0.0, 0.0), gamma=(1.0, 1.0, 1.0), saturation=1.0)、台帳から引くなら opsgfx2d.get("color_lut"))Build a 3-D colour LUT, (n, n, n, 3) indexed [r, g, b].
out = lift + gain * in**gamma per channel, then saturation is
applied about the Rec. 709 luma and the result is clipped once. With all defaults this is the identity
LUT, and because trilinear interpolation is exact for a function that is
linear in each variable, :func:color_grade with the identity LUT is the
identity to float64 rounding (measured maximum 3.3e-16 at size 17 and
2.2e-16 at size 2) — the property the suite uses to prove the interpolation
itself is right before testing any grade.
py -3.11 examples/genspark_external_review.pypy -3.11 examples/gfx2d_scene.pylut を入力に取れる)post)bloom · vignette · chromatic_aberration · film_grain · color_grade · dither · palette_quantize
Provenance: gfx2d.py — GFX2D operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.