人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

こんにちは

OpenCVでテンプレートマッチングをするときに
cvMatchTemplate (src_img, tmp_img, dst_img, CV_TM_CCOEFF_NORMED);
cvMinMaxLoc (dst_img, &min_val, &max_val, &min_loc, &max_loc, NULL);
としてプログラムを書いているのですが,cvMinMaxLoc では一番マッチした箇所か,マッチしなかった場所の座標しか取得することができません.

何かスマートに第2候補とか調べれる関数などご存知の方がいましたら,教えていただけないでしょうか?

よろしくお願いいたします.

●質問者: rockafeller
●カテゴリ:コンピュータ インターネット
✍キーワード:OpenCV こんにちは スマート テンプレート プログラム
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● ゆう
●60ポイント

compareHistを使ってはどうでしょうか。

例えば相関であれば、-1?1を返し、1に近いほど類似しているという判断です。

比較手法については以下のサイトに詳しく書いてあります。

http://d.hatena.ne.jp/ninoseki/20090208

以下にCの場合とC++の場合のサンプルがあります。

このようにヒストグラムの比較をループすることで、

N番目にマッチした箇所は求められると思います。

http://opencv.jp/opencv2-x-samples/backprojectionpatch

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ