我正在使用OpenCV 2.2(使用OpenMP编译)运行HaarTraining进程。培训进度显示:
+----+----+-+---------+---------+---------+---------+
|7468| 44%|-|-2.712450| 1.000000| 0.719459| 0.108393|
+----+----+-+---------+---------+---------+---------+
|7469| 44%|-|-2.712449| 1.000000| 0.719459| 0.108393|
+----+----+-+---------+---------+---------+---------+
.......
7469这个数字是什么意思(我只有7000个样本)?我怎么知道这个过程什么时候结束?
谢谢!
N表示该级联的当前功能。(参见http://cv-kolaric.blogspot.com/2008/03/output-from-haartrainingexe.html)
+----+----+-+---------+---------+---------+---------+
| N |%%SMP|F| ST.THR | HR | FA | EXP. ERR|
+----+----+-+---------+---------+---------+---------+
N = current feature for this cascade (seq->total),
%%SMP = percentage of samples used, if trimmings enabled (v_wt)
F = '+' if isFilpped, if symmetry is specified (v_flipped), '-' otherwise
ST.THR = stage threshold,
HR = Hit Rate based on Stage threshold (v_hitrate / numpos),
FA = False alarm based on Stage threshold (v_falsealarm / numneg)
EXP.ERR = Strong classification error of adaboost algorithm,
based on threshold=0 (v_experr)
将为您的所有样本计算不同的特征。例如x-y导数、对比度等。根据样本之间的差异,会计算出更多的特征,而且似乎你的正面图像彼此差异太大,无法对其进行分类。
在训练之前,试着先对你的图像进行预处理。例如,去除背景、查找边缘、设置图像阈值、填充填充。任何能让你的正面图像集看起来更像的东西