From Facial Parts Responses to Face Detection: A Deep Learning Approach
来源:互联网 发布:ug线切割编程教程 编辑:程序博客网 时间:2024/06/15 08:34
这篇是汤晓欧组最新的一篇人脸检测的论文,在FDDB上论文组中,目前取得第一的好成绩。故拿此文拜读一番,写篇读后感:
首先,作者提出一个Faceness net的概念,这个概念实际上很简单,就是训练人脸五个部位的模型,然后针对这五个部位的模型提出来的特征,通过人脸共有先验,设计出一个计算是否是人脸的得分,其中,模型的超参数
下面我主要讲一下5个模型的训练以及faceness score的求法,如果理解有不对的地方,望大家指正。
partness model的训练
这里实际上和其它深度学习文章相比,这里的训练并不算太难,里面的公式也都是比较基础的Softmax分类公式,所以这里的复现是比较容易的,不过这里在训练之前,讲了个值得大家注意或学习的地方:Classification 任务对Localization 和 detection任务都有辅助功能。之前,我参加图像检索比赛的时候就发现了在conv5层上,模型总是可以把你要分类的那个区域给凸显出来,也就是说conv5的特征图上,我们可以得到单物体分类的大致位置。之前一直不知道这个有什么用,看了这篇文章,这个CelebA数据集之后,我也想到了我的人脸检测算法要怎么搞,这个以后再说啦~
从上图可以很明显的看出:当你的监督信息更多时,实际上是更多条件对区域进行筛选,当我们只有人脸非人脸信息时,可能其他区域也有符合这个信息的pattern,举个并不恰当的例子,如果说你的图片信息全是运动员颁奖拍照,那人脸图片可能就往往带了其他固有的信息(比如奖杯,奖牌)而非人脸图片可能就没有这些信息,这样的话,模型对这些噪声就无法滤出。而如果增加了更多的监督信息,比方说人脸的部位属性信息,这样符合这种信息的区域就会更少,其他不符合的噪声区域也就会被滤出。
本文就是用了这种特性,对5个部位的属性分别做属性分类训练(我目前正在实验这里,之前用的是一堆softmax二分类,因为每个softmax前都有相对应的全链接层,故可能是参数太多了,发现效果并不理想;目前改用为sigmoid_cross_entropy_loss直接对某个部位的属性进行分类,还不知道效果如何。)得到5个模型之后,把conv5层特征归一化的累加在一起(每层都计算出mean,variance,然后每一层单独归一化,加在一起后再归一化,我从它的源码看到的,这里感谢下原作者提供的部分源码。)这样就可以得到大致的位置。
faceness score的训练
训练好5个模型之后,文章里并没有把这5个模型拼起来再训练,而是类似与DPM的方式,通过某种计算来建立起5个部位模型与人脸之间的关系,通过计算得分来判断是否是人脸的几率,对候选框进行重排序,然后选择top k个框进行下一步操作。这里我更倾向于直接用5个部位的模型去初始化一个人脸模型,然后直接进行学习,当然我觉得这样效果可能会更好,而且会更简单,当然收敛的时间可能会需要一些,不过当然这种方法可能就不是那么高大上了,没有公式的论文不是好论文,于是乎本论文选择更加复杂,也感觉有点绕弯的方式,通过自己制定规则来计算得分,并根据最大后验概率来计算计算得分时需要的
我通过ss方式找到一堆候选框,我在候选框的conv特征图中计算相应部位的得分,计算的方法是将候选框四角分别为ABCD,然后通过参数
也就是说实际的计算相当于已知候选框,得到heatmap之后,来求这个公式,当然如果这里得到的话,对把其他(如
人脸检测模型的训练比较简单,直接通过alexnet模型用aflw数据集进行人脸的学习并向ground truth回归,这里不再进行复述。
最终的实验大家按照自己的需求看原论文即可。谢谢大家观看,如果哪里有讲的不对或不清楚的地方,请大家指出来,我来更正。
- From Facial Parts Responses to Face Detection: A Deep Learning Approach
- 论文《From Facial Parts Responses to Face Detection: A Deep Learning Approach》笔记
- From Facial Parts Responses to Face Detection: A Deep Learning Approach
- 【论文笔记】From Facial Parts Responses to Face Detection: A Deep Learning Approach
- 【论文笔记】From Facial Parts Responses to Face Detection(ICCV 2015)
- 人脸检测--Faceness-Net: Face Detection through Deep Facial Part Responses
- A Discriminative Feature Learning Approach for Deep Face Recognition, ECCV16.
- ECCV A Discriminative Feature Learning Approach for Deep Face Recognition
- A Discriminative feature learning approach for deep face recognition
- A Discriminative Feature Learning Approach for Deep Face Recognition
- 阅读A Discriminative Feature Learning Approach for Deep Face Recognition
- A Discriminative Feature Learning Approach for Deep Face Recognition
- deep learning for face detection
- deep learning for face detection
- deep learning for face detection
- 论文解读Face Detection using Deep Learning: An Improved Faster R-CNN Approach
- Deep Learning Strong Parts for Pedestrian Detection
- 人脸识别 - A Discriminative Feature Learning Approach for Deep Face Recognition
- Python、Lua和Ruby比较——脚本语言大P.K.
- (java) Single Number II
- HTML网页之计算器代码
- Windows下配置Node.js
- NBUT 1655 【思维】
- From Facial Parts Responses to Face Detection: A Deep Learning Approach
- 复习
- Python快速转换numpy数组中Nan和Inf的方法
- #ifndef#define#endif防止头文件重复包含
- 《Survey on NoSQL Database》翻译
- 卷积神经网络(CNN)的简单实现(MNIST)
- Spring JDBC 例子
- 简易C/C++日志代码实现
- 《设计模式之看全局》