fullseye

tonemap_aces — 3D render op

使い方

ACES filmic 近似(Narkowicz 2015)で HDR を [0, 1] の LDR へ圧縮。→ float64。

x = hdr * exposure に対し f(x) = x(a x + b) / (x(c x + d) + e) を適用する。 フィルム的な S 字カーブで暗部を持ち上げハイライトを緩やかに巻き取り、映像制作標準の 「見栄え」を出す。x < ~7.24 の範囲では狭義単調増加・出力 < 1(それ以上は 1 に 飽和しクリップ)。カラー (H, W, C) はチャンネル独立に写像する。

Args: hdr: HDR 画像。(H, W) or (H, W, C)、放射輝度 >= 0。 exposure: 写像前に掛ける露出スケール(正)。 Returns: [0, 1] の float64 LDR 画像(入力と同形状)。 Raises: ValueError: 空/非有限/負の放射輝度、非正の exposition(fail-closed)。

背景知識ガイド(この op の手前にある物理・規約)

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(image2d を入力に取れる)

fuse_to_voxel · fit_poly_surface · eval_poly_surface · surface_form_error · background_flatten · polar_unwrap · fit_zernike · matcap_shade

同カテゴリ(render)

project_points · render_point_depth · render_volume_projection · render_shaded · ambient_occlusion · cast_shadow · phong_shade · matcap_shade


Provenance: render_tonemap.py — 3D operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

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