opencv 训练人脸对比_python机器学习进行精准人脸识别

人脸识别准确率低?

上一篇我们讲了使用OpenCV进行人脸识别的最基础操作。但是从最后的效果可以看出,识别率、效率都很低,而且误检率比较高,识别过程中,系统资源占用相当大,实在是没办法在实际场合中使用。在opencv3.4 版之前自带的人脸检测器是基于Haar算法实现的,不仅检出率低,而且脸的角度稍大一些就检测不出来。但是随着深度学习领域的发展,涌现了一大批效果相当不错的人脸检测算法。

人脸检测方式对比

  • OpenCV Haar人脸检测优点
    1)几乎可以在CPU上实时工作;
    2)简单的架构;
    3)可以检测不同比例的人脸。

缺点
1)会出现大量的把非人脸预测为人脸的情况;
2)不适用于非正面人脸图像;
3)不抗遮挡。

  • OpenCV DNN 人脸检测优点
    1)在这四种方法中是最准确的;
    2)在CPU上能够实时运行;
    3)适用于不同的人脸方向:上,下,左,右,侧面等。
    4)甚至在严重遮挡下仍能工作;
    5)可以检测各种尺度的人脸。

缺点
基本上没有什么明显的缺点

  • Dlib HoG人脸检测优点
    1)CPU上最快的方法;
    2)适用于正面和略微非正面的人脸;
    3)与其他三个相比模型很小;
    4)在小的遮挡下仍可工作。

缺点
1)不能检测小脸,因为它训练数据的最小人脸尺寸为80×80,但是用户可以用较小尺寸的人脸数据自己训练检测器;
2)边界框通常排除前额的一部分甚至下巴的一部分;
3)在严重遮挡下不能很好地工作;
4)不适用于侧面和极端非正面,如俯视或仰视。

  • Dlib CNN人脸检测优点
    1)适用于不同的人脸方向;
    2)对遮挡鲁棒;
    3)在GPU上工作得非常快;
    4)非常简单的训练过程。

缺点
1)CPU速度很慢;
2)不能检测小脸,因为它训练数据的最小人脸尺寸为80×80,但是用户可以用较小尺寸的人脸数据自己训练检测器;
3)人脸包围框甚至小于DLib HoG人脸检测器。

非正面人脸检测效果对比:

609ef5e6eaaf3952e0849750b0343e54.png
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值