ページ 11

類似度の比較について

Posted: 2017年6月06日(火) 12:04
by ttb
パイソン版opencvには二枚の画像の類似度を比較する関数がついているようですがc++には同じような二枚の画像の類似度の比較をする関数は無いのでしょうか?

またないようでしたらどのようにコードを書いていけばできるかご教授いただけますでしょうか。
よろしくお願いします。

Re: 類似度の比較について

Posted: 2017年6月06日(火) 12:12
by usao
matchTemplate()はどうでしょうか.

Re: 類似度の比較について

Posted: 2017年6月06日(火) 21:27
by 結城紬
Python 版にだけある関数というのは、何のことを言っているのでしょうか?
そのような機能は無いのではないかと思いますが…。

Re: 類似度の比較について

Posted: 2017年6月06日(火) 22:25
by ttb
すみません勉強不足でした。
CompareHist関数というのはC++でも使用可能なのでしょうか?

Re: 類似度の比較について

Posted: 2017年6月06日(火) 23:25
by 結城紬
同じ名前の関数があります。
http://docs.opencv.org/2.4/modules/imgp ... omparehist

基本的に C++ がベースになっていますので、C++にあってPython版に無い機能というのはあるかもしれませんが、逆は無いと思います。

Re: 類似度の比較について

Posted: 2017年6月06日(火) 23:31
by ttb
そうなんですね。知りませんでした。
ちなみにヒストグラムで類似度を比較するcompareHistではマスク画像でも比較して類似度を出すことが出来るのでしょうか?
よろしければご教授願えますでしょうか。

Re: 類似度の比較について

Posted: 2017年6月06日(火) 23:48
by 結城紬
ちなみにヒストグラムで類似度を比較するcompareHistではマスク画像でも比較して類似度を出すことが出来るのでしょうか?
すみません、単語がどこか抜けていると思うのですが、文意が解釈しかねますのでもう一度お願いできますでしょうか。
「マスク画像を省略しても類似度を出せるか」という質問なら、マスク画像は無くても使用できます。

Re: 類似度の比較について

Posted: 2017年6月07日(水) 00:33
by ttb
ある二つの画像をそれぞれマスク処理してその処理をした画像に対してヒストグラムの比較をして類似度を出せるのかという意味です。
なぜそんな面倒なことをするのかというのは二つの画像が簡単に言うと色違いみたいなものなのでマスク処理をしないと形は同じでも色が違うことで類似度が出せないのでは?と思ったからです。

Re: 類似度の比較について

Posted: 2017年6月07日(水) 09:22
by ttb
ttb さんが書きました:ある二つの画像をそれぞれマスク処理してその処理をした画像に対してヒストグラムの比較をして類似度を出せるのかという意味です。
なぜそんな面倒なことをするのかというのは二つの画像が簡単に言うと色違いみたいなものなのでマスク処理をしないと形は同じでも色が違うことで類似度が出せないのでは?と思ったからです。
補足です。今回行いたいのは形のみ一致しているかを検討したいということです。例えば赤丸と青丸は色が異なりますが形は同じですよね。
そういった色は違うけど形は同じものを比較しても類似度(形のみの類似度)が100%で出せるようにしたいということです。

Re: 類似度の比較について

Posted: 2017年6月07日(水) 21:56
by 結城紬
compareHist は色の分布を比較する機能なので、形状の比較には役に立ちません。

コンピュータビジョンはノウハウの塊なので、実際の比較したい画像を提示していただかないことには具体的なアドバイスは難しいです。
例えば直線や円などの幾何学的な図形ならハフ変換、大きさや角度が変わらないならテンプレートマッチング、複雑な形状なら特徴点抽出とか、問題に応じて手法は山ほど提案されています。

Re: 類似度の比較について

Posted: 2017年6月08日(木) 21:11
by ttb
特徴点抽出は形が全く同じで色違いでも類似度100%と判定することは可能でしょうか?

Re: 類似度の比較について

Posted: 2017年6月08日(木) 22:29
by usao
オフトピック
何をどうやって「類似度」なるものを算出するのかを示さずに
その演算結果値が 100%とかいう数字になり得るか? と問うても何の意味無いと思いますが.

matchShapes という関数があるみたいです.
私は使ったこと無くて,どんな処理を行うものなのかも知りませんので,使い物になるのかどうかもわかりませんが.

Re: 類似度の比較について

Posted: 2017年6月09日(金) 21:33
by 結城紬
ttb さんが書きました:特徴点抽出は形が全く同じで色違いでも類似度100%と判定することは可能でしょうか?
どのような形状を比較しようとしているかによります。
もう一度言いますが、具体的にどのような画像を比較しようとしているかをお教え頂けないのであれば、私から協力できることはこれ以上ありません。

Re: 類似度の比較について

Posted: 2017年6月09日(金) 23:46
by ttb
すいませんでした。画像の挿入方法がよく分からないです。
どのようにすればいいのでしょうか?