APP下载

基于改进的SSD的人脸识别算法研究

2019-07-09王斌

中小企业管理与科技 2019年16期
关键词:原图人脸识别人脸

王斌

(山西建设投资集团有限公司,太原030006)

1 引言

随着计算机视觉的发展,图像/视频中的人脸识别广泛用于身份验证、公共交通、办公场所等方面,在现代化社会中发挥着重要的作用,已经成为人工智能与机器视觉的研究和应用热点[1,2]。人脸识别技术是一种基于人类面部特征的用于个人身份识别的一种技术,在初期阶段,主要方法是利用人脸各部分比例特征作为参数,建立人脸识别系统的原型。随着信息技术的发展,对信息的收集和分析变得不那么复杂,人脸识别的发展方向也逐步转变为以整张脸为模型,并采用弹性匹配、灰度处理和形状分离等方法进行处理。目前,人脸识别的代表方法有Eigenface、SphereFace、Fisherface 等,但是特征仍需要人工提取,送入分类器中进行识别的过程比较复杂,特别是遇到角度变化、表情变化、遮挡等问题时识别效率将有所下降。卷积神经网络在图像、语音等领域发展快速,不但可以自适应提取面部特征,在速度和准确率上相较传统的机器学习的方法都有出色的表现。本文采用迁移学习优化SSD 网络模型训练过程,改进的SSD 网络模型对不同人脸目标进行识别,识别效率较高。

2 经典SSD 网络模型结构

深度卷积神经网络使得图像的识别率相比传统的识别方法有了长足的进步,由于直接对原始数据进行学习,对比非深度方法,它能够自动地提取更具表现力的特征,以及满足了实际应用中的端到端的需求。从AlexNet 的8 层网络到VGG 的16 层网络,更深的卷积网络整合了不同层次的特征。相关研究表明,可以通过增加网络层数丰富特征,Simonyan 等证明识别的精度随着网络深度的加深而提高,然而反向传播时梯度爆炸导致简单的堆叠卷积层并不能顺利地训练网络。有研究通过dropout 技术和批量归一化使得有限的深层能够继续训练,但在一定的训练迭代之后出现精度的饱和导致精度下降问题依然存在。

图1 SSD 网络模型结构

SSD(Single Shot MultiBox Detector)是Wei Liu 于2016年在ECCV 上提出的一种目标检测算法,与Faster RCNN 相比,该算法没有生成proposal 的过程,极大提高了检测速度。其基本结构如图1所示。

SSD 网络在基础网络部分采用了VGG16 卷积结构直接作用特征图预测目标类别和外围框。通过网络主体结构对特征进行提取,在各卷积层中进行卷积与下采样处理。输入的图像尺寸通常为300*300。网络结构在训练的过程中会产生损失量,定义损失函数在训练过程中具有评估网络结构优劣的作用,所对应的损失函数包括位置损失函数Lloc和分类损失函数Lconf,损失函数如式(1)所示:

3 基于迁移学习的SSD 设计

数据对于神经网络的训练至关重要。一般来说,原始数据量越大,训练出来的模型精度越高,泛化能力越强。但是,做数据标注费时费力,往往不容易收集太多。并且当在一定数据集上训练好一个卷积神经网络后,变换了对应的数据又要费时费力地进行新任务的模型训练,训练时间长、收敛速度慢。

迁移学习(Transfer learning)是一种机器学习方法,就是把为任务A 开发的模型作为初始点,把已学训练好的模型参数迁移到为任务B 开发模型的过程中。

考虑到大部分数据或任务是存在相关性的,本文将ORL标准人脸库预训练的网络权重参数作为SSD 检测框架的初始权重模型,通过迁移学习将已经学到的模型参数分享给SSD网络模型,共享底层结构权值参数,然后修改SSD 模型的顶层网络结构进行微调,以此克服不同人脸数据之间的差异性,模型训练快速地收敛于邻域很小的损失值。该方法可以加快并优化模型的学习效率,降低随机设置初始权值带来的网络不稳定性,避免网络从零学习的盲目性。

针对人脸识别过程中,会出现斜侧、遮挡等问题,本文利用已有的标准人脸库,对数据集进行了水平翻转、裁剪和颜色抖动等操作,制造出更多的图片进行数据增强应用于网络迁移学习的过程,进而提高改进SSD 网络的精度和泛化能力。

4 改进SSD 模型训练及结果分析

4.1 改进SSD 模型训练

人脸识别的模型建立过程中,为了提高模型的泛化能力,提高人脸识别的准确率和训练速度,本文设计的模型性能提升方法主要包括3 点:①增加卷积模型深度;②标准人脸库训练SSD 模型基础上,进行迁移学习,降低训练时间;③结合人脸斜侧、遮挡对视频窗口的实际可能发生的情况,对数据训练集进行水平翻转、裁剪和颜色抖动等操作,增强网络训练数据。

人脸识别仿真实验中,本文基于Tensorflow 深度学习框架,首先配置训练环境,选择输入图像参数,网络深度等参数进行模型训练。基于迁移学习的原始数据预训练得到的超参数:Learning momentum 设置为0.9,regularization parameter 设置为0.02,图像批处理大小设置为16,learning rate 设置为10-3 防止过拟合。

4.2 改进SSD 模型人脸识别结果及分析

将本文提出的基于迁移学习的SSD 网络进行建模训练后,应用于测试集进行识别结果检测。图2(a)和(b)给出了人脸识别的测试原图1和原图2,对应的识别结果分别为图2(c)和(d),并且图中给出了人脸准确率、处理时长及每秒可处理的帧数。可以看出,当图像中的人脸有较大的表情动作或者人脸比例较小的情况下,改进后的SSD 能够快速准确识别人的正脸。

图2 基于改进SSD 人脸识别原图及结果图

图3给出了未经过数据增强的SSD 模型及经过数据增强的改进的SSD 模型对侧脸的识别对比结果图。如图3(a)中人脸向左边倾斜,左右不对称,左脸部分面积小。图3(b)为未经过数据增强的SSD 识别结果,图3(c)为经过数据增强后的改进SSD 识别结果。由图中数据可以明显看出未经过数据增强的SSD 模型识别对侧脸的覆盖率差,识别准确率相对更低。反之,经过数据增强后的改进SSD 模型对微侧脸的模型具有更好的覆盖率和准确率。

图3 数据增强的侧脸识别结果对比

图4(a)和(b)给出了由于人物动作导致人脸图像不完整、出现轻微遮挡的原图1和原图2,图4(c)、(d)为识别后的图像,由结果图可以看出,改进后的SSD 模型对有轻微遮挡的人脸识别效果较好,且识别速度较快、鲁棒性强。

图4 基于改进SSD 人脸识别模型识别轻微遮挡图像

为了对本文提出的改进SSD 模型进行客观评价,采用指标查准率P(%)和召回率R(%)进行评价。其中P 表示检测框正确的比例,如式(2)所示,R 表示正确预测框在所有预测框中的比例,如式(3)所示。

mAP(mean average precision)表示目标查准率基础上对召回率积分的平均,本文的改进SSD 模型的P-R 曲线如图5所示,由图可见,本文的SSD 网络识别精度较高。

图5 基于改进SSD 模型P-R 曲线图

5 结论

人脸识别是人工智能应用的热门问题,而卷积神经网络则是图像识别领域新兴的有效方法。本文以人脸识别为研究内容,在经典SSD 模型的基础上,运用迁移学习的方法,将标准数据集下的权重移植到SSD 模型训练中作为初始权重模型,并采用数据加强和增加卷积模型深度的方法进一步提高模型检测精度和准确性,仿真实验结果表明,本文SSD 模型可以有效识别多姿态、多角度、轻微遮挡的人脸目标,准确率较高、识别速度快、鲁棒性强。

猜你喜欢

原图人脸识别人脸
人脸识别 等
有特点的人脸
揭开人脸识别的神秘面纱
完形:打乱的拼图
三国漫——人脸解锁
大家来找茬
基于类独立核稀疏表示的鲁棒人脸识别
马面部与人脸相似度惊人
长得象人脸的十种动物
基于K-L变换和平均近邻法的人脸识别