利用人脸特征提取DeepID--解读世纪晟人脸识别
DeepID是一种特征提取的算法,这种网络一经训练好后,可以提取出输入人脸图片的深层次特征——
DeepID也是多个特征的融合体,你可以理解为DeepID对人脸上的很多关键区域都训练了一个 CNN 网络,去做分类,得到隐层特征,把这些特征拼接在一起,再做某种意义上的降维,得到最终特征,用这个特征来做描述,世纪晟科技人脸识别就可以非常有效地完成多分类任务。
概述:
DeepID的目标是人脸验证(判断两张图片是否是一个人),同时衍生出人脸识别(多次人脸验证)。
DeepID采用增大数据集的方法:
增加新的数据,celebFaces(87628张图片,5436个人),celebFaces+(202599张图片,10177个人);
裁剪图片,多区域、多尺度、多通道裁剪,然后将计算的向量组合,使用PCA降维
DeepID是一种特征提取的算法,这种网络一经训练好后,可以提取出输入人脸图片的深层次特征——
DeepID也是多个特征的融合体,你可以理解为DeepID对人脸上的很多关键区域都训练了一个 CNN 网络,去做分类,得到隐层特征,把这些特征拼接在一起,再做某种意义上的降维,得到最终特征,用这个特征来做描述,世纪晟科技人脸识别就可以非常有效地完成多分类任务。
DeepID网特征提取+softmax分类:
下图就是这个特征提取DeepID网+softmax分类的示意图。
softmax这个分类器可以说是咱们深度学习领域最常见的一个分类器了,如果大家对逻辑回归有基础的话,那么这个softmax分类器可以当成一个多分类的逻辑回归。
每层的数字表示的是每个卷积网络神经元的数量,随着层数的增加,神经元的数量会减少。
DeepNets的训练过程:
一个DeepID网(就是前面的120个之一)包含4个卷积层(每一个都带有最大池化层)以及一个全连接层(也就是DeepID的160维特征),在训练网络时后面还要加上softmax层,不然不能给标签没法训练了,当然训练出网络后在测试数据上可以不加softmax,只到全连接层后就直接使用特征。
人脸的特征提取:
对于一张人脸图片,在经过人脸检测和人脸对齐之后,作者按照瞳孔和嘴的位置对所有训练样本进行了对齐(保证后面的切片工作是同一尺度下的),然后根据特征点的位置,进行了切块提取,下图上半部分就是对一张人脸在10个位置下的提取,然后每一个位置的切块提取还会有三个不同的尺度,这就得到了同一张人脸的30个不同的部位人脸图
有了30个不同部位人脸图后,当然此时着30个不同部位人脸图还都是RGB图像,我们还需要灰度图像上的特征,因此每一个部位图还要有一份灰度图版的,因此30又翻个倍,变成了60
下面把DeepID特征可视化的结果,也是可以挺明显的看出不同人脸提取的特征不一样