人脸识别---Gabor特征(mean pooling和max pooling)
Abstract—本文主要讲解Gabor特征在人脸识别中的使用。
在此不讲Gabor滤波器的原理,网上有很多博客已经介绍了大量关于Gabor滤波器。此文讲下提取出来后的Gabor滤波器的处理。
通常我们使用的Gabor滤波器有8个方向,5个尺度,这些参数都可以调节。Gabor滤波器分为实数部分和虚数部分,如图1所。图1a为实数部分,图1b为虚数部分。
图1a Gabor滤波器实数部分
图1b Gabor滤波器虚数部分
从图1a和图2a可以清楚看出,每一列为尺度变化,一共有5个尺度。每一行为方向变化,一共有五个方向。
把人脸图像分别用对应的实部虚部滤波器进行滤波,再进行平方相加开根号。就可以得到人脸的Gabor特征了,如图2待提取的人脸图像。图2为Gabor的特征图。
图2 待提取的人脸图像
图3 Gabor的特征图
图2为Gabor特征的特征图,图像大小为100*70,假设不损失边缘进行滤波,那么将得到100*70*40=28w特征,这个特征太大!(1)不适合存储。(2)有很多不需要的特征,导致维数灾难。
下面我介绍一种特征降维的方法,称为pooling,在Deep learning有用到过。对特征图可以进行max pooling或者mean pooling。如图4所示
图4 人脸特征图像分块方式
每一个小块,我们可以取平均或者这个小块的最大值,取平均叫mean pooling,取最大值为max pooling。假设每一个小块为10*10,那么一张feature map大小为7*10。对于40张feature map,总特征维度为7*10*40=2800。这样的特征便于存储。
当然还有其他特征处理的方式
- 关键点采样(SIFT,SURF关键点都可以)
- 定点采样,坏处在于不知道采的特征是否具体代表性。
- Adaboost等方法特征选择方法选择特征。