深度学习_人脸检测_级联卷积神经网络

一.Cascade CNN的框架结构

1.Cascade CNN的整体框架

深度学习_人脸检测_级联卷积神经网络

级联结构中有6个CNN,3个CNN用于人脸非人脸二分类,另外3个CNN是边界校正网络,用于人脸区域的边框校正。给定一幅图像,12-net密集扫描整幅图片,拒绝90%以上的窗口。剩余的窗口输入到12-calibration-net中调整大小和位置,以接近真实目标。接着输入到NMS中,消除高度重叠窗口。

2.12-net、24-net、48-net的网络框架结构

深度学习_人脸检测_级联卷积神经网络

3.12-calibration-net、24-calibration-net、48-calibration-net的网络框架结构

深度学习_人脸检测_级联卷积神经网络

二.Cascade CNN人脸校验模块原理

该网络用于窗口校正,使用三个偏移变量:Xn:水平平移量,Yn:垂直平移量,Sn:宽高比缩放。候选框口(x,y,w,h)中,(x,y)表示左上角点坐标,(w,h)表示宽和高。

我们要将窗口的控制坐标调整为:
深度学习_人脸检测_级联卷积神经网络

在这项工作中,我们有N = 5 * 3 * 3 = 45种模式。偏移向量三个参数包含以下值:

Sn(0.83,0.91,1.0,1.10,1.21) Sn:(0.83,0.91,1.0,1.10,1.21)

Xn(0.17,0,0.17) Xn:(-0.17,0,0.17)

Yn(0.17,0,0.17) Yn:(-0.17,0,0.17)

同时对偏移向量三个参数进行校正:

深度学习_人脸检测_级联卷积神经网络

三.训练样本的准备

人脸样本
非人脸样本

四.级联的优势

  1. 最初阶段的网络可以比较简单,判别阈值可以设得宽松一点,这样就可以在保持较高召回率的同时排除掉大量的人非人脸窗口。
  2. 最后阶段网络为了保证足够的性能,因此一般设计的比较复杂,但由于只需要处理前面剩下的窗口,因此可以保证足够的效率。
  3. 级联的思想可以帮助我们去组合利用性能较差的分类器,同时又可以获得一定的效率保证。

五.Cascade CNN的主要贡献

  1. Cascade CNN是一种非常快速的人脸检测算法。对传统的VGA图像检测在CPU上可以达到14FPS,在GPU上可以达到100FPS。
  2. 在FDDB上达到了当年最好的分数。
  3. 我们先用CNN网络在低分辨率下对输入图像进行评估,达到快速剔除非人脸区域的目的,并在高分辨率下仔细处理具有挑战性的区域,以达到准确检测的目的。
  4. 设计了边界校正网络用于更好的定位人脸位置。