开放式CV2人脸检测中的人脸模糊

问题描述

我正在Python中使用Open CV2人脸检测。它的效果很好,但是经常发现即使它们确实是面孔,它们也是如此模糊以至无用。它成功地找到了无法被识别为男性或女性,成人或儿童的面孔,但仍然清晰可见为人脸。

检测无法识别的脸不是有用的结果,但是我不知道如何以编程方式阻止这些结果,或者确定应将其忽略。

我目前唯一的方法是忽略任何小于特定阈值的脸,但是我仍然会得到一些较大的模糊脸。

有什么建议吗?我正在使用haarcascade_frontalface_alt_tree.xml进行检测。

解决方法

如果您的问题是要检测男性,女性或儿童的面孔,则需要提供性别图像并训练程序。它涉及许多编程,但是可以使用opencv轻松解决。您需要使用数千张图像来训练模型(项目),以确保准确性。

如果只想检测某些面部,则需要执行相同的操作,但是要用要检测的面部图像训练模型.....

,

基于深度学习的面部检测器(如ssd或mtcnn)也返回置信度得分。

deepface封装了这些最新的面部检测器。

#!pip install deepface
from deepface import DeepFace
backends = ['ssd','mtcnn']
detected_face = DeepFace.detectFace("img.jpg",detector_backend = backends[0])

在此,ssd扩展了90%的置信度得分。这样可以解决您的问题。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...