diff --git a/CLAUDE.md b/CLAUDE.md index 1cdfa71..f1d0a79 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ ## 開発進捗 -最新: 実機テストにチャートが必要な検査(校正・撮影・保存中/校正中に閉じる)を追加し ImagingSource で合格.17 次元の変換のノイズ(白色票の点状のノイズ・白飛び)は上流 v1.6 から同じと確認(対策は要判断) +最新: 実機テストで置き換えた分だけ手動テスト(TEST_01)を縮めた(PLAN_06 フェーズ 3.残りは見た目・マウス操作・通常起動の機種選択・撮影の途中で閉じる・Lumenera) ※ 本欄は**最新ステップ 1 行のみ上書き更新**.詳細な進捗履歴(動機・設計判断・失敗パターン)は [docs/PROGRESS.md](docs/PROGRESS.md) に追記する.運用ルールは `.claude/rules/progress-log.md` を参照(該当ファイル編集時に自動ロードされる). ## 必須ルール(コード実装時) diff --git "a/docs/03_PLAN/PLAN_05_\343\203\206\343\202\271\343\203\210\347\266\262\347\276\205\346\200\247\345\220\221\344\270\212\350\250\210\347\224\273.md" "b/docs/03_PLAN/PLAN_05_\343\203\206\343\202\271\343\203\210\347\266\262\347\276\205\346\200\247\345\220\221\344\270\212\350\250\210\347\224\273.md" index 7f14c81..8fe5da1 100644 --- "a/docs/03_PLAN/PLAN_05_\343\203\206\343\202\271\343\203\210\347\266\262\347\276\205\346\200\247\345\220\221\344\270\212\350\250\210\347\224\273.md" +++ "b/docs/03_PLAN/PLAN_05_\343\203\206\343\202\271\343\203\210\347\266\262\347\276\205\346\200\247\345\220\221\344\270\212\350\250\210\347\224\273.md" @@ -137,16 +137,17 @@ ## 手動確認の目標形 (Target Manual Checklist) -フェーズ 5 完了後に TEST_01 に残す項目の想定. +当初はフェーズ 5 完了後に残す項目を想定していたが,実機を Claude が操作して確かめる実機テスト([PLAN_06](PLAN_06_実機自動テスト計画.md))ができたため,2026-10-09 に PLAN_06 フェーズ 3 で TEST_01 の手動テストを先に縮めた.現在 TEST_01 に残している項目は次のとおり(詳細は TEST_01「手動テスト」). -- 両機種(ImagingSource・Lumenera)でカメラが自動接続され,プレビューが出る -- 露光・ゲインの設定がプレビューに反映されている(目視) -- 実物の舌診チャートで自動校正が完了する -- 撮影した画像の色が目視で妥当である -- 光源が ON/OFF する -- 撮影中・保存中にアプリを閉じても固まらない(SDK の停止が絡むため最終確認として残す) +- 通常起動でカメラが自動で選ばれて接続され,プレビューが表示される(実機テストは機種を指定して接続するため) +- プレビューの映り方が自然である(目視) +- ボタンをマウスで押して操作でき,表示が自然に変わる(実機テストはボタンの処理を直接呼ぶため) +- 撮影した sRGB 変換画像の色が目視で妥当である(17 次元の変換のノイズの出方も見る) +- 撮影の途中で閉じても固まらない(未自動化) +- 閉じた後も光源が点いたまま残る +- Lumenera を使う場合のみ: Lumenera で起動・校正・撮影ができる(実機テストの対象外) -※ 保存ファイルの有無・内容,失敗時の通知,撮影ボタンの有効/無効といった項目は層②とセルフテストに移し,手動では確認しない. +※ 接続・プレビューのフレーム・露光/ゲイン・光源・校正・撮影と保存・プレビュー中/保存中/校正中に閉じる,は実機テストで,保存ファイルの有無・内容・失敗時の通知・撮影ボタンの有効/無効は層②とセルフテストで確かめ,手動では確認しない. ## リスクと対策 (Risks) diff --git "a/docs/03_PLAN/PLAN_06_\345\256\237\346\251\237\350\207\252\345\213\225\343\203\206\343\202\271\343\203\210\350\250\210\347\224\273.md" "b/docs/03_PLAN/PLAN_06_\345\256\237\346\251\237\350\207\252\345\213\225\343\203\206\343\202\271\343\203\210\350\250\210\347\224\273.md" index 37209ae..f5cb184 100644 --- "a/docs/03_PLAN/PLAN_06_\345\256\237\346\251\237\350\207\252\345\213\225\343\203\206\343\202\271\343\203\210\350\250\210\347\224\273.md" +++ "b/docs/03_PLAN/PLAN_06_\345\256\237\346\251\237\350\207\252\345\213\225\343\203\206\343\202\271\343\203\210\350\250\210\347\224\273.md" @@ -142,6 +142,8 @@ ### フェーズ 3: 手動テストの縮小 - TEST_01 の手動テストと PLAN_05 の「手動確認の目標形」を,実機テストで置き換えた分だけ縮める +- **状態: 完了(2026-10-09)**.手動テストに残したのは,実機テストで確かめられない項目だけ: 通常起動で機種を自動で選ぶ流れ,プレビューの見た目,マウスでのボタン操作,撮影した画像の色の目視,撮影の途中で閉じる場合(未自動化),閉じた後も光源が点いたまま残ること,Lumenera を使う場合の確認 +- 後段の候補: 撮影の途中で閉じる場合の検査を実機テストに追加すれば,手動テストからさらに外せる ## PLAN_05 との関係 (Relation to PLAN_05) diff --git "a/docs/06_TEST/TEST_01_\343\203\206\343\202\271\343\203\210\344\273\225\346\247\230.md" "b/docs/06_TEST/TEST_01_\343\203\206\343\202\271\343\203\210\344\273\225\346\247\230.md" index fca7357..eb7f0e4 100644 --- "a/docs/06_TEST/TEST_01_\343\203\206\343\202\271\343\203\210\344\273\225\346\247\230.md" +++ "b/docs/06_TEST/TEST_01_\343\203\206\343\202\271\343\203\210\344\273\225\346\247\230.md" @@ -140,24 +140,22 @@ 実機を使った動作確認.フェーズごとに実施する. +接続・プレビュー・露光/ゲイン・光源・校正・撮影と保存・プレビュー中/保存中/校正中に閉じる,は実機テスト(上記「実機テスト」.ImagingSource の `--camera iscam` と `--camera iscam --with-chart`)で自動確認する(2026-10-09 に縮小.PLAN_06 フェーズ 3).手動テストでは,**実機テストで確かめられない次の項目だけ**を確認する.実機テストを先に回して合格していることが前提. + **確認項目** -- アプリが正常に起動する -- カメラが自動で接続される(Lucam または ImagingSource) - - ※ 指定した機種への接続そのものは実機テスト(`connect`)でも確認できる.自動で機種を選んで接続する流れは手動で確認する -- プレビューが表示される - - ※ フレームが流れることは実機テスト(`preview`)でも確認できる.見た目は手動で確認する -- 舌診チャートを映すとキャリブレーションが自動開始される -- キャリブレーション完了後に撮影ボタンが有効になる - - ※ 校正の完了と撮影ボタンの有効化は実機テスト(`calibrate`)でも確認できる -- 1枚撮影が正常に完了し,ファイルが保存される -- 連続撮影が正常に完了し,ファイルが保存される - - ※ 保存されるファイルと撮影間隔は実機テスト(`shot`)でも確認できる.変換画像の見た目は手動で確認する -- 光源の ON/OFF が切り替わる - - ※ 実機テスト(`light`)でも確認できる -- アプリを閉じてもエラーが出ない(閉じた後も光源は点いたまま残るのが仕様) - - ※ プレビュー中・保存中・校正中に閉じる場合は実機テスト(`close-preview`・`close-saving`・`close-calibrating`)でも確認できる +- 通常起動(エクスプローラーから `TIASshot.exe` をダブルクリック)で,カメラが自動で選ばれて接続され,プレビューが表示される + - ※ 実機テストは `--camera` で機種を指定して接続するため,通常起動で機種を自動で選ぶ流れ(Lumenera を優先して探す)は確かめていない +- プレビューの映り方が自然である(本モニタ・副ディスプレイのプレビューモニタとも.目視) + - ※ 実機テストが確かめるのは,フレームが届くことと表示用の画像があることまで +- 撮影ボタン・連続撮影ボタン・光源ボタン・データフォルダを開くボタンを**マウスで押して**操作でき,表示(メッセージ・ボタンの有効/無効)が自然に変わる + - ※ 実機テストはボタンの処理を直接呼ぶため,実際のクリックの操作感は確かめていない +- 撮影した sRGB 変換画像の色が目視で妥当である(舌・明るい部分の見た目.17 次元の変換の点状のノイズの出方も見る.PLAN_06「17 次元の変換のノイズ」) +- **撮影中**(連続撮影の撮影の途中)にウィンドウを閉じても固まらず,保存中の場合は「保存中です.保存完了後に閉じてください」と表示される + - ※ 保存中・校正中・プレビュー中に閉じる場合は実機テストで確かめているが,撮影の途中で閉じる場合は未確認 +- 閉じた後も光源が点いたまま残る(仕様) +- Lumenera を使う場合のみ: Lumenera のカメラで起動・校正・撮影ができる(Lumenera は実機テストの対象外.PLAN_06「対象機種」) **合格条件** -- 上記の全項目でエラー・クラッシュが発生しない +- 上記の全項目でエラー・クラッシュ・固まりが発生しない diff --git a/docs/PROGRESS.md b/docs/PROGRESS.md index 2fdd014..2a78b56 100644 --- a/docs/PROGRESS.md +++ b/docs/PROGRESS.md @@ -205,3 +205,6 @@ - 発見: 17 次元(3 次)の変換が白色票の入力のばらつき(標準偏差 3〜5)を約 10 倍に増幅し(切り詰め前 -249〜621),8bit で点状のノイズ・白飛びになる.チャート外の白い台紙・枠でも出る.平均の色は合っている.回帰かを確かめるため,2026-10-09 に上流 v1.6 と現行で同じチャートを撮影し,それぞれの入力(TCC.png・撮影画像)を両方のコードに通して比べた.マスク・色票の値・変換行列・変換後の画像(PNG/JPEG)がビット単位で一致し,白色票の変換後の標準偏差も同程度(v1.6 51/39/23・現行 50/36/24)だったため,リファクタリングによる回帰ではなく上流からの性質と判断した.付随して,CSV に保存する変換行列(小数 7 桁)では 3 次の係数の有効数字が約 3 桁しかなく,CSV から画像を再現すると 8bit で最大 2〜4 ずれることを確かめた(報告台帳の「SaveMatToCsv の精度」の裏付け).同梱 `DFK33UX178.xml` は v1.6 版とホワイトバランス等の設定値・シリアル(v1.6: 27710698,現行: 41520093)が異なる. - 失敗パターン: ① v1.6 を別フォルダから起動すると,作業フォルダが exe の場所でないため `config.xml` を読めずに落ちた(報告台帳の「config.xml をカレントディレクトリ基準で読む」を実際に踏んだ).exe のフォルダで起動する.② v1.6 は同梱のデバイス状態ファイルのシリアルの個体を開こうとするため,手元の別個体には接続できなかった.比較用に接続処理だけを差し替えた(色変換のコードには手を入れていない). - 後段: 17 次元の変換のノイズの対策(使う次元を下げる・入力/出力に制限をかける等)は色の再現性に関わるため研究室・上流と相談して決める(それまで白色票のしきい値 40 は暫定.報告台帳に記録).PLAN_06 フェーズ 3(手動テストの縮小). + +- [x] **PLAN_06 フェーズ 3: 手動テストの縮小** (2026-10-09): 実機テスト(接続・プレビュー・露光/ゲイン・光源・校正・撮影と保存・プレビュー中/保存中/校正中に閉じる)で確かめられる項目を TEST_01 の手動テストから外した.残したのは,通常起動で機種を自動で選ぶ流れ,プレビューの見た目,マウスでのボタン操作,撮影した画像の色の目視,撮影の途中で閉じる場合,閉じた後も光源が点いたまま残ること,Lumenera を使う場合の確認. + - 後段: 撮影の途中で閉じる場合の検査を実機テストに足せば,手動テストからさらに外せる.