一、问题分析
1. 问题描述
在Yale数据集上完成以下工作:在给定的人脸库中,通过算法完成人脸识别,算法需要做到能判断出测试的人脸是否属于给定的数据集。如果属于,需要判断出测试的人脸属于数据集中的哪一位。否则,需要声明测试的人脸不属于数据集。
2. 数据集分析
Yale人脸数据集由耶鲁大学创建,包含15个人,每个人有不同表情、姿态和光照下的11张人脸图像,共165张图片,每张图片大小为100*100。整个数据集非常小,图片信息也较为简单。
如图1所示,数据集中人脸数据已经标定,因此这并不是传统意义上的人脸识别任务,而是一个简单的图像多分类问题。另外,每个人包含了在不同表情、光照下的人脸图像,这就要求我们提取的图像特征要具有光照不敏感性,能够很好得体现人脸的轮廓信息。
图 1 Yale数据集示例
3. 特征提取
神经网络:在图像多分类任务中,如今前沿的方法都是采用深度神经网络来学习图像数据,从而训练得到一个多分类模型,例如ResNet[1]可以在大规模数据集ImageNet上达到3.57%的top5 error。在基于海量数据的前提下,神经网络已经被证明了可以很好得提取图像特征,然而由于Yale数据集非常小,只有165张图片,因此不适用于神经网络中。
PCA: PCA[2]即主成分分析。在原始数据中,很多维度间具有较大的相关系数,PCA旨在利用降维的思想,把多指标转化为少数几个综合指标。但PCA可能会忽略贡献率小的主成分,这种成分往往可能含有对样本差异的重要信息,从而使得分类结果出现误差。
SIFT:SIFT[3]特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性,且独特性好,信息量丰富,适用于海量特征库进行快速、准确的匹配。而由于Yale数据量少,SIFT难以达到理想的效果。
HOG: HOG[4]即方向梯度直方图特征,通过计算和统计图像局部区域的梯度方向直方图来构成特征。由于HOG是在图像的局部方格单元上操作,所以它对图像几何的和光照变化都能保持很好的不变性,因此非常适用于具有不同光照情况的Yale数据集上。另外,HOG特征包含了图像边缘的梯度方向和梯度信息,能够很好得对人脸轮廓、五官信息进行表达。
综合以上分析,在本实验中我们选择了HOG来提取图像的特征信息。
4. 分类方法
常用的分类方法包括K近邻、SVM[5]、Softmax等。K近邻实现较为简单,但是在预测时计算复杂度较高,因此现在已经很少采用这个分类模型;SVM在训练时确保正样本和负样本之间的间距大于某个阈值,对于正样本尽可能给与更高的置信度,然而在多分类SVM中,负样本的得分并不具有对应的概率意义;Softmax是逻辑回归在多分类上的扩展,针对每一个类别都给出了其对应的概率得分。Softmax在训练时总是力求最大化正样本的概率,最小化其他负样本的概率,因此输出值可以用来表示样本属于每个类的概率。
在本次实验中,我们需要