论文链接:https://arxiv.org/ftp/arxiv/papers/1604/1604.02878.pdf
代码链接:https://github.com/kpzhang93/MTCNN_face_detection_alignment
一、理解MTCNN
1)标题
多任务级联卷积神经网络
多任务:检测(找到人脸)和对齐(关键点的对齐)
级联:三个网络串行使用
2)网络
P-net、R-net、O-net

二、思考影响计算机进行人脸检测的因素
样本、光线

三、为什么要学习MTCNN
1)广泛性
在各行业的图像目标检测方面的应用最广泛
2)代表性
图像检测方面的代表模型
3)兴趣性
培养AI兴趣

四、学习了MTCNN能够做什么
1)人脸检测追踪
2)其他同一类物体的检测追踪——车流量/智慧交通
3)联合其他网络做高要求的目标检测追踪——反无人机
4)联合Center loss做人脸识别

五、主要知识模块
1)图像金字塔
a.目标检测如何选择建议框?
图像不变,建议框改变(YOLO)
建议框不变,图像改变(MTCNN)
b.思考预测出的结果为何会出现很多重复框(P-Net)
图像金字塔
P网络步长为2
2)IOU(筛选重复框)
a.解决重复预测框的方法
分析产生重复框的原因
b.任务:去除多余的预测框
如何判断哪些预测框是多余的
如何去除多余的预测框
c.计算
IOU=交集/并集
IOU=交集/最小面积=1 (大框套小框(O网络))
左上角的点取较小值,右下角的点取较大值
3)NMS(去除多余的预测框)
非极大值抑制,抑制不是极大值的元素,可以理解为局部最大搜索;
作用:排序做IOU,去除多余预测框
4)图像正方形转换
(P网络输出的图转为正方形)
在原图直接转为正方形再resize——原因:人脸特征更加完整
5)图像坐标反算
pytorch实现MTCNN——初识与理论
pytorch实现MTCNN——初识与理论
6)级联卷积
a.级联的意思
指使用多个工具做一件事情,好比流水线工作,各个工作环节首尾相连,最终获得一个完整的工作链。
b.级联的作用
主要体现在使用网络的时候,P网络的输出经过处理之后,输入R网络,R网络的输出经过处理之后,输入O网络,O网络的输出处理之后,做为最终的输出结果。
c.级联的思想
将复杂的任务进行分解,将要解决的复杂问题,转化成若干简单的问题,提高处理问题的效率和结果。
训练三个网络的时候,可以同时训练,因为三个网络的样本不一样

六、人脸识别流程
pytorch实现MTCNN——初识与理论
七、结构与样本制作
1)MTCNN的网络结构
pytorch实现MTCNN——初识与理论
2)MTCNN的样本数据
a.样本选择
√CelebA
Wider_Face
b.观察样本
①样本数量
20w,基础样本多,
生成的样本更具多样性,
训练的网络参数泛华能力更强
②样本质量
数据是否包含噪声
是否多样化
坐标是否标准准确
分类是否准确
c.生成新样本
思考需要的样本种类
如何生成所需的样本
pytorch实现MTCNN——初识与理论
pytorch实现MTCNN——初识与理论
pytorch实现MTCNN——初识与理论
八、MTCNN的模型训练
pytorch实现MTCNN——初识与理论
九、MTCNN的优缺点
pytorch实现MTCNN——初识与理论

相关文章:

  • 2022-03-02
  • 2021-04-18
  • 2021-10-19
  • 2021-05-11
  • 2022-12-23
  • 2022-03-08
  • 2021-12-12
猜你喜欢
  • 2021-04-03
  • 2022-12-23
  • 2021-07-29
  • 2021-07-01
  • 2021-04-07
  • 2021-12-31
  • 2021-12-09
相关资源
相似解决方案