opencv-机器学习章节介绍
概念
1.机器学习:训练样本,特征,分类器。最需要的是特征。
2.深度学习:海量的训练数据,神经网络。最需要的是样本多一些。
特征
Hear特征一般是人脸检测用到的
Hog特征一般是物体检测用到的
分类器
特征提取完成之后如何判决,这就是我们的分类器
区别
区分ios和安卓系统?
机器学习可以进行特征提取,ios 三个字母,Android 七个字母。这就是一种特征上的差别
单词的个数(特征) num判决(分类器) 这就可以是一个简单的分类器。
深度学习: 神经网络训练自己抽取特征,有可能把更多特征抽取出来。
我们并不知道深度学习的神经网络抽取了什么样的特征(可能是logo,可能是外观),进行最终判别。
机器学习的过程
样本准备:比如视频获取样本。
获取机器学习的特征
用分类器对于机器学习的特征进行分类
Hear特征
Haar特征主要用于人脸识别上,它在人脸识别上的概率非常的高,已经可以达到商用。
Hear特征是有一系列模板构成,有基础类型,核心类型,所有类型,通过这些模板就可以对Hear特征进行计算

Hear特征公式(三个公式一样):

Haar特征遍历:
我们并不知道人脸位于我们图像的哪个位置,所以我们需要使用haar特征进行遍历
另外如果模板不合适,我们自己可以进行调整。
正是由于遍历导致,Hear特征的运算量非常的大,所以外国人想出了一个办法---积分图

运用积分图,我们可以很快的进行运算。
Adabooat分类器
在我们有了特征之后就该使用分类器进行分类,或者说判决。

最后haar特征 + Adaboost 实现人脸识别
haar 由一系列模板组成,adboost分类器分为三级(强分类器,弱分类器,node节点)
Hog特征

Hog由一系列的窗体组成: 蓝色矩形框,红色block模块,绿色的cell模块。我们要计算cell模块中每一个像素的梯度。我们还要计算它的浮值和方向。
根据浮值与方向进行直方图的统计最后得到hog特征。
hog在进行梯度计算的时候同样有一个模板,加上SVM,实现小狮子识别。
机器学习的最后一步,预测或检验特征是否有效。
opencv-机器学习章节介绍的更多相关文章
- OpenCV 编程简单介绍(矩阵/图像/视频的基本读写操作)
PS. 因为csdn博客文章长度有限制,本文有部分内容被截掉了.在OpenCV中文站点的wiki上有可读性更好.而且是完整的版本号,欢迎浏览. OpenCV Wiki :<OpenCV 编程简单 ...
- Embedded Linux Primer----嵌入式Linux基础教程--章节介绍
章节介绍 第一章,“导引”,简要介绍了Linux被迅速应用在嵌入式环境的驱动因素,介绍了与嵌入式Linux相关的几个重要的标准和组织. 第二章,“第一个嵌入式经历”,介绍了与后几章所构建的嵌入式Lin ...
- Java机器学习软件介绍
Java机器学习软件介绍 编写程序是最好的学习机器学习的方法.你可以从头开始编写算法,但是如果你要取得更多的进展,建议你采用现有的开源库.在这篇文章中你会发现有关Java中机器学习的主要平台和开放源码 ...
- OpenCV基础知识介绍
1.图像与矩阵 一般来说,图像是一个标准的矩形,有着宽度(width)和高度(height).而矩阵有着行(row)和列(column),矩阵的操作在数学和计算机中的处理都很常见且成熟,于是很自然的就 ...
- OpenCV库文件介绍
以前都是直接用opencv,都没有仔细研究过,这次把库文件都介绍一下. 1.build和source 当我们安装完opencv中,你会发现在opencv文件夹中有两个文件夹,build和source, ...
- OpenCV机器学习库函数--SVM
svm分类算法在opencv3中有了很大的变动,取消了CvSVMParams这个类,因此在参数设定上会有些改变. opencv中的svm分类代码,来源于libsvm. #include "o ...
- [opencv]opencv主要组件介绍
[calib3d]--其实就是就是Calibration(校准)加3D这两个词的组合缩写.这个模块主要是相机校准和三维重建相关的内容.基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性 ...
- OpenCV支持向量机(SVM)介绍
支持向量机(SVM)介绍 目标 本文档尝试解答如下问题: 如何使用OpenCV函数 CvSVM::train 训练一个SVM分类器, 以及用 CvSVM::predict 测试训练结果. 什么是支持向 ...
- Google TensorFlow 机器学习框架介绍和使用
TensorFlow是什么? TensorFlow是Google开源的第二代用于数字计算(numerical computation)的软件库.它是基于数据流图的处理框架,图中的节点表示数学运算(ma ...
- Opencv模块功能介绍
本文为原创作品,转载请注明出处 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/ 站在巨 ...
随机推荐
- 重新认识synchronized(下)
synchronized既保证原子性,又保证内存可见性,是一种线程同步的方式,是锁机制的一种java实现.synchronized的实现基于JVM底层,JVM是基于monitor实现的,而monito ...
- 关于:cross_validation.scores
# -*- coding: utf-8 -*- """ Created on Wed Aug 10 08:10:35 2016 @author: Administrato ...
- 【Python环境】matplotlib - 2D 与 3D 图的绘制
2015-10-30数据科学自媒体 类MATLAB API 最简单的入门是从类 MATLAB API 开始,它被设计成兼容 MATLAB 绘图函数. 让我们加载它: from pylab import ...
- onclick事件没有反应的五种可能情况
转自:https://blog.csdn.net/qujing_1120/article/details/76853039 onclick=”alert()” 事件没有反应的几种情况.第一:<i ...
- Struts2+Hibernate+Spring 整合示例
转自:https://blog.csdn.net/tkd03072010/article/details/7468769 Struts2+Hibernate+Spring 整合示例 Spring整合S ...
- Android排错: has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added here
异常场景: 经常在应用中需要处理一些耗时的工作,诸如读取大文件.访问网络资源等.为了避免因程序假死而带来的糟糕用户体验,通常我们可以通过线程+Handler或者Android提供的AsyncTask来 ...
- 每天一道算法题(12)——和为n的连续正数序列或者随机数
题目:输入一个正数n,输出所有和为n 连续正数序列.例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3 个连续序列1-5.4-6 和7-8. 1.思路 尊崇以下策略: (1)对 ...
- [cf557d]Vitaly and Cycle(黑白染色求奇环)
题目大意:给出一个 n 点 m 边的图,问最少加多少边使其能够存在奇环,加最少边的情况数有多少种. 解题关键:黑白染色求奇环,利用数量分析求解. 奇环:含有奇数个点的环. 二分图不存在奇环.反之亦成立 ...
- Hibernate和JPA
ORM(Object/Relational Mapping : 对象关系映射)就是利用描述对象和数据库之间映射的元数据,自动(且透明)的将java应用程序中的对象持久化到关系数据库的表中.HIbern ...
- JS中的!= 、== 、!==、===的用法和区别
与c++中每一种类型都有明确的的定义不同:因JS中var定义存在,未具体区分类型,!=与==不能包含所有的条件,故加入!==与===用法: var num = 1; var str = '1'; va ...