
传统的人脸识别方法
- Historical Eigenface Approach
- Linear Subspace
- Manifold
- Sparse Representation
- Gabor
- LBP
基于深度学习的人脸识别方法
- DeepFace
- DeepID
相关综述
[222], [18], [3], [78], [136], [123]
数据集
LFW [74]
IJB-A/B/C [87], [174]
Megaface [83]
MS-Celeb-1M [59]
CASIA-Webface 0.5M 10K
Face Detection: 定位在那个地方
Face Verification: 1-1, 判断两张图片是否属于同一个人
属于Metric Learning,需要找到一个使得不同类的的表示更分散的度量(metric)
JB模型:将一个人脸特征$x$看成$x=\mu + \varepsilon$ (identy + intra-persion variation)
$$
r(x_1, x_2) = \log \frac{P(x_1, x_2|H_1)}{P(x_1, x_2|H_E)}
$$
相似度的度量为:两个特征属脸于同一个类概率比上两个特征脸属于不同类的概率
Face Identification: 1-N,判断给定的图片是那一个人
closed-set identification
open-set identification
人脸的姿态,光线强弱,表情,姿势,遮挡影响了网络的性能。
主要集中在对姿势的研究:
- 1-N 增广,由单张图片生成多张不同姿势的图片,使网络能够得到泛化
- N-1 正规化,将图片中的不同姿势归一化成一个姿势
网络结构:
- AlexNet
- VGGNet
- GoogleNet
- ResNet
- SENet
loss:
欧氏距离,相比内类变化,更看重类间变
Paire-wise loss
$$
Loss = y_{ij} \max(0, ||f(x_i) - f(x_j)||2 - \epsilon^+) + (1-y{ij})\max(0, \epsilon^- - ||f(x_i)-f(x_j))||_2)
$$
其中的参数$\epsilon$ 难以学习到
**Triplet Loss**
$$
||f(x_i^a)-f(x_i^p)||_2^2 + \alpha < -||f(x_i^a)-f(x_i^n)||_2^2
$$
Center Loss
为每一个类学习得到他的中心点,惩罚 特征到对应的中心点的距离
$$
L_c = \frac{1}{2} \sum^m_{i=1} || x_i - c_{y_i}||_2^2
$$
余弦距离, 根据学习到的特征之间的角度进行比较,使学习到的特征在角度空间上尽可能的分散
Softmax loss,
Face Matching
网络得到的特征进行距离计算,或者将得到的特征进行处理,metric learning,sparse-representation-based classifie
网络架构:
- 使用多个网络来处理不同尺寸的图片输入
- 使用多个网络来处理不同的人体姿势(角度)
- 多任务网络,主要进行任务分类的处理,其次进行对姿势,光照强度,表情等其他影响因素的处理。底层的特征共享,上层的网络将被分开来实现不同的功能。
场景:
Cross-factor :年纪因素,姿势因素,
Heterogeneous:异源人脸识别,图像对视屏,近红外线到图片
Multiple Media: 可能一个人的图片在训练集中非常少
industry: 出了精度之外,还有一个重要其他的影响因素也十分重要。3D建模,防伪等因素