Multi Task Cascaded Convolutional Networks(MTCNN)是一种多任务的级联卷积神经网络,它同时处理人脸检测、面部关键点定位和人脸姿态估计三个任务。
由于MTCNN在人脸检测和面部关键点定位方面的高精度和较好的性能,它被广泛应用于各种需要人脸处理的应用中,如人脸识别门禁系统、社交平台的人脸特效(如添加滤镜、美颜等)、视频会议软件中的人脸跟踪等。在直播软件中,MTCNN可以实时检测主播的人脸,为后续的美颜、特效添加等操作提供基础。
人脸检测和对齐是许多基于人脸的应用的基础,如人脸识别、人脸行为分析等,但在现实世界中,由于姿势、光照、遮挡等因素的影响,人脸检测和对齐任务极具挑战性。
传统的人脸检测方法如 ViolaJones 算法等,在应对复杂场景下的人脸图片检测时性能下降明显 。虽然基于卷积神经网络(CNN)的方法在视觉任务中取得了很好的效果,但大多数此前的脸部检测和脸部对齐方法忽略了两者之间的固有相关性任务。
一、网络结构
MTCNN主要由三个级联的多任务卷积神经网络组成,分别是Proposal Network(PNet)、Refine Network(RNet)和Output Network(ONet),每个网络都承担着不同的任务和功能。
PNet:是一个全卷积神经网络,输入是原始图像。它首先通过一个卷积层将3通道的输入图像转换为10通道特征图,然后使用PReLU激活函数进行非线性变换&