1

Emgu を使用してオブジェクトの方向と数を検出するにはどうすればよいですか?

オブジェクトはあらゆる方向 (2D) に移動しています。カメラはこれらのオブジェクトを (2D サーフェス上で) 見ています。オブジェクトの形状にはほとんど違いはありませんが、十分に類似しています。

ありがとう

4

1 に答える 1

3
  1. cvAbsDiff連続するフレーム(各フレームnと第5フレームにある場合があります)を呼び出して(n - gap)変更を検出し、しきい値を使用して変更マスクを取得します
  2. フレーム呼び出しごとcvUpdateMotionHistoryに、取得したマスクを引数として渡します
  3. モーションセグメント(オブジェクト)とその方向を取得するには:
    1. 以前の通話で蓄積された通話cvCalcMotionGradient通過モーション履歴
    2. モーションをセグメントごとにcvSegmentMotion分割し、各セグメントについて、を使用して角度を計算しますcvCalcGlobalOrientation

同様の手順は、motempl.cOpenCVライブラリ内に配布されている例でコーディングされています。

アップデート

彼らはほぼ完全なOpenCVバインディングを実装しており、インターフェイスの違いはOOPを追加した結果だと思いました。たとえば、ここにAbsDiffメソッドがあります。ただし、モーション関連のものは構造が異なります。この例(グーグル検索で見つけた)のように、メソッドを使用MotionInfoしてモーション角度を取得します。

于 2011-05-04T08:21:09.450 に答える