私は十字を見つける必要があるバイナリ画像のセットを持っています(添付の例)。私はバイナリイメージから境界線を抽出するためにfindcontoursを使います。しかし、私はどのように私はこの形(国境)のクロスかどうかを判断することができます理解できませんか?たぶんopencvには、この問題を解決するのに役立つ組み込みのメソッドがいくつかあるかもしれません。私は機械学習を使ってこの問題を解決すると考えましたが、これを行う簡単な方法があると思います。ありがとう!画像の十字を見つける
答えて
Viola-Jones object detection良いスタートである可能性があります。アルゴリズム(AFAIK)の主な用途は顔検出ですが、実際には十字架のようなオブジェクト検出のために設計されています。
アルゴリズムは機械学習ベースのアルゴリズムです(したがって、分類された「十字」と分類された「十字」のセットが必要です)。重要な「特徴」(パターン)を特定する必要があります。アルゴリズムが十字を認識するのに役立ちます。
アルゴリズムは、あなたの要件に応じてcvHaarDetectObjects()
私はここで唯一堅牢な方法はSVM + HOGを使用することであるという結論に達しました。それで全部です。
元の画像から、潜在的にあなたの十字になる可能性のあるポリゴンのセットを抽出したとします。すべての辺が長さを持つように区別できる程度に、すべての十字が表示されていると仮定すると、次のことを試すことができます。
は あなたの多角形を形成するために必要な正確に12の頂点を持っていなかったすべてのポリゴンを拒否します。
最短エッジ長が最初になるように頂点を並べ替えます。
均一なサイズのクロスにあなたの頂点をマップするベストフィットperspective transformationを作成
均一クロス、残留任意の点のために戻ってあなたのクロスを投影し、この変換を用いて生成された残差を調べ投影された点と対応する一様な点との間の距離である。
- すべての残差が定義された許容値内にあれば、十字が見つかります。
これは主に、検索している幾何学的形状の単純さのために機能することに注意してください。あなたの等高線もノイズが除去されている必要があります。十字の各行を単一の単純な線に変換する必要があります。
それぞれのブロブを腐らせて、それらのピクセル数を分析することができます。十字の回転スケーリングは、残りの中心を閉じるときを除いて、常に同じ比率で降りてください。繰り返しますが、小塊が十分に小さい場合は、小塊が元の小塊の中心にあることを期待する必要があります。これを解決するために、機械学習アルゴリズムやトレーニングデータは必要ありません。
- 1. 画像内のパターンを見つける
- 2. 画像内のエッジを見つける
- 3. 別の画像の中の画像を見つける
- 4. 違いを見つける - 14x14画像
- 5. Numpy画像の中にサブ画像を見つける
- 6. opencv画像を他の画像に見つける
- 7. 画面上の画像を見つける
- 8. 2つの画像の差のバウンディングボックスを見つけるか?
- 9. Pythonで同様のカラーパレットを持つ画像を見つける
- 10. openCVを使って画像のシルエットを見つける
- 11. 画像の左上隅の位置を見つける
- 12. JPG画像内のテキストのバウンディングボックスを見つける
- 13. 画像中の特定の形を見つける
- 14. MySQLが次のIDを見つける(次の画像)
- 15. 類似の色の画像を見つける
- 16. Jqueryは左上のピクセル画像の色を見つける
- 17. コンピュータビジョンプログラムの画像を見つける方法
- 18. クライアントの画面解像度を見つける方法
- 19. Raphael JS:SVG画像のパスを見つけるには?
- 20. 非バイナリ画像の輪郭を見つける
- 21. Android @drawableで画像の支配的な色を見つける
- 22. 画像の最も一般的な色を見つける
- 23. 画像内の白い矩形を見つける
- 24. 画像内のドミナントカラーを見つけるには?
- 25. 画像位置の画像をキーポイントマッチング技術で見つけよう
- 26. 画像のコレクションで一番カラフルな画像を見つけよう
- 27. Amazon Product Advertising APIに関連する画像を見つける
- 28. 画像上に3x3スライドウィンドウを見つける
- 29. 正しい画像パスを見つける方法
- 30. Sikuli X Javaで画像を見つける
クロスラインボーダー上にある異なるポイントは同じSIFT記述子を持つため、これは機能しません。 –
ああ、私は見ている...十字架の周りの円は常に存在するとは限りませんか? (どちらの例も円内の十字を示しています) –