haar分类器:来自haar cascade的XML文件

时间:2015-04-07 06:45:55

标签: opencv haar-classifier cascade-classifier

我使用了OpenCV的典型haar-cascade。 并且在训练过程中设置为5,但是在xml&级联文件夹只发现了3个阶段。

为什么我的阶段少于预期? 任何解决方案?

2 个答案:

答案 0 :(得分:0)

以此示例训练命令:

opencv_traincascade -data classifier -vec samples.vec -bg negatives.txt\
  -numStages 20 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -numPos 1000\
  -numNeg 600 -w 80 -h 40 -mode ALL -precalcValBufSize 1024\
  -precalcIdxBufSize 1024

这个maxFalseAlarmRate为0.5,当分类器达到此值时,它将完成。

对于您的问题,我想您已将numStages设置为5,但经过3个阶段后,它已达到maxFalseAlarmRate并完成了培训。

为了确认/消除这一点,您需要提供:

  1. 您的训练命令(如上所述)
  2. 上次培训阶段的输出。

答案 1 :(得分:0)

您很可能没有提供足够的traincascade信息来学习。这很可能是因为我们人类非常懒惰而且讨厌工作。如果它认为可以从你指定的数据中学到更多东西,那就会继续前进。

采取更积极的态度。请记住,您可以拍摄物体的多个图像略微倾斜的角度(10º-20º左右)。并且一定要提供至少数百个对象,特别是如果对象之间存在相当多的变化,就像有面孔一样。

如果您仍然遇到困难,请参阅我编写的本教程,希望可以帮助您和其他人:http://johnallen.github.io/opencv-object-detection-tutorial/