MTCNN的训练

MTCNN简介

MTCNN使用多任务级联卷积网络进行联合人脸检测和对齐。包含三个网络,分别是P-Net、R-Net、O-Net。三个网络可以分开训练,但是在使用时,是串行使用的,P-Net输入大小不受限制,当图片输入后,P-Net会通过12*12的窗口找到不同尺寸图片下(图像金字塔)人脸的建议框,之后将建议框所框出的区域转正R-Net的输入大小(图片转正方形),传入R-Net精细化建议框,同理,将建议框所框出的区域转正O-Net的输入大小(图片转正方形),传入O-Net输出最终结果,包括人脸框以及关键点。
在这里插入图片描述

IOU

IOU就是两个图形面积的交并比。IOU的作用就是计算两个图像的面积重合度,如果两个图像有交集,那么就使用两个图像的交集除以并集,就可以得到重复面积的值,也就是IOU值,很显然,这个值的范围在0~1之间,两个图像完全不重合IOU值为0,完全重合,IOU值为1.
另外一种嵌套框的IOU计算,是根据交集除以最小面积计算。 大框套小框 IOU=1

数据集及处理

数据集采用的是CelebA。值得注意的是,该数据集标签中,有许多错误的数据,因此使用的时候,需要经行一定的筛选。
在这里插入图片描述

根据设计,可以到三个网络输入图像大小,为1212,2424,48*48
网络在学习的过程中,主要学习两个参数,一个是置信度,表示窗口滑动到当前位置时,检测到人脸的概率值。另一个是学习到的坐标偏移值,用来回归真实坐标。根据需求,模型不仅仅要学习是否有人脸,还要学习人脸的具体位置。所以,每种尺寸下的样本都做了正样本(全人脸)、部分样本(部分人脸)、负样本(非人脸)。用正样本和负样本训练是否有人脸的置信度,用正样本和部分样本训练人脸的坐标位置。

在原人脸框附近随机偏移、缩放人脸框、就可以得到和原人脸的IOU值。论文中IOU>0.65是正样,0.4<IOU<0.65是部分样本,0.3<IOU<0.4舍弃,IOU<0.3是负样本比例 1:1:3(负样本占比大是因为MTCNN的误检率特别高,造成这样的原因:主要是因为P网络筛选的图,大多都是人脸特征图,因此网络训练的其他背景很少,导致误检率很高。)
根据样本的置信度分类(负,正,部分:0,1,2),对样本经行分类训练
1.将类别小于2的正、负样本用来做置信度的训练,损失函数选择BCE
2 将类别大于0的正、部分样本用来做坐标偏移量的训练,损失函数选择MSE

网络结构

在这里插入图片描述
搭建网络结构,并将数据传入网络,即可开始训练。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值