# TIAS 撮影条件（照明均一性評価用） (TIAS Capture Conditions for Illumination Uniformity)

本書は，**TIAS の白板撮影を制御するアプリ「TIASshot」が，照明均一性評価用にどのような条件で撮影しようとしているか**を，コード・設定ファイルから抽出してまとめたものである．[SPEC_03 TIAS 白板撮影プロトコル](../04_SPEC/SPEC_03_TIAS白板撮影プロトコル.md) の要件を満たせるかを **SmTIAS-Evaluation 側に確認してもらう**ことを目的とする．

> **読む人へ**: 本書は撮影アプリ（TIASshot）の現状実装から起こした事実ベースの記述である．`※` 印・「要確認」は未確定事項である．SPEC_03 との対照表（[§4](#4-spec_03-基準値との対照-comparison-with-spec_03)）と確認したいこと（[§5](#5-確認したいこと-open-questions-for-smtias)）を中心に見てほしい．SmTIAS-Evaluation からの回答は [§7](#7-smtias-evaluation-からの回答-answers-from-smtias-evaluation) にある．

## 1. 前提: 校正なしの撮影 (Premise: Capture Without Calibration)

通常の TIASshot（舌診用途）は「チャート検出 → ホワイトバランス自動調整 → TCC 色補正 → sRGB 画像出力」という色合わせの校正フローを行う．しかし**照明均一性の評価では色を合わせること自体が目的でない**ため，白板撮影では以下を **行わない**．

- ホワイトバランスの自動調整（目標輝度へのチャンネルゲイン自動チューニング）を行わない．
- TCC 色補正（チャートからの 17 次元色変換）を行わない．つまり `sRGB` 変換画像は生成しない．

→ 取得するのは **カメラ素の RGB 画像のみ**．ホワイトバランスのチャンネルゲインは設定ファイル/デバイス状態の**固定値**のまま（フレーム間・セッション間で自動調整しない）．

> **実装メモ**: 現状の TIASshot は校正完了後でないと撮影できないため，照明均一性評価用には**校正を前提としない撮影パスを別途設ける**（DEBUG 機能として追加予定）．本書はその撮影が用いる設定をまとめたものである．

## 2. カメラ構成と出力形式 (Cameras & Output Format)

- TIASshot は 2 系統のカメラに対応し，**Lucam（Lumenera）を優先し，無ければ ImagingSource** にフォールバックする．
- 撮影出力は **いずれも RGB24（8-bit/ch，デモザイク済みのカラー画像）**．RAW（Bayer/DNG）ではない．

| カメラ | 機種 | 解像度（撮影） | 出力 |
| --- | --- | --- | --- |
| Lucam | Lumenera Lw110 | 1280 × 1024 | RGB24 8-bit |
| ImagingSource | DFK 33UX178 | 3072 × 2048（ROI 切出あり） | RGB24 8-bit |
| ImagingSource | DFK 23UX249 | 1920 × 1200（ROI 切出あり） | RGB24 8-bit |

※ ImagingSource は撮影後に ROI（`config.xml` 指定）で切り出す．DFK33UX178: X0/Y330/W1840/H2440，DFK23UX249: X0/Y180/W1136/H1528．

## 3. カメラ別 撮影条件 (Per-Camera Capture Settings)

### 3.1 Lucam (Lumenera Lw110)

設定元: `TIASshot/Cameras/Lucam.cs`（初期化）＋ `config.xml`．

| 項目 | 値 | 備考 |
| --- | --- | --- |
| 出力形式 | RGB24 8-bit | センサ取得 PF_8 → `LucamConvertFrameToRgb24` でデモザイク |
| 露出時間 | 60 ms（手動固定） | `config.xml` `Lucam/Exposure`．自動露出は使わない |
| アナログゲイン | 1.5（固定） | `Lucam/Gain` |
| ホワイトバランス | チャンネルゲイン B 2.62 / G 1.72 / R 1.70（**固定**） | `Lucam/GainB,GainG,GainR`．校正なしのため自動調整しない |
| シャッター | グローバルシャッター | `GlobalShutter` |
| デモザイク | HIGH_QUALITY | `LucamDemosaicMethod.HIGH_QUALITY` |
| 色補正行列 (CCM) | **LED（適用）** ⚠ | `LucamCorrectionMatrix.LED`．SDK 内蔵の光源別 3×3 色補正（チャンネル混合）．白板モードでは **NONE 推奨**（[§5](#5-確認したいこと-open-questions-for-smtias)） |
| ノイズ低減 / エッジ強調 / トーンカーブ | アプリ側で適用なし | `LucamConversion` 構造体にこれらの項目はない |
| ハードウェアトリガ | OFF | |
| シェーディング補正 (LSC) | **適用なし** ⚠ | アプリ側でビネット補正をしていない．シェーディングマップも保存していない |

### 3.2 ImagingSource DFK 33UX178

設定元: `TIASshot/DFK33UX178.xml`（デバイス状態）．接続時にこのファイルを読み込む．

| 項目 | 値 | 備考 |
| --- | --- | --- |
| 出力形式 | RGB24 8-bit（3072×2048） | |
| 露出 | 手動，0.016667 s（≈1/60 s） | ※ ただし自動フラグが二重に存在し一方が `1`．手動/自動の確定は**要確認** |
| ゲイン | 1.0，Auto=OFF | |
| ホワイトバランス | Auto=OFF，手動 G 64 / B 134 / R 79（**固定**） | 校正なしのため自動調整しない |
| ガンマ | 1.0（線形） | トーンカーブなし |
| トーンマッピング | OFF | |
| ノイズ低減 (Denoise) | 0（OFF） | |
| シャープネス | 0（OFF） | |
| 色補正行列 (Color Matrix) | **OFF** | カメラ内 CCM 無効．Lucam と異なり色補正行列は掛からない |
| ハイライト低減 | OFF | |
| 明るさ (Brightness) | 240 | ※ 黒レベル/オフセット相当か**要確認**（DFK23 とは値が大きく異なる） |
| シェーディング補正 (LSC) | 設定項目に現れず・**適用なし** ⚠ | |

### 3.3 ImagingSource DFK 23UX249

設定元: `TIASshot/DFK23UX249.xml`（デバイス状態）．

| 項目 | 値 | 備考 |
| --- | --- | --- |
| 出力形式 | RGB24 8-bit（1920×1200） | |
| 露出 | 手動，0.016667 s（≈1/60 s） | ※ DFK33 と同じく自動フラグの二重存在．**要確認** |
| ゲイン | 0.0，Auto=OFF | ※ DFK33（1.0）と数値が異なる．スケール/意味は**要確認** |
| ホワイトバランス | Auto=OFF，手動 G 64 / B 140 / R 100（**固定**） | |
| ガンマ | 100（= 1.0，線形）※スケール表記が DFK33 と異なるだけで線形 | |
| トーンマッピング | OFF（Enable=0） | |
| ノイズ低減 (Denoise) | 0（OFF） | |
| シャープネス | 0（OFF） | |
| 色強調 (Color Enhancement) | **ON** ⚠ | DFK33（Color Matrix OFF）と異なり，色強調が有効．機種間で色処理が不一致 |
| ハイライト低減 | OFF | |
| 明るさ (Brightness) | 50 | ※ DFK33（240）と大きく異なる．**要確認** |
| 彩度 (Saturation) | 64 | DFK33 は 100．※色処理の差 |
| シェーディング補正 (LSC) | 設定項目に現れず・**適用なし** ⚠ | |

## 4. SPEC_03 基準値との対照 (Comparison with SPEC_03)

SPEC_03「揃える基準値（SmTIAS 定量撮影モード）」と TIASshot の現状を対照する．○=合致，△=条件付き/要確認，✗=相違．

| SPEC_03 項目 | SmTIAS 基準 | Lucam | DFK33UX178 | DFK23UX249 |
| --- | --- | --- | --- | --- |
| 出力形式 | RAW 10-bit linear | ✗ RGB24 8-bit | ✗ RGB24 8-bit | ✗ RGB24 8-bit |
| 自動露出 AE | OFF 固定 | ○ 固定 60ms | △ 手動だが要確認 | △ 手動だが要確認 |
| ゲイン/ISO | 固定 | ○ 1.5 固定 | ○ 1.0 固定 | ○ 0.0 固定 |
| ホワイトバランス | OFF・gain identity | △ 固定（非 identity） | △ 固定（非 identity） | △ 固定（非 identity） |
| オートフォーカス AF | OFF | △ 要確認 | △ 要確認 | △ 要確認 |
| ノイズ低減 NR | OFF | ○ なし | ○ OFF | ○ OFF |
| エッジ強調 | OFF | ○ なし | ○ Sharpness 0 | ○ Sharpness 0 |
| トーンカーブ | 線形 | ○ なし（≈線形） | ○ γ1.0・ToneMap OFF | ○ γ1.0・ToneMap OFF |
| 色補正/色処理 | identity | ✗ **LED CCM 適用** | ○ Color Matrix OFF | ✗ **Color Enhancement ON** |
| シェーディング補正 LSC | **適用してビネット除去** | ✗ **未除去・マップなし** | ✗ **未除去** | ✗ **未除去** |
| 黒レベルロック | true | △ 要確認 | △ Brightness 240 要確認 | △ Brightness 50 要確認 |

## 5. 確認したいこと (Open Questions for SmTIAS)

SmTIAS-Evaluation 側に判断・助言をいただきたい点．

1. **8-bit RGB（RAW でない）の許容性**: TIAS のカメラは RGB24 8-bit 出力で，RAW 10-bit linear は現状取得していない．量子化・ビット深度が均一性指標（CoV・最大/最小比等）に与える影響は許容範囲か．許容できない場合，Lucam は生 Bayer を取得できる余地がある（要追加実装）．
2. **デモザイクの許容性**: いずれも HIGH_QUALITY 等でデモザイク済み．空間補間が高周波の均一性に与える影響は許容か．
3. **ホワイトバランス（固定・非 identity）**: 校正を行わないためチャンネルゲインは固定だが [1,1,1] ではない．SPEC_03 §「なぜ条件を揃えるのか」の「**全画素に等しく作用する一様線形ゲインは相対ばらつき指標に不変**」の理解で，固定 WB のまま評価して問題ないか（＝均一性評価に影響しない，で合っているか）．
4. **色処理の機種差**: Lucam は LED CCM 適用，DFK23UX249 は Color Enhancement ON，DFK33UX178 は色処理 OFF と，**3 系統で色処理が不一致**．白板モードでは可能な限り無効化（Lucam: CCM=NONE，DFK23: Color Enhancement OFF）すべきか．均一性（輝度）評価なら影響は小さいと見ているが，方針を確認したい．
5. **シェーディング補正 / ビネット（最大の論点）**: TIAS 側はカメラ・SDK ともビネット補正手段を現状もっておらず，シェーディングマップも保存していない．更新後の SPEC_03 は「ビネットは必ず除去」を要求している．対応方針として，(a) 在カメラ補正が使えないか，(b) 使えない場合，評価側でフラットフィールド補正できるよう**均一面の参照画像を別途撮影する**運用で良いか，等を相談したい．
6. **露出の自動/手動の確定**: ImagingSource のデバイス状態で露出の自動フラグが二重に存在する．実機で手動固定になっているかを確認のうえ追記する．
7. **黒レベル / Brightness の扱い**: DFK33=240，DFK23=50 と機種間で差が大きい．黒レベル/オフセットとしての意味と，評価への影響を確認したい．
8. **飽和回避の担保**: 白板最明部がレンジの 7〜9 割・飽和ゼロになるよう露出を決めるが，8-bit でこれをどう検証・記録すればよいか（ヒストグラム確認の手段）．
9. **出力形式・メタデータ**: 現状の保存は `Shot{NO}.png`（RGB24）．SmTIAS の `*.meta.json` 相当として，どの撮影条件（露出・ゲイン・WB・機種・外乱光有無等）を併記すべきか．

## 6. 現状の出力・保存 (Current Output & Storage)

- **保存先**: `config.xml` の `File/SaveFolder`（既定 `C:\TIAS_Data`）配下に `日付\時刻-名称\` を自動生成．
- **画像**: 通常は `Shot{NO}.png`（RGB24）＋ `sRGB{CN}_{NO}.jpg`（TCC 変換後）を保存するが，**白板モードでは sRGB は生成せず RGB のみ**とする想定．
- **撮影情報**: `Info.csv` に撮影日時・撮影枚数等を記録（現状は舌診用の項目）．白板モードでは SPEC_03 §データ管理・命名に合わせて項目・命名を調整する余地がある．

## 7. SmTIAS-Evaluation からの回答 (Answers from SmTIAS-Evaluation)

[§5](#5-確認したいこと-open-questions-for-smtias) の各問への回答．結論として **致命的な対応が必要なのは Q5（ビネット）と Q7（黒レベル）の 2 点**，残りは「概ね許容（条件付き）」である．本回答に基づき SPEC_03 を更新済み（[SPEC_03 TIAS 実機カメラ仕様と差分の扱い](../04_SPEC/SPEC_03_TIAS白板撮影プロトコル.md#tias-実機カメラ仕様と差分の扱い-tias-cameras--handling-gaps)）．

### Q1. 8-bit RGB（非 RAW）の許容性 → ○ 許容（条件付き）

- 許容してよい．量子化ノイズの CoV への寄与は，白板平均が 8-bit レンジの中〜上（mean 150〜200）にあれば σ_quant/μ ≈ 0.3 LSB / 150 ≈ **0.002 程度**で，SmTIAS の CoV 0.04〜0.07 に対し無視できる．
- 条件: 撮影パスが**真に線形**（γ=1.0・トーンマップ OFF，確認済）であること．8-bit の真のリスクはビット深度でなく隠れた非線形なので，リニアリティだけ実機で担保してほしい．
- 8-bit ではノイズに弱い画素単位の最大/最小比より，**CoV・中心周辺勾配・動径 min/max（輪帯平均でロバスト）を主指標**とする運用を推奨．生 Bayer の追加実装は不要．

### Q2. デモザイクの許容性 → ○ 許容

- 白板の照明ムラは低空間周波数であり，デモザイク補間アーティファクト（エッジ・高周波で発生）はほぼ無関係．HIGH_QUALITY で問題なし．

### Q3. 固定・非 identity の WB → ○ そのまま評価可（理解は概ね正しい）

- 固定 WB のまま評価してよい．ただし正確な根拠は「一様ゲインだから」ではなく，**「全チャンネルが同一の空間パターン L(x,y) を持つ限り，固定の線形結合（WB でも CCM でも）は空間パターンをスカラ倍に保つので CoV など相対指標は不変」**だから．
- 唯一の注意: 色ビネット等で照明色が空間的に変わるとチャンネルごとに空間パターンが異なり，WB の重み付けで合成 CoV がわずかに動く（Lucam の B=2.62 のように WB ゲインが大きいと色ビネットが増幅されうる）．
- ロバストチェックとして，輝度合成に加え **緑チャンネル単体でも均一性を算出**することを推奨（単一チャンネルは一様ゲインに完全不変で，WB/CCM のチャンネル混合を回避できる．G は輝度寄与 0.72 で代表性も高い）．

### Q4. 色処理の機種差 → 可能な限り OFF を推奨

- **Color Enhancement（DFK23）は非線形（彩度強調）の可能性が高く害**．必ず OFF に．
- **CCM（Lucam）は固定線形なので輝度均一性への一次影響は小さい**が，①クリップ（負/255 超）による非線形化，②機種間不一致が残る．**NONE 推奨**（両方を解消し 3 系統が揃う）．

### Q5. ★ シェーディング / ビネット（最大の論点）→ フラットフィールド補正で対応（ただし独立光源で）

- 測定モデル: 画像 I = 照明 L × レンズビネット V ×（白板で一様な反射率）．欲しいのは L，邪魔は V．
- **落とし穴**: 提案 (b) を「**TIAS 自身の光で均一面を別撮りして割る**」と解釈すると **L と V を分離できない**（参照画像も `L×V` のため，割っても反射率比 ≒1 になるだけ）．
- **正しいフラットフィールド**: V を特性化するには **TIAS 照明とは独立な既知の一様光源**（均一 LED パネル/ライトボックス/別の積分球出力等）で画面全面を撮影し，正規化して V(x,y) を得て白板画像を除算する．まず SDK/カメラベンダ（Lumenera / The Imaging Source）のレンズシェーディングデータが使えないかも確認を．
- どうしても V を特性化できない場合は，結果を**「照明×レンズの系全体の均一性」と明記**し，レンズ補正済みの SmTIAS とは**直接比較不可（TIAS 照明均一性の下限値）**として留保する．
- 特に重要な理由: **TIAS は積分球で照明が本来きわめて均一なはず**．だとすると未補正画像のムラは**ほぼレンズビネットを測っているだけ**になりうる．SmTIAS 実測でも未補正は CoV 約 2 倍・勾配約 4 倍に膨張（[TEST_03](../06_TEST/TEST_03_外乱光影響評価報告書.md)）．レンズ補正済み SmTIAS と未補正 TIAS を比べると TIAS が不当に悪く見えるため，フェアな比較には V 除去が必須．

### Q6. 露出の自動/手動 → 手動固定を確定・検証

- 手動固定が必須．実機で有効露出がフレーム間一定か（SDK 読み戻し or 連続フレームの平均輝度が一定か）で検証し，二重フラグのどちらが効いているかを確定して追記してほしい．

### Q7. ★ 黒レベル / Brightness → ダークフレーム減算（要注意）

- Brightness が**加算オフセット（ペデスタル）**なら，均一性指標を**良い方に偏らせる**（加算 c に対し CoV = σ/(μ+c)，max/min = (max+c)/(min+c) がともに縮む）．DFK33=240 と DFK23=50 の差が**そのまま指標差として混入**し，機種間比較が無効になる．
- 対策: **機種ごとにダークフレーム（遮光/無照明）を撮影して真の黒レベルを実測し，指標算出前に減算する**（SmTIAS は黒レベル 64 を減算）．Brightness が加算か乗算かを SDK で確認し，加算なら減算，乗算なら一様係数で不変扱い．
- ただし要確認: 8-bit で Brightness=240 が純加算ペデスタルなら白板は即 255 飽和でレンジがほぼ無くなる → **240 は別スケールの制御の可能性が高い**．意味（加算/ゲイン/別単位）の確定を依頼したい．

### Q8. 飽和回避（8-bit）→ ヒストグラムで検証・記録

- ROI 内で値 255（念のため ≥254）の画素数 = 0 を確認．目安は最明部 180〜230（レンジの 70〜90%）．**飽和画素率・p99・チャンネル別 max をショットごとに記録**（SmTIAS の `image_statistics` 相当）．評価側パイプラインに簡易ヒストグラムチェックを追加可能．

### Q9. 出力形式・メタデータ → JSON サイドカーを推奨

- SmTIAS の `*.meta.json` に倣い，**ショットごとに JSON サイドカー**で以下を記録: 機種・解像度/ROI 切出，露出時間，ゲイン，WB チャンネルゲイン，CCM/Color Enhancement の状態，γ/トーンマップ状態，Denoise/Sharpness，Brightness（黒レベル），シェーディング補正状態＋使用フラットフィールド/ダークフレームのファイル名，外乱光条件，飽和・低露出画素率，チャンネル別 mean/max，撮影日時．

### 依頼事項まとめ (Action Items for TIAS Side)

- [ ] **独立な一様光源**でフラットフィールド（レンズビネット V）を取得する手段の確保（Q5）．不可なら系全体評価＋留保で運用．
- [ ] 機種ごとの**ダークフレーム取得**と Brightness の意味（加算/乗算）の確定（Q7）．
- [ ] **色処理 OFF**（Lucam CCM=NONE，DFK23 Color Enhancement OFF）（Q4）．
- [ ] 露出の手動固定の実機確定（Q6）．
- [ ] **JSON サイドカー**メタデータの実装（Q9）と飽和チェックの記録（Q8）．

## 関連ドキュメント (Related Documents)

- [SPEC_03 TIAS 白板撮影プロトコル](../04_SPEC/SPEC_03_TIAS白板撮影プロトコル.md) — 本書が満たそうとする撮影プロトコル
- [TEST_03 外乱光影響評価報告書](../06_TEST/TEST_03_外乱光影響評価報告書.md) — 未補正（LSC なし）で指標が悪化する実測例
- `TIASshot/Cameras/Lucam.cs`，`TIASshot/DFK33UX178.xml`，`TIASshot/DFK23UX249.xml`，`TIASshot/config.xml` — 本書の設定の出典
