文档章节

opencv: 训练分类器

e_s
 e_s
发布于 2016/11/16 23:33
字数 335
阅读 44
收藏 0

opencv的分类器表示是一个.xml文件,里面相当于包含了传统意义上的weights文件。

过程:

1-准备负样本,产生negative_sample_description.dat

$ find <path of negative samples> -name '*.jpg' >negative.dat

*经验表明,negative samples所在路径必须在当前工作目录 ‘.’下

 

2-准备正样本,产生positive_sample_description.dat, 以及positive_samples.vec

$ find <path of positive> -name ’*.jpg‘ -exec identity -format '%i 1 0 0 %w %h' \{\} \; >positive.dat

$ opencv_createsamples -info positive.dat -vec positive_samples.vec -w 20 -h 20

 

3-准备test samples,用于训练完以后opencv_performance的衡量。

$ opencv_createsamples -img <one random positive image> -num <number of negative images you want to use as background> -bg negative.dat -info test.dat -maxxangle <distortion angle at x-axis> -maxyangle ... -maxzangle ... -maxidev ... -bgcolor ... -bgthresh ...

此时在工作目录下的文件分布应该如下

 

4-开始训练

$ opencv_haartraining  -data <dest of trained-files> -vec positive_samples.vec -bg negative.dat -nstages 20 -nsplits 2 -minhitrate 0.999 -maxfalsealarm 0.5 -npos ... -nneg ... -w 20 -h 20 -nonsym -mem 512 -mode ALL

 

5-获得.xml类型分类器后,进行 opencv_performance测试,即用test.dat进行accuracy测试

 

×××× 补充 ××××:

1. 关于opencv_haartraining中 -nPos 参数的选取是有讲究的,这是每一级训练时放入的正样本数,尤其是在正样本数不够大的情况下,除了要保证不能超过正样本vec向量的总数,还需控制在一定数量内,否则会导致在训练到较高级时出现error,因为所有正样本都用完了。

 

© 著作权归作者所有

共有 人打赏支持
e_s

e_s

粉丝 0
博文 58
码字总数 24581
作品 0
澳门
程序员
私信 提问
图片人脸检测(OpenCV版)

图片人脸检测 人脸检测使用到的技术是OpenCV,上一节已经介绍了OpenCV的环境安装,点击查看. 功能展示 识别一种图上的所有人的脸,并且标出人脸的位置,画出人眼以及嘴的位置,展示效果图如下...

vipstone
05/21
0
0
图片人脸检测——OpenCV版(二)

图片人脸检测 人脸检测使用到的技术是OpenCV,上一节已经介绍了OpenCV的环境安装,点击查看. 往期目录 视频人脸检测——Dlib版(六) OpenCV添加中文(五) 图片人脸检测——Dlib版(四) 视...

王磊的博客
04/19
0
0
【OpenCv小白入门】人脸检测

本篇小结是关于OpenCv小白入门的,分享一下自己的想法,并且较为详细的总结一下利用OpenCv自带的Haar分类器进行人脸检测以及基于OpenCV3.1+Vs2013+C++的具体代码实现。 原文链接 没有实际的操...

cleverzcc
01/26
0
0
使用OpenCV通过摄像头捕获实时视频并探测人脸

在Opencv初接触,图片的基本操作这篇手记中,我介绍了一些图片的基本操作,视频可以看作是一帧一帧的图片,因此图片操作其实是视频操作的基础,这篇手记就来讲讲OpenCV中的视频操作,并实现一...

种子_fe
08/16
0
0
人脸检测原理及示例(OpenCV+Python)

前言 关于opencv OpenCV 是 Intel 开源计算机视觉库 (Computer Version) 。它由一系列 C 函数和少量 C++类构成,实现了图像处理和计算机视觉方面的很多通用算法。 OpenCV 拥有包括 300 多个 ...

张卫泉
2012/09/12
0
2

没有更多内容

加载失败,请刷新页面

加载更多

window下安装maven

1.下载软件包: 2.解压到当前的安装路径: D:\Maven3.5.3 3.添加环境变量: 新建一个名为:MAVEN_HOME 填写解压路径:D:\Maven3.5.3 打开path,添加:%MAVEN_HOME%\bin 确定即可。 4.验证环境...

狼王黄师傅
9分钟前
0
0
聊聊flink的FsCheckpointStorage

序 本文主要研究一下flink的FsCheckpointStorage CheckpointStorage flink-runtime_2.11-1.7.0-sources.jar!/org/apache/flink/runtime/state/CheckpointStorage.java /** * CheckpointStor......

go4it
31分钟前
2
0
makefile 常用函数

Linux 环境下的程序员如果不会使用GNU make来构建和管理自己的工程,应该不能算是一个合格的专业程序员,至少不能称得上是 Unix程序员。今天我们来学习下makefile的常用函数。 《GNU make》h...

科陆李明
今天
17
0
Android 报错 Could not find com.android.tools.build:aapt2:3.2.1-4818971.

报错信息: Could not find com.android.tools.build:aapt2:3.2.1-4818971.Searched in the following locations: file:/C:/Users/96110/AppData/Local/Android/Sdk/extras/m2reposito......

lanyu96
今天
9
0
我的Linux系统九阴真经

我的Linux系统九阴真经 在今天,互联网的迅猛发展,科技技术也日新月异,各种编程技术也如雨后春笋一样,冒出尖来了。各种创业公司也百花齐放百家争鸣,特别是针对服务行业,新型互联网服务行...

linuxCool
今天
34
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部