• 在 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

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

    • 人脸检测

    • 眼睛检测

    • 车辆检测

    • 鼻子/嘴巴检测

    • 身体检测

    • 车牌检测

  • 相关阅读:
    Redis学习(2)—— 常用命令
    软考和 PMP 哪个含金量更高点?
    grpc-java源码环境编译
    测试报告编写
    图的存储结构之邻接矩阵
    element ui 时间日期选择器 el-date-picker 报错 Prop being mutated: “placement“
    SpringBoot整合RocketMQ笔记
    R语言易错点(持续更新中~~)
    基于FPGA的图像形态学腐蚀算法实现,包括tb测试文件和MATLAB辅助验证
    编译器一日一练(DIY系列之中间代码生成)
  • 原文地址:https://blog.csdn.net/woshicver/article/details/128196064