MTCNN 模型介绍
稳定调用及效果更好的API,详见视觉开放智能平台:人脸检测与五官定位。
人脸检测关键点模型MTCNN
模型描述
MTCNN是工业界广泛应用的检测关键点二合一模型, (论文地址, 代码地址),该方法包含下面4个模块:
- Image Pyramid: 首先将图像进行不同尺度的变换,构建图像金字塔,以适应不同大小的人脸的进行检测;
- Proposal Network: 其基本的构造是一个全卷积网络。对上一步构建完成的图像金字塔,通过一个FCN进行初步特征提取与标定边框,并进行Boudig-Box Regressio调整窗口与NMS进行大部分窗口的过滤。
- Refie Network: 其基本的构造是一个卷积神经网络,相对于第一层的P-Net来说,增加了一个全连接层,因此对于输入数据的筛选会更加严格。在图片经过P-Net后,会留下许多预测窗口,我们将所有的预测窗口送入R-Net,这个网络会滤除大量效果比较差的候选框,最后对选定的候选框进行Boudig-Box Regressio和NMS进一步优化预测结果;
- Output Network: 基本结构是一个较为复杂的卷积神经网络,相对于R-Net来说多了一个卷积层。O-Net的效果与R-Net的区别在于这一层结构会通过更多的监督来识别面部的区域,而且会对人的面部特征点进行回归,最终输出五个人脸面部特征点。
MTCNN的结构如下:

模型效果

模型使用方式和使用范围
本模型可以检测输入图片中人脸和对应5点关键点的位置。
使用方式
- 推理:输入图片,如存在人脸则返回人脸位置和五点关键点,可检测多张人脸
目标场景
- 人脸相关的基础能力,可应用于人像美颜/互动娱乐/人脸比对等场景
模型局限性及可能偏差
- 小脸的检测效果一般
- 早期经典的检测关键点二合一model,可能模型结构存在些冗余的部分
- 当前版本在pytho 3.7环境测试通过,其他环境下可用性待测试
代码范例
from modelscope.pipelies import pipelie
from modelscope.utils.costat import Tasks
mtc_face_detectio = pipelie(Tasks.face_detectio, 'damo/cv_maual_face-detectio_mtc')
img_path = 'https://modelscope.oss-c-beijig.aliyucs.com/test/images/mtc_face_detectio.jpg'
result = mtc_face_detectio(img_path)
prit('face detectio output: {}.'.format(result))
# if you wat to show the result, you ca ru
from modelscope.utils.cv.image_utils import draw_face_detectio_result
from modelscope.preprocessors.image import LoadImage
import cv2
img = LoadImage.covert_to_darray(img_path)
cv2.imwrite('srcImg.jpg', img)
img_draw = draw_face_detectio_result('srcImg.jpg', result)
cv2.imwrite('result.jpg', img_draw)
import matplotlib.pyplot as plt
plt.imshow(img_draw)
模型训练流程
- 在Wider Face数据集上训练,优化器为SGD。
测试集
- WIDERFACE: 测试集已上传至ModelScope的DatasetHub, 详情请见WIDER_FACE。
数据评估及结果
模型在WiderFace的验证集上客观指标如下:
Method |
Easy |
Medium |
Hard |
MTCNN |
85.1 |
82.0 |
60.7 |
人脸相关模型
以下是ModelScope上人脸相关模型:
来源说明
本模型及代码来自开源社区(地址),请遵守相关许可。
引用
如果你觉得这个该模型对有所帮助,请考虑引用下面的相关的论文:
@iproceedigs{xiag2017joit,
title={Joit face detectio ad facial expressio recogitio with MTCNN},
author={Xiag, Jia ad Zhu, Gegmig},
booktitle={2017 4th iteratioal coferece o iformatio sciece ad cotrol egieerig (ICISCE)},
pages={424--427},
year={2017},
orgaizatio={IEEE}
}
评论