【原/转】opencv的级联分类器训练与分类全程记录
众所周知,opencv下有自带的供人脸识别以及行人检测的分类器,也就是说已经有现成的xml文件供你用。如果我们不做人脸识别或者行人检测,而是想做点其他的目标检测该怎么做呢?答案自然是自己训练一个特定的训练器。opencv里面比较常用的分类器有svm以及级联分类器,svm的训练以及分类很简单,这里不再赘述,这里谈谈级联分类器的训练。级联分类器可是好东西,opencv已经封装了多尺度检测方法(multiScaleDetector)以及绘制外接矩形的方法,这两个方法为目标检测提供了非常大的便利性。以下是本系列教程的总体流程:
1.训练前的准备:opencv_createsamples.exe和 opencv_traincascade.exe程序的编译
2.级联分类器的训练
3.级联分类器的应用
===================
1.训练的准备在开始训练分类器前需要先获取到opencv_createsamples.exe以及opencv_traincascade.exe,有两种方式:第一自己编译,可以按照博客的内容自己编译,不过按照该方法最后运行出来的结果没有这两个可执行程序产生;第二拿别人编译好的文件,从链接http://en.pudn.com/downloads204/sourcecode/graph/texture_mapping/detail958471_en.html处下载整个工程,在bin目录下有这两个文件,不过是opencv2.2版本的不影响,要用的时候把整个工程的文件(exe+dll)同时拷出来,否则会报“找不到dll”的错误。
2.分类器的训练:
按照帖子http://jingyan.baidu.com/article/4dc40848f50689c8d946f197.html的操作一步步做下去,注意事项见:
http://blog.csdn.net/xidianzhimeng/article/details/10470839
结合自己的经验补充如下:
1.在train时,numPos是指每个stage上用的正样本数,一般取vec里面的正样本数的90%;
目前卡在错误:
===== TRAINING 0-stage =====
<BEGIN
POS count : consumed 16 : 16
Train dataset for temp stage can not be filled. Branch training terminated.
找了半天资料试了之后仍旧无解,准备换台机子试试,to be continue...
【原/转】opencv的级联分类器训练与分类全程记录的更多相关文章
- opencv:级联分类器训练(cascade classifier training)(两个分类器的区别)
# 介绍 级联分类器包括两个工作阶段:训练(traning),检测(detection).检测阶段在文档<objdetect module of general OpenCV documenta ...
- OpenCV开发笔记(七十一):红胖子8分钟带你深入级联分类器训练
前言 红胖子,来也! 做图像处理,经常头痛的是明明分离出来了(非颜色的),分为几块区域,那怎么知道这几块区域到底哪一块是我们需要的,那么这部分就涉及到需要识别了. 识别可以自己写模板匹配.特征 ...
- opencv的级联分类器(mac)
级联分类器的介绍:级联分类器训练 因为要训练负样本,windows电脑有些问题,所以就只能有mac进行训练. 在windows中训练,准备了负样本之后,进行三步. 1.opencv_createsam ...
- 如何利用OpenCV自带的级联分类器训练程序训练分类器
介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...
- 级联分类器训练-----OpenCV
关键词:级联分类器.opencv_traincascade 下面简述操作过程: 准备正负样本:neg.pos 正负样本路径生成:dir /a/b>path.txt //path:pos or n ...
- 机器学习-分类器-级联分类器训练(Train CascadeClassifier )
一.简介: adaboost分类器由级联分类器构成,"级联"是指最终的分类器是由几个简单分类器级联组成.在图像检测中,被检窗口依次通过每一级分类器,这样在前面几层的检测中大部分的候 ...
- OpenCV使用级联分类器实现人脸检测
一.概述 案例:使用opencv级联分类器CascadeClassifier+其提供的特征数据实现人脸检测,检测到人脸后使用红框画出来. API介绍:detectMultiScale( InputAr ...
- opencv人脸检测分类器训练小结
这两天在初学目标检测的算法及步骤,其中人脸检测作为最经典的算法,于是进行了重点研究.该算法最重要的是建立人脸检测分类器,因此我用了一天的时间来学习分类器的训练.这方面的资料很多,但是能按照一个资料运行 ...
- OpenCV人脸识别-训练级联分类器
OpenCV中以及附带了训练好的人脸特征分类器,3.2版本的有三种: 分别是LBP,Haar,Hug 在Data目录下. 也可以训练自己的特征库,具体参照如下: 级联分类器训练 — OpenCV 2. ...
随机推荐
- iOS app开发资料整理
Objective C快速入门: http://blog.csdn.net/totogo2010/article/details/7632384 http://www.cocoachina.com/i ...
- 爬虫技术 -- 进阶学习(七)简单爬虫抓取示例(附c#代码)
这是我的第一个爬虫代码...算是一份测试版的代码.大牛大神别喷... 通过给定一个初始的地址startPiont然后对网页进行捕捉,然后通过正则表达式对网址进行匹配. List<string&g ...
- [Python] Magic editor in Pycharm
From: http://blog.csdn.net/u013088062/article/details/50249751 From:http://blog.csdn.net/u013088062/ ...
- jQuery的maskedinput插件 设置input掩码
一.下载插件 http://digitalbush.com/projects/masked-input-plugin/二.属性a: 表示只能输入大小写字母9:表示只能输入0-9之间的数字*:a和9的 ...
- Android 学习笔记之AndBase框架学习(二) 使用封装好的进度框,Toast框,弹出框,确认框...
PS:渐渐明白,在实验室呆三年都不如在企业呆一年... 学习内容: 1.使用AbActivity内部封装的方法实现进度框,Toast框,弹出框,确认框... AndBase中AbActivity封 ...
- 警惕SQL语句陷井
以下SQL段,大家认为结果是什么呢? DECLARE @A VARCHAR(50) SET @A='Zuowenjun.cn' SELECT TOP 1 @A=ISNULL(FIELDNAME,'DE ...
- struts2基础——请求与响应、获取web资源
一.请求与响应 Action1.含义:(1) struts.xml 中的 action 元素,也指 from 表单的 action 属性,总之代表一个 struts2 请求.(2) 用于处理 Stru ...
- c++转C#
//c++:HANDLE(void *) ---- c#:System.IntPtr //c++:Byte(unsigned char) ---- ...
- 自定义ConfigurationSection,创建多个嵌套的ConfigurationElementCollection节点
由于接口地址都是固定的,所以想到使用自定义节点,来将接口都配置到web.config中. 很快,v1.0版本出炉: public class RequestConfigSection : Config ...
- 详细介绍ASP.NET页面间数据传递的使用方法
源码:http://www.jinhusns.com/Products/Download/?type=xcj 在ASP.NET中,页面间数据传递的方法有很多.下面为大家总结一下,页面间数据传递的方法. ...