概念

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. PowerDesigner生成sql脚本时去掉双引号并把字段名设为大写

    Database菜单—Edit Current RDBMS 找到Script---sql—Format--- CaseSensitivityUsingQuote,把它设置为NO 这样再用sql pre ...

  2. Java中Return和Finally执行顺序的实现

    下面这段代码的执行结果是怎样的呢? publc int test(){ int x; try{ x = 1; return x; }catch(Exception e){ x = 2; return ...

  3. SpringMVC的Date与String互转

    摘要:        项目里经常需要用到日期和String之间的转换,比如后台的Date对象以Json形式返回给前端页面的时候,希望转换为yyyy-MM-dd HH:mm:ss格式的字符串,而前端页面 ...

  4. 问题:Server.MapPath;结果:Server.MapPath的命名空间

    习惯用Access的朋友都知道:ADO.NET链接Access数据库经常这么写:strcon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=&q ...

  5. openGL一些概念02

    着色器程序 着色器程序对象(Shader Program Object)是多个着色器合并之后并最终链接完成的版本. 如果要使用刚才编译的着色器我们必须把他们链接为一个着色器程序对象,然后在渲染对象的时 ...

  6. python之特殊方法

    特殊方法的定义: 1.定义在某些class当中 2.不需要直接调用 3.Python的某些函数或者是操作符会调用相应的特殊方法 特殊方法很多,我们只需要编写用到的特殊方法,以及有关联性的特殊方法. — ...

  7. python爬虫框架(2)--PySpider框架安装配置

    1.安装 1.phantomjs PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API.它全面支持web而不需浏览器支持,其快速.原生支持各种Web标准:DOM 处理 ...

  8. BitmapCutter.Core 引用步骤

    1 将BitmapCutter.Core项目或者dll引用到需要的项目底下. 2 前台页面 <img id="imgPreview1" title="点击上传图片& ...

  9. Class类动态加载类的用法

    编译时刻加载类出现的问题:一个功能有错,所有功能都用不了 动态加载类:

  10. springmvc urlpattern配置详解

    静态资源无法访问问题的解决方案: 1.使用Tomcat默认的Servlet解决:在web.xml中加以下代码