白箱検出の3段階進化
色ベース → 形状ベース → テンプレートマッチング + 自動学習
Stage 1 — 色ベース検出
HSV white mask → largest contour
結果: マット外の机の白い余白を検出
画面全体で最大の「白い領域」を探すため、マットの外の机(画像右端)にロックオン。白箱本体を見逃した。
Stage 2 — 形状ベース検出
mat ROI + 4-vertex + aspect ratio filter
結果: ロボット本体に反応
マットROI内に絞り、4頂点の矩形形状を要求。しかし白いロボット本体も正方形に近い矩形を持つため、そちらにロックオン。マット・ロボット・机・白箱が全部白い世界では、色と形だけでは足りない。
Stage 3 — テンプレートマッチング + 自動学習
cv2.matchTemplate + multi-scale + auto-learning loop
結果: 白箱のみを一意に識別
参照画像(白い縁+黒い内側)とのマッチングで、白箱の配色パターンだけが高スコアを出す。ロボット本体や机の余白には反応しない。さらに検出成功時に自動でテンプレートを追加学習する仕組みを組み込んだ。
06
手動配置のwhite_box.pngは永久保護
TAP THE STAGES ABOVE