• 深度学习之人脸检测算法


    检测方法

    • Haar cascade + opencv

    • HOG + Dlib

    • CNN + Dlib

    • SSD

    • MTCNN

    Haar特征

    1.Haar特征原理综述

    Haar特征是一种反映图像的灰度变化的,像素分模块求差值的一种特征。它分为三类:边缘特征、线性特征、中心特征和对角线特征。用黑白两种矩形框组合成特征模板,在特征模板内用 黑色矩形像素和 减去 白色矩形像素和来表示这个模版的特征值。例如:脸部的一些特征能由矩形模块差值特征简单的描述,如:眼睛要比脸颊颜色要深,鼻梁两侧比鼻梁颜色要深,嘴巴比周围颜色要深等。但矩形特征只对一些简单的图形结构,如边缘、线段较敏感,所以只能描述在特定方向(水平、垂直、对角)上有明显像素模块梯度变化的图像结构。

    2.Haar特征的计算方法

    通过改变特征模板的大小和位置,可在图像子窗口中穷举出大量的特征。特征模板在图像子窗口中扩展(平移伸缩)得到的特征称为“矩形特征”;矩形特征的值称为“特征值”。矩形特征可位于图像任意位置,大小也可以任意改变,所以矩形特征值是矩形模版类别、矩形位置和矩形大小这三个因素的函数。故类别、大小和位置的变化,使得很小的检测窗口含有非常多的矩形特征,如:在24*24像素大小的检测窗口内矩形特征数量可以达到16万个。

    3.利用积分图Haar特征的加速算法

    刚开始认为积分图(Integral image)是个高深的东西,其实很简单。对于一个灰度图像I而言,其积分图也是一张与I尺寸相同的图,只不过该图上任意一点(x,y)的值是指从灰度图像I的左上角与当前点所围成的举行区域内所有像素点灰度值之和,有点耳熟吧。类似于图像直方图与图像累积直方图的关系,这里只不过是二维的图像。

    当把扫描图像一遍,到达图像右下角像素时,积分图像就构造好了。积分图构造好之后,图像中任何矩阵区域的像素累加和都可以通过简单运算得到如图2所示。而Haar-like特征值无非就是两个矩阵像素和的差,同样可以在常数时间内完成。所以矩形特征的特征值计算,只与此特征矩形的端点的积分图有关,所以不管此特征矩形的尺度变换如何,特征值的计算所消耗的时间都是常量。这样只要遍历图像一次,就可以求得所有子窗口的特征值。

  • 相关阅读:
    491.递增子序列
    vue--echarts 图标库、excel导出、面包屑组件、富文本框、地图、前端使用代理访问、监控生产环境or开发环境
    【django】使用AbstractUser对用户进行扩展的及在admin中注册小结
    杭电多校第三场补题记录
    情绪赋能领导力
    cron定时任务
    【AUTOSAR-Nm】-2.2-通过CAN/Lin...信号报告Nm状态机的跳转
    【RabbitMQ实战】01 3分钟在Linux上安装RabbitMQ
    【2024系统架构设计】 系统架构设计师第二版-大数据架构理论设计与实践
    docker镜像仓库
  • 原文地址:https://blog.csdn.net/weixin_43227851/article/details/133625567