基于深度卷积对抗神经网络的多状态自适应人脸识别方法

2019-11-07 11:11:17 移动通信 2019年9期

杜翠凤 温云龙 李建中

【摘  要】针对佩戴口罩或者墨镜的交通违法人员难以采用常规的人脸识别方法识别的难题,采用深度卷积对抗神经网络生成外部组件的可视化特征向量的集合,结合特定人脸特征,形成多状态自适应的人脸特征表示。该技术实现从对象到场景的人脸特征分层表示,实现配搭口罩或者墨镜等场景下交通违法人员的人脸识别功能,提升执法的效率。

【关键词】深度卷积对抗神经网络;多状态;自适应;人脸识别

doi:10.3969/j.issn.1006-1010.2019.09.014        中图分类号:TP391.41

文献标志码:A        文章编号:1006-1010(2019)09-0075-04

引用格式:杜翠凤,温云龙,李建中. 基于深度卷积对抗神经网络的多状态自适应人脸识别方法[J]. 移动通信, 2019,43(9): 75-78.

A Multi-state Adaptive Face Recognition Method Based on

Deep Convolutional Adversative Neural Network

DU Cuifeng, WEN Yunlong, LI Jianzhong

[Abstract] Aiming at the difficulty of face recognition for traffic offenders wearing masks or sunglasses, a deep convolutional adversative neural network is used to generate a set of visual feature vectors of external components, and a multi-state adaptive face feature representation is formulated by combining specific face features. This technology realizes the hierarchical representation of facial features from objects to scenarios, and implements the face recognition function of traffic offenders in scenarios wearing masks or sunglasses, and thus improves the efficiency of law enforcement.

[Key words]deep convolutional adversative network; multi-state; adaptive; face recognition

1   引言

自从2014年Ian Goodfellow创造性提出了生成对抗网络之后,生成对抗网络得到大量学者的关注。这种生成对抗神经网络,能够将大量无标注的图片进行学习,并形成对不同维度的特征进行分层表示,虽然这种从对象到场景、在生成模型和判别模型都能够学习到不同表示的算法,已经广泛用于人脸补全的项目,但是还存在一定的缺陷。比如整个人脸进行打码后,模型通过训练库的特征生成一个模型觉得“可靠”的人脸并输出,结果发现,该图像的人脸跟真实的人脸还是有差别的。这是因为这种人脸补全技术是基于计算机学习得到的,因此,这种方法不能适应于交通公路佩戴墨镜的驾驶员识别,因为人脸一旦还原了,可能在眼睛、鼻子、嘴角都发生大的变化,在不同的相似度算法下,这种做法的相似度不到80%,很难满足实际应用的需求。

为了适应违法交通配搭口罩或者模型等人脸识别的应用的需求,本文提出一种基于深度卷积对抗神经网络的多状态自适应特征比对技术,结合深度卷积对抗网络实现人脸特征多状态表示,实现从对象到场景的人脸特征分层表示,实现在佩戴帽子、墨镜以及各种装饰物等场景下的人脸识别功能。

2   “多状态”人脸识别相关介绍

2.1  “多状态”人脸识别

人脸的“多状态”是指由于佩戴墨镜、口罩、衣帽、耳环等外部组件后所引起的人脸状态的变化,这些状态的变化很可能导致人脸部分的特征点不可见或者人脸特征点变化尺度太大,致使模型表现力有限或者模型无法应对复杂的人脸变化模式而失效。通俗一点,就是通过配搭墨镜、口罩、衣帽、耳环等部件,使得人脸出现复杂、不可预测的变化模式,从而导致常用的人脸识别模型失效。因此,本文针对目前人脸“多状态”存在的问题,研究一种“多状态”的人脸识别算法。

“多状态”人脸识别的定义是将人脸识别的范围离散化表示为多个状态部件的模型,采用多个部件的模型组合来描述人脸非线性的变化。人脸图像中除了有丰富的属性信息,如姿态、表情、性别等,还包括由于墨镜、口罩、衣帽、耳环等豐富的部件信息。“多状态”人脸识别思路是基于人脸属性的信息,结合多个不同外部部件的形状、边缘、梯度、轮廓等因素,提取人脸细节更加丰富、更有效多样的特征,提升非线性人脸变化的描述尺度。为了实现“多状态”人脸识别,本文引用对抗神经网络模型实现“多状态”人脸识别。

2.2  GANs的原理介绍

在介绍DCGANs(Deep Convolution GANs,深度卷积对抗神经网络)[1-2]的原理之前,先介绍GANs(Generative Adversarial Networks,对抗神经网络)的原理:采用生成器(Generator)生成一张图片,利用判别器(Discriminator)判断生成器生成的模型是否是“真实”。如果“真实”,那么说明生成器生成的图片跟真实的图片几乎一样;否则,判别器将会判断生成器生成的图片是“不真实”。生成器和判别器存在“对抗”关系,而且对抗随着图片库的增加而不断强化[3-5]。

对抗神经网络的训练过程如图1所示。从图1可知,对抗神经网络同时训练两个神经网络,第一个神经网络是生成器,其输入一般是随机分布生成的数据。生成器的作用是生成假的图像,然后通过第二个神经网络——判别器,结合真实的图像对计算机生成的假图像进行判别,将假图像的“真实”标量采用softmax函数转换为概率,如果概率为0,即为假图像,概率为1,表示判别器认为该图像是“真实的”,顺利“骗过”判别器。

对抗神经网络的训练过程如下:

首先,考虑一个噪音分布pz,图1定义一个生成式神经网络模型G(z),G(z)从一个噪音分布中取样,获得一个pG的分布,而真实照片分布定义为pdata,最终,我们希望pG=pdata。

然后,我们考虑另外一个神经网络模型——判别器D(x),将pG的样本作为输入,并给出该样本取样自于pdata的概率p。如果概率p接近于1,那么该样本很大可能是取自于元样本数据分布pdata;否则,该样本是“假样本”。

2.3  深度卷积对抗神经网络的原理介绍

2015年,Radford等人提出了深度卷积对抗神经网络,与GANs不同的地方在于,生成模型G(z)和判别模型D(x)都采用一个卷积神经网络来实现,而不是一个简单的神经网络[6-8]。在DCGANs中,生成式模型如图2所示。

从图2可知,当输入图片尺寸过小时,生成模型GANs是通过上采样的方式通过在像素之间进行插值进行扩展,当扩展到设定的尺寸时再进行卷积处理,那么输出的尺寸就会比原来的大。

而判别模型D(x)也是一个深度卷积网络,判别模型输入是生成模型的输出,经过一系列卷积的操作,最后得到是1×1的输出结果,也就是概率p。如果概率p接近于1,那么生成模型生成的图片特征相当接近真实图片的特征;否则,生成模型生成的图片特征与真实图片的特征存在一定的差异。

判别模型的判断过程如图3所示。

3   基于深度卷积对抗网络的多状态自适

应人脸识别流程

对抗网络就是通过生成器和判别器的对抗训练,生成器最后生成一个与真实照片的分布pdata差不多的分布pG,这些图片特征的分布在深度卷积对抗网络中,特征提取最终体现为64×64×3卷积特征图。通过这种训练的原理,可以认定,博弈最终的结果是:采用深度卷积对抗神经网络,能够将大量无标注的图片进行学习,并能够对不同图片中的外部组件进行特征表示。那就意味着,深度卷积对抗神经网络能够对大量“多状态”的人脸进行学习,并形成外部组件的可视化特征向量的集合[9-10]。基于这种思想,本文通过深度卷积对抗神经网络构建一个多状态自适应的人脸特征库:通过提取外部组件的特征向量后,结合特定人脸(证件照或其他存储在服务器的人脸照片),构建有助于人脸分类的“多状态”自适应的人脸库——包括人脸器官和外部组件特征点的特征分量,实现“多状态”人脸的比对技术,实现人脸识别的功能。具体的流程如下:

(1)“多状态”人脸采集

不同“多状态”人脸图像通过摄像镜头采集得到,比如墨镜、口罩、帽子、耳环等部件形状和大小不一的人脸图像。针对采集的图像,结合图像大小、图像分辨率、模糊程度以及采集角度,采用Adaboost实现“多状态”人脸的检测,实现人脸位置和大小的标定,并把有用的信息筛选出来。

(2)“多状态”人脸预处理

由于从外界的获取的图像收到各种噪音的干扰,往往不能直接用于人脸识别,因此需要对图像进行灰度校正、噪音过滤等,通常的做法就是采用灰度变换、直方图均衡化以及滤波等方式对人脸图像进行处理。

(3)“多状态”人脸特征提取

采用深度卷积对抗神经网络的方式实现“多状态”人脸的特征提取。基于DCGANs的无监督学习能力,采用深度卷积对抗神经网络在生成器实现人脸外部件的特征表示。虽然输入深度对抗神经网络生成器最终生成的每一种物体的图像表征都是64×64×3的特征图,但是特征图中不同的数字对应着不同的物体,通过将物体的形状、颜色、尺寸的大小进行分类,便于后期构建多状态自适应特征库。

(4)构建“多状态”特征人脸库

根据证件照人脸器官的形状描述,以及深度对抗神经网络生成器所得到的人脸外部组件的特征,获得有助于人脸分类的特征数据,其特征分量通常包括人脸器官和外部组件特征点之间的欧氏距离、曲率、角度,形成“多状态”人脸特征表示,以其作为多状态自适应特征的人脸库。

因此,采用深度卷积对抗神经网络,实现了从人脸对象到不同场景自适应的人脸分层、多状态的表示,形成一个特定的人脸在多种不同状态下(比如佩戴黑色原形墨镜及佩戴白色口罩)的人脸特征表示,形成特定人脸(证件照或其他存储在服务器的人脸照片)在多个外部组件组合情况下的多种状态的人脸特征表示。基于上述的多状态人脸表示,构建“多状态”自适应特征的人脸库。

(5)“多状态”人脸匹配与识别

通过提取“多状态”人脸特征數据与数据库中存储的“多状态”自适应特征人脸库进行搜索匹配,通过设定一个阈值,将相似度与阈值进行比较,来对“多状态”人脸身份信息进行判断,形成最终的人脸比对结果。

4   实验结果

4.1  数据预处理

训练深度卷积对抗神经网络的数据在AR人脸库上公开采集,包含50名男性和50名女性的人脸图像,每人有26张图像,其中佩戴太阳镜和围巾的有12张人脸图像。本文随机选取1 000张“多状态”人脸数据进行模型训练,然后再随机选取500张“多状态”人脸数据进行测试,以检测本文提出模型对多状态人脸的比对能力。

训练深度卷积对抗神经网络时,由于不同人脸图片拍摄的角度不一致,因此抓拍到的人脸尺寸可能存在不一致的现象,因此需要先对人脸进行检测,得出人脸检测框后,将人脸框的图像统一转换为24×24。除此之外,并将正样本和负样本的比例设为1:1。

4.2  与传统算法的比较

为了更直观体现本文方法的优势,本文对比了采用深度卷积对抗神经网络将人脸补全方法,也就是通过深度卷积对抗神经网络将遮住人脸的位置进行补全后,再进行人脸识别。从表1的结果可知,本文提出的方法在上述测试集上的准确率为75.87%,远高于传统的人脸补全方法,本文的模型具有一定的優势。与此同时,本文提出的方法的处理速度也有一定的提升。主要是因为传统的方法需要采用人脸补全技术对遮住部位的特征进行补全,而本文提出的方法仅仅是检测物体的特征,然后在多状态自适应特征库中直接进行比对,因此大大简化了计算的复杂度。

5   结束语

本文提出了一种深度卷积对抗网络的多状态人脸检测方法,采用深度卷积对抗神经网络的对抗训练实现从对象到场景的分层表示后,结合特定用户的证件照构建多状态自适应特征人脸库,最后采用特征余弦相似度实现多状态特征下人脸的比对。该方法在公司的人脸识别平台上取得了良好的检测效果和运行效率,从本文的实验效果可知,本文提出的模型能够快速、准确、自适应识别多状态人脸,具有一定的扩展性。

参考文献:

[1] 于波,方业全,刘闽. 基于深度卷积神经网络的图像重建算法[J]. 计算机系统应用, 2018,27(9): 170-175.

[2] 柯研,王希龙,郑钰辉. 深度卷积生成对抗网络结构[J]. 电子技术与软件工程, 2018(24): 21-22.

[3] 刘彬. 基于对抗深度学习的人脸检测研究[D]. 青岛: 青岛科技大学, 2018.

[4] 洪洋,葛振华,王纪凯,等. 深度卷积对抗生成网络综述[C]//第18届中国系统仿真技术及其应用学术年会(18th CCSSTA 2017). 中国自动化学会系统仿真专业委员会,中国系统仿真学会仿真技术应用专业委员会, 2017.

[5] 李炬. 基于生成对抗网络的人脸灰度图上色[J]. 电脑知识与技术, 2018,14(11): 185-187.

[6] 马玉琨,MA YuKun,毋立芳. 一种面向人脸活体检测的对抗样本生成算法[J]. 软件学报, 2019,30(2): 469-480.

[7] 桑亮,高爽,尹增山. 基于生成对抗网络的运动模糊图像复原[J]. 计算机工程与应用, 2019,55(6): 179-183.

[8] 张营营. 生成对抗网络模型综述[J]. 电子设计工程, 2018,26(5): 34-37.

[9] 唐贤伦,杜一铭,刘雨微,等. 基于条件深度卷积生成对抗网络的图像识别方法[J]. 自动化学报, 2018,44(5): 90-99.

[10] Kuadra Leal Hanna. 基于深度卷积神经网络的图像超分辨率[D]. 大连: 大连理工大学, 2018.


(function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();