基于深度神经网络的动态人脸识别方法及应用
2015-07-25陈国平杜姗姗
陈国平,杜姗姗
0 引言
“人”是公共安全管理的核心对象,人脸是其中最重要的生物识别特征,依靠人脸识别已经成为反恐防暴、缉拿罪犯的一种重要手段,然而,在当前媒体大数据的时代,仅靠人工在海量视频库中检索人脸显然不可行。现有的自动人脸识别技术只能应用于固定卡口的正面人脸识别,在复杂动态环境下的识别率很低。深度神经网络源于人工神经网络,自 2006年由 Hinton等人提出了深度信念网络(Deep Belief Network,DBN)和自编码器(Auto-encoder),并基本解决了DBN训练问题以后,在语音识别、小规模图像识别等方面取得极佳性能。本文提出一种能适用于室外开放场合,用户无感的动态人脸识别方法,结合智慧校园的实际应用需求,研制了智慧校园动态人脸识别系统,实现了校内人员的人脸识别功能,并在交互系统中实时展现,经过实际部署和长时间运行,系统运行稳定,对校园内人员实现了有效管控,满足了实际应用需求。
1 超深卷积神经网络
传统人脸识别技术利用人工设计的人脸图像特征,例如HOG、SIFT等。然后在利用线性方法抽取人脸层面上的特征表示,比如利用PCA或LDA的思想获取Eigenface或Fisherface等人脸特征。实际应用表明,这些方法得到的线性人脸特征描述能力不足,抗干扰能力较差,有研究者对上述方法进行改进,提出了基于线性子空间的人脸识别算法,例如使用稀疏表示与尺度学习的思想增加人脸识别算法的鲁棒性。这些方法在带有部分遮挡与旋转角度的人脸识别问题上取得了一定的效果,但是对于真实世界中的复杂人脸识别问题还是不能取得理想效果。
本文基于深度学习思想,利用卷积神经网络结构的深度模型提取人脸特征。在最新的研究工作中,已经有人开始将深度的卷积神经网络模型用于人脸识别的问题,同样取得了很好的效果。本文对已有的深度卷积神经网络模型结构进行改进,设计了9层超深卷积神经网络模型,对人脸图像进行非线性特征提取。该模型具有更高的抽象与描述能力。该网络的结构如图1所示:
图1 深度人脸特征提取网络结构图
其中卷积层C1为32个大小为11×11×3的滤波器,池化层M2为32个大小为3×3×32的池化单元,卷积层C3为16个大小为3×3×32的滤波器,卷积层C4为16个大小为9×9×16的滤波器,局部连通层L5为16个大小为9×9×16的滤波器,局部连通层L6为16个大小为7×7×16的滤波器,局部连通层 L7为 16个大小为5×5×16的滤波器,全连通层F8为4096个隐含节点(人脸特征维度),全连通层 F9的节点数为训练样本中的人数,输出人脸类别。
该结构的模型输入是经过预处理,对齐的人脸正面照片,这些照片都是三通道的彩色图像。输入的人脸照片随后通过3层带有滤波器的卷积神经网络层,每一个卷积层分别用、 和来表示。第一个卷积层后带有一个池化层,用 来表示,其它卷积层不带池化层。不同于常规深度卷积神经网络(CNN),本网络对模型的复杂度与泛化能力进行了折衷优化,只在网络中的第一个卷积层后采用了池化层,此外,在卷积层中使用了细粒度更小的滤波器(3×3),以提取细小单元的纹理变化。经过卷积层与池化层的人脸特征会进一步送入三个局部联通层,最后通过两个全连通层来判定人脸的真实类别。用于识别的人脸特征采用全连通层的编码输出,也被称人脸图像的高层特征描述,后续深层的特征融合也基于这些特征实现。
与常规深度卷积神经网络相比,该网络加深了网络深度,是目前应用于人脸识别中面部特征提取的最深神经网络,此外,改变了网络卷积层中滤波器的像素尺寸,以得到更精细的人脸细节特征刻画。
2 人脸视觉特征自动学习
通过 BP算法迭代学习超深卷积神经网络各层参数,进而实现自动人脸特征学习:
(1)卷积层学习:
同一采样层由具有多个不同参数(权重)的滤波器组成,在数学上每个滤波器是 的矩阵,式中为滤波器尺寸,一般远小于原始图像,是图像的通道个数,对于灰度图像,第一个卷积层的取值1;对于彩色图像取值3,分别对应图像的RGB三个色彩通道;对于后续的卷积层,一般取值为上一层卷积层中滤波器的个数。
人脸特征提取过程中,每个滤波器会以一定步长扫描整幅图片进行卷积运算,并得到卷积层的输出值,在图像上某一位置的卷积过程描述如公式(1)所示:
式中为滤波器的中心位置,为前层网络输出,为当前层卷积结果。为滤波器权重,对应于大小的滤波器的第、个元素的值。滤波后的数值经过非线性变换后再作为卷积层的最终输出,即公式(2):
式中一般为tanh函数或sigmoid函数。
(2)池化层学习
在卷积层中,经过多个滤波器获取的图像特征可充分描述图像,而且有效减少了模型参数。然而当整个网络层次变多,连续堆积多个卷积层时会带来过多参数,训练成本过大,因此在深度卷积神经网络结构中,在每层卷积层后都会伴随一个池化层(pooling),或称为采样层(Sampling)。
卷积层滤波器的输出也是一个数值矩阵,池化层采用一个数值替换矩阵中相邻位置的多个值作为网络的下一层输入,在层中在3×3的区域内采用最大值采样策略,如公式(3):
其中是经过池化后的第、个元素的值,是上一层中各个位置的像素值。
尽管使用池化的方法可大幅减小深度网络训练参数的规模,但采样的机制会丢失原始照片中的一些细节,进而影响最终人脸识别的精度。本文网络结构根据实际应用场景去除了网络中的一些池化层,使网络在可训练的范围内对人脸图像中细节的抓取与噪声的去除进行了折中。
(3)局部连通层学习
经过多个卷积层与池化层后处理的数据会相继送入多个局部连通层进行特征学习。局部连通层在结构上与卷积层相似,差别在于图像上每个位置使用的滤波器没有共享参数的限制。
物理意义上,卷积层将提取不同类型的人脸图像特征,如人眼、鼻子等。这些人脸特征对于人脸识别的重要性不同,例如,两眼之间的图像细节信息比鼻子与嘴巴之间的图像信息具有更高的可区分性,因此,在局部连通层可实现对前者像素值赋予更高的权重,而对于后者赋予相对较低的权重。
(4)全连通层学习
局部连通层的输出经过多个全连通层后与人脸的实际类别进行拟合。全连通层可看作是多个逻辑回归公单元的组合,拟合误差选为训练样本的预测值与真实人脸类别编码的均方差。
通过多层的网络结构叠加后,全联通层可学习到抽象能力更高的特征描述,因此全连通层的中间输出作为人脸特征的有效编码,这些高层特征有利于人脸检测与识别。如图2所示,网络浅层(左侧)学习到基本纹理特征,网络高层(右侧)学习到更高层的描述特征,如五官形状等。在系统中层的输出值作为人脸的特征描述编码,如图 2所示:
图2 深度网络学习到的人脸特征
网络的参数包括卷积滤波器的权重、局部连通层与全连通网络的权重,可以通过反向传递(Back-propagation)方法训练更新。网络训练过程中,为提升算法泛化能力,将图像区域来额外扩充训练样本。比如将同一人脸的不同部分加入训练,每个区域大小大于原始人脸的75%。
3 基于类间约束与特征间约束的人脸识别
在机器学习领域,将多组特征融合能取得比单一特征更稳定的结果。为进一步提高人脸的识别精度,可以训练多个模型,将多个模型的预测结果进行融合。传统特征融合方法将融合和分类过程独立完成,需要人工根据分类结果反复调试融合过程的参数,改变融合过程需要重新训练分类器。本文提出一种基于类间约束与特征间约束的神经网络用于人脸识别。融合5个独立训练的超深卷积神经网络,大幅提升了人脸识别精度,如图3所示:
图3 基于类间约束与特征间约束的特征融合与传统方法比较
如图3所示,本文方法第一层神经网络分别对每种特征做特征抽取,下一层网络用于特征融合,融合后的特征作为最后一层网络的输入用于分类。利用神经网络工作机制,训练时可同时完成特征融合和人脸分类,算法根据分类结果自动优化特征抽取和特征融合。这种特征融合方法表达能力很强,在网络结构中可以看到许多传统的特征融合方法(如Stacking、Voting等)的思想。
特征融合通过优化以下目标函数获取神经网络分类模型中各连接的权重,如公式:
式中表示样本预测值和真实值的偏差,表示预设的第一权重系数,表示预设的第二权重系数,表示网络分类模型融合层的权重矩阵,每列对应一种特征,表示网络分类模型分类器层的权重矩阵,表示的转置,表示先对矩阵的每行求2范数得到一个向量,再对这个向量求1范数。最小化范数时,在极少行非0的情况下,对应目标函数最小,从而使得矩阵行稀疏,因此保留的非零行即为所有不同模态间共享的一个相同模式,可反映特征间的一致性。是半正定的对称矩阵,用于刻画人脸间关系,最初初始化为单位矩阵,在网络分类模型的训练过程中利用人脸关系对其进行更新,其非对角线上的每个元素衡量的是不同人脸间的关系。
网络分类模型包括融合层和分类器层。融合层的权重矩阵和分类器层的权重矩阵随机初始化,在训练阶段,通过前向传播算法对人脸样本特征(原始输入)进行非线性映射,得到人脸样本的预测值。针对人脸样本的预测值和真实值之间的偏差,通过调整融合层的权重矩阵和分类器层的权重矩阵,使得针对不同人脸样本,预测值和真实值之间的偏差最小,是用来衡量整个数据集上所有人脸样本的真实值和通过网络前向传播得到的预测值偏差的经验损失。
为充分利用特征间关系和人脸间关系,提高人脸识别的准确性,目标函数中增加项和项,其中表示网络分类模型融合层的权重矩阵,的每列对应一种特征,表示网络分类模型分类器层的权重矩阵。
4 校园动态人脸识别系统
智慧校园实时动态人脸识别系统通过架设在校园门口的高清摄像机,对出入校园的人员进行人脸识别,利用来自公安、文保局等部门的犯罪嫌疑人的人脸数据,以及曾经抓过的在校园内违法犯罪(比如偷盗人员)的嫌疑人脸库,对出入校园的违法犯罪人员进行提前锁定与及时预警。
本文所描述的实时动态人脸识别系统由视频预处理子系统、人脸识别子系统和人脸信息管理子系统组成。系统组成如图4所示:
图4 基于视频监控的实时动态人脸识别系统总体结构
本文重点讨论其中的人脸识别子系统,该子系统由超深卷积神经网络人脸特征提取模块、特征融合模块和人脸特征匹配与识别模块组成,实现在短时间内并行地对人脸进特征提取与识别,子系统的结构如图5所示:
人脸特征提取模块接收视频预处理发送的人脸图像,同时将它们(批量)输入多个预先训练好的超深卷积神经网络,在GPU中使用深度卷积神经网络的模型进行快速的特征提取计算。每张人脸经过特征提取模块计算得到的结果是多组相同长度的特征向量。
特征融合模块接收人脸特征提取模块计算出的多组相同长度的特征向量,将它们(批量)输入预先训练好的网络结构的融合模型中,通过GPU处理器进行加速计算。
特征匹配与识别模块从特征融合模块接收当前待识别人脸最终的特征向量,同时调用人脸数据库中带有身份信息的人脸特征进行比对,并基于相似度阈值从中找出相似人脸排序。
人脸识别子系统中人脸特征提取模块的功能是将输入的人脸区域的图像转换成统一长度的数字形式的特征向量,以供后续的特征融合模块使用。
特征融合模块的功能是将多组计算得到的向量化人脸特征进行有机组合,得到最后用于人脸匹配的人脸特征向量表示。
特征匹配与识别模块的功能基于输入的当前人脸特征,从人脸库中找出匹配的人脸,如图5所示:
图5 人脸识别子系统结构
4 总结
本文提出一种基于深度卷积神经网络的动态人脸识别方法,该方法能适用于室外开放场合,实现用户无感的动态人脸识别任务,基于本文提出方法研制了用于平安校园的人脸识别系统,实现了校内人员的人脸识别功能,并在交互系统中实时展现,经过实际部署和长时间运行,对校园内人员实现了有效管控,满足了实际应用需求。
[1] Haoqiang Fan, Zhimin Cao, Yuning Jiang, Qi Yin,Learning Deep Face Representation, [M]CVPR,2014.
[2] Pablo Garrido1, Levi Valgaerts1, Ole Rehmsen1,Thorsten Thormahlen, Automatic Face Reenactment,CVPR,2014.
[3] Yoshua Bengio, Aaron Courville, and Pascal Vincent,Representation Learning: A Review and New Perspectives,[J] IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE,2013,35(8).
[4] Zdenek Kalal, Krystian Mikolajczyk, and Jiri Matas,Tracking-Learning-Detection, [J] IEEE TRANSAC-TIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, 2012,34(7).
[5] 苏煜,山世光,陈熙霖,等.基于全局和局部特征集成的人脸识别[J].软件学报.2010,8:1849-1862.
[6] 王蕴红,范伟,谭铁牛.融合全局与局部特征的子空间人脸识别算法[J].计算机学报.2005,28(10):1657-1663.
[7] 赵恒,俞鹏,基于主动表观模型姿态矫正和局部加权匹配人脸识别[J].中国图象图形学报.2013,18(12):1582-1586.