OpenCV

トップ > レビュー > OpenCV

ヒストグラム比較関数の比較

OpenCVに用意されているヒストグラムの比較関数の中で使われる4種類のアルゴリズムです。詳しくは公式ドキュメントの式を参照してください。参考書籍で「個人的な感想だが」と書いてあった部分を意訳してますので、鵜呑みにしないようにお願いします。

1.Correlation デフォルトで適用されているアルゴリズムです。戻り値が1のとき完全一致、-1のとき不一致です。

2.Chi-square 戻り値が0のときが完全一致です。不一致の場合の値はヒストグラムに依存します。4.のBhatacha..同様、遅いけど正確、なアルゴリズムです。

3.Intersection ヒストグラムが正規化されている場合、1が完全一致、0が不一致です。処理は高速だが、荒っぽいアルゴリズムです。

4.Bhatacharyya distance 戻り値が0のときが完全一致です。1のとき不一致となります。2のChi-square同様、遅いけど正確、なアルゴリズムです。

いずれにせよ上記のアルゴリズムは画像内の画素値の分布を比較するものですから、例えば、日光が当たっているとか、照明の加減で色味がちょっと違ってる、というような現実世界の物体を写したものには向きません。そこでEMD(Earth Mover's Distance)などの関数がさらに登場してくるのですが、そこはまた次回…。

参考URL

Learning OpenCV, 2nd Edition