2

小さな金属カップの中の金属ボールの数を数える必要があります。テンプレート マッチングを試してみましたが、最も確率の高い結果が 1 つしか表示されませんでした。しかし、目に見える金属球の総数が必要です。背景もメタリックなので、色のしきい値処理を行うことができませんでした。テンプレートマッチングで最初の出現箇所を見つけてその領域をRGB(0,0,0)で塗りつぶし、その画像で再度テンプレートマッチングを行う方法を試しましたが、誤検出がいくつか発生しています。私の主な要件は、カップの中に 3 つのボールが入っている画像を見つけることであり、3 つ以外の量は検出されません。

カップ内に充填されたさまざまな量の画像をご覧ください

4

2 に答える 2

1

テンプレート マッチング アルゴリズムを試すこともできますが、ひねりがあります。円 (ボール) を探してはいけません。しかし、3 つのボールの中心にある小さな三角形を探してください。

三角形の回転を考慮する必要がありますが、単純な輪郭処理でうまくいくはずです。

  1. 画像の中心 (カップの中心) に ROI を定義する
  2. いくつかのエッジ検出器と輪郭検出を実行します
  3. 見つかったすべての適切な輪郭を単純化する
  4. 見つかった輪郭に、三角形を形成するのに十分な角度を持つ 3 つのコーナーがあるかどうかを確認します

3 つ以上のボールがある場合を区別するには、画像の全体的な強度もチェックしてください。ボールが 3 つしかない写真は、ボールが多い写真に比べて強度がかなり低くなります。

編集: 2013 年 11 月 8 日午後 6 時 15 分 GMT

この画像の場合、流域セグメンテーション アルゴリズムを使用すると実際に役立つ場合があります。

このアルゴリズムは OpenCV の一部です。最初のバージョンはわかりませんが、OCV 3.0.0 にあるようです: http://docs.opencv.org/trunk/modules/imgproc/doc/miscellaneous_transformations.html ?highlight=流域#cv2.流域

Wiki の流域の基本: http://en.wikipedia.org/wiki/Watershed_%28image_processing%29

于 2013-11-08T13:30:25.147 に答える