概念

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-机器学习章节介绍的更多相关文章

  1. OpenCV 编程简单介绍(矩阵/图像/视频的基本读写操作)

    PS. 因为csdn博客文章长度有限制,本文有部分内容被截掉了.在OpenCV中文站点的wiki上有可读性更好.而且是完整的版本号,欢迎浏览. OpenCV Wiki :<OpenCV 编程简单 ...

  2. Embedded Linux Primer----嵌入式Linux基础教程--章节介绍

    章节介绍 第一章,“导引”,简要介绍了Linux被迅速应用在嵌入式环境的驱动因素,介绍了与嵌入式Linux相关的几个重要的标准和组织. 第二章,“第一个嵌入式经历”,介绍了与后几章所构建的嵌入式Lin ...

  3. Java机器学习软件介绍

    Java机器学习软件介绍 编写程序是最好的学习机器学习的方法.你可以从头开始编写算法,但是如果你要取得更多的进展,建议你采用现有的开源库.在这篇文章中你会发现有关Java中机器学习的主要平台和开放源码 ...

  4. OpenCV基础知识介绍

    1.图像与矩阵 一般来说,图像是一个标准的矩形,有着宽度(width)和高度(height).而矩阵有着行(row)和列(column),矩阵的操作在数学和计算机中的处理都很常见且成熟,于是很自然的就 ...

  5. OpenCV库文件介绍

    以前都是直接用opencv,都没有仔细研究过,这次把库文件都介绍一下. 1.build和source 当我们安装完opencv中,你会发现在opencv文件夹中有两个文件夹,build和source, ...

  6. OpenCV机器学习库函数--SVM

    svm分类算法在opencv3中有了很大的变动,取消了CvSVMParams这个类,因此在参数设定上会有些改变. opencv中的svm分类代码,来源于libsvm. #include "o ...

  7. [opencv]opencv主要组件介绍

    [calib3d]--其实就是就是Calibration(校准)加3D这两个词的组合缩写.这个模块主要是相机校准和三维重建相关的内容.基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性 ...

  8. OpenCV支持向量机(SVM)介绍

    支持向量机(SVM)介绍 目标 本文档尝试解答如下问题: 如何使用OpenCV函数 CvSVM::train 训练一个SVM分类器, 以及用 CvSVM::predict 测试训练结果. 什么是支持向 ...

  9. Google TensorFlow 机器学习框架介绍和使用

    TensorFlow是什么? TensorFlow是Google开源的第二代用于数字计算(numerical computation)的软件库.它是基于数据流图的处理框架,图中的节点表示数学运算(ma ...

  10. Opencv模块功能介绍

    本文为原创作品,转载请注明出处 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/   站在巨 ...

随机推荐

  1. Dataguard ORA-19909 ORA-01110

    在创建ORACLE 10G Dataguard时,报错: Datafile 1 (ckpscn 24967685451) is orphaned on incarnation#=6 MRP0: Bac ...

  2. spring MVC 异常处理整理

    一.异常结构 1.异常由外到内如下: web服务器处理异常--->web应用里面web.xml处理异常--->Spring框架处理异常---->控制器注释处理异常--->控制器 ...

  3. 问题:C#属性;结果:c# 属性

    c# 属性 属性:get { //读属性代码 } set { //写属性代码 } public class Person{private string name;public string Name{ ...

  4. mysql show status 参数解析

    状态名 作用域 详细解释 Aborted_clients Global 由于客户端没有正确关闭连接导致客户端终止而中断的连接数 Aborted_connects Global 试图连接到MySQL服务 ...

  5. java GC是在什么时候,对什么东西,做了什么事情?

    1.新生代有一个Eden区和两个survivor区,首先将对象放入Eden区,如果空间不足就向其中的一个survivor区上放,如果仍然放不下就会引发一次发生在新生代的minor GC,将存活的对象放 ...

  6. ARQ

    自动重传请求(Automatic Repeat-reQuest,ARQ)是OSI模型中数据链路层和传输层的错误纠正协议之一.它通过使用确认和超时这两个机制,在不可靠服务的基础上实现可靠的信息传输.如果 ...

  7. 开发工具 idea 激活方法

    1. 到网站 http://idea.lanyus.com/ 获取注册码. 2.填入下面的license server: http://intellij.mandroid.cn/ http://ide ...

  8. PTA 估值一亿的AI核心代码

    题面 比赛时被模拟题打自闭了,本来以为是个比较麻烦的模拟,实际上只要会C++的regex不到40行就能把这个题过掉了(orz smz) regex是用来处理正则表达式,里面有个函数regex_repl ...

  9. JavaWeb面试题 有用

    ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获取数据,然后用JavaScript来操作DOM从而更新页面的局部显示. Ajax的优点: 1.最大的一点是页面 ...

  10. STM32 C++编程 002 GPIO类

    使用 C++ 语言给 STM32 编写一个 Gpio 类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专 ...