MTCNN学习笔记

MTCNN是一种高效的人脸检测算法,由pnet、rnet、onet三个神经网络组成,分别负责初步筛选、细化定位和精确检测。pnet生成候选框,rnet消除误判,onet提供最终检测结果。通过多级过滤,提高了检测精度和速度。

MTCNN由三个神经网络组成:pnet、rnet、onet

1、pnet

将原始图像缩放到不同尺度,形成图像金字塔

将每个尺度的金字塔都送入神经网络计算

pnet输入: (12,12,3)

pnet需要判断该12*12*3的图像中是否有人脸,并给出人脸框和关键点的位置

1)face classification

输出向量形状为1*1*2,分别为该12*12*3是人脸的概率,以及不是人脸的概率

2)bounding box regression

输出向量形状为1*1*4,表示预测的人脸框

3)facial landmark localization

输出向量形状为1*1*10,表示关键点的位置(左眼,右眼,鼻子,左嘴角,右嘴角)

pnet检测结果:

通过nms(非极大值抑制)将一些与得分高的框的IOU(交并比)大于阈值的框抛弃掉

2、rnet

将每个pnet输出可能为人脸的区域缩放至24*24*3,送入rnet;

rnet消除了很多pnet的误判

rnet检测结果:

3、onet

将rnet得到的结果缩放至48*48*3,送入onet

最终的检测结果:

4、损失

对于人脸判别部分,直接使用交叉熵损失;对于框回归和关键点判定,直接使用L2损失;3个部分的损失加起来,得到总损失。在训练pnet和rnet时,更关心框位置的准确性,关键点判定损失的权重很小;而onet关键点判定损失的权重很大。

5、小结

pnet、rnet、onet输入的图片越来越大,层数越来越多;

pnet运行速度最快,rnet次之,onet最慢;

pnet、rnet、onet层层过滤,每一步减少了需要判别的数量,减小了判别的时间。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值