人脸检测算法_腾讯已开源高精度人脸检测算法DSFD

腾讯提出一种高精度双分支人脸检测器DSFD并开源。该算法曾在全球两大权威人脸检测数据集WIDERFACE和FDDB上均取得了第一。

任务介绍

人脸检测算法是在图像上检测出人脸的位置(通常以矩形框形式输出),是人脸配准、人脸属性识别、人脸核身、人脸检索等技术的基础。随着人工智能行业的发展,人脸相关技术在社交娱乐、智慧零售、互联网金融等领域得到了越来越广泛的应用,同时也对人脸检测技术提出了更多的挑战。由于场景不受控、人员非配合,人脸往往受到逆光、遮挡、模糊、姿态、尺度等因素的干扰,因此研发效果更优异的人脸检测算法具有重要意义。

673a2e1133c38c174956a5f72808e97c.png

 多种场景下的人脸检测示意图

算法设计

此次提出的DSFD人脸检测算法,主要有3点创新:
(1)设计了一种新的“特征增强”模块(FEM:Feature Enhance Module)。FEM在采用Top-Down层间信息融合的同时,在同一“感受野”内做了更多的enhancement。因此在width and depth上学习到了更有效的context和semantic信息。

(2)提出了“分层锚点渐进”式的代价函数监督(PAL:Progressive AnchorLoss)。模型采用2个层级(hierarchy),基于第一层(low-level)和第二层(high-level)的差异性,适配了不同尺寸的anchor。在训练过程中,PAL对整个模型形成了更有效的监督。

(3)设计了一种“改进的锚点匹配策略”(Improved Anchor Matching Strategy)。One-stage detector由于在输出层分配有密集的anchor,anchor与face匹配的好坏直接影响训练效果。优图的研究人员data augmentation过程中充分考虑了不同大小的face和各个anchor的关系,提出了一种新的数据扩增法。

DSFD算法的整体框架主要包括三个部分:特征增强模块(FEM),分层锚点渐进式的代价函数(PAL),改进的锚点匹配策略(IAM)。

af0f8cf1d060d612d7f8d26be1e159a1.png

DSFD算法框架图

评测结果

WIDERFACE数据集分为Validation和Test两个评估集,每个集合中的数据根据人脸检测的难易程度分为Easy、Medium、Hard。我们的DSFD(图中Ours)在Validation和Test的三种评估模式上均取得了Top1。Validation上的评估结果如下(图中数字表示mAP指标),我们的算法效果为easy:0.966, medium:0.957,hard:0.904。Test上的评估结果如下,其中easy:0.960,medium:0.953,hard:0.900。

5af82762fdb099a684f59cdcb5511f4d.png

 DSFD算法在WIDERFACE榜单的结果

根据FDDB数据集召回率的计算方式不同,可以分为Discrete和Continuous两种评估方式,图中横轴为Falsepositives(误检数量),纵轴为Truepositive rate(召回率)。我们的DSFD在两种评估方式上均取得了Top-1,如下图所示。

398a3c8e96a5dde76a88e63f42a01b00.png

  DSFD算法在FDDB榜单的结果

96a4fbcde8683218fc39c1a2f3a5766f.png

2eb940548147900f733f775494daf6c2.png

DSFD算法在WIDERFACE数据集上的可视化结果

据悉,该算法投稿的论文《DSFD: Dual Shot Face Detector》已被国际人工智能顶级会议CVPR2019接收。

业务落地

目前,优图的人脸检测技术已经应用于公司内外的多个业务中。为赋能各个行业发挥了重要作用。下面选择一些典型案例作简要介绍。智慧零售-腾讯优Mall:优Mall是优图实验室为智慧零售推出的解决方案,该方案可以使商家为客户提供个性化服务,实时客流统计、客群精准营销等,从而为实体经济的发展注入新的活力。智慧娱乐:微视、手机QQ人脸特效,基于人脸检测技术,这些产品不断推出基于一些人脸特效,美颜美妆等娱乐玩法。

持续开源

自2017年,腾讯开始加快对外开源节奏,主要覆盖AI、云、游戏、安全、小程序等相关领域,其中计算机视觉技术的开源也是其重要一环。与DSFD一并开源的还有OneStageDet(OSD)项目,该项目是基于单阶段的通用目标检测器。2017年7月,腾讯优图首个AI开源项目NCNN开源,2019年至今已有人脸检测、属性等5项技术开源。腾讯优图将不断研究和探索,通过开源更多新技术为产业发展提供助力。

DSFD 开源地址

https://github.com/Tencent/FaceDetection-DSFD

OneStageDet 开源地址

https://github.com/Tencent/ObjectDetection-OneStageDet

(点击文末阅读原文直接访问)

请给项目 一个 Star !

欢迎提出你的 issue 和 PR!

 国内镜像地址:

https://git.code.tencent.com/Tencent_Open_Source/FaceDetection-DSFD

https://git.code.tencent.com/Tencent_Open_Source/ObjectDetection-OneStageDet

(登录后才能访问公开项目)

c5153c9772fe58a2d5cd8cefa33493a1.png

腾讯工蜂源码系统为开源开发者提供完整、最新的腾讯开源项目国内镜像

fd4243f72f86ec81c1080b1afafbe869.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/550243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java之struts2之数据检验

1.使用struts2时,有时候需要对数据进行相关的验证。如果对数据的要求比较严格,或对安全性要求比较高时,前端 js 验证还不够, 需要在后端再进行一次验证,保证数据的安全性。 2.struts2提供了两种机制来进行后端的数据验…

sdk开发包如何使用_SDK如何使能行业?华为昇腾要用软件充分释放硬件性能

谈及落地,软件永远是激发硬件性能的核心。自AI出现,围绕传统产业“智能化转型”的探讨就一直没有停下。而随着“新基建”口号的喊出,工业制造等场景的智能化进程更是被加上了助推器。以智能制造为例,依据Markets报告所预计的&…

vue入门:(组件)

模板:(template)模板声明了数据和最终展现给用户的DOM之间的映射关系。初始数据:(data)一个组件的初始数据状态。对于可复用的组件来说,通常是私有的状态。接收外部参数:&#xff08…

鹿邑2021高考成绩查询,鹿邑中考成绩查询2021

2021鹿邑中考成绩查询时间方法:91中考网消息:2021年鹿邑中考即将开始,在中考后,广大考生最关心的无疑就是中考成绩查询方法、鹿邑中考成绩什么时候公布?,根据往年经验,小编收集整理了2021鹿邑中…

excel删除行 uipath_学会这8个Excel神技巧,轻松告别零基础!

无论你是个学生还是职场中人,谁不知道Excel呢?尤其是办公一族,总是不可避免会使用到Excel。下面小电就向大家介绍8个神技巧,让你的工作量大大减少!那什么技巧有如此威力呢?想必有些大家都用过的&#xff0c…

IIS7.5下的asp.net网站不能连接数据库

今天报了一错就是"找不到Table[0]" 感觉是没有连到数据库。 处理方法:把连接字符串由windows身份验证改成 sqlserver验证就好了 我不知道为什么这么做!等待高手给我解答转载于:https://www.cnblogs.com/master-zhu/archive/2010/07/20/17810…

jq在html中添加dom元素,使用jQuery添加DOM元素的最佳方法

所以我已经看到了三种向页面添加html/DOM元素的方法.我很好奇他们每个人的利弊是什么.1 - 传统的JavaScript我相信直接的JS方法是通过构造每个元素,设置属性,然后附加它们.例:var myRow document.createElement("tr");myRow.class "myClass";var firstTD…

qt 5编程入门(第2版)_《C++并发编程实战第2版》第六章:设计基于锁的并发数据结构(1/3)...

本章主要内容设计并发数据结构的含义设计指南并发数据结构的示例实现在上一章中我们了解了底层原子操作和内存模型。本章我们先把底层的细节放一放(尽管在第7章我们将需要它们),探讨一下数据结构。为编程问题选择数据结构可能是整个解决方案的关键部分,并…

数据I/O流

文件输出流的应用。定义如下字符串:String str “12345abcdef#%&*软件工程”;编写程序将该字符串写入文件”data.txt”。package homework;import java.io.*;public class IO { public static void main(String[] args) throws IOException{ // TODO Auto-gene…

转学到斯坦福大学计算机专业,斯坦福大学转学申请条件有哪些?

斯坦福大学转学申请条件有哪些?据托普仕小编了解,斯坦福大学(Stanford University,简称Stanford)位于美国加州旧金山湾区南部的帕罗奥多市(PaloAlto)境内,临近世界著名高科技园区硅谷,是世界著名私立研究型大学。斯坦福…

计算机应用技术面试的礼仪和技巧,远程复试下,这些面试礼仪一定要注意!

已有高校官宣考研复试采取线上面试的形式,那么如何在远程面试中给导师留下礼仪得体的好印象呢?帮帮为大家准整理了线上复试礼仪,快来了解下吧~面试前期准备一、面试前做好面试设备技术检查。如果采取线上复试的形式,稳定的网络环境…

在网格中查找一个点的领域点

简介 在网格中查找这个点的领域节点。 代码 #include <iostream> #include <OpenMesh/Core/IO/MeshIO.hh> #include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh> using namespace std; typedef OpenMesh::TriMesh_ArrayKernelT<> MyMesh; int main(…

查找一个顶点的一层领域边

简介 查找一个顶点的一层领域边 代码一 这个代码使用了太多的auto&#xff0c;其实不利于阅读&#xff0c;代码二&#xff0c;把auto更改了。 #include <iostream> #include <vector> // -------------------- OpenMesh using namespace std; #include <OpenMes…

html控制按钮里面的文字,有谁可以告诉我web网页制作中通过三个按钮控制页面上的一段文字放? 爱问知识人...

先下载jquery-1。2。6。pack。js&#xff0c;包含到文件中EnlargeFont-size:12pxSmallAndy Moor – Fake Awake (Eco mix) (Anjunabeats)Humate – Love Stimulation (Glenn Morrison & Bruce Aisher mix) (Poker FlatEnlargeFont-size:12pxSmallAndy Moor – Fake Awake (…

git两个账号切换_Git切换账号方法

Windows修改Git账号 打开控制面板(Win+s快捷键),输入:control 命令行:control 凭证管理器 使用[凭证管理器]修改git账号: 全局范围修改账号 运行git config --global选项:$ git config --global user.name "John Doe" $ git config --global user.email "j…

河海大学计算机学硕导师选择理由,研导师:河海大学统计学考研经验

原标题&#xff1a;研导师&#xff1a;河海大学统计学考研经验写给考研上河海大学的同学们&#xff0c;研导师为大家整理总结一下河海大学统计学考研经验&#xff0c;希望对你们有帮助。初试科目&#xff1a;①101 思想政治理论②201 英语一③616 数学分析④861 高等代数复试科…

查找一个顶点的一层领域面

简介 查找一个顶点的一层领域面 代码 #include <iostream> #include <vector> // -------------------- OpenMesh using namespace std; #include <OpenMesh/Core/IO/MeshIO.hh> #include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh> #include <…

gv推了sweethearts_3HAC0373-1

3HAC0373-13HAC0373-13HAC0373-1-------------------------------------------------------------------------------------北上广不相信眼泪黑吉辽不相信喝醉江浙沪不相信邮费陕甘宁不相信水费京津翼不相信好肺福建宇创不相信货贵找我买产品不相信服务不到位&#xff01;&…

查找一条边的领域顶点 总觉得不完善

简介 查找一条边的领域顶点 代码 #include <iostream> #include <vector> #include <algorithm> // -------------------- OpenMesh using namespace std; #include <OpenMesh/Core/IO/MeshIO.hh> #include <OpenMesh/Core/Mesh/TriMesh_ArrayKerne…

计算机的应用数据处理,计算机的应用领域:数据处理(或信息处理)

计算机的应用领域:数据处理(或信息处理)发布时间&#xff1a;2008-07-14发布时间&#xff1a;2008-07-14 | 【打印】 【关闭】数据处理是指对各种数据进行收集、存储、整理、分类、统计、加工、利用、传播等一系列活动的统称。据统计&#xff0c;80&#xff05;以上的计算机主…