2

opencvで円を正確に検出する方法はありますか? 私は良い結果をもたらすハフ変換を使用していましたが、ほとんどの場合、オブジェクトと周囲の影、光などが悪い結果をもたらすため、ハフ円以外のオプションを探しています。私のプロジェクトでは正確な検出が非常に重要です。

これまでの私の基本的なアプローチは、リアルタイムで撮影された画像でいくつかの球を見つけることです。私は houghcircle を使用して球を見つけ、それから得られる半径に基づいて後で計算します。

背景が無地で、球体が問題なく検出できない場合は、背景に他のオブジェクトがある部屋でその画像を撮影すると、検出が困難になることがよくあります。そのため、他のアプローチを探しています。

4

2 に答える 2

3

私はサークルを正確に見つける必要がありましたが、正確な検出に関してはほとんど仕事をしていません。使ってみてください。

  1. 輪郭を描画したら、輪郭検出。
  2. minEnclosingCircle を使用して、検出された輪郭の上に円を描きます。
  3. 輪郭から半径とx、y点を取得できます

編集: また、周囲のオブジェクトと小さいオブジェクトは、ContourArea() を使用してフィルタリングできます。より小さい輪郭をチェックして除去する

これは、ハフ サークル検出よりもうまく機能するはずです。幸運を祈ります

于 2012-11-14T13:44:20.110 に答える
1

Junxxが言及しているように、イルミネーションの不変は、私が抱えているほとんどの問題で機能します。影、光などのように、これはこの答えを探す人にとって役立つかもしれません。

于 2012-10-31T10:58:34.133 に答える