矩形图像可以用于opencv haar训练吗?

Can rectangular images be used for opencv haar training

本文关键字:haar opencv 用于 图像      更新时间:2023-10-16

很抱歉,这似乎是一个开始的问题,但只是想知道我可以使用rectangular dimensions来训练opencv haar cascade。我尝试使用square samples并且生成的图像被很好地检测到,但是当我尝试使用矩形宽度和高度作为车牌时,宽高比在宽度和高度之间2:1,所以我在训练时使用相同的纵横比,但生成的分类器没有检测到图像中的任何内容。

nStages = 14
nPositive = 1780
minHitrate = 0.996
maxFalseAlarm = 0.2
nNegatives = 14000
width = 48
height = 24
Haar classifier type = BASIC
Boost type = gentle adaboost

以上是我为classifier训练设置的参数。任何人都可以确认我是否可以将rectangular parameters用于阳性样本。另外,请提出一些修改建议,以便正确完成培训。

用于训练的负片图像的大小约为240x161 420x240

谢谢。


编辑 1:


我按如下方式使用调用。

f_cascade.detectMultiScale( image, detected_objects, pyramidScale, 2, 0|CV_HAAR_SCALE_IMAGE);

其中的关键部分是确保您的正样本和训练维度相同。 没有理由无法检测到矩形对象。

要记住的关键是,traincascade正在运行您在图像上指定的任何尺寸。

请参阅此处以获取一些证明应该可以很好地检测到矩形物体的证据:http://coding-robin.de/2013/07/22/train-your-own-opencv-haar-classifier.html

我还写了一个关于对象检测的教程,如果有人卡在这个东西上:

http://johnallen.github.io/opencv-object-detection-tutorial/