本ドキュメントは output/ 配下に蓄積されたシミュレーション・評価結果ディレクトリを 「何の試行か」が分かる形に索引化 したものである.output/ は .gitignore で追跡対象外(容量・再生成可能性のため)であり,手元の output/ が無くてもこのドキュメントだけ読めば「過去にどんな試行があったか・どう再現するか」が辿れることを目的とする.
関連:
.gitignore の output/ 行).git に乗せない.README.md を置くより,本ドキュメントに一覧化する方が「俯瞰しやすい」.TEST_01 や SPEC_03 から参照されている,意味のある実行結果:
| ディレクトリ | 関連 Step | シーン設定 | 評価設定 | 主要指標 (mean / CoV / 勾配% / C/P) | 用途・参照元 |
|---|---|---|---|---|---|
output/baseline/ | 8-1 確定基準 | configs/scene_baseline.yaml (R=0.85, d=8, spp=1024) | — (レンダのみ) | luminance.npy + render_uint8.png | 確定基準の生レンダ.他の評価の入力ソース |
output/baseline_linear_npy/ | 8-1 比較基準 | (同上 luminance.npy 入力) | configs/eval_baseline_linear.yaml (OETF off) | 152.02 / 0.1826 / 24.65 / 1.327 | TEST_01 Step 8-7 で size 1.5×1.5 と比較する基準.輝度マップ追跡 (TEST_03) のパネル左下 |
output/eval_oetf_r085/ | 8-3 OETF 後 | (同上 luminance.npy 入力) | configs/eval_baseline.yaml (OETF on) | 146.71 / 0.0907 / 11.16 / 1.126 | OETF 適用効果の代表結果.輝度マップ追跡 (TEST_03) パネル右上 |
output/emitter_real/ | 8-7 検証 | configs/scene_baseline_emitter_real.yaml (size 1.5×1.5, radiance 12227, Φe 保存) | configs/eval_baseline_linear.yaml (OETF off) | 429.99 / 0.1863 / 26.21 / 1.355 | 点光源近似検証.形状指標 ≈ baseline_linear_npy で実証.輝度マップ追跡 (TEST_03) パネル右下 |
output/sweep_reflectance/r075/ 〜 r092/ | 8-2 反射率スイープ | configs/scene_baseline.yaml の printer_white.reflectance を 0.75 / 0.80 / 0.85 / 0.90 / 0.92 に振った 5 種 (d=12, spp=256) | linear 評価 | → 下表 sweep_summary.csv | TEST_01 / SPEC_03 の反射率スイープ表の元データ |
output/sweep_reflectance/sweep_summary.csv | 8-2 | — | — | 5 反射率の評価結果まとめ | 反射率スイープのサマリ表 |
output/baseline_v3_leds/ | 8-9 LED 位置正確化 | configs/scene_baseline.yaml(Fusion STL から抽出した新 LED 位置で更新済み, R=0.85, d=8, spp=1024) | configs/eval_baseline_linear.yaml (linear + normalization) | 146.71 / 0.1815 / 24.13 / 1.318 | TEST_01 Step 8-9 検証.輝度マップ追跡 (TEST_03) パネル右下(α=0.873434) |
output/baseline_spot/ | 8-10 LED spot 配光 | configs/scene_baseline_spot.yaml(18 LED を spot に変換, cutoff=90/beam=30, I_0=0.02678 W/sr, flux 保存) | configs/eval_baseline_linear.yaml (linear + normalization) | 146.71 / 0.1887 / 27.69 / 1.383 | TEST_01 Step 8-10 検証.X 方向の対称性が部分改善(目視).α=12.77 で mean が約 14.6× 暗くなる |
output/baseline_datasheet/ | 8-11 データシート従順版 | configs/scene_baseline_datasheet.yaml(spot cutoff=85/beam=26.72, I_0=0.0220 W/sr,反射率 0.89, データシート規格値準拠) | configs/eval_baseline_linear.yaml (linear + normalization) | 146.71 / 0.1829 / 26.79 / 1.366 | TEST_01 Step 8-11 検証.データシート準拠は物理正確性のみ達成,形は LSC が依然必要.α=14.30 |
output/perspective_path_hi/ | 8-12 Helmholtz 検証 | configs/scene_baseline_perspective_path.yaml(perspective fov=90°, path, scalar_rgb, spp=4096) | (評価なし,検証目的) | mean=160, bot/top=2.035 | TEST_01 Step 8-12 検証.方向独立性の基準(バックワード) |
output/perspective_ptracer_hi/ | 8-12 Helmholtz 検証 | configs/scene_baseline_perspective_ptracer.yaml(perspective fov=90°, ptracer, scalar_rgb, spp=4096) | (評価なし,検証目的) | mean=319, bot/top=2.006 | TEST_01 Step 8-12 検証.方向独立性の対象(フォワード).形は path と一致(bot/top 比 誤差 1.4%) |
| R | CoV | 勾配 % | C/P | mean | std |
|---|---|---|---|---|---|
| 0.75 | 0.2173 | 25.91 | 1.350 | 104.19 | 22.64 |
| 0.80 | 0.2034 | 24.00 | 1.316 | 137.00 | 27.87 |
| 0.85 | 0.1893 | 22.08 | 1.283 | 180.80 | 34.23 |
| 0.90 | 0.1753 | 20.15 | 1.252 | 239.60 | 42.00 |
| 0.92 | 0.1697 | 19.42 | 1.241 | 268.52 | 45.57 |
| 目的 | コマンド |
|---|---|
| baseline レンダ生成 | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline.yaml --output output/baseline/ |
| baseline (linear, OETF off) 評価 | uv run sm-evaluate --image output/baseline/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_linear_npy/ |
| baseline (OETF on) 評価 | uv run sm-evaluate --image output/baseline/render_uint8.png --config configs/eval_baseline.yaml --output output/eval_oetf_r085/ |
| emitter_real (size 1.5×1.5) レンダ生成 | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_emitter_real.yaml --output output/emitter_real/ |
| emitter_real 評価 | uv run sm-evaluate --image output/emitter_real/luminance.npy --config configs/eval_baseline_linear.yaml --output output/emitter_real/ |
| 反射率スイープ全 5 点 | output/sweep_reflectance/run_sweep.py を参考に再実装.元スクリプトは削除推奨 (下記) のため要再構築 |
| 輝度マップ追跡パネル再生成 | uv run python scripts/build_luminance_evolution_panel.py |
| LED 位置を Fusion STL から再抽出 | uv run python scripts/extract_led_positions_from_stl.py configs/meshes/SmTIASv3.stl --output configs/leds_extracted.yaml(その後 scene_baseline.yaml の lights セクションを置換) |
| baseline_v3_leds レンダ生成 | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline.yaml --output output/baseline_v3_leds/ |
| baseline_v3_leds 評価 | uv run sm-evaluate --image output/baseline_v3_leds/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_v3_leds/ |
| baseline_spot レンダ生成 (Step 8-10) | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_spot.yaml --output output/baseline_spot/ |
| baseline_spot 評価 | uv run sm-evaluate --image output/baseline_spot/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_spot/ |
| baseline_datasheet レンダ生成 (Step 8-11) | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_datasheet.yaml --output output/baseline_datasheet/ |
| baseline_datasheet 評価 | uv run sm-evaluate --image output/baseline_datasheet/luminance.npy --config configs/eval_baseline_linear.yaml --output output/baseline_datasheet/ |
| perspective_path_hi レンダ (Step 8-12 検証) | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_perspective_path.yaml --output output/perspective_path_hi/ |
| perspective_ptracer_hi レンダ (Step 8-12 検証) | $env:DRJIT_LIBLLVM_PATH = "C:\Program Files\LLVM\bin\LLVM-C.dll"; uv run sm-render --scene configs/scene_baseline_perspective_ptracer.yaml --output output/perspective_ptracer_hi/ |
本ドキュメント新設に合わせて以下の残骸を 削除済み(合計 ~12.6 MB).output/ は .gitignore で追跡対象外のため,リポジトリ履歴には影響していない.
| 削除対象 | 内容 | サイズ |
|---|---|---|
output/eval_compat_test/ | 中身空(figures/ 内も空).用途不明の試行残骸 | 0 KB |
output/baseline_linear/ | baseline_linear_npy/ と内容が重複.より新しい後者が現役 | 約 1245 KB |
output/compare_lummap/ | 過去の輝度マップ比較作業の残骸.scripts/build_luminance_evolution_panel.py で代替済み | 約 6077 KB |
output/sweep_reflectance/ 内の以下: | ||
| ・PoC スクリーンショット 28 個 | clim_fix.png, cull_check.png, cull_check_no.png, eval_fix.png, eval_innerface.png, eval_texture.png, hybrid_*.png(8 個), marker_check.png, nomarker_check.png, path_check.png, path_translucent.png, poc_cull.png, render_only.png, render_opt.png, sensor_off_check.png, uni_check.png, unified_*.png(3 個), viz_check.png | 約 3700 KB |
| ・ベイクキャッシュ 6 個 | bake_cache.npz, bake_d16.npz, bake_hi.npz, bake_uni.npz, bake_uni64.npz, bake_unified.npz(再生成可能) | 約 1280 KB |
| ・使い捨てスクリプト 4 個 | apply_oetf.py, diag_seam.py, poc_cull.py, run_sweep.py(本体機能はパッケージに統合済み or 再実装容易) | 約 16 KB |
整理後の output/ トップレベルは 「現役の検証アーティファクト」表の 5 ディレクトリのみ(baseline/, baseline_linear_npy/, emitter_real/, eval_oetf_r085/, sweep_reflectance/).sweep_reflectance/ 内は r075〜r092 の 5 サブディレクトリと sweep_summary.csv の 6 項目のみ.
新たに残骸が溜まったときは,本ドキュメント「現役の検証アーティファクト」表に載っていないディレクトリ・ファイルを削除候補として整理する.output/ は .gitignore 配下なので git 履歴への影響はない.
# 個別ディレクトリ削除
Remove-Item -Recurse -Force output/<対象>
# sweep_reflectance のように「特定の名前以外を消す」場合のテンプレ
$keepNames = @("r075", "r080", "r085", "r090", "r092", "sweep_summary.csv")
Get-ChildItem output/sweep_reflectance |
Where-Object { $keepNames -notcontains $_.Name } |
Remove-Item -Recurse -Force
実行前に必ず Get-ChildItem で対象を確認すること.削除後は本ドキュメントの「過去の整理実績」サブセクションに追記して履歴を残す.
baseline_linear_npy/(baseline 入力 + linear 評価 + npy ソース)test1/, tmp/(後から何の試行か分からない)output/ が散らかっても索引から辿れる.output/{シーン or テーマ}[_{評価バリアント}][_{特記事項}]/
例:
output/baseline/ ← 確定基準 (scene_baseline.yaml)
output/baseline_linear_npy/ ← 確定基準を linear で再評価 (npy ソース)
output/eval_oetf_r085/ ← OETF on 評価結果 (R=0.85)
output/emitter_real/ ← 発光面実サイズ検証
output/sweep_reflectance/r{NNN}/ ← 反射率スイープ
scripts/build_luminance_evolution_panel.py(輝度マップ追跡用)