opencv分类器训练
文章平均质量分 54
liulina603
治疗对未来焦虑的良药就在今天你自己的所为
展开
-
背景建模与前景检测(Background Generation And Foreground Detection)
作者:王先荣前言 在很多情况下,我们需要从一段视频或者一系列图片中找到感兴趣的目标,比如说当人进入已经打烊的超市时发出警报。为了达到这个目的,我们首先需要“学习”背景模型,然后将背景模型和当前图像进行比较,从而得到前景目标。背景建模 背景与前景都是相对的概念,以高速公路为例:有时我们对高速公路上来来往往的汽车感兴趣,这时汽车是前景,而路面以及周围的环境是背景;有时我转载 2012-09-21 09:44:19 · 2951 阅读 · 0 评论 -
Hog+svm行人检测
(1)第一个工程是用来训练分类器和检测正样本检测率的// PeopleDetectHog.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include "cv.h" #include "highgui.h" #include "stdafx.h" #include转载 2012-12-17 22:39:59 · 10992 阅读 · 11 评论 -
【OpenCV】基于Adaboost和Haar-like特征人脸识别
转载请注明出处:http://blog.csdn.net/xiaowei_cqu/article/details/7670703Paul Viola 和Miachael Jones等利用Adaboost算法构造了人脸检测器,称为Viola-Jones检测器,取得很好的效果。之后Rainer Lienhart和Jochen Maydt用对角特征,即Haar-like特征对检测器进行扩展。Open转载 2013-01-08 08:20:55 · 2948 阅读 · 0 评论 -
OpenCV源码中Haar训练及提取特征的代码
我想计算Haar特征,自己手动计算感觉挺麻烦(主要在取各个不同位置、不同scale的特征),而且可能速度不够。OpenCV 的这个把所有东西都封装起来了,由于我的online-boosting和它的框架不一样,不能直接使用。我在源码中看了半天,发现里面又有 internal haar feature又有fast haar feature,还有什么Thaar feature。源码中注释比较少,看转载 2012-12-04 16:40:36 · 17693 阅读 · 7 评论 -
Adaboost分类器 haar特征 整理
Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。其算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后的决策分类原创 2013-03-04 11:23:12 · 22136 阅读 · 7 评论 -
cv::CascadeClassifier类在多次读取新版本xml模
在现在的OpenCV版本中,使用级联分类器做人脸检测的时候,有两种选择:一是使用老版本的CvHaarClassifierCascade,一是使用新版本的CascadeClassifier类。老版本的分类器只支持类Haar特征,而新版本的分类器既可以使用Haar,也可以使用LBP特征。 类CascadeClassifier中实际上封装了新旧两种分类器,对于老版本的xml模型文件,Casca转载 2013-02-26 09:23:51 · 3772 阅读 · 1 评论 -
Haar特征与积分图
Haar特征与积分图1. Adaboost方法的引入1.1 Boosting方法的提出和发展 在了解Adaboost方法之前,先了解一下Boosting方法。 回答一个是与否的问题,随机猜测可以获得50%的正确率。如果一种方法能获得比随机猜测稍微高一点的正确率,则就可以称该得到这个方法的过程为弱学习;如果一个方法可以显著提高猜测的正确率,转载 2013-02-27 13:14:42 · 37413 阅读 · 25 评论 -
目标检测的图像特征提取之(一)HOG特征
1、HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功。需要提醒的是,HOG+SVM进行行人检测的方法是法国研究人员Dalal转载 2012-12-13 15:41:56 · 261502 阅读 · 59 评论 -
目标检测的图像特征提取之(二)LBP特征
LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部纹理特征的算子;它具有旋转不变性和灰度不变性等显著的优点。它是首先由T. Ojala, M.Pietikäinen,和 D. Harwood 在1994年提出,用于纹理特征提取。而且,提取的特征是图像的局部的纹理特征; 1、LBP特征的描述 原始的LBP算子定义为在3*3的窗口内,以窗转载 2012-12-13 15:44:10 · 27134 阅读 · 6 评论 -
cxcore100.dll错误提示找不到的解决方法
我安装了OpenCV的不同版本,用OpenCV写的程序运行时,出现找不到cxcore100.dll的错误? 问题原因: 1)查下有没有设置系统环境变量。 2)如果加了环境变量,还是出错,就把OpenCV下bin目录下的.dll文件都粘贴到system32目录下. 我就是这么解决的。原创 2012-11-02 08:50:34 · 3385 阅读 · 1 评论 -
opencv 中SVM + PCA 人脸识别
这一周一直都在弄人脸识别的东西,这个也可以算是我个人第一个DIY项目,虽然没有在MFC框架下来实现,但我觉得 SVM + PCA 人脸识别这个东西 最主要的还是算法 和效果没有必要一定要在MFC框架下去实现。从不懂到慢慢明白一些道理,写这样一个技术文档无非就是怕以后忘记这样一个过程。从这个项目得到的经验:1:我真正领悟到了“二八法则”的真谛。准备加编程阶段看了不少论文,试了不少方法,但转载 2012-10-19 11:23:46 · 14059 阅读 · 10 评论 -
(十二)opencv开发的一点经验
学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那里演示一下,一定要选择静态库使用mfc,而不是选择动态链接库,否则在人家电脑里没有对应的dll文件,是无法运行起来的。可见老师在这方面吃过亏啊。昨天用OpenCV写了个东西,发过去让人家测试,可人家告诉我:“你这土鳖程序在我这无法运行“,好囧啊。这里把我的解决过程记录一下。希望能对大家遇到类似的问题有所帮助。转载 2012-11-08 14:21:34 · 6366 阅读 · 0 评论 -
OpenCV - Mat、CvMat、IplImage类型浅析
OpenCV中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage。 一、Mat类型:矩阵类型,Matrix。 在openCV中,Mat是一个多维的密集数据数组。可以用来处理向量和矩阵、图像、直方图等等常见的多维数据。 Mat有3个重要的方法: 1、Mat mat = imread(const String* filename转载 2012-11-08 16:48:32 · 1311 阅读 · 0 评论 -
OpenCV训练分类器制作xml文档
opencv 2.1网上查的另一种资料训练分类器成功,在此与大家分享。 参考英文资料网址: http://note.sonots.com/SciSoftware/haartraining.html#e134e74e 样本训练要求1、杯子的背景要统一吗,因为有些背景是白色,有些是淡淡的背景色,还有些深色的背景色答:背景色要统一2、整个图的大小就是最外面一个框框起来那么原创 2012-11-14 21:21:00 · 30465 阅读 · 18 评论 -
OpenCV HOGDescriptor 参数图解
最近要做图像特征提取,可能要用下HOG特征,所以研究了下OpenCV的HOG描述子。OpenCV中的HOG特征提取功能使用了HOGDescriptor这个类来进行封装,其中也有现成的行人检测的接口。然而,无论是OpenCV官方说明文档还是各个中英文网站目前都没有这个类的使用说明,所以在这里把研究的部分心得分享一下。 首先我们进入HOGDescriptor所在的头文件,看看它的构造转载 2012-12-13 10:44:14 · 3312 阅读 · 0 评论 -
AdaBoost算法程序介绍说明
关于haartraining的一些解析Ref:http://wiki.opencv.org.cn/forum/viewtopic.php?f=10&t=11129&start=0cvCreateTreeCascadeClassifier/CvTreeCascadeNode包含CvStageHaarClassifier* stage;也就是说找最后一个stage作为最深的叶leaf;原创 2012-12-04 16:44:39 · 4289 阅读 · 0 评论 -
图像处理和图像识别中常用的OpenCV函数(整理)
1、cvLoadImage:将图像文件加载至内存; 2、cvNamedWindow:在屏幕上创建一个窗口; 3、cvShowImage:在一个已创建好的窗口中显示图像; 4、cvWaitKey:使程序暂停,等待用户触发一个按键操作; 5、cvReleaseImage:释放图像文件所分配的内存; 6、cvDestroyWindow:销毁显示图像文件的转载 2012-09-22 12:54:30 · 3339 阅读 · 7 评论 -
cvGetSize与cvSize的区别
CvSize矩形框大小,以像素为精度 typedef struct CvSize{int width; /* 矩形宽 */int height; /* 矩形高 */}CvSize;/* 构造函数 */inline CvSize cvSize( int width, int height );GetSize返回矩阵或图像ROI的大小 CvS原创 2012-09-22 13:01:14 · 17495 阅读 · 0 评论 -
Opencv中的pca算法
对于PCA,一直都是有个概念,没有实际使用过,今天终于实际使用了一把,发现PCA还是挺神奇的。在OPENCV中使用PCA非常简单,只要几条语句就可以了。1、初始化数据//每一行表示一个样本CvMat* pData = cvCreateMat( 总的样本数, 每个样本的维数, CV_32FC1 );CvMat* pMean = cvCreateMat(1, 样本的维数, CV_3转载 2012-10-18 15:32:07 · 3374 阅读 · 0 评论 -
(十一)机器学习中的一个常用算法SVM算法,即支持向量机Support Vector Machine(SVM)
总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西。OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图像处理的初级阶段,我也得加油,深入研究它的算法库。就从ml入手吧,最近做东西遇到随机森林,被搞的头大,深深感觉自己肚子里货太少,关键时刻调不出东西来。切勿浮躁,一点点研究吧。这次就先介绍一下机器学习中的一个常用算法SVM算法,即支持向量机Supp转载 2012-11-08 14:17:14 · 6967 阅读 · 0 评论 -
PCA的一些看法
PCA主元分析,即找出数据中最主要的信息,去除次要的,以降低数据量。具体步骤是:1.对每个样本提取出有用的信息组成一个向量;2.求取出所有样本向量的平均值;3.用每个样本向量减去向量的平均值后组成一个矩阵;4.该矩阵乘以该矩阵的逆为协方差矩阵,这个协方差矩阵是可对角化的,对角化后剩下的元素为特征值,每个特征值对应一个特征向量(特征向量要标准化);5.选取最大的N个特征值(其原创 2012-11-13 08:59:50 · 1895 阅读 · 0 评论 -
OpenCV学习笔记(四十八)——PCA算法实现core
PCA(principal component analysis,主成分分析),又称为k-l变换,我想是大家用的最多的降维手段,对于PCA的理解,我想大神们都各有各的绝招,可以应用的场合也非常多。下面就介绍一下OpenCV中PCA这个类,因为常用,所以这个类相对OpenCV而言显得比较独立,放在了core这部分中。PCA类的成员函数包括构造函数、运算符重载()、project、backProj转载 2012-11-12 16:55:10 · 2731 阅读 · 0 评论 -
利用Hog特征和SVM分类器进行行人检测
之前介绍过Hog特征(http://blog.csdn.net/carson2005/article/details/7782726),也介绍过SVM分类器(http://blog.csdn.net/carson2005/article/details/6453502 );而本文的目的在于介绍利用Hog特征和SVM分类器来进行行人检测。 在2005年CVPR上,来自法国的研究人员转载 2012-11-16 16:48:05 · 3256 阅读 · 4 评论 -
如何用OpenCV自带的adaboost程序训练并检测目标
OpenCV自带的adaboost程序能够根据用户输入的正样本集与负样本集训练分类器,常用于人脸检测,行人检测等。它的默认特征采用了Haar,不支持其它特征。Adaboost的原理简述:(原文)每个Haar特征对应看一个弱分类器,但并不是任伺一个Haar特征都能较好的描述人脸灰度分布的某一特点,如何从大量的Haar特征中挑选出最优的Haar特征并制作成分类器用于人脸检测,这是AdaBo转载 2012-11-16 16:49:18 · 5509 阅读 · 0 评论 -
自己用opencv训练人脸检测的分类器,检测不出人脸
1. 目的:我想熟悉使用opencv的haar训练方法,用在其他的物体检测上。所以我先用了MIT的人脸库来进行训练,得到人脸检测的分类器,如果训练得到的分类器能准确的检测到人脸的话,说明我的训练过程正确,则完全可以将此训练过程用到其他物体上进行训练,从而得到其他物体的分类器;如果没有检测到人脸,说明我的训练过程某些地方还有问题。现在好像就出问题了。我训练出来的xml分类器文原创 2012-11-16 15:26:21 · 5533 阅读 · 2 评论 -
VS中启动OpenMp
怎样在VS中设置编译选项(以启用OpenMP)Open the project's Property Pages dialog box.(在解决方案资源管理器中右击项目图标)打开项目属性对话框Expand the Configuration Properties node. 展开配置属性节点 3. Expand转载 2012-11-19 08:33:10 · 2252 阅读 · 0 评论 -
opencv haar+adaboost使用心得 .
最近在使用opencv里的haar+adaboost做检测,其实早在一年前的无锡已经看过用它做车徽检测,然后再做识别(大众,奔驰...)。这次终于要自己动手做了,网上有很多这方面的资料,感谢大家分享他们的经验。重复的东西这里就不再赘述了,只简单的补充几个大家容易疏忽的东西。step1.首先是准备正负样本,正样本好说,打了标签,解析xml文件,然后做点小旋转就可以用了 负样本就复转载 2012-11-19 08:48:54 · 35377 阅读 · 13 评论 -
关于人脸检测中的Haar特征提取
影响AdaBoost人脸检测训练算法速度很重要的两方面是特征选取和特征计算。选取的特征为矩特征为Haar特征,计算的方法为积分图。(1)Haar特征: Haar特征分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素和减去黑色矩形像素和。在确定了特征形式后 Harr- like特征的数量就取决于训练样本转载 2012-11-29 13:43:59 · 16930 阅读 · 1 评论 -
xml文件转换
opencv 中将级联分类器数据存储为xml文件,读取时非常复杂,为了降低复杂度我将haar分类器数据按最简单的格式存储,只包含纯的数据,不含任何其它冗余信息存储的顺序就是按cascade结构体中个成员的定义顺序来存储的。具体的存储代码: int SaveCascade(CvHaarClassifierCascade *cascade)函数// testtest.cpp :原创 2015-08-11 14:40:12 · 3151 阅读 · 2 评论