【本期推荐专题】从三大主流前端技术出发,看看它们各自特性,以及如何从业务特性出发,选择合适的框架。

摘要:我们基于MindSpore设计了一种人脸识别算法,以解决口罩遮挡场景下的人脸识别问题。该算法的开源代码已经在MindSpore上首发了。

本文分享自华为云社区《不用摘口罩也知道你是谁,MindSpore训练口罩人脸识别模型》,原文作者:chengxiaoli。

人脸识别的目标是确定人脸图像的身份。随着智慧城市的建设,人脸识别的应用场景越来越多样,比如嫌疑人追踪、定位走失的老人儿童等。随着新型冠状病毒在全球范围内的爆发,为了公共卫生安全,越来越多的人在公共场所佩戴口罩以降低感染传染性疾病的风险。

传统的人脸分析方法主要提取整张脸部的全局特征进行分析,口罩遮挡场景下,面部的部分重要部位(比如下颌等)被口罩覆盖住,提取整张脸的全局特征将会引入大量噪声。因此,口罩遮挡场景下的人脸分析任务亟需新的解决方案。我们基于MindSpore设计了一种人脸识别算法,以解决口罩遮挡场景下的人脸识别问题。该算法的开源代码已经在MindSpore上首发了。

  • 论文:

Feifei Ding, Peixi Peng, Yangru Huang, Mengyue Geng and Yonghong Tian. Masked Face Recognition with Latent Part Detection. ACM Multimedia 2020. https://dl.acm.org/doi/pdf/10.1145/3394171.3413731

  • 开源地址:https://gitee.com/mindspore/mindspore/tree/master/model_zoo/research/cv/MaskedFaceRecognition

算法框架

目前还没有针对口罩人脸的大规模的训练数据集,为解决训练数据不足的问题,我们基于已有的公开人脸数据集生成口罩人脸数据作为训练数据。流程如下:

(1)采用已有的人脸关键点检测算法(比如Dlib)检测出无遮挡人脸图片上的多个关键点位置;

(2)标注出口罩佩戴区域(鼻尖以下区域)的关键点位置;

(3)在口罩示例图片(比如N95口罩)上手动标注关键点,并和人脸口罩佩戴区域的关键点一一对应;

(4)根据口罩示例图片的关键点位置,对其做三角剖分,将口罩示例图片划分为多个小三角形;

(5)根据口罩示例图片和人脸图片的关键点对应关系,将口罩示例图片上的每个小三角形区域仿射变换到人脸图片上,并进行平滑操作,生成口罩人脸图片。

我们在人脸公开数据集WebFace上生成了8种不同风格的口罩人脸,将其与原始未佩戴口罩的人脸图片混合,作为训练数据。

算法框架如图所示,考虑到口罩人脸中的许多重要信息被口罩遮挡,我们提出了基于潜在区域检测的二分支网络模型以提取更具判别力的特征。其中,局部分支对潜在区域提取局部特征,全局分支对原图提取全局特征。

我们将潜在区域定义为未被口罩遮挡的人脸区域,用表示,其中为待学习的参数。受空间转换网络(STN)的启发,我们对区域内的特征进行有限制的仿射变换,使其转变为原图大小,公式如下:

其中,目标框定义为H和W分别为原图的长和宽。通过该公式可以得到可以通过STN的仿射变换矩阵的参数转化得到,由此可以检测出潜在区域。根据潜在区域和原图坐标的对应关系,采用双线性插值将其扩充为和原图一样的大小。

网络模型为二分支网络,一分支对潜在区域提取局部特征,另一分支对原图提取全局特征,两分支共享网络参数。各分支采用分类损失函数进行优化,对于局部分支,额外引入LPD损失函数:

其中,为鼻尖关键点的纵坐标。引入该损失函数的目的是规范网络对潜在区域的定位,使其尽可能在人脸鼻尖以上的区域,因为根据先验知识,口罩往往会遮挡鼻尖以下的脸部区域。在测试阶段,将全局特征与局部特征结合作为最终的特征表达。

实验结果

我们搜集了实际的口罩人脸数据集PKU-Masked-Face Dataset作为测试集,该测试集共有10301张属于1018个不同身份的人脸图片。大多数身份有至少5张佩戴口罩和5张不佩戴口罩的共计5个视角的人脸图片,5个视角分别为:正面、左面、右面、俯视、仰视。口罩人脸图片作为查询图像库,正常人脸图片作为待匹配图像库。

  • 测试集链接:

https://pkuml.org/resources/pku-masked-face-dataset.html

基于MindSpore实现的算法模型实验结果如下表所示,其中Baseline为采用WebFace原始数据训练的ResNet50基准模型,MG是采用WebFace增强数据训练的ResNet50模型,LPD为我们提出的潜在区域检测模型。

MindSpore代码实现

二分支网络结构代码:

其中global_out和partial_out分别对应对原图提取的全局特征和潜在区域提取的局部特征,两部分共用特征提取主干层。

潜在区域检测LPD模块的具体实现:

其中输入为原始图片,输出为未被遮挡人脸区域边界坐标。

  • 相关训练与推理代码:

https://gitee.com/mindspore/mindspore/tree/master/model_zoo/research/cv/MaskedFaceRecognition

该代码基于MindSpore框架实现,运行的硬件环境为Ascend910。算法解决了口罩遮挡场景下的人脸识别问题,对基准模型性能提升明显,实验结果如上表达到业界领先水平

点击关注,第一时间了解华为云新鲜技术~

MindSpore:不用摘口罩也知道你是谁相关推荐

  1. 智能抗疫 | 戴口罩人脸数据助力科技防疫

    新冠肺炎疫情防控牵动着国人的心,同时也是中国科技实力的一次临场考验."提升科技防控疫情力度,积极为打赢疫情防控阻击战作出贡献."1月29日,国资委主任郝鹏表示.帮助安检及医护人员提 ...

  2. 针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言477-486条如下:

    477,国产自动驾驶操作系统首获国际认证. 华为自动驾驶操作系统(含虚拟化机制)己获Safety领域最高等级功能安全认证(ISO26262ASILD). 这也是我国首个获得ASILD认证的操作系统内核 ...

  3. 人脸识别应用场景不断拓展 刷脸要方便更要安全

    刷脸解锁.刷脸支付.刷脸进校园--近几年,人脸识别技术不断取得突破,应用场景逐渐拓展,进一步便利了我们的生活,在疫情防控常态化阶段更是大显身手.与此同时,仍有一些问题困扰着行业发展,比如在非必要场景过 ...

  4. 如何利用 AI 对抗疫情?

    在对抗疫情面前,政府.组织.个人都竭尽全力进行应对.而往日作为尖端科技象征的AI,也将投入到疫情对抗中. 即使是平时对人工智能技术没有多少兴趣的人,在这段特殊时期也会注意到AI这个字母组合. 2月4日 ...

  5. 秒过,度目智慧通行让常态化防疫更高效

    "度目智慧通行是防疫时代的必然产物."中建三局信息技术研究院的一名技术人员如是说. 中建三局信息技术研究院(以下简称研究院)是由中建三局安装公司(智慧事业部)运营,自建立伊始,便肩 ...

  6. 脸书推出VR视频会议应用程序 正式跨出元宇宙第一步;三家公司新入选福布斯2021云计算百强榜;微软挖来亚马逊云业务顶级高管贝尔...

    NEWS 本周新闻回顾 微软挖来亚马逊云业务顶级高管贝尔 微软公司已经聘请亚马逊云业务高管查理·贝尔担任其企业副总裁.鉴于微软的Azure 云业务正试图从亚马逊 AWS 手中争夺份额,这一挖角行动可以 ...

  7. 度目智慧通行让常态化防疫更高效

    "度目智慧通行是防疫时代的必然产物."中建三局信息技术研究院的一名技术人员如是说. 中建三局信息技术研究院(以下简称研究院)是由中建三局安装公司(智慧事业部)运营,自建立伊始,便肩 ...

  8. 高效!中建三局携手百度智能云打造度目智慧通行解决方案

    "度目智慧通行是防疫时代的必然产物."中建三局信息技术研究院的一名技术人员如是说. 中建三局信息技术研究院(以下简称研究院)由中建三局安装公司(智慧事业部)运营,自建立伊始,便肩担 ...

  9. 支小蜜智慧食堂k12降低食堂成本,提升支付效率

    结账"3秒"搞定,告别丢卡 学生选定菜品后,只要站在智慧食堂 "刷脸机"前面1秒钟,身份就会被识别出来,并显示在屏幕上,在确认信息无误之后,点击"确认 ...

最新文章

  1. java 整合solr_SpringBoot整合Spring Data Solr
  2. git 提交 merge请求 WIP
  3. 使用 Servlet 读取表单数据
  4. 最全的http头部信息分析(转载)
  5. Kaggle : Using a Convolutional Neural Network for classifying Cats vs Dogs
  6. python文本进度条94页_Python学习笔记 | 实例4:文本进度条
  7. 员工转正述职答辩问什么问题_展风采 创未来 | 记德信地产杭州公司新员工转正述职答辩...
  8. Git成立14周年快乐:您对Git钟爱什么?
  9. 排序归并连接Merge Sort Join
  10. linux强实时,强实时性Linux内核的研究与设计
  11. cgroup学习(五)—— create new cgroup
  12. 【Scratch】《零基础入门学习Scratch》(小甲鱼)笔记一
  13. uCharts 图表
  14. matlab10b有32位吗,win10系统有32位吗?win1032位和win1064位区别是什么
  15. 高物实验报告计算机模拟高分子,高分子物理实验课程改革的论文
  16. 深度数据全方位解析:冰桶挑战---TOMsInsight 2014.08.20
  17. 浏览器 .avi视频播放demo
  18. 十一. MySQL InnoDB 三大特性之 BufferPool
  19. 企业能源管控平台在轧钢行业能源管理中的应用
  20. C语言startup()函数,WSAStartup()函数以及DLL的加载

热门文章

  1. CSS 浮动 float属性
  2. SLAM Cartographer(7)地图构建器
  3. 雷林鹏分享:jQuery EasyUI 拖放 - 基本的拖动和放置
  4. 查看网卡流量:nload
  5. pycharm -- 小技巧1 (显示文件的代码结构以及错误提示)
  6. Java对象表示方式1:序列化、反序列化和 transient 关键字的作用
  7. 对一道SQL语句题目的再思考
  8. EntboostChat 0.9(越狱版)公布,iOS免费企业IM
  9. 更改tomcat自带的logo
  10. debian关闭开机自动启动时候的gui