1

我有一些这样的示例图像:

示例图片

现在,当用户将图像上传到我的网站时,我需要检查它是否包含上述图像或非常相似的变体。

我试图训练一个 opencv haar 分类器,但结果似乎并不乐观。不确定我是否错误地生成了分类器。

我使用以下命令生成了 haar 分类器

opencv_createsamples -img logo.jpg -num 500 -bg negatives.dat -vec samples.vec -maxxangle 0.6 -maxyangle 0 -maxzangle 0.3 -maxidev 100 -bgcolor 0 -bgthresh 0 -w 209 -h 49

opencv_haartraining -data haarcascade -vec samples.vec -bg negatives.dat -nstages 10 -nsplits 2 -minhitrate 0.999 -maxfalsealarm 0.5 -npos 7000 -nneg 3019 -w 83 -h 35 -nonsym -mem 1024 -mode ALL

我使用了大约 500 张负片图像。

对于我的用例来说,使用 haar 分类器也会过分吗?

我也尝试cvMatchTemplate在 opencv 中使用该方法,但结果令人失望。尽管识别出正图像,但误报异常高。

我应该尝试正确训练分类器吗?运行 haar 训练器也需要很长时间。

这是我正在采取的正确方向吗?

4

1 回答 1

5

在这种情况下,使用SIFT可能会获得更好的结果。

这些是一些有趣的参考:

附带说明一下,OpenCV教程的第 6 章展示了如何使用 OpenCV 中的特征点检测器描述符匹配框架。

于 2012-05-31T13:14:45.803 回答