4

私はタンク付きの写真がたくさんあります。各タンクには、金属板を挿入する穴があります。プレートが挿入された穴を認識します

tank photo

私はプレートなしですべての穴を見つける必要があります。

HoughCirclesでサークルを検索しようとしましたが、訓練ハラー分類器を使用しましたが、受け入れられない結果が得られました。

穴は小さく(約30x30px)、照明は永続的ではありません。

私は任意のアイデアに感謝します。

ありがとうございます!雷が問題である場合は、次の操作を行いますしようとすることができ

+1

得られた結果は何ですか?これらのプレートのエッジが残りのサーフェスと高いコントラストを持っているため、サークルを検出できる場合は、それぞれの周りにROIを作成し、検出するためにハフライン検出を使用するよりも、円の領域を通る線であるか否かを判断する。 –

+0

ありがとう!私はすべての空の穴を数える必要があります。私の現在のバージョンでは、私はhaarクラシファイアを使用していますが、何とか空の穴も見つけられます。コントラストが十分ではありません。 – Linkorn

答えて

1

: (結果はそれらの影がどのように問題に依存します)

1)うまくhere説明コントラスト(最大化)

2)キャニーエッジ検出器。パラメータを微調整してエッジを正しく検出し、検出器を通して画像を処理し、出力上で操作(円の検出、ROIの作成、線の検出)を行います。

3)可能であれば、 "ハードウェア"ソリューションが大きな違いを生むでしょう - カメラに光を加えることで明るい条件でも試してみてください。私はそれが最も難しい部分だと思いますが、残念ながら、ソフトウェアですべてを解決することはできません。

信頼できる結果を得るには、手順を組み合わせる必要があります。

ところで、haar clasifierは最適なソリューションではありませんが、動作する可能性もあります。

+0

ありがとう、j.kaspar! haarクラシファイアでは、約600個のポジティブサンプル([example](https://yadi.sk/d/jQcbSNWYqarED))を用意しましたが、空の穴も見つかりました。たぶん私は不正確な陰性サンプルを使用するかもしれません - 私は空の穴([例](https://yadi.sk/d/u-KJdlC1qareJ))を持つ多くの工場背景とタンクを収集しました。 – Linkorn

1

上記のように、それは私が異なるステップであることを行うにしようと、あなたが提供し、また、光条件になかったどのくらいのサンプルに依存します。

    画像全体の
  1. ハフ円検出に順にタンクの境界線であるこの明るい円だけを検出します。それはあなたに関心のある領域を与えるでしょう。
  2. すべての小さな穴を検出するために、勾配/エッジ画像上のROIにのみ円を描きます。穴の寸法/半径が何であるかはすでに分かっているので、結果をフィルタリングすることができます。
  3. が検出された場合、エッジ検出がプレートが存在するかどうかを調べるために検出されます。

元画像(赤色の表示なし)を共有できますか?私はテストをする時間があるかもしれません。

+0

FiReTiTi、[元の画像](https://dl.dropboxusercontent.com/u/32710/so.zip)、1_09-03-16_9-34-16.jpgには空の穴が1つあります。私の現在の手順:私はすべての穴、すべての穴を私はバイナリ形式に変換し、中心の周りに白い点を計算します。この方法はうまくいきますが、いくつかの上部穴にはパースペクティブがあり、プレートは中央にありません。ありがとう! – Linkorn

+0

すべての画像に白丸が表示されていないため、ROIを判別するのが困難です。私が言ったことを改めなければならない。 – FiReTiTi

1

問題を2つの部分に分割する方がよい: 1.関心領域検出。 この部分は、画像処理技術を使用して行うことができます。 a。 rgbからグレースケールへの変換。 b。白い円は非常にはっきりしているはずです。これは、形状検出器のいずれかによって検出することができる。

  1. 次のステップは、いずれかの穴が存在するかどうかを調べることです。 a。色に基づいて、あなたがテストしたいこれらのサークルを検出することができます。 b。 3つの異なる機能を使用することをお勧めします。HOG、GM、およびSSIM。 私の経験に基づいて、これらの機能は良い結果につながると思います。 ビジュアルワードのバッグやスパースコーディングを使用して、各サークルの機能を組み合わせることができます。 c。 viola jones dclassifierを使用します。 これは、複数の機能を使用することができますadaboostクラシファイアです。
1

大変ありがとうございました! 私は複雑な決定に至りました。

  1. haar classifierがすべての穴を見つけました。
  2. 次に、私はHoughCirclesを使い、間違った穴を捨てます。
  3. 各穴私はバイナリ形式に変換し、中心の周りに白と黒のピクセルを計算します。

私の目的にはうまくいきます。

enter image description here

関連する問題