级联分类器训练-----OpenCV
关键词:级联分类器、opencv_traincascade
下面简述操作过程:
- 准备正负样本:neg、pos
- 正负样本路径生成:dir /a/b>path.txt //path:pos or neg
- 正样本训练集生成:opencv_createsamples.exe -info pos\pos.txt -vec pos\pos.vec -num 799 -w 24 -h 24 pause
- 样本训练:opencv_traincascade.exe -data data -vec pos/pos.vec -bg neg/neg.txt -numPos 100 -numNeg 2000 -numStages 5 -featureType LBP -w 24 -h 24 -minHitRate 0.999 -maxFalseAlarmRate 0.1 -mode ALL
- -numStages :训练级数 a
- -numPos :每级训练正样本数量 b
- a*b<=总正样本数
- -numNeg :每级训练使用的负样本数量 c
- c<=总负样本数
- -featureType:检测特征
- 经验之谈: LBP用于快速训练及检测、HOG可较好适应不同光照、HAAR适用于环境较复杂情况
注意事项
- 若出现报错,首先检查参数设置是否正确;其次可考虑换台机器;最后再考虑更改机器环境配置。
- 若长时间停留在某一训练阶段,表明极有可能陷入循环,同时也表明在此阶段分类器已达到较优状态,可先退出(ctr+C)再降低训练级数或调整其他参数。
- 若训练效果不理想则考虑增大样本集并修改相关训练参数。
级联分类器训练-----OpenCV的更多相关文章
- OpenCV开发笔记(七十一):红胖子8分钟带你深入级联分类器训练
前言 红胖子,来也! 做图像处理,经常头痛的是明明分离出来了(非颜色的),分为几块区域,那怎么知道这几块区域到底哪一块是我们需要的,那么这部分就涉及到需要识别了. 识别可以自己写模板匹配.特征 ...
- 【原/转】opencv的级联分类器训练与分类全程记录
众所周知,opencv下有自带的供人脸识别以及行人检测的分类器,也就是说已经有现成的xml文件供你用.如果我们不做人脸识别或者行人检测,而是想做点其他的目标检测该怎么做呢?答案自然是自己训练一个特定的 ...
- 如何利用OpenCV自带的级联分类器训练程序训练分类器
介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...
- opencv:级联分类器训练(cascade classifier training)(两个分类器的区别)
# 介绍 级联分类器包括两个工作阶段:训练(traning),检测(detection).检测阶段在文档<objdetect module of general OpenCV documenta ...
- 机器学习-分类器-级联分类器训练(Train CascadeClassifier )
一.简介: adaboost分类器由级联分类器构成,"级联"是指最终的分类器是由几个简单分类器级联组成.在图像检测中,被检窗口依次通过每一级分类器,这样在前面几层的检测中大部分的候 ...
- OpenCV人脸识别-训练级联分类器
OpenCV中以及附带了训练好的人脸特征分类器,3.2版本的有三种: 分别是LBP,Haar,Hug 在Data目录下. 也可以训练自己的特征库,具体参照如下: 级联分类器训练 — OpenCV 2. ...
- opencv的级联分类器(mac)
级联分类器的介绍:级联分类器训练 因为要训练负样本,windows电脑有些问题,所以就只能有mac进行训练. 在windows中训练,准备了负样本之后,进行三步. 1.opencv_createsam ...
- 使用OpenCV训练好的级联分类器识别人脸
一.使用OpenCV训练好的级联分类器来识别图像中的人脸 当然还有很多其他的分类器,例如表情识别,鼻子等,具体可在这里下载: OpenCV分类器 import cv2 # 矩形颜色和描边 color ...
- 利用opencv中的级联分类器进行人脸检測-opencv学习(1)
OpenCV支持的目标检測的方法是利用样本的Haar特征进行的分类器训练,得到的级联boosted分类器(Cascade Classification).注意,新版本号的C++接口除了Haar特征以外 ...
随机推荐
- Bootstrap Modal 框 alert confirm loading
/** * Created by Administrator on 2016/5/4. */ /** * 模态窗口 */ window.Modal = { tpls:{ alert:'<div ...
- 不同浏览器创建XMLHttpRequest对象
function getXHR() { if (XMLHttpRequest) { return new XMLHttpRequest(); } else { return new ActiveXOb ...
- Swift - 17 - 数组的初始化
import UIKit // 声明数组 var array = ["A", "B", "C", "D", " ...
- JavaScript验证身份证号
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncodin ...
- Android学习-----Button点击事件几种写法
Button点击事件:大概可以分为以下几种: 匿名内部类 定义内部类,实现OnClickListener接口 定义的构造方法 用Activity实现OnClickListener接口 指定Button ...
- HTML5拖放
HTML5拖放 <!doctype html> <html> <head> <meta charset="UTF-8"> <t ...
- 移动H5前端性能优化指南[托尼托尼研究所]
概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网络平均338KB/s(2. ...
- Asp.net mvc中Controller的返回值
(1)EmptyResult:当用户有误操作或者是图片防盗链的时候,这个EmptyResult就可以派上用场,返回它可以让用户啥也看不到内容,通过访问浏览器端的源代码,发现是一个空内容: public ...
- nutch fetcher.server.delay
1 配置因素 <property> <name>fetcher.server.delay</name> <value>0.0</value&g ...
- request.getParameterMap();
Map<String, String[]> map = request.getParameterMap(); for(Map.Entry<String,String[]> e: ...