fullseye

Fullseye op カタログ画像・専用記事 仕様書(第 2 陣企画書)

作成: 2026-08-23(Qiita 大記事 付録 F 増強タスクの第 1 陣納品時に、全指示を恒久仕様として整理) 第 1 陣成果: <ローカルの作業パス>\dev\projects\onocollo-complete\docs\qiita\20260822_g1_evis\ops\(25 図+INSERT_MANIFEST.md) 生成スクリプト一式: セッション scratchpad の fops_lib.py / fops_batch1..4.py / fops_eval1.py / gen_ai_inputs.py (必要なら imgevolve リポジトリの tools/ へ移設して恒久化すること)


1. 品質規律(全デモ共通・必須)

  1. 実処理のみ: 描いた想像図は禁止。すべて Fullseye(imgevolve)の op / モジュール関数の実行出力。使った op 名とパラメータを必ず記録。
  2. 核心主張の実証: 各 op のデモは「この入力ではこの op でないと駄目」が見える入力で組む。可能なら素朴な手法の失敗列(baseline)を並べて対比する。
    • 例: watershed=接触物体(単純ラベリングは融合)/ canny=ノイズ下(sobel+閾値は破綻)/ 色抽出=等輝度(輝度では原理的に不可能)/ FFT ノッチ=周期縞(空間平滑化では消えない)。
  3. 複数入力検証(最低 3 種): 被写体・照明・ノイズ・密度などの条件を変えた 3 入力以上に同一処理を適用。
    • パラメータは固定(全入力共通)。入力ごとに調整が必要だった場合はそれ自体を manifest に正直に記録(貴重な情報)。
  4. 評価必須: 画像を作って終わりにしない。op × 入力の評価表を付ける。
    • 真値あり(合成/生成で GT 既知): 計測値 vs 真値と誤差(計数 N/N、MAE、px 誤差、g 推定誤差 % 等)。
    • 真値なし(実写/定番): 検証可能な代替基準を定義(著者目視計数、局所コントラスト指標、ランダム点対照など)。
    • 判定列: 成功 / 部分成功 / 失敗。失敗も削除せず教訓として掲載(赤緑インジケータ禁止 — ✓/✗ や枠線で)。
    • 評価つきで少なく > 未評価で多く
  5. 図の様式: 行=入力バリエーション(2〜4 行)× 列=入力/(baseline)/出力 のグリッド。各パネル上部に小ラベル(op 名は英語、説明は日本語)。幅 ~900px、PNG、1 枚 400KB 以下(パレット減色・縮小可)。
  6. honest 表記: キャプションに入力の出所を必ず明記 — 「AI 生成画像(Gemini)」「自前合成(真値つき)」「scikit-image 同梱」「NASA(PD)」「EHT Collaboration(CC BY 4.0)」。医療風画像には「診断用途ではない」を添える。実装の限界も書く(例: 本レジストリの edges_sub_pix は勾配帯を法線方向に放物線当てはめで精密化したサブピクセル実装 —— 平均絶対誤差 0.0228 px 実測、ただし非極大抑制は無いので帯の全画素が稜線に寄る。lines_gauss は Frangi 稜線領域)。
  7. 家訓: 赤緑インジケータ禁止 / ALL_CAPS 禁止 / 公開物にローカルパス禁止 / 文字入り画像の生成は避け PIL で入れる。

2. 入力素材の方針

3. 第 1 陣で完成した 25 図(再掲・カテゴリ見出し一致)

差し替え 5: segmentation(watershed 接触分離)/ edges(canny vs sobel)/ Filters(gauss+ノイズ)/ frequency(FFT ノッチ縞除去)/ texture(Laws 等輝度分離) 新規 20: Tools / Transformations / Image / smoothing / gray / XLD / geometry / Regions / contour(稜線 4 実例)/ Segmentation(琥珀)/ restoration / arithmetic / augmentation / 2D Metrology / Inspection(錠剤)/ color / measure(BGA)/ 1D Measuring(年輪・耳石)/ flow(弾道 g 推定)/ detect 既存合格 6: rank(留保)/ region / morphology / Calibration / features / 3D Reconstruction

4. 見送り一覧(第 2 陣候補・ユーザー依頼順)

各項は上記規律(3 種入力・固定パラメータ・評価必須・honest 出所)適用。

  1. バーコード読み取り(産業カルテット残り): EAN-13 自前生成(真値既知)→ 傾き/ノイズ/照明ムラ劣化 → 領域検出→傾き補正→二値化→バー幅解析で 13 桁デコード→全桁一致まで見せる。レジストリの decode_barcode は中央走査線のバー計数のみ(実測)なので、デコード表はデモ実装と正直に区分。QR は位置検出+射影補正まで Fullseye、デコードは外部ライブラリ利用を明記。
  2. 半導体ウェハ(産業カルテット残り): ダイ格子+欠陥注入合成 → FFT 周期パターン異常検出 / ダイ格子検出 / 欠陥 blob 分類。真値つきで検出率まで。
  3. ナンバープレート(プライバシー厳守): 架空地名・番号の合成プレートのみ。矩形検出→射影補正→二値化→文字切り出し(+テンプレ照合)。「フル OCR ではない」と主張範囲を明示。
  4. 位置決め(マシンビジョンの本丸・丁寧に): ①フィデューシャルのサブピクセル精度(0.25px 刻みシフト系列で平均誤差・3σ)②(x,y,θ) アライメント誤差 ③回転・スケール・遮蔽 30% 下のテンプレートマッチ成功率表。キャプション軸「位置決め 0.1px がロボットの掴み損ない数 mm に化ける」(Panda 把持=センサスイートと接続)。
  5. 光弾性(応力の色縞): Fullseye センサスイートの偏光シミュレーションを先に探す(memory: 偏光あり)。無ければ円孔平板の Kirsch 解析解から縞合成 → 縞次数抽出 → 応力集中係数 K を理論値 3.0 と照合。実光弾性には材料定数較正が要る旨を明記。
  6. サーモグラフィ風: 基板レイアウト+熱源の温度場合成 → 疑似カラー/等温線/ホットスポット blob/温度プロファイル。「実測サーモではない」明記。
  7. 鉱物薄片の粒クラス分け: watershed 粒界分離(接触分離の第 3 実例)→ 粒特徴量 → 教師なしクラスタ色分け。thin_section.png 生成済み(sample_sources_ai)。「鉱物学的同定ではない」必須。
  8. 魚・植物の残り: 病斑率 %、養殖体長計測、魚群計数、種子粒径分布。年輪・耳石カウントは第 1 陣で完成済み(fops_measuring1d)。
  9. 3DGS パネル(自前実装の展示): リポジトリ既存の 3DGS 出力(純 torch ~26dB、SuGaR 法線、tiled 263×)を 1 枚に構成。入力実写 → 新規視点 → 法線/メッシュ。再学習不要、出所シーンを明記。
  10. TRIZ 感動枠 9 件(ユーザー全採用済み・仕様は以下):
    • 創造の柱 1995 vs 2022(Hubble/JWST、レジストレーション残差 px 評価)
    • 氷河後退(Landsat PD、氷面積変化 %)
    • 雪の結晶×渦巻銀河(六方対称スコア/対数螺旋フィット残差、「6mm と 10 万光年を同じ道具箱で」)
    • ニューロン×宇宙大規模構造(稜線第 5 実例、ネットワーク統計)
    • InSAR 地震縞(Sentinel-1 or 変位場からの縞合成=真値つき、光弾性と同じ数学の横串)
    • 古写真修復(AI 生成のみ・実在人物不可、注入劣化→PSNR/SSIM)
    • 失われた文字(合成古文書、IR チャネル仕込み→判読可能文字率)
    • スタートレイル(恒星場回転合成→比較明合成、天の極推定 vs 真値)
    • アポロ着陸痕(LRO 実画像 PD、既知設置物位置との照合)
    • 感動枠は絵の品質(構図・解像感)にも配慮。クレジット必須(NASA/ESA/CSA、EHT 等)。
  11. rank の対比強化(留保解消): salt&pepper で gauss(にじむ)vs median(消える)の対比列を追加。
  12. ハイスピード追跡の実シミュレーション版: 第 1 陣は簡易弾道積分で g 0.1〜0.6% 誤差を達成。第 2 陣では onocollo-complete の既存 qpos 資産(PK ボール 8.85m/s、箸の豆射出 2m/s)から連番を切り出し、接触瞬間の速度ジャンプまで見せる。

5. 実装の要点(第 1 陣で得た知見)

6. 記事化の方針(Fullseye/Studio 専用記事)