胡俊
(四川大学软件工程学院,成都 610065)
生物认证技术是依靠人类自身固有的生理或行为特征进行身份验证的一种手段。而生物认证中的人脸特征又是人与人之间互相辨识的最重要和最直观的生物特征。由于人脸识别的无侵害性和对用户最自然、最直观的方式,使人脸识别成为最容易被接受的生物特征识别方式。而在人脸识别中,人脸图片会随着年龄变换而发生变化,这就导致判断不同年龄段的人脸图片是否是同一个人面临更大的困难。在实际的应用中,跨年龄人脸识别可以帮助寻找被拐卖儿童、判断系统中两张不同年龄段的图片是否为同一个人以防止多次注册。上述难点和应用场景使得跨年龄人脸识别成为富有挑战性和研究意义的研究课题之一。
针对跨年龄人脸识别,许多学者做了各种有意义的研究,其中大致可以分为两个策略。一个是生成策略[1-3]:是通过生成不同年龄人脸图片来提升人脸识别的性能,但其方法需要很强的参数假设,并且具有相当高的复杂度,基本上不适合现实场景的应用。另一个是判别策略[4,5,6]:通过分离人脸的身份信息和年龄信息,得到一个年龄无关的特征以提升跨年龄人脸识别性能。在前深度学习时代,生成策略一般是通过模拟年龄变化来生成不同年龄的照片,判别策略一般是通过手工定义的特征来获取身份特征和年龄特征。而随着深度学习时代的到来,研究人员开始通过使用深度学习来提升跨年龄人脸识别的性能。其中针对生成策略,有学者利用生成对抗网络(GAN)来生成不同年龄的人脸图片[7]。针对判别策略,利用卷积神经网络(CNN)来提取更有效的网络和更好地分离人脸图片的身份特征和年龄来提升性能[8,9]。
本文提出使用人脸划区域策略来帮助跨年龄人脸识别,基本研究思路是利用人脸不同区域随着年龄变化的程度不一致,划分区域后,能使部分区域提取的特征更具有判别性。
本文使用MORPH Album 2和CACD数据库做为训练和测试数据。
MORPH Album 2数据库是跨年龄人脸识别中最大的公开数据库,包含20000个人,总共78000张图片。对于每张图片,都标注了其年龄和身份信息。
CACD数据库包含2000个明星,总共163446张图片。该数据库除了包含年龄和身份信息,其中的图片包含各种各样的光照变化、姿态变化、化妆等。
图1
图2
由于不同的人脸区域对年龄的变化不同,如图1所示。在眼睛区域,随着年龄的变化,其变化也越来越大。因此笔者猜测,分离这部分人脸区域,或者能提升跨年龄人脸识别的性能。因此笔者尝试分离人脸的眼睛区域来帮助跨年龄人脸识别。算法流程如图2所示。
算法流程细节:
(1)截取出人脸图片中的眼睛区域的图片,然后使其经过ResNet10层的网络来得到512维的特征。
(2)对于原始图片,我们把眼睛区域的值置为0,使其不包含眼睛区域的信息,然后再经过ResNet20层来得到特征。
(3)归一化1和2的特征。
(4)连接3中归一化后的特征来做为一个整体的特征。
(5)使用SoftmaxLoss开始训练。
使用随机梯度下降法并且batchsize大小为64、动力为0.9、权重衰减为0.0005的超参数来训练网络;其中少量的权重衰减对于模型学习是重要的;这里的权重衰减不仅仅是一个正则化矩阵,它减少了训练误差;对于权重w的更新规则为:
实验中使用均值为0、标准差为0.01的高斯分布初始化了每一层的权重;对于所有层都使用了相等的学习率,学习率在训练过程中可以调整,当训练误差不在下降时就将学习率除以10;学习率初始化为0.01。
我们取MORPH Album 2中的10000个人作为训练数据,另10000人作为测试数据。训练数据和测试数据没重复。对于测试数据,我们选取最年轻的图片组成gallery,年长的图片做为probe。
对于CACD,我们使用通用的官方提供的CACDVS作为测试集,其中包含2000个正样本对和2000个负样本对。
笔者针对MORPH和CACD-VS测试集做了基准实验和使用分区域跨年龄人脸识别的实验。实验结果如表1所示:
表1
由表1可以看出,在深度学习中使用分区域的策略能使得跨年龄人脸识别有一定的提升。
随着深度学习的发展,现实的需要,跨年龄人脸识别越来越受研究者关注。因此本文提出了一个分区域跨年龄人脸识别的算法来提示跨年龄人脸识别的性能。本文也证明了该方法在MORPH和CACD年龄数据库上的有效性。