基于ArcFace框架的课堂环境下人脸识别算法设计

2021-08-27 06:38洪宇轩
计算机技术与发展 2021年8期
关键词:图像增强人脸人脸识别

洪宇轩

(南昌航空大学,江西 南昌 330063)

0 引 言

高校的课堂出勤率一直是高校对学生重点考核指标之一,文献[1-2]中阐述了课堂的出勤率对学生学习效率的影响。很长一段时间以来,课堂考勤主要是由人力来完成的,然而,无论是老师点名还是纸质版的考勤不仅浪费课堂时光而且都无法对学生起到良好的监督作用。

在文献[3]中,作者实现了让学生在教学楼特定区域内通过手机人脸识别完成课堂考勤,但是这种方法依旧不能避免学生利用虚拟定位或代签等系列作弊手段完成课堂考勤。在文献[4-5]中,作者利用教室入口处的视频摄像头针对上课学生的人脸进行识别完成课堂考勤,但是仅用这种方法在实际运用层面上会遇到很多问题,例如打卡造成的走廊拥堵等。如此可见,近年来课堂环境下的人脸识别系统需求也日益增长。

近年来,随着互联网的飞速发展,深度学习在人工智能技术上取得了显著的进展,在人脸识别的场景中尤为突出。目前,国内很多公司的人脸识别技术取得了很好的商用效果,根据2019年FRVT(face recognition vendor test)最新竞赛结果来看,中国格灵深瞳公司取得了非常优秀的成绩,在FRVT的四个子任务分别为签证照片(Visa)、嫌疑人照片(Mugshot)、非约束自然环境人脸照片(Wild)、非约束环境下儿童照片(Child)中,格灵深瞳最终获得一项全球第一(非约束自然环境人脸照片)、两项全球第四(嫌疑人照片,非约束环境下儿童照片)及一项全球第五(签证照片)的优异成绩,如果仅计入国内参赛厂商,格灵深瞳则分列两项第一和两项第二,其各个子任务的准确率都高达99%以上。

这也证明了国内在研究人脸识别等深度学习技术上,取得了重大的进步,也为深度学习在国内进一步普及奠定了一定的基础。虽然针对约束性场景下的人脸识别已经达到了商用程度,但是在自然场景中,人脸会受到很多因素的影响,比如上述说的人脸姿态、光照不均等因素,都造成了识别上的困难。因此研究一种针对于自然场景下的人脸识别方法就显得尤为重要,并且具有实际意义。其中,文中要研究的自然场景以课堂为主要背景。

文中设计了可以用于课堂环境下的人脸识别系统,即在教室的内部安装摄像头来进行人脸识别。但是因为人脸识别系统极其依赖人脸检测的性能,教室内学生数量多,教室内空间大,教室内不同位置的光线分布存在差异以及学生在上课时的面部姿态也不一致[6-9]。这些客观因素都导致了内摄像头得到的一张图片中可能是十分复杂的,它可能有众多且姿势各异的学生并且光线分布不均匀,要检测出这样一张图片的所有学生的人脸,无疑是一项技术挑战,如果人脸检测的性能不佳,势必会导致遗漏掉部分已经来上的同学,准确性会大打折扣。

近些年来,深度学习在人脸识别方面有了很大的进展,针对自然场景下的人脸识别,研究者进行了长期研究并有了实质性的进展。一般而言,人脸识别系统涵盖人脸采集、人脸检测对齐、人脸识别模块等,优化其中任意一个模块对于人脸识别准确率的提高都具有重要意义。文献[10]提出了一种Multi-task的人脸检测框架,该框架使用了三个CNN,分别为P-Net、R-Net和O-Net,并将它们级联,但其环境的适应性较差、漏检率较高;后来由Redmon J等人提出的YOLO系列[11-13]算法是端到端目标检测算法,此系列算法对于人脸的检测速度有很大的突破。文献[14]提出了一种相比于MTCNN算法更简单并且检测更快速的高精度人脸关键点检测算法(PFLD),在主流数据集上的精度表现达到最高。

在人脸识别算法上,DeepFace[15]是由Facebook于CVPR2014年发表的,首度采用了深度学习方法在精度上超越了非深度学习方法Tom-vs-Pete classifiers[16]、high-dim LBP[17]等,主要用于人脸验证,是深度学习人脸识别的奠基之作。FaceNet[18]是Google于CVPR2015年发表的,提出了一个对识别、验证、聚类等问题的统一解决框架,即它们都可以放到特征空间里做,需要专注解决的仅仅是如何将人脸更好地映射到特征空间。考虑到深度学习的网络复杂程度已经很高,研究者们便开始了对损失函数优化的研究,其中SphereFace[19]提出了将Softmax loss从欧几里得距离转换到角度间隔,增加决策余量m,限制||W||=1和b=0。ArcFace[20]在SphereFace基础上进行了改进,提高了类间可分性同时加强类内紧度和类间差异,取得了更高的识别准确率。

其中,基于ArcFace的人脸识别技术采用的是Resnet网络结构做人脸关键点检测,但是对自然场景下的人脸识别精确度不高,会影响人脸识别的性能。为了解决上述问题,文中旨在设计一种新的人脸识别系统,增加了图像增强算法,融合了Mask R-CNN目标检测算法,以提升整套系统的识别能力。

1 课堂环境下的人脸图像增强算法

图像增强算法常见于对图像的亮度、对比度、饱和度、色调等进行调节,增加其清晰度,减少噪点等。图像增强往往经过多个算法的组合,完成上述功能,比如图像去噪等同于低通滤波器,增加清晰度则为高通滤波器,当然增强一幅图像是为最后获取图像有用信息服务为主。一般的算法流程为:图像去噪、增加清晰度(对比度)、灰度化或者获取图像边缘特征或者对图像进行卷积、二值化等。

文中之所以加入图像增强算法,是因为在课堂环境下采集到的人脸图像可能会受到光线、人物运动等因素的影响,人脸图像很容易不清晰,从而导致识别准确率不高。为了解决这此问题,在1993年文献[21-23]就提出了模糊集,后来文献[24-25]基于此提出了改进的方法,基于上述文献,文中提出了新的图像增强算法。

依据文献[21-25]所提的算法,利用线性变换把图像映射到模糊域,线性变换公式如下:

(1)

其中,xa表示3×3图像区域的最小值,xb表示3×3图像区域的最大值,t表示图像像素值的补偿因子,xij表示图像像素值。

图像增强算子公式为:

O(uA(x))=

(2)

其中,O表示图像输出,m和n均表示常数,且m=n=0.5。

为了恢复图像的信息丢失,文中通过公式(3)进行恢复:

xij=uA(xb-xa)+xa+η

(3)

其中,η是像素补偿因子。

那么,文中的图像增强算法的步骤为:

(1)通过公式(1)把图像映射到模糊域;

(2)通过公式(2)对图像进行非线性变换;

(3)进行图像恢复运算。

2 融合Mask R-CNN目标检测算法

目标检测,也叫目标提取,是一种基于目标几何和统计特征的图像分割,它将目标的分割和识别合二为一,其准确性和实时性是整个系统的一项重要能力。尤其是在复杂场景中,需要对多个目标进行实时处理时,目标自动提取和识别就显得特别重要。

随着计算机技术的发展和计算机视觉原理的广泛应用,利用计算机图像处理技术对目标进行实时跟踪的研究越来越热门,对目标进行动态实时跟踪定位在智能化交通系统、智能监控系统、军事目标检测及医学导航手术中手术器械定位等方面具有广泛的应用价值。文中之所以加入目标检测是因为课堂环境下存在面部遮挡,可以通过目标检测算法,先检测出学生的身体轮廓,再进行面部识别,在一定程度上可以大幅提高准确率。

其中,Mask R-CNN[26]是2017年提出的,实际上是Faster R-CNN的另一种形式,是将Faster R-CNN[27]与FCN(fully convolutional network)[28]相结合,组合成一个可以同时进行目标检测和实例分割的多任务框架。Faster R-CNN采用的都是two-state步骤,即先找出RPN(region proposal network),之后对其找到的每个RoI(region of interest)进行分类、定位、并找到binary mask。这与当时其他先找到mask然后再进行分类的网络是不同的。Mask R-CNN算法的创新之处在于提出RoIAlign方法代替了RoIPool[29]方法,采用双线性插值实现了像素级别的对齐。

Mask R-CNN是一个实例分割(Instance segmentation)算法,可以用来做“目标检测”、“目标实例分割”、“目标关键点检测”。

Mask R-CNN算法步骤:首先,输入一幅待处理的图片,然后进行对应的预处理操作;然后,将其输入到一个预训练好的神经网络中(ResNeXt等)获得对应的feature map;接着,对这个feature map中的每一点设定预定的ROI,从而获得多个候选ROI;接着,将这些候选的ROI送入RPN网络进行二值分类(前景或背景)和BB回归,过滤掉一部分候选的ROI;接着,对这些剩下的ROI进行ROIAlign操作(即先将原图和feature map的pixel对应起来,然后将feature map和固定的feature对应起来);最后,对这些ROI进行分类(N类别分类)、BB回归和Mask生成(在每一个ROI里面进行FCN操作)。

总之,Mask R-CNN是一个非常灵活的框架,可以增加不同的分支完成不同的任务,可以完成目标分类、目标检测、语义分割、实例分割、人体姿势识别等多种任务。Mask R-CNN算法的优点是训练速度十分快,训练花费的时间短,所以选择其作为检测课堂环境下学生人体的算法。之所以在检测人脸之前需要先进行人体检测,是因为加入人体检测可以大大降低因面部遮挡以及其他因素造成的面部信息不足而引起的漏检情况发生概率。

3 基于ArcFace的人脸识别系统流程

近年来,随着硬件计算能力的大爆发,在高性能计算的支持下深度学习有了革命性的进步,在互联网大数据的保证下深度学习有了源源不断的动力,优秀的网络结构被不断提出,深度学习技术已被推向时代浪潮。

在深度学习的分支领域,计算机视觉领域中,人脸识别技术的发展依然是工业界、学术界重点关注的对象,深度卷积神经网络也得到人们的高度关注。卷积神经网络是深度神经网络的一种具有代表性的算法,包含卷积计算及深度结构。卷积神经网络与传统神经网络具有相同的特征,都属于分层网络模型,其通过改变传统神经网络中层的计算形式与功能而来。

人们熟知的神经网络结构共分为输入层、隐藏层和输出层三部分。其中输入层是用于接收和传递信息;隐藏层随处理问题的复杂度不同,包含的神经元连接数目也不同,一般具有一个或多个层面,主要是用于处理输入信息;输出层输出结果是输入信息在神经网络中传递、分析及权衡的结果,该层输出能够体现出机器对事物的认知。每个层之间由有一个或多个神经元连接,相邻神经元之间互为连接,并将信息送入激活机制中处理,从而形成神经网络结构,在ResNet于2015年被提出后,越来越多优秀的网络基于ResNet进行优化更新也已取得卓越的成就,而在网络结构进一步升级优化有困难的情况下,研究者逐步将目光转向损失函数这一指挥棒上。

在引言中提到了ArcFace,它是在SphereFace原有的基础上进行的改进。提出了一种新的用于人脸识别的损失函数:additive angular margin loss,基于该损失函数训练得到人脸识别算法ArcFace(开源代码中为该算法取名为insightface,二者意思一样,接下来都用ArcFace代替)。ArcFace的思想(additive angular margin)和SphereFace以及不久前的CosineFace(additive cosine margin)有一定的共同点,重点在于:在ArcFace中是直接在角度空间(angular space)中最大化分类界限,而CosineFace是在余弦空间中最大化分类界限,这也是为什么这篇文章叫ArcFace的原因,因为arc含义和angular一样。除了损失函数外,该文的作者还清洗了公开数据集MS-Celeb-1M的数据,并强调了干净数据对实验结果的影响,同时还对网络结构和参数做了优化。

总体来说,ArcFace这篇文章做了很多实验来验证additive angular margin、网络结构设计和数据清洗的重要性,角度间隔比余弦间隔在对角度的影响更加直接,则与cos(mθ)和cos(θ-m)相比,ArcFace可以获得更具辨识性的深度特征,提高了类间可分性同时加强了类内紧度和类间差异。文中基于ArcFace人脸识别系统流程如图1所示。

由图1可见,该系统流程先利用教室内部的摄像头进行视频帧的提取,利用提取到的图像首先进行图像增强处理,接着利用Mask R-CNN目标检测技术进行初步的人体轮廓检测,紧接着使用ArcFace人脸检测,最后利用检测到的人脸数据与后台数据进行对比,完成课堂考勤。

图1 人脸识别系统流程

4 实验结果分析

实验部分采用了文中的改进算法与课堂考勤中常用的人脸检测算法(Voila-Jones[30]、MTCNN[31]、Tiny-Face[32])进行精度和速度上的差异对比。数据集使用了同一间教室的100余张图片,且采集方式暂时为人工拍摄,并对每一张图片内的学生人脸和人体进行训练验证。实验结果如图2所示。

图2 某图的四种算法检测结果

基于实验结果得出,Tiny-Face算法的检测结果是很好的,只是漏检了部分面部信息被遮挡的同学,其余基本都被检测出了。而Voila-Jones和MTCNN算法的检测结果差强人意,而文中算法的检测结果由于Tiny-Face,除了极个别几乎完全被遮挡同学未被检测出,其他学生都被检测到了。从该实验结果可以得出,文中提出的融合Mask R-CNN目标检测算法的方案可以起到降低漏检率的作用。

为了评价该系统的可靠性,定义两个指标分别为平均识别率(TPR)和误识率(FPR):

表1为文献[12-13]与改进后系统的TPR和FPR对比,由其可知,改进的方法TPR得到了一定的提高,错误率最小。可以得出,该方案在保证降低漏检率的同时,提高了系统的识别准确率。

表1 改进系统与SphereFace系统和ArcFace系统与改进系统的TPR和FPR对比

5 结束语

基于ArcFace框架提出了一种课堂环境下人脸识别系统,此外分别加入了图像增强技术以及Mask R-CNN目标检测技术,辅助其在课堂环境下增加检测的准确率以及降低漏检率。研究表明,该方法能够有效地解决人脸漏检的问题,为课堂环境下的人脸识别技术研究提供了一种新的方案,具有一定的实际意义,并得出以下结论:

(1)在课堂环境下,结合了图像增强算法以及目标检测算法的方法确实比单纯的ArcFace框架识别率要高,也降低了漏检率;

(2)虽然该改进算法确实比原算法效率好,但是系统在一定程度上也存在不足,比如容易引起误识别,有时会把非人体的目标框选进去。

因此,在未来的研究工作中,将想方设法改进算法,降低错误的概率,并且融合学校先前已经建设的学生宿舍人脸识别通道和门禁系统,并具备完善的学生人脸库数据,学校的教务系统具备各班级的课表数据以及教室上课学生详细名单等先行条件,给整套系统进行改进以及完善,也希望在未来的研究中能做到更好。

猜你喜欢
图像增强人脸人脸识别
通过图像增强与改进Faster-RCNN网络的重叠鱼群尾数检测
一种基于轻量级深度网络的无参考光学遥感图像增强算法
人脸识别 等
玻璃窗上的人脸
人脸识别的“国标”来了
智力考场:有趣的图片测试
荣耀畅玩7C:人脸识别
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
基于双树四元数小波变换的图像降噪增强
“领家系”可爱脸VS“高冷系”美人脸