对象检测OpenCV-Python不起作用

时间:2016-10-15 00:08:40

标签: python opencv

有几天我一直在尝试使用Python-Open cv和Haar Cascade构建我自己的对象分类程序。

创建样本后,以下是训练系统的方法:

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

在第8阶段之后我收到了这个输出

===== TRAINING 8-stage =====
<BEGIN
POS count : consumed   1000 : 1000
NEG count : acceptanceRatio    600 : 0.00221078
Precalculation time: 10
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1|    0.898333|                                                      
+----+---------+---------+
|   4|        1| 0.916667|
+----+---------+---------+
|   5|        1| 0.691667|
+----+---------+---------+
|   6|        1| 0.681667|
+----+---------+---------+
|   7|        1| 0.518333|
+----+---------+---------+
|   8|        1| 0.626667|
+----+---------+---------+
|   9|        1| 0.441667|
+----+---------+---------+

===== TRAINING 9-stage =====
<BEGIN
POS count : consumed   1000 : 1000
NEG count : acceptanceRatio    0 : 0
Required leaf false alarm rate achieved. Branch training terminated.

然而,经过训练的模型没有检测到任何物体(在这种情况下观察)。我被困了,不知道如何解决这个问题。非常感谢任何有用的想法。

1 个答案:

答案 0 :(得分:0)

实现了所需的参数:&#34; -minHitRate 0.999 -maxFalseAlarmRate 0.5&#34;。

你有(根据你上面的表格):HitRate = 1和FalseAlarmRate = 0.441667,这就是训练停止的原因。