• 在 python 中使用 Haar-Cascade 进行人脸检测


    bca17258d26b726b152d1c977b486992.png

    介绍

    在本文中,我们将讨论在 OpenCV python 中使用 Haar Cascade(级联)实现人脸检测器。

    识别图像中的给定对象称为对象检测。可以使用多种技术来完成此任务,但在本文中,我们将使用带有预训练 XML 文件的 haar 级联。这是执行对象检测的最简单方法。

    Haar 级联已用于低边缘设备上的对象检测,它是 OpenCV 中最流行的对象检测算法之一。

    Haar 级联计算量不大;因此它适用于计算能力较小的小型设备。

    Haar 级联

    什么是 Haar 级联,它是如何工作的?

    Haar 级联 是一种基于特征的对象检测算法,用于从图像中检测对象。Cascade 函数在大量正负图像上进行训练以进行检测。

    该算法不需要大量计算并且可以实时运行。我们可以为动物、汽车、自行车等自定义对象训练自己的级联函数。

    Haar 级联 不能用于人脸识别,因为它只能识别匹配的形状和大小。

    Haar 级联使用 Cascade 函数和 Cascade 窗口。它尝试计算每个窗口的特征并进行正负分类。如果窗口可以是对象的一部分,则为正,否则为负。

    4be5bc53079267cd5554ced42077aa5e.png

    Haar 级联可以理解为二进制分类器。它为那些可以成为我们对象一部分的级联窗口指定正值,为那些不能成为我们对象的一部分的窗口指定负值。

    • Haar 级联可以实时工作。

    • 与现代对象检测算法相比,Haar 级联并不准确。

    • 它检测到许多误报。这可以在一定程度上进行调整,但不能完全删除。

    • 实现起来非常简单。

    • Haar 级联最大的缺点是它的误报检测。

    预训练的 Haar 级联

    有许多预训练的 haar 级联文件使实施变得超级容易。我们也可以训练自己的 haar 级联,但这需要大数据进行训练。

    OpenCV 库在 GitHub 上管理所有流行的 haar 级联预训练文件的存储库

    链接地址:https://github.com/opencv/opencv/tree/master/data/haarcascades

    这些文件可用于各种对象检测任务,例如:

    • 人脸检测

    • 眼睛检测

    • 车辆检测

    • 鼻子/嘴巴检测

    • 身体检测

    • 车牌检测

  • 相关阅读:
    windows11 下搭建 Docker 开发环境记录(少踩坑版)
    .net framework、.net standard、 .net core .net 5/6 区别
    年薪30w项目经理都在用的6个项目管理软件
    管理交换空间
    Keycloak之Gerrit安装与集成之退出-yellowcong
    java-php-python-基于Web的社区商超系统的设计与实现计算机毕业设计
    数据结构:单链表
    选哪个短剧系统源码好:全面评估与决策指南
    源码安装包缺失pcre库或者版本低的问题
    Linux操作系统~基于systemV共享内存的进程间通信
  • 原文地址:https://blog.csdn.net/woshicver/article/details/128196064