这是我第一次使用opencv的haartraining。

为了练习,我使用了35张正像和45张负像。

但是当我尝试根据数据进行训练时,它并不会永远完成,

即使对参数进行了非常大的调整。

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

由于这种极端的值(value),我认为不会花费很多时间)

我的实验一定有什么问题?

这是我的命令和参数。

$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: Training
Vec file name: samples.vec
BG  file name: negatives.dat, is a vecfile: no
Num pos: 30
Num neg: 40
Num stages: 2
Num splits: 2 (tree as weak classifier)
Mem: 512 MB
Symmetric: FALSE
Min hit rate: 0.001000
Max false alarm rate: 0.999000
Weight trimming: 0.950000
Equal weights: FALSE
Mode: ALL
Width: 20
Height: 20
Applied boosting algorithm: GAB
Error (valid only for Discrete and Real AdaBoost): misclass
Max number of splits in tree cascade: 0
Min number of positive samples per cluster: 10
Required leaf false alarm rate: 0.998001
Stage 0 loaded
Stage 1 loaded
Stage 2 loaded
Stage 3 loaded
Stage 4 loaded

Tree Classifier
Stage
+---+---+---+---+---+
|  0|  1|  2|  3|  4|
+---+---+---+---+---+

   0---1---2---3---4

Number of features used : 125199

Parent node: 4

*** 1 cluster ***
POS: 30 32 0.937500

最佳答案

我以为您正在使用OpenCV_Haartraining是否正确?

如果是这样,则这是一个已弃用的应用程序,您应该使用opencv_traincascades。

这将

- A. Speed up the time taken to classify
 - B. Have better support

请参阅这些链接以进一步阅读
Training Vs TrainCascadeTrainCascade Wiki

编辑:

另外,更改您的最低点击率和maxFalseAlarm率。

我建议使用0.4和0.95之类的方法开始。

这样做的原因是,如果有的话,它将永远需要达到0.999和0.0001。

关于opencv - OpenCV Haartraining不会永远结束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16053378/

10-11 04:01