消失这么久,终于决定要出现了……
Abstract
利用生成对抗网络(generative adversarial network, GAN)将一个模糊的小人脸图片生成一个清晰的高分辨率图片。主要工作如下:
- 设计的算法解决了超分辨率和精准提取人脸的问题;
- 引入的新的training loss让生成网络可以很好地恢复细节,让对抗网络可以在真图、假图和人脸图、非人脸图之间做出判断;
- 在WIDER FACE 训练集上提出的算法可以很好的生成高分别率图片,并且比现在的任何方法的效果都好。
1. Introduction
Paragraph1:简单介绍了人脸检测,说明人脸检测在一些方面的挑战。
Paragraph2:介绍了在小图片上的人脸检测,现有的研究中的一些问题。采用降采样的卷积神经网络忽视空间细节,太过粗糙难以描述小脸;双线性操作计算成本过大,耗时太久;卷积神经网络的中间特征缺乏分辨率,导致错误的结果等等。
Paragraph2:讲述了本文提出的基于经典的声称对抗网络提出的统一的端对端卷积神经网络可以很好的解决上述问题,说明了本文的贡献。
Contributions:
- 新颖的统一的端对端的卷积神经网络人脸检测框架,超分辨率网络(super-resolution network)和优化网络(refinement network)用于生成真实和尖锐的高分辨率图片,对抗网络同时分辨人脸与非人脸图片;
- 对抗网络中提出新的损失函数用于分辨真假图像和人脸/非人脸图像,同时分类损失用于指导生成网络生成更清晰的可简单的就能进行分类的人脸;
- 验证了提出方法的有效性,可将一个小的模糊照片生成清楚地高分辨率人脸图像。
2. Related Work
2.1 Face Detection
人脸检测的方法主要有两种:手工提取特征和卷积神经网络。大多数手动提取特征的处理能力有限,尤其在不受限的环境下性能有限同时计算成本高。
Faster RCNN在FDBB 基准上性能好,而在WIDER FACE数据集上性能下降,原因是与低空间分辨率映射的深度卷积特征用于特征表示,但对于小图像的人脸来说这是不足够的。而resize图像后会出现失真现象,因此探索出super-resolution和refinement网络。
2.2 Super-resolution and Refinement Network
现有的要实现超分辨率的方法都需要一个核,有个基于CNN的超分辨率方法不适应于自然世界中,有些方法不能有效的去模糊。其中一个去模糊的方法非常依赖于之前的工作,假设的是自然图像的梯度遵循重尾分布。(具体的核还没有理解,待后续学习)
2.3 Generative Adversarial Networks
大多数运用于生成超分辨率的生成对抗网络,还是比较模糊并缺乏细节信息。
3. 提出方法
- A. 图像输入到网络中;
- B. MB-FCN作为基础检测器,裁剪人脸数据和非人脸数据用于训练生成器网络和判别器网络或者生成感兴趣区域用于测试;
- C. 由MB-FCN生成的正向数据和反面数据或者ROI数据;
- D. 生成网络被训练以重建清晰的高分辨率图像(4*放大度),包含上采样子网络和细化子网络;
- E. 判别网络是一个具有两个平行全连接层的Vgg19网络,第一个全连接层辨别自然的真图或者是产生的高分辨率图像,第二个用来分类人脸和非人脸图像。
3.1 GAN
开始对GAN进行了简单的介绍,并且给出了GAN的基础公式。
关于GAN的介绍详见另外一篇博客,生成对抗网络.
文中作者设计的生成网络,由判别网络优化,解决小人脸图片的高分辨率和分类问题,定义如下:
其中,
3.2 网络架构
生成网络包括两个部分,分别是高采样子网络和细化子网络。首先将小图输入到高采样子网络将其变为高分辨率图像,但此时的图像缺少的细节信息。然后将其输入到细化子网络,回复细节信息,使图像不再模糊。最后再由判别网络进行判断图像的真假。
如图所示,为网络架构。
3.3 损失函数
采用了像素级的损失和对抗损失,用来优化生成网络。移除了VGG的特征匹配损失,引入了分类损失用来驱动生成网络从模糊的图片中恢复细节信息。
像素级的损失,采用MSE损失函数,公式如图所示。
一般来说,在MSE优化问题中经常缺乏高频内容从而导致过度平滑纹理但质量低的图像出现,这也是模糊的原因。
对抗损失,如图所示。
分类损失,如图所示。
两个角色:一是在判别网络中判定生成的图像和自然的高分辨率图像中是否包含人脸。二是促进生成网络重建蜕化的图像。
目标函数,如图所示。
为了更好的进行梯度化,同时修改了生成损失和判别损失,如图所示。
4. 实验
进行了3个大的实验。
- 提出的GAN方法的效果验证;
- 生成网络与判别网络损失重要程度的细节分析;
- 提出的方法与当前其他方法的对比。
5. 结论
通过在WIDER FACE和FDDB数据集上,通过与当前方法的对比,验证了提出方法的有效性。
总是雷声大,雨点小,这一篇论文花了一点点心思,总算总结完了。不过还是内力不足,写出代码进行推敲验证才是王道,修炼内功中……