关键词:级联分类器、opencv_traincascade

下面简述操作过程:

  1. 准备正负样本:neg、pos
  2. 正负样本路径生成:dir /a/b>path.txt //path:pos or neg
  3. 正样本训练集生成:opencv_createsamples.exe -info pos\pos.txt -vec pos\pos.vec -num 799 -w 24 -h 24  pause
  4. 样本训练: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适用于环境较复杂情况

注意事项

  1. 若出现报错,首先检查参数设置是否正确;其次可考虑换台机器;最后再考虑更改机器环境配置。
  2. 若长时间停留在某一训练阶段,表明极有可能陷入循环,同时也表明在此阶段分类器已达到较优状态,可先退出(ctr+C)再降低训练级数或调整其他参数。
  3. 若训练效果不理想则考虑增大样本集并修改相关训练参数。

级联分类器训练-----OpenCV的更多相关文章

  1. OpenCV开发笔记(七十一):红胖子8分钟带你深入级联分类器训练

    前言   红胖子,来也!  做图像处理,经常头痛的是明明分离出来了(非颜色的),分为几块区域,那怎么知道这几块区域到底哪一块是我们需要的,那么这部分就涉及到需要识别了.  识别可以自己写模板匹配.特征 ...

  2. 【原/转】opencv的级联分类器训练与分类全程记录

    众所周知,opencv下有自带的供人脸识别以及行人检测的分类器,也就是说已经有现成的xml文件供你用.如果我们不做人脸识别或者行人检测,而是想做点其他的目标检测该怎么做呢?答案自然是自己训练一个特定的 ...

  3. 如何利用OpenCV自带的级联分类器训练程序训练分类器

    介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...

  4. opencv:级联分类器训练(cascade classifier training)(两个分类器的区别)

    # 介绍 级联分类器包括两个工作阶段:训练(traning),检测(detection).检测阶段在文档<objdetect module of general OpenCV documenta ...

  5. 机器学习-分类器-级联分类器训练(Train CascadeClassifier )

    一.简介: adaboost分类器由级联分类器构成,"级联"是指最终的分类器是由几个简单分类器级联组成.在图像检测中,被检窗口依次通过每一级分类器,这样在前面几层的检测中大部分的候 ...

  6. OpenCV人脸识别-训练级联分类器

    OpenCV中以及附带了训练好的人脸特征分类器,3.2版本的有三种: 分别是LBP,Haar,Hug 在Data目录下. 也可以训练自己的特征库,具体参照如下: 级联分类器训练 — OpenCV 2. ...

  7. opencv的级联分类器(mac)

    级联分类器的介绍:级联分类器训练 因为要训练负样本,windows电脑有些问题,所以就只能有mac进行训练. 在windows中训练,准备了负样本之后,进行三步. 1.opencv_createsam ...

  8. 使用OpenCV训练好的级联分类器识别人脸

    一.使用OpenCV训练好的级联分类器来识别图像中的人脸 当然还有很多其他的分类器,例如表情识别,鼻子等,具体可在这里下载: OpenCV分类器 import cv2 # 矩形颜色和描边 color ...

  9. 利用opencv中的级联分类器进行人脸检測-opencv学习(1)

    OpenCV支持的目标检測的方法是利用样本的Haar特征进行的分类器训练,得到的级联boosted分类器(Cascade Classification).注意,新版本号的C++接口除了Haar特征以外 ...

随机推荐

  1. canvas --> getImageData()

    getImageData() 使用时有跨域问题 设置img的属性 crossOrigin="anonymous"可解决crossOrigin的问题 <img src=&quo ...

  2. 解决CSS中float:left后需要clear:both清空的繁琐步骤(转)

      之前,因为公司专门有CSS+DIV的切片设计师,所以我一直都是注重程序的设计与开发.现在,因为接了一些Web网站的项目需要制作,就在空闲时间学习起了CSS.Jquery. 现在,大部分的横排导航都 ...

  3. ManagementException:WMI异常处理介绍

    .NET调用WMI后无论是同步调用还是异步调用,都会产生返回一个int类型的执行结果.如果成功,则返回0.如果不是0,则有对应错误码表示发生了什么错误. 根据咱们这个系列的博文,我总结了关于进程,服务 ...

  4. 016_openxml_forxml

    016_openxml_forxml --openxml*********************************************************************** ...

  5. 从cellForRowAtIndexPath 看cell的重用机制

    今天突然发现一个问题,由于对UITableViewCell 的重用机制不是很了解,让我纠结很久: 用过reloadData时候,会调用cellForRowAtIndexPath方法,但是请看以下2种c ...

  6. UIGestureRecognizer手势识别

    UIGestureRecognizer 1.#import "ViewController.h"2.3.@interface ViewController ()<UIGest ...

  7. windows下安装CI框架

    CI框架是一个非常流行的 mvc框架, CI框架如何安装和使用,在CI中文网已经讲的比较详细了 ,这里记录下几个需要注意的地方. 一. index.php问题 把压缩包下载解压到项目根目录即可运行里面 ...

  8. java学习——IO流

    字符流的由来:其实就是:字节流读取文字字节数据后,不直接操作而是先查指定的编码表.获取对应的文字.在对这个文字进行操作.简单说:字节流+编码表 ---------------------------- ...

  9. 分片传输——send和recv函数

    最近在写socket编程收发数据,对于如何发送和接收大量数据,一直在思考.send和recv一般缓存区大小为4K,但是如果你要传输的数据超过了这个标准该如何做呢. 我想到的就是如改写write和rea ...

  10. Java学习----你可以告诉对象该怎么做(方法中传参)

    对象根据参数传递来的条件执行相应的功能. package org.demo.app2; public class App2 { public void print(String msg, int nu ...