基于 opencv2.0 的 haar 算法以人脸识别为例的训练分类器 xml 的方法
第一步 采集样本
1、 将正负样本分别放在两个不同的文件夹下面
分别取名 pos 和 neg,其中 pos 用来存放正样本图像,neg 用来存放负样本
注意事项:1、正样本要统一切成
24*24 像素(或者其他)的格式,建议保存成灰度图,节省空间
2、正样本的数目越多,训练的时间也将越长,训练出来的效果也就越好
3、负样本的数量想对于正样本一定要足够的多,很多朋友在训练的时候,往
往出现了 CPU 占用率达到了 100%,但是训练只是停留在一个分类器长达几小
时没有相应,问题出现在取负样本的那个函数
icvGetHaarTrainingDataFromBG 中; 当剩下所有的 negtive 样本在临时的
cascade Classi"er 中,evaluate 的结果都是 0(也就是拒绝了),随机取样
本的数目到几百万都是找不到误检测的 neg 样本了,因而没法跳出循环
2、建立正负样本的说明文件这里我们假定根目录在 D:oost 下面 。在 cmd
下面进入 pos 目录,输入 dir /b > pos.txt
评论2