快速准确的人脸检测、识别和验证新框架(文末附源码)

640?wx_fmt=jpeg

人脸技术

上一期“计算机视觉战队”已经和大家分享了相关的人脸检测、识别和验证背景及现状的发展状况,今天我们继续说说人脸领域的一些相关技术以及新框架的人脸检测识别系统。

640?wx_fmt=gif

640?wx_fmt=png

多任务学习的人脸分析

多任务学习是一个问题的多个部分同时处理的设置,通常使用相同的特性。MTL(Multi-Task Learning)背后的理念是,不同的任务可以相互受益。第一次使用MTL框架,并由Caruana[R. Caruana, “Multitask learning,” in Learning to learn. Springer, 1998, pp. 95–133]进行分析。朱等人[X. Zhu and D. Ramanan, “Face detection, pose estimation, and landmark localization in the wild,” in IEEE Conference on Computer Vision and Pattern Recognition, June 2012, pp. 2879–2886]提出了一种同时进行人脸检测、关键点定位和头部姿势估计的多任务方法。MTL通过利用来自不同监督来源的信息来提高所涉及的任务的性能。例如,JointCascade[D. Chen, S. Ren, Y. Wei, X. Cao, and J. Sun, “Joint cascade face detection and alignment,” in European Conference on Computer Vision, D. Fleet, T. Pajdla, B. Schiele, and T. Tuytelaars, Eds., 2014, vol. 8694, pp. 109–122]通过在训练期间在人脸检测中添加关键点定位来提高人脸检测性能。

640?wx_fmt=png

但是,由于上述方法使用了人工制作的特征,所以将这些方法扩展到新任务是困难的。不同的任务需要不同类型的专门人工制作特征。例如,人脸检测通常使用直方图面向定向的梯度(HOG),而人脸识别通常使用局部二进制模式(LBP)。结合这些实现人脸检测和识别是困难的。然而,从DCNNs获得的特征可以编码各种性质,可视的数据。与手工设计的特征相反,有可能为能够完成多个任务的单个DCNN进行训练作为人脸检测、关键点定位、属性预测、年龄估计、人脸识别等。共享深度特征有助于挖掘不同任务之间的关系。使用MTL可以被认为是一个额外的正则化用于CNN。

640?wx_fmt=png

HyperFace[R. Ranjan, V. Patel, and R. Chellappa, “Hyperface: A deep multitask learning framework for face detection, landmark localization, pose estimation, and gender recognition,” IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017]是第一个多任务方法之一的人脸分析。设计用于同时人脸检测、关键点定位、头部姿态估计和性别分类。它通过从CNN和语义的下层共享位置,来自较高层的丰富特征利用各种任务之间的协同作用生成特定的特征,这有助于改善每个任务性能。同样,TCDCN[Z. Zhang, P. Luo, C. Loy, and X. Tang, “Facial landmark detection by deep multi-task learning,” in European Conference on Computer Vision, 2014, pp. 94–108]增加了头部偏向估计、性别识别、微笑和眼镜检测到关键点定位的任务。这些辅助任务得到了改进关键点定位的表现。All-in-One Face通过添加更多任务和训练来扩展网络扩展人脸数据。

新人脸检测&识别框架

先进的人脸验证和识别

下图给出了新框架流水线的概述。接下来我们首先介绍了提出的DPSSD人脸检测器。然后,简要总结了人脸对齐方法使用单独MTL方法。最后描述了提取身份特征并将其用于人脸识别和验证的方法。

640?wx_fmt=jpeg

Deep Pyramid Single Shot Face Detector

新框架提出了一种新的基于DCNN的人脸检测器,称为深度金字塔单镜头人脸检测器(DPSSD),速度快,能够检测各种尺度上的人脸。它是特别擅长检测微小的人脸。因为人脸检测是一个目标检测的特殊情况,许多研究人员都有使用现成的目标检测器,并对其进行微调进行人脸检测[H. Jiang and E. Learned-Miller, “Face detection with the faster r-cnn,” arXiv preprint arXiv:1606.03473, 2016]。然而,为了设计有效的人脸检测器,必须解决人脸和目标检测任务之间的以下差异。

首先,人脸相比于在图像中的更低的比例/尺寸,一般的目标。典型地,目标检测器不被设计为以这样的低分辨率来检测任务所需的低分辨率人脸检测。第二,人脸的纵横比的变化是与在典型物体中的物体相比要少得多。与目标相比,面临的风险较小,结构变形不需要任何包含在目标检测算法中的附加处理以处理多个纵横比。新框架设计的人脸检测器解决这些问题。

从在truncated vgg-16[K. Simonyan and A. Zisserman, “Very deep convolutional networks for large-scale image recognition,” arXiv preprint arXiv:1409.1556, 2014]网络上训练单镜头检测器(SSD)[W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C.-Y. Fu, and A. C. Berg, “Ssd: Single shot multibox detector,” in European Conference on Computer Vision (ECCV), 2016, pp. 21–37]开始,以完成目标检测的任务。SSD具有优于其他目标的速度优势像Faster R-CNN这样的探测器,因为它是单级的并且不使用候选。SSD附加的卷积层被添加到VGG-16的末端以检测多个目标尺度。从多个特征层检测对象对每个层使用不同的卷积模型。修改了SSD体系结构和方法能够有效地检测微小的人脸。下图显示总体拟建的DPSSD人脸探测器的结构。640?wx_fmt=png

Face Alignment using All-In-One Face

候选的人脸识别和验证系统使用的系统用于关键点定位。All-in-OneFaces是一个最近的方法,该方法同时执行人脸检测、关键点定位、头部姿势估计、微笑和性别分类、年龄估计的任务人脸识别和验证。该模型是联合训练的在MTL框架中,为所有这些任务建立起协同作用,这有助于提高各个任务的性能。

由于缺少包含注释的单个数据集对于每个任务,通过不同的子网络来训练不同的子网络。这些子网在它们之间共享参数,这确保共享参数适用于所有任务。这些子网络被融合到单个中。

640?wx_fmt=png

上表给出了一些细节,用于训练All-in-One Face CNN的数据集。完成使用任务特定的损失对网络进行端到端训练。下图显示了All-in-One Face的一些代表性输出CNN。

640?wx_fmt=png

All-in-One Face网络架构使用预训练验证网络Sankararanayanan[25],包含七个卷积层,之后是三个全连接层。该网络被用作人脸部进行训练的主干识别任务。来自前6个卷积的参数此网络的层在其他面相关中共享任务如下图所示。针对人脸识别任务的CNN预训练提供了对通用人脸分析任务的更好的初始化,因为过滤器保留了区别人脸信息。

640?wx_fmt=png

人脸检测、识别和验证实验

实验结果

640?wx_fmt=png

WIDER Face数据集上的结果

640?wx_fmt=png

UFDD数据集上的性能评估

640?wx_fmt=png

在FDDB数据集上的性能评估结果

640?wx_fmt=png

在Pascal faces数据集上的结果

END

源码:http://ankan.umiacs.io/projects.html

如果想加入我们“计算机视觉战队”,请扫二维码加入学习群。计算机视觉战队主要涉及机器学习、深度学习等领域,由来自于各校的硕博研究生组成的团队,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。

640?wx_fmt=jpeg

我们开创一段时间的“计算机视觉协会”知识星球,也得到很多同学的认可,我们定时会推送实践型内容与大家分享,在星球里的同学可以随时提问,随时提需求,我们都会及时给予回复及给出对应的答复。

640?wx_fmt=jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
智能家居人脸识别源码SSM是一种基于Java语言开发的用于智能家居的人脸识别系统的源代码。SSM是指Spring+SpringMVC+MyBatis,是一种常用的Java开发框架,提供了一种高效、简洁、灵活的开发方式。 智能家居人脸识别技术是指利用计算机视觉和模式识别的方法,通过摄像头对人脸进行图像采集和特征提取,并与预先存储的人脸特征进行比对,从而实现对人脸身份的快速识别。 智能家居人脸识别源码SSM提供了一套完整的人脸识别系统的实现框架和代码,包括前后端的开发解决方案。前端采用了基于HTML、CSS和JavaScript的Web页面展示,以及基于AJAX的数据交互方式,使得系统在用户界面友好、操作便捷的同时,能够充分利用网络资源和实现实时交互。 智能家居人脸识别源码SSM的后端采用了Spring框架进行系统的基本配置和依赖注入管理,SpringMVC框架处理页面请求和业务逻辑,MyBatis框架实现数据持久化和访问。这样的框架组合能够有效提高系统的可扩展性和可维护性。 智能家居人脸识别源码SSM实现了人脸图像的采集、人脸特征提取、特征对比及识别、身份验证等功能。还提供了系统管理、用户管理、权限控制等基本功能,方便用户进行系统的配置和管理。 智能家居人脸识别源码SSM的开发源于对智能家居领域的需求和对人脸识别技术的研究,可以帮助开发人员快速搭建一个基于人脸识别的智能家居系统。同时,开发人员也可以在此基础上进行功能和界面的定制化开发,以满足不同用户的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机视觉研究院

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值