MTCNN 与 DLIB 相比如何进行人脸检测?
Posted
技术标签:
【中文标题】MTCNN 与 DLIB 相比如何进行人脸检测?【英文标题】:How does MTCNN perform vs DLIB for face detection? 【发布时间】:2018-06-09 10:18:46 【问题描述】:我看到 MTCNN 被推荐,但没有看到 DLIB 和 MTCNN 的直接比较。
我认为既然 MTCNN 使用神经网络,它可能更适合更多用例,但也有一些令人惊讶的可怕边缘情况?
有没有人对错误率、不同条件下(GPU 和 CPU)下的性能以及两者的一般眼球观察进行过分析?
【问题讨论】:
@davis-king 有什么评论吗?我很想看看 MTCNN 与 dlib CNN 之间的比较 我已经更新了我的答案,通过 FDDB 准确性测试和性能测试,希望它有所帮助(它花了我几个小时)。 @RahibeMeryem 您可以在此处查看关于 dlib 的 CNN 如何在 FDDB 上执行的一些讨论,以供参考:blog.dlib.net/2016/10/easily-create-high-quality-object.html。也可以在这里查看我的 cmets:github.com/davisking/dlib/issues/1410 我不这么认为,看到这个问题的任何人都可以看到github链接。我使用 face_recogniton py lib 测试 FDDB 来检测人脸(使用 dlib 进行人脸检测)。而且我不认为我做错了什么。如果有什么问题是 py face_recogniton github.com/ageitgey/face_recognition 错的不是我。 我已将我的 C++ dlib 测试代码发布到 github.com/davisking/dlib/issues/1410 【参考方案1】:你可以看看 Timesler 这个惊人的 kaggle 笔记本。在 facenet-pytorch、DLIB 和 MTCNN 之间进行比较。
https://www.kaggle.com/timesler/comparison-of-face-detection-packages
“在启用 GPU 支持的情况下,测试每个包在 300 张图像(一个视频的所有帧)中检测人脸的速度。检测以 3 种不同的分辨率进行。
任何一次性初始化步骤,例如模型实例化,都在性能测试之前执行。”
【讨论】:
【参考方案2】:您可以轻松地在 deepface 中对其进行测试。我的实验表明 mtcnn 的性能优于 dlib。
#!pip install deepface
from deepface import DeepFace
backends = ['opencv', 'ssd', 'dlib', 'mtcnn']
DeepFace.detectFace("img.jpg", detector_backend = backends[0])
【讨论】:
以上是关于MTCNN 与 DLIB 相比如何进行人脸检测?的主要内容,如果未能解决你的问题,请参考以下文章
win10+anaconda+cuda配置dlib,使用GPU对dlib的深度学习算法进行加速(以人脸检测为例)