4

この2つの画像があります。

小さいサイズ

と... 大きいサイズ

私はそれらをグレースケール画像にしてから、2つの画像をcvMatchImages好きなように渡しました

Double someValue = cvMatchShapes(grayImage, grayImage2, CV_CONTOURS_MATCH_I2, 0);
    System.out.println(someValue);

sysout によって出力された値は 1.465496453484283 でした。この値は何を表していますか? それを使用して他の画像と一致させるにはどうすればよいですか? また、一致しない画像を拒否するにはどうすればよいですか?

4

1 に答える 1

2

この値は、2 つのオブジェクトの違いを意味し、2 つの形状間の Hu モーメント フィーチャの距離を表します。小さいほど、2 つのオブジェクトは類似しています。しきい値を使用して、次のように一致を実行できます。出力値がしきい値より小さい場合、2 つのオブジェクトが一致するか、2 つのオブジェクトが異なります。しきい値の選択方法については、状況によって異なります。いくつかのインスタンスを使用してしきい値をトレーニングできます。画像内のオブジェクトを同様のサイズに正規化することを強くお勧めします。これにより、精度が向上します

于 2012-03-23T06:26:17.900 に答える