人脸校准(alignment)是给你一张脸,你给我找出我需要的特征点的位置,比如鼻子左侧,鼻孔下侧,瞳孔位置,上嘴唇下侧等等点的位置。如果觉得还是不明白,看下图:
图中黄色框框就是在做detection,白色点点就是在做alignment。如果知道了点的位置做一下位置驱动的变形,脸就成正的了,如何驱动变形不是本节的重点,在此省略。首先介绍一下下面正文要写的东西,文中根据“boosted cascade structure+ simple features”的原则由于干货非常多所以可能会看着看着就乱了,所以给出框架图:
作者用了一个叫post classifier的分类器,具体操作方法如下:
1.首先作者调用opencv的Viola-Jones分类器,将recal阀值设到99%,这样能够尽可能地检测出所有的脸,但是同时也会有非常多的不是脸的东东被检测出来。于是,检测出来的框框们被分成了两类:是脸和不是脸。这些图片被resize到96*96。
2.特征提取:接下来是特征提取,怎么提取呢?作者采用了三种方法,有和没有校准的:
1. we divide the window into 6*6 non-overlapping cells and extract a SIFT descriptor in each cell.
2. we use a fixed mean face shape with 27 facial points and extract a SIFT descriptor centered on each point.
3. we align the 27 facial points using the alignment algorithm in [21] and extract a SIFT descriptor centered on each point.第一种:把window划分成6*6个小windows,分别提取SIFT特征,然后连接着36个sift特征向量成为图像的特征。
第二种:先求出一个固定的脸的平均shape(27个特征点的位置,比如眼睛左边,嘴唇右边等等),然后以这27个特征点为中心提取sift特征,然后连接后作为特征。<