(四)OpenCV级联分类器训练与使用_08_Haar与LBP级联分类器训练

Gwen ·
更新时间:2024-11-13
· 914 次阅读

在OpenCV 4.x中已经被剔除

基本流程
收集样本数据:包括正负样本
数据规范化:大小、格式
生成vec文件与负样本列表文本文件
使用OpenCV自动的级联分类器训练工具,训练样本数据
得到最终的级联分类器数据(XML格式) 步骤详解
1)收集样本数据
以人脸检测为例:公开的数据库有
正向样本数目(少)
负样本数目(多)
正向样本的大小:统一尺寸
正向样本图片中的背景问题
2)样本集合与描述
正样本集合与描述文件
负样本集合与描述文件
3)正样本VEC文件创建
使用opencv_createsamples.exe
4)训练样本数据 参数详解 data 指定生成的文件目录 vec vec文件名, bg 负样本描述文件名称,也就是负样本的说明文件(.dat) nstage 20 指定训练层数,推荐15~20,层数越高,耗时越长 nsplits 分裂子节点数目,选取默认值 2 minhitrate 最小命中率,即训练目标准确度。 maxfalsealarm最大虚警(误检率),每一层训练到这个值小于0.5时训练结束,进入下一层训练 npos 在每个阶段用来训练的正样本数目 nneg 在每个阶段用来训练的负样本数目 这个值可以设置大于真正的负样本图像 这个值可以设置大于真正的负样本图像数目,程序可以自动从负样本图像中切割出和正样本大小一致的 数目,程序可以自动从负样本图像中切割出和正样本大小一致的, ,这个参数一半 这个参数一半设置为正样本数目的 设置为正样本数目的 1~3 倍 - - w - -h h 样本尺寸,与前面对应 mem 程序可使用的内存,这个设置为256即可,实际运行时根本就不怎么耗内存,以MB为单位 mode ALL指定haar特征的种类,BASIC仅仅使用垂直特征,ALL表示使用垂直 以及45度旋转特征 w 与 h 表示样本的宽与高,必须跟 vec 中声明保持一致 工具使用(opencv/build/x64/vc15/bin目录下,在OpenCV 4.x中已经被剔除)
opencv_createsamples.exe
opencv_traincascade.exe 常见错误
1)Train dataset for temp stage can not be filled.
Branch training terminated.
2)Traincascade Error: Bad argument (Can not get new positive sample.The most possible reason is insufficient count of samples in given vec-file.)
作者:丶小早



lbp 训练 分类 分类器 opencv

需要 登录 后方可回复, 如果你还没有账号请 注册新账号