【问题标题】:Open CV Haar cascade training can't be trainedOpencv Haar级联训练无法训练
【发布时间】:2019-01-21 12:36:13
【问题描述】:

您好,我正在尝试开发一个 haar 级联分类器,我能够运行检测汽车的基本示例,所以我尝试识别水果,我下载了一些梨的图像,然后生成正文件,然后矢量文件,直到此时一切正常,我用命令测试了矢量文件:

opencv_createsamples -vec vector.vec

所以我尝试使用下一个命令和选项生成 xml 级联分类器:

opencv_traincascade -data images/cascade -vec vector.vec -bg bg.info -precalcValBufSize 2048 -precalcIdxBufSize 2048 -numPos 24 -numNeg 450 -numStages 10 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -w 24 -h 24

我得到下一个错误:

PARAMETERS:
cascadeDirName: images/cascade
vecFileName: vector.vec
bgFileName: bg.info
numPos: 24
numNeg: 450
numStages: 10
precalcValBufSize[Mb] : 2048
precalcIdxBufSize[Mb] : 2048
stageType: BOOST
featureType: HAAR
sampleWidth: 24
sampleHeight: 24
boostType: GAB
minHitRate: 0.999
maxFalseAlarmRate: 0.5
weightTrimRate: 0.95
maxDepth: 1
maxWeakCount: 100
mode: BASIC

===== TRAINING 0-stage =====
<BEGIN
POS count : consumed   24 : 24
Train dataset for temp stage can not be filled. Branch training terminated.
Cascade classifier can't be trained. Check the used training parameters.

我没能找到错误...有没有opencv大师可以帮助我?

【问题讨论】:

    标签: opencv


    【解决方案1】:

    这是旧的,但我刚刚解决了它:

    你应该给 -numPos 和 -numNeg 一个比你的正样本和负样本总数略低的数字,大约是其中的 80%。

    例如如果你有 24 张正面图像,给 -numPos 18。

    另外,24 个阳性样本也太少了。尝试将其增加到至少 200。

    【讨论】:

      猜你喜欢
      • 2020-10-16
      • 2014-12-15
      • 2015-07-26
      • 2012-12-05
      • 2019-02-06
      • 2012-03-05
      • 2012-06-07
      • 2015-12-06
      • 2017-11-21
      相关资源
      最近更新 更多