改善Haar视力训练数据结果的一般提示[openCV]

改善Haar视力训练数据结果的一般提示[openCV],opencv,computer-vision,Opencv,Computer Vision,使用trainCascade对HAAR类特征进行训练。寻求社区的建议以获得更好的结果。一般来说,什么是良好的接受率 我从一个较小的培训开始,以下链接作为指南: 以下是我的数据: PARAMETERS: cascadeDirName: classifier vecFileName: samples.vec bgFileName: negatives.txt numPos: 68 numNeg: 436 numStages: 20 precalcValBufSize[Mb] : 3072 preca

使用trainCascade对HAAR类特征进行训练。寻求社区的建议以获得更好的结果。一般来说,什么是良好的接受率

我从一个较小的培训开始,以下链接作为指南:

以下是我的数据:

PARAMETERS:
cascadeDirName: classifier
vecFileName: samples.vec
bgFileName: negatives.txt
numPos: 68
numNeg: 436
numStages: 20
precalcValBufSize[Mb] : 3072
precalcIdxBufSize[Mb] : 3072
stageType: BOOST
featureType: HAAR
sampleWidth: 80
sampleHeight: 80
boostType: GAB
minHitRate: 0.999
maxFalseAlarmRate: 0.5
weightTrimRate: 0.95
maxDepth: 1
maxWeakCount: 100
mode: ALL

===== TRAINING 0-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 1
Precalculation time: 296
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|0.0206422|
+----+---------+---------+
END>

===== TRAINING 1-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.0810108
Precalculation time: 228
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.259174|
+----+---------+---------+
END>

===== TRAINING 2-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.0399304
Precalculation time: 279
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.155963|
+----+---------+---------+
END>

===== TRAINING 3-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.0106487
Precalculation time: 255
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.275229|
+----+---------+---------+
END>

===== TRAINING 4-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.0031086
Precalculation time: 295
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.399083|
+----+---------+---------+
END>

===== TRAINING 5-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.00127805
Precalculation time: 282
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.389908|
+----+---------+---------+
END>

===== TRAINING 6-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.000522627
Precalculation time: 299
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.502294|
+----+---------+---------+
|   4|        1| 0.247706|
+----+---------+---------+
END>

===== TRAINING 7-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 0.000149988
Precalculation time: 283
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.511468|
+----+---------+---------+
|   4|        1|     0.25|
+----+---------+---------+
END>
===== TRAINING 8-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 4.31894e-05
Precalculation time: 226
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.440367|
+----+---------+---------+
END>

===== TRAINING 9-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 2.12363e-05
Precalculation time: 208
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.541284|
+----+---------+---------+
|   4|        1| 0.291284|
+----+---------+---------+
END>

===== TRAINING 10-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 7.5647e-06
Precalculation time: 294
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1| 0.451835|
+----+---------+---------+
END>

===== TRAINING 11-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 3.79627e-06
Precalculation time: 226
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1| 0.463303|
+----+---------+---------+
END>

===== TRAINING 12-stage =====
<BEGIN
NEG count : acceptanceRatio    436 : 2.03777e-06
Precalculation time: 184
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1| 0.396789|
+----+---------+---------+
END>

===== TRAINING 13-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 1.06732e-06
Precalculation time: 262
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1| 0.415138|
+----+---------+---------+
END>

===== TRAINING 14-stage =====
<BEGIN
POS count : consumed   68 : 68
NEG count : acceptanceRatio    436 : 6.80241e-07
Required leaf false alarm rate achieved. Branch training terminated.
参数:
名称:分类器
vecFileName:samples.vec
bgFileName:negatives.txt
numPos:68
编号:436
数字:20
预制尺寸[Mb]:3072
precalcIdxBufSize[Mb]:3072
舞台类型:助推
特征类型:哈尔
样本宽度:80
样本高度:80
boostType:GAB
最低税率:0.999
最大错误报警率:0.5
重量比率:0.95
最大深度:1
最大值:100
模式:全部
====培训0级=====
====培训一阶段=====
====培训2阶段=====
====培训三阶段=====
====培训四阶段=====
====培训五阶段=====
====培训6阶段=====
====培训七阶段=====
====培训8阶段=====
====培训9阶段=====
====培训10阶段=====
====培训11阶段=====
====培训12阶段=====
====培训第13阶段=====
====培训14阶段=====

根据我在基于haar特征的训练手(手掌)检测器上的经验,首先你要问自己,我想检测的对象是否容易受到haar特征检测的影响。在我解释之前,让我提醒一下haar特征实际上是什么——它们只是(或至少)能够检测梯度变化特征——我指的是任何类型的垂直和水平线组合(单线、两条线之间的线等),是的,基本上就是这样。梯度变化。如果你想一想,有些物体有这样的特征,它们里面存在某种子结构,这使得它们很容易了解物体中“存在”哪些哈尔特征。例如,人类的脸是最有名的。它有几个关键点,可能并被认为是哈尔特征的存在。这就是我所说的易受haar特性影响的描述。在开始训练之前,你必须回答这个问题。如果答案是否定的,就不要试图找到另一个解决方案

例如,我考虑了检测打开手掌的手势。我想什么样的手势可以通过haar方法检测出来。我想一个解决办法是限制手掌的手势,手指张开,笔直,拥挤。这个简单的技巧可以更好地检测和学习haar,因为手指之间相互接触时会有额外的“边缘”。所以除了这些边缘。而且即使背景与肤色相似,边缘也是可见的。我训练了分类器,主要基于手指之间的边缘(因为你不能依赖手周围的边缘,因为它取决于背景——在某些情况下,这些边缘甚至可以消失)。我使用了这个命令:

opencv_traincascade-数据HAAR-vec samples.vec-bg negative.dat -numStages 20-minHitRate 0.999-numPos 700-numNeg 2500-w 20-h 11-模式全功能型HAAR

如你所见,我使用了700个阳性样本和2500个阴性样本。请注意-w和-h参数。它是探测器窗口的大小。正样本中的所有裁剪区域都将缩放到此大小,因此请记住,裁剪的区域必须具有相同的纵横比。最后,我成功地创建了一个能够检测特定手势的haar分类器——手指张开、笔直、紧靠在一起的手掌


编辑:您可以查看培训日志。

一般来说,在处理您培训过的数据时,您发现哪种接受率范围最好?我添加了培训日志。