Haar级联分类器概述

—— 才疏学浅, 难免有错误和遗漏, 欢迎补充和勘误.

  • Haar级联分类器是基于Haar-like特征,运用积分图加速计算,并用Adaboost训练的强分类器级联的方法来进行人脸检测。
  • 目前常用Haar-like特征的分类有:

图1. Haar-like特征分类

  • 首先定义每个Haar-like特征的特征值 fif_ifi​为:
    featurevalue i=_{i}=i​= weight white ∑p∈wite p\sum_{p \in \text { wite }} p∑p∈ wite ​p - weightblack ∑pEblack p\sum_{p \text { Eblack }} p∑p Eblack ​p
    即 fif_ifi​=白色区域像素-黑色区域像素,weight为权重值,其是为了白、黑两种矩形区域的像素数目一致,保证在灰度绝对均匀的地方其特征值是0。
  • Haar-like特征的值经过运算可以反映该区域的灰度变化情况,将一副输入图像的每一个区域也做类似的运算后与训练集中图像的Haar-like特征值对比,如图2所示,根据生活实际我们有以下常识:在人脸上鼻梁两边部位的颜色比鼻梁处更深,两个眼睛部位的颜色比旁边脸颊处更深等,所以可以据此判断输入图像是否具有人脸特征。

图2. Haar-like特征在人脸图中的应用

  • 特征模板经过平移、伸缩变换得到一系列新的矩形特征。矩形特征根据其类型、位置和大小的不同,可以在一副图像中可以生成非常多的矩形特征从而增大了计算压力,所以需要运用积分图的方法来提高特征值的计算效率。
  • 积分图的构造方式是:位于图像 (i,j)(i,j)(i,j)处的积分图 ii(i,j)ii(i,j)ii(i,j)是该处左上角方向所有像素 f(k,l)f(k,l)f(k,l)的和:integral_image (i,j)=ii(i,j)=∑k≤i,l≤jf(k,l)(i, j)=i i(i, j)=\sum_{k \leq i, l \leq j} f(k, l)(i,j)=ii(i,j)=∑k≤i,l≤j​f(k,l)
  • 积分图在图像各个点的处上储存了其左上角所有像素的和,下面是对图像中某一区域运用积分图计算Haar-like特征来得到其特征值:

图3. 矩形特在坐标中的表示

区域A的像素值为: ii(5)+ii(1)−ii(2)−ii(4)ii(5) + ii(1) - ii(2) - ii(4)ii(5)+ii(1)−ii(2)−ii(4),
区域B的像素值为: ii(6)+ii(2)−ii(5)−ii(3)ii(6) + ii(2) - ii(5) - ii(3)ii(6)+ii(2)−ii(5)−ii(3)。
该矩形特征的特征值为:ii(5)+ii(1)−ii(2)−ii(4)−[ii(6)+ii(2)−ii(5)−ii(3)]=[ii(5)−ii(4)]+[ii(3)−ii(2)]−[ii(2)−ii(1)]−[ii(6)−ii(5)]\begin{array}{l} ii(5) + ii(1) - ii(2) - ii(4) - \left[ {ii(6) + ii(2) - ii(5) - ii(3)} \right]\\ = \left[ {ii(5) - ii(4)} \right] + \left[ {ii(3) - ii(2)} \right] - \left[ {ii(2) - ii(1)} \right] - \left[ {ii(6) - ii(5)} \right] \end{array}ii(5)+ii(1)−ii(2)−ii(4)−[ii(6)+ii(2)−ii(5)−ii(3)]=[ii(5)−ii(4)]+[ii(3)−ii(2)]−[ii(2)−ii(1)]−[ii(6)−ii(5)]​

  • 对于mmm个正、负样本图像中的某个固定特征fi计算出每张图像该特征的特征值,将计算出的mmm个特征值进行排序和打标识,然后根据上节(基于AdaBoost级联分类器的人脸/眼睛位置检测算法概述)1.中的原理取到最优阈值并获得该特征下的最优弱分类器,根据上节2.和3.原理来训练出该特征的强分类器,最终通过级联的方式获得Haar级联分类器。下图为运用Haar级联分类器来检测人脸的过程:

图4. Haar级联分类器检测人脸过程

Haar级联分类器概述相关推荐

  1. haar级联分类器车辆检测_Haar级联分类器Open CV用于人脸检测的术语

    haar级联分类器车辆检测 Haar级联分类器概述(An overview of Haar cascade classifier) Haar cascade classifier is an open ...

  2. 【youcans 的图像处理学习课】22. Haar 级联分类器

    专栏地址:『youcans 的图像处理学习课』 文章目录:『youcans 的图像处理学习课 - 总目录』 [youcans 的图像处理学习课]22. Haar 级联分类器 3. Haar 特征及其加 ...

  3. haar级联分类器--人脸检测和匹配

    分类器链接,https://download.csdn.net/download/fanzonghao/10582586 代码: import numpy as np import cv2# 实例化人 ...

  4. OpenCV开发笔记(五十四):红胖子8分钟带你深入了解Haar级联分类器进行人脸检测(图文并茂+浅显易懂+程序源码)

    若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/ ...

  5. 基于OpenCV Haar实战级联分类器的使用

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 近年来,对象检测引起了广泛的关注.从智能手机到交通监控,目标检测已 ...

  6. Pyhton,OpenCV对象检测之——Haar级联人脸及眼睛检测

    Pyhton,OpenCV对象检测之--Haar级联人脸及眼睛检测 1. 效果图 2. 原理 2.1 Haar人脸检测原理 2.2 Haar级联预训练的模型 3. 源码 3.1 图像面部及眼睛检测 3 ...

  7. 利用OpenCV的级联分类器类CascadeClassifier和Haar特征实现人脸区域的检测

    级联分类器是将若干个分类器进行连接,从而构成一种多项式级的强分类器.级联分类器使用前要先进行训练,怎么训练呢?用目标的特征值去训练,对于人脸来说,通常使用Haar特征进行训练. Haar特征是由M.O ...

  8. Haar特征和级联分类器目标检测介绍及应用

    文章目录 Haar特征和级联分类器目标检测介绍及应用 1. Haar特征 2. 级联分类器 3. 实现步骤 4.尝试训练自己的级联分类器 4. 应用示例 Haar特征和级联分类器目标检测介绍及应用 H ...

  9. haar分类器详解(Haar特征,积分图,adaboost算法,筛选式级联分类器),DCG介绍 --文献阅读报告《基于素描对视频的人脸识别研究》

    基于素描对视频的人脸识别--haar分类器详解,haar特征,adaboost,级联强分类器,积分图,DCG 背景 算法总体流程 1.预处理--识别出人脸并将人脸图像标准化 haar特征 积分图--加 ...

最新文章

  1. 小规模网络数据公开数据_大规模的在线公开课程曾经是100%免费的。 但是他们没有那样做。...
  2. 第十六周项目3:max带来的冲突
  3. Oracle查看用户权限
  4. python元类_python中的元类 metaclass
  5. C# 之 HttpResponse 类
  6. java8 javafx_JavaFX技巧8:美丽深层
  7. php网站的编辑器,5款适合PHP使用的HTML编辑器推荐
  8. 边界条件(求解偏微分方程的边界条件)
  9. 尚硅谷和尚学堂的区别_在北京尚学堂学习的009天
  10. showdoc windows 搭建_showdoc的安装和使用
  11. 服务器保持与Mysql的连接
  12. 清理linux清理垃圾文件夹,让Ubuntu系统释放空间最有效的五种方法(清除不需要的或垃圾文件)...
  13. 雅礼集训 Day6 T2 Equation 解题报告
  14. SQL Server学习之路(一):建立数据库、建立表
  15. Android Studio的适配器Adapter以及Adapterview的使用
  16. 计算机网络自顶向下 1
  17. 离线ROS API文档(Zeal或Dash)
  18. 计算机编程不等于符号,不等于符号(java)
  19. 【python + FFmpeg】对视频进行分辨率改变,(带音频)
  20. PS实现割掉狗熊耳朵流血效果

热门文章

  1. python的matmul_浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
  2. springboot中mybatisplus基于注解的多对多级联查询
  3. 【BJOI2006】bzoj1001 狼抓兔子
  4. C盘下各个文件夹简介
  5. com.showself.utils.DLog
  6. MySQL启动报错:mysql拒绝访问错误5
  7. SixDegrees集团在英国伯明翰新开通一个数据中心
  8. 初学者如何学习FPGA?一文为你讲解清楚
  9. vim退出时提示:q:未找到命令的解决办法
  10. Chrome开发者工具学习笔记