Deep Convolutional Network Cascade for Facial Point Detection阅读笔记

简介:本文提出使用3-level convolutional networks(三层卷积神经网络)级联,做人脸关键点检测的方法。一些传统的方法使用训练图片的平均人脸关键点作为初始化的人脸关键点,这样的初始化方式效果并不是很好,为解决这个问题,本文提出三级级联的CNN关键点检测方法。本文方法使用第一层卷积层做人脸关键点初始化,即将整个图像输入到CNN中,提取图像全局特征,全局特征有利于高准确率的关键点定位。第二层、第三层CNN网络对人脸关键点进行微调,将左眼,右眼,鼻尖,左嘴角,右嘴角这些小的局部区域图片作为输入,对人脸关键点进行微调(第二层、第三层的CNN网络比第一层的CNN网络浅很多,所以后面两层的微调有限)。

 

任务:需要检测五个关键点: left eye center (LE,左眼中心), right eye center (RE,右眼中心), nose tip (N,鼻尖), left mouth corner (LM,左嘴角), and right mouth corner (RM,右嘴角).  如下图所示:



    级联卷积神经网络结构:


    本文级联三个CNN实现由粗到细的预测,在第一层使用三个CNNF1, EN1, and NM1, whose input regions cover the whole face (F1), eyes and nose (EN1), nose and mouth (NM1)F1:输入为整张人脸,输出五个关键点位置;EN1:输入为人脸的眼睛和鼻子部分,输出眼睛和鼻子三个关键点位置(结果在程序中是0~1的值,即相对人脸右上角的相对位置);NM1:输入为人脸的鼻子和嘴巴,输出鼻子和嘴巴三个关键点位置。

    第二层CNN网络,有LE21, LE22, RE21, RE22, N21,N22, LM21, LM22, RM21and RM2210个网络(LE21表示2-levleleft eye第一个CNN网络,RM22表示2-levelright mouth第二个CNN网络,其他类似,每个点对应2CNN网络)。LE21:输入为以上一层预测的left eye为中心的局部区域,能够覆盖left eye,如上图黄色区域所示,输出为预测的left eye位置。LE22LE21类似,取LE22LE21的平均,作为2-level中,left eye的最终预测值,如红点所示。其他的与LE类似。

    第三层CNN网络和第二层CNN网络类似。

    注:图中绿色正方形:表示检测到的人脸框,黄色阴影:表示CNN网络的输入区域,红色点:表示每一层最后的预测点。

 

    F1 CNN结构如下图所示:



    检测error测量:

    

    其中,(x,y),(x',y')分别表示标注关键点位置和预测关键点位置,l表示人脸检测器检测到的人脸框的宽。

通过error,设定阈值,可以计算测试集的误检率,也可以计算平均error




猜你喜欢

转载自blog.csdn.net/xzzppp/article/details/74932150