Newer
Older
TIASshot / docs / 03_SPEC / SPEC_01_機能仕様.md

機能仕様 (Feature Specification)

1. 対応カメラ (Supported Cameras)

起動時に Lucam → ImagingSource の順で接続を試みる.

ImagingSource カメラ(新カメラ)

  • 対応機種: DFK33UX178,DFK23UX249
    • ※ README には DBK33UX178 と記載されていたが,ソースコード上は DFK33UX178 として扱われている.実機の型番は要確認.
  • SDK: IC Imaging Control (TIS.Imaging)
  • 設定ファイル: [デバイス名].xml(例: DFK33UX178.xml

Lumenera カメラ(旧カメラ)

  • 対応機種: Lw110
  • SDK: Lumenera SDK(lumenera.api.dll

2. プレビュー (Preview)

  • 起動後,接続したカメラのライブ映像をメインウィンドウに表示する.
  • サブモニタへのプレビュー表示にも対応する(PreviewMonitor).
  • ImagingSource カメラはプレビュー時に ROI クリップを適用する.

3. 自動キャリブレーション (Auto Calibration)

プレビュー中に舌診チャートを検出すると自動でキャリブレーションを開始する.

3-1. チャート検出

  • ArUco マーカー(ID 40, 41)を使用してチャートを自動検出する.
  • チャートが一定フレーム数静止したことを確認してからキャリブを開始する.

3-2. ホワイトバランス調整

  • チャートの白色票(24色票の13番)を基準にカメラのゲインを自動調整する.
  • 目標値は config.xmlCalib/Reference で指定する.

3-3. TCC(色変換行列)計算

  • 24パッチの平均 RGB 値を計測し,最小二乗法(SVD)で変換行列を算出する.
  • 変換次元数(多項式の次数)は Calib/ConversionChannels で指定する.
    • 4: 1次式(R,G,B,1)
    • 10: 2次式(+RG,RB,GB,R²,G²,B²)
    • 17: 3次式(+R²B,R²G,G²R,G²B,B²R,B²G,RGB)
  • 複数の次元数をカンマ区切りで同時に指定可能(例: 4,10,17).
  • 算出した変換行列は CSV ファイルに保存される.

4. 撮影 (Shooting)

キャリブレーション完了後に撮影ボタンが有効になる.

1枚撮影

  • 撮影した画像を1枚保存する.

連続撮影

  • 指定した枚数・間隔で連続撮影する.
  • 枚数・間隔は UI で変更可能(デフォルト値は config.xml で設定).

保存される画像

  • 元画像(RGB): Shot{NO}.png
  • sRGB 変換画像: sRGB{CN}_{NO}.jpg(指定した次元数ぶん生成される)

5. データ保存 (Data Saving)

撮影・キャリブレーション結果は保存フォルダ以下に日時フォルダで自動保存される.

保存先フォルダ構成

  • [SaveFolder]/[日付]/[時刻]-[データ名]/

キャリブレーション保存ファイル

  • TCC.png: キャリブ時の画像
  • TCC_ROIs.jpg: チャートの ROI 確認画像
  • TCC_RGB.csv: チャート24色票の RGB 値
  • TCC_sRGB{CN}.csv: チャート24色票の sRGB 変換値
  • Conv_RGB-sRGB{CN}.csv: RGB→sRGB 変換行列
  • Conv_RGB-XYZ{CN}.csv: RGB→XYZ 変換行列
  • Conv_sRGB-XYZ{CN}.csv: sRGB→XYZ 変換行列

撮影保存ファイル

  • Info.csv: 撮影情報(カメラ型番・SN,露光時間,ゲイン等)
  • Shot{NO}.png: 元画像(RGB)
  • sRGB{CN}_{NO}.jpg: sRGB 変換画像

6. 光源制御 (Light Source Control)

  • シリアル通信(USB-シリアル変換)で光源の ON/OFF を制御する.
  • 対応デバイス: Silicon Labs CP210x(config.xml で変更可能).
  • キャリブレーション中は光源の切り替えが無効になる.
  • 光源デバイスが見つからない場合,光源ボタンが無効化される.