5

この棒人間の絵のような非常に単純な画像または形状があるとします。

ここに画像の説明を入力

また、最初の画像を比較して最も近いものを特定したい他の単純な画像のライブラリもあります。

ここに画像の説明を入力

2 人の棒人間は完全に同一ではありませんが、かなり似ていることに注意してください。

かなり近い一致が見つかるまで、ライブラリ内の各画像と最初の画像を比較できるようにしたいと考えています。必要に応じて、画像ライブラリに同じ画像の多数のバリエーションを含めることで、所有している画像の種類を判断することができます。例えば:

ここに画像の説明を入力

私の質問は、これが OpenCV でできることかどうかです。以前に行われたことがありますか?もしそうなら、いくつかの例の方向性を教えてもらえますか? 助けてくれて本当にありがとうございます。

編集:私の検索を通じて、画像を比較している人々、またはこのように引き伸ばされたり歪んだ画像を比較している人々の多くの例を見つけました: Checking images for similarity with OpenCV . 残念ながら、ご覧のとおり、私の画像は互いに翻訳された (回転/歪んだ/引き伸ばされた) バージョンではありません。非常に似ていますが、実際には異なる画像です。

4

6 に答える 6

2

OpenCVのfeature template match機能を使えばできるはずです。関数を使用matchTemplateしてフィーチャminMaxLocを検索し、その場所を見つけることができます。については、OpenCV Web サイトのチュートリアルを参照してくださいmatchTemplate

于 2015-02-02T14:04:40.567 に答える
1

ローテーションが関係しているので、テンプレート マッチングはうまく機能しないと思います。おそらく、SIFT や SURF などの特徴点検出を使用する必要があります。

于 2015-02-02T14:19:21.730 に答える
1

特徴点の検出とマッチングが必要なようです。OpenCV からこれらのドキュメントを確認してください。

http://docs.opencv.org/doc/tutorials/features2d/feature_detection/feature_detection.html http://docs.opencv.org/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.html

于 2015-02-02T14:03:13.063 に答える
0

次の 3 つのことを行います。 1. ストローク シンボルを実際に比較するため、画像の比較を忘れます。2. Google ストアからジェスチャー検索アプリをダウンロードして再生します。3. 良好なパフォーマンスを得るには、ストローク描画に関するタイムスタンプ情報を使用せずにストロークを認識できないことを認識してください。それ以外の場合は、手書き認識が成功します。次に、Android ストローク レコ ライブラリを調べて、コードを適切に記述することができます。

于 2015-02-06T03:48:57.373 に答える