美文网首页2017年学习笔记模块
Opencv 人脸识别之分类器,样本训练

Opencv 人脸识别之分类器,样本训练

作者: waterge | 来源:发表于2017-12-02 21:51 被阅读0次

================================训练分类器==============================

样本准备

1: 正负样本

如:window下

a. 在正样本目录下 dir /b > pos.txt  ,将生成的 摘要文件pos.txt 进行后缀替换,加上 1 0 0 19 19,

注意后面的去掉名字表示图片在 (0,0)到(19, 19 )的矩形区域里

b. 对负样本目录下 dir /b >neg.txt  备注负样本目录文件只需要去掉文件名字就好,不需要替换,后面的数字

2: 下载windows 的安装包,并安装,同时记录安装目录,假如是: openCV_path

https://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.3.0/opencv-3.3.0-vc14.exe/download

opencv-3.3.0-vc14.exe

3: 找到openCV_path 目录下面的

创建opencv可以识别的数据

E:\NDK\Opencv\opencv\build\x64\vc14\bin\opencv_createsamples.exe

训练

E:\NDK\Opencv\opencv\build\x64\vc14\bin\opencv_traincascade.exe

:E:\NDK\Opencv\opencv\build\x64\vc14\bin

中的两个文件:

opencv_createsamples.exe

opencv_traincascade.exe

4:

4.1 就是加工样本数据,使用opencv_createsamples

备注配置环境变量

使用命令行:

opencv_createsamples -vec pos.vec -info face\pos.txt -bg non-face\neg.txt -w 19 -h 19 -num 472

-vec pos.vec  用pos.vec 保存执行结果

-info face\pos.txt 用于指向正样本的路径

-bg neg.txt 负样本的路径(这么写经常报错,再目录文件直接写对应的文件目录就好)

-w 19 -h 19    这个是正样本中图片中头像的宽高

-num 472      正样本的数量

执行这个命令生成 pos.vec

4.2 运用  opencv_traincascade 训练样本,得到分类器

执行命令前,我们要在当前目录创建一个data 文件夹

执行命令:opencv_traincascade -data data -vec pos.vec -bg face\neg.txt -numPos 468 -numNeg 23573 -numStages 9 -w 19 -h 19 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -mode ALL

-data data 文件夹: 用于保存训练结果和中间产物

-vec pos.vec : 4.1 的结果

-bg face\neg.txt:  负样本的路径

-numPos 468 正样本的数量 数量不能高于正样本数,注意事项,数据要注意 数量不能随便取 网上查找

vec文件中的正样本数目<= numpos+(numStages - 1)(1 - minHitRate) numpos+ s

-numNeg 23573  负样本的数量

-numStages 9    这个数字是,我们训练的层级

-w 19 -h 19

-minHitRate 0.999 -maxFalseAlarmRate 0.5 -mode ALL

备注:

可能报错:

Train dataset for temp stage can not be filled. Branch training terminated.

Cascade classifier can't be trained. Check the used training parameters.

把命令改为 将neg.txt copy 到喝pos.vec 统一级别,将里面的文件都加上文件头

比如non-face/cmu_9972.pgm 这样他就能找到文件了

opencv_traincascade -data data -vec pos.vec -bg neg.txt -numPos 468 -numNeg 23573 -numStages 9 -w 19 -h 19 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -mode ALL

说明路径问题

相关文章

网友评论

    本文标题:Opencv 人脸识别之分类器,样本训练

    本文链接:https://www.haomeiwen.com/subject/svjobxtx.html