fullseye

tonemap_reinhard — 3D render op

使い方

Reinhard トーンマップで HDR を [0, 1] の LDR へ圧縮。→ float64、入力と同形状。

露出を掛けた x = hdr * exposure に対し:

カラー (H, W, C) はチャンネル独立に写像する。素朴クリップ min(x, 1) と違い、 値 > 1 のハイライト域でも単調な階調を保つ。

Args: hdr: HDR 画像。(H, W) グレースケール or (H, W, C) カラー、放射輝度 >= 0。 exposure: 写像前に掛ける露出スケール(正)。 white: 任意の white-point(正)。None なら基本 Reinhard(推奨・全域単調)。 Returns: [0, 1] の float64 LDR 画像(入力と同形状)。 Raises: ValueError: 空/非有限/負の放射輝度、非正の exposition/white(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.