OpenCV Haartraining 永远无法完成

这是我第一次使用OpenCV的Haartraining功能。

只是为了练习,我使用了35张正样本图片和45张负样本图片。

但当我尝试从数据中进行训练时,它永远无法完成,

即使参数已经极端调整。

(最小命中率 = 0.001,最大误报率 = 0.999

我认为由于这些极端值,它不会花费太多时间)

我的实验中哪里出了问题?

这是我的命令和参数。

$opencv_haartraining -data Training -vec samples.vec -bg negatives.dat -nstages 2 -nsplits     2 -minhitrate 0.001 -maxfalsealarm 0.999 -npos 30 -nneg 40 -w 20 -h 20 -nonsym -mem 512 -mode      ALL -minpos 10

以及结果。

Data dir name: TrainingVec file name: samples.vecBG  file name: negatives.dat, is a vecfile: noNum pos: 30Num neg: 40Num stages: 2Num splits: 2 (tree as weak classifier)Mem: 512 MBSymmetric: FALSEMin hit rate: 0.001000Max false alarm rate: 0.999000Weight trimming: 0.950000Equal weights: FALSEMode: ALLWidth: 20Height: 20Applied boosting algorithm: GABError (valid only for Discrete and Real AdaBoost): misclassMax number of splits in tree cascade: 0Min number of positive samples per cluster: 10Required leaf false alarm rate: 0.998001Stage 0 loadedStage 1 loadedStage 2 loadedStage 3 loadedStage 4 loadedTree ClassifierStage+---+---+---+---+---+|  0|  1|  2|  3|  4|+---+---+---+---+---+   0---1---2---3---4Number of features used : 125199Parent node: 4*** 1 cluster ***POS: 30 32 0.937500

回答:

你是在使用OpenCV_Haartraining吗?

如果是的话,这是一个已废弃的应用程序,你应该使用opencv_traincascades。

这样做将

- A. 加快分类所需的时间  - B. 获得更好的支持

请参阅这些链接以获取更多信息 训练与TrainCascade对比TrainCascade Wiki

编辑:

另外,请更改你的最小命中率和最大误报率。

我建议使用类似0.4和0.95的数值来开始。

这样做的原因是,如果你设定为0.999和0.0001,它可能永远也达不到这个目标。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注