問題: マルチカメラ追跡では、カメラAが人物の追跡を失ってもカメラBがまだその人物を見ている場合、素朴なアプローチではピクセル座標を直線的に外挿します。しかしこれは直ちに破綻します。なぜなら、カメラ同士の座標系が完全に異なるからです。カメラBのピクセル座標(400, 300)にいる人物が、相対位置や角度に応じて、カメラAでは(800, 500)にいる可能性があります。
アプローチ: 両カメラが同時に同じ人物を観測している場合(64次元のHSV外観記述子でマッチング、L2正規化、alpha=0.3でEMAスムージング)、足先(フットポイント)の対応関係ペアを記録します。各ビューでのバウンディングボックスの下端中央は、同一の物理的な地面平面上の点に投影されます。
このようなペアを4つ以上集めた後、cv2.findHomography() + RANSACにより、カメラBのピクセル空間からカメラAへ写像する3x3行列Hを求めます。システムは5つの新しいペアごとに自動で再学習し、再投影誤差を監視します。誤差が跳ねたら(カメラが動いたため)、Hをフラッシュします。
3つのフォールバック経路:
- 経路A(H-PROJ, green):有効なHを持つ任意のソースカメラからのホモグラフィ投影。最も正確。
- 経路B(EXTRAP, red):適応的な予算 min(250px, 80 + 40*t) に基づくピクセル外挿。最後の手段。
- 経路C(WORLD, orange):統合した3Dカルマン状態からのワールド座標ピンホール投影。常に利用可能。
コスト:
- ホモグラフィ再推定: < 0.1ms(新しいペアが5つ追加されるたびに呼び出し)
- 1予測あたりの投影: < 0.001ms
追跡: Hungarian割り当てで、0.6 * IoU + 0.4 * 外観コスト(cosine)を使用します。DeepSORT(MobileNet)を主要手法とし、そこから失敗した場合はHungarian(scipy)、次に重心(centroid)へフォールバックします。
センサ信頼度: 各カメラは整合性により信頼度[0.1, 1.0]を得ます。革新性(innovation)の高い計測は重みが下げられます。カルマンの計測ノイズRは、信頼度、バウンディングボックス面積、そして更新ごとの確信度に応じてスケールされます。
完全な実装: github.com/mandarwagh9/overwatch。カルマン、ホモグラフィ、追跡をカバーする57のユニットテスト。GitHub ActionsでCI。
制限:地面平面のホモグラフィは、急角度の高所カメラでは破綻します。Re-IDは、HSVヒストグラムでは、近い空間距離にいる同じような服装の人物に対して弱いです。
非地面平面のクロスカメラ投影を扱った人、または推論予算内でHSVヒストグラムの代わりに学習済み埋め込みを使った人はいますか?
[link] [comments]




