近日,知名开源社区Github上有个名为DSFD(Dual Shot Face Detector)的算法引起了业内关注,它正是来自于腾讯优图。目前,该算法已经被计算机视觉顶级会议CVPR 2019接收,并且在2018年10月刷新了两个权威的人脸检测数据集WIDER FACE和FDDB上的新纪录。

Github开源地址:

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

论文公开地址:https://arxiv.org/abs/1810.10220

“三点创新”打造人脸检测领域最值得参考的代码

人脸检测算法是在图像上,检测出人脸的位置(通常以矩形框形式输出),是人脸配准、人脸属性识别、人脸核身、人脸检索等技术的基础。优图此次提出的DSFD人脸检测算法,主要有3点创新:

(1)设计了一种新的“特征增强”模块(FEM:Feature Enhance Module)

FEM在采用Top-Down层间信息融合的同时,在同一“感受野”内做了更多的enhancement。因此在network width and depth上学习到了更有效的context和semantic信息。

(2)提出了“分层锚点渐进”式的代价函数监督(PAL:Progressive Anchor Loss)

模型采用2个层级(hierarchy),基于第一层(low-level)和第二层(high-level)的差异性,适配了不同尺寸的anchor。在训练过程中,PAL对整个模型形成了更有效的监督。

(3)设计了一种“改进的锚点匹配策略”(Improved Anchor Matching Strategy)

One-stage detector由于在输出层分配有密集的anchor,anchor与face匹配的好坏直接影响训练效果,优图的研究员们在data augmentation过程中充分考虑了不同大小的face和各个anchor的关系,提出了一种新的数据扩增方法。

(算法整体流程图)

效果提升,来自优图不断的研究

随着近几年人工智能技术的发展,国内外不少机构、企业都在进行人脸检测的相关研究。腾讯优图的研究员们发现,虽然之前的人脸检测算法大都采用深度学习模型,并在特征学习的过程中也有采用特征金字塔网络(Feature Pyramid Network),但在面对遮挡、暗光、大姿态、小脸等复杂场景时,仍容易出现误检或漏检的情况。因此在FPN基础上,腾讯优图团队采用了3种不同级联方式的空洞卷积(Dilated Convolution),设计了特征增强模块FEM,充分学习到了不同感受野下的人脸特征。

(复杂场景下的人脸检测效果展示)

然而,在新算法探索的过程中,并不是一帆风顺的。这个项目从去年7月中旬启动,进行到第三周,检测效果已经在top5了,但优图的研究员们清楚,到这里还远远不够。在接下来的两个多月里,想要提升效果却越来越难。就好像爬山,前面爬得很快,越到后面,对耐力和决心的要求就越高,腾讯优图高级研究员Casey回忆道:“那段时间,我和其他几位同事实验了很多方案,很多时候是多个方案同时跑,甚至有些方案跑了4-5天后,发现失败了,又得做新的尝试。”失败后,几个研究员就近在工位旁边的玻璃房里,一起分析原因,开始摸索下一套试跑方案。在3个多月的反复“试跑-推翻-试跑”中,最后终于跑出一套大家都满意的算法。不负所望,该算法论文也已被CVPR2019接收。

走出实验室,为业务创造价值;

代码开源,与同行共同探讨

算法从实验室走出来,不是立马就能直接套用到业务里。事实上,论文里的模型通常比较大,导致实时性不好。在使用时,需结合实际应用情况压缩、裁剪,整体模型会做一定的调整。目前,腾讯优图的人脸检测技术已在安防、金融、社交、交通、零售等多个应用场景落地,并在手机QQ、微众银行、天天P图等多个公司内外部产品上进行应用验证。以安防领域为例,腾讯优图天眼智能安防平台以警务、安防需求为导向,是优图团队面向稽查布控、刑侦办案、社会安防等多场景推出智能化海量人脸检索解决方案。

(腾讯优图天眼智能安防平台)

2017年,腾讯对外开源节奏开始加快,主要覆盖AI、云计算、腾讯游戏、腾讯安全、小程序等相关领域。而腾讯优图的计算机视觉技术的开源更是其中重要的一环。2017年7月,腾讯优图首个AI开源项目NCNN已经正式开源,这是一个为移动端极致优化的高性能神经网络前向的计算框架,是业内首个为移动端优化的开源神经网络推断库。2018年,NCNN宣布正式加入ONNX,截止目前,NCNN的Github star数已接近6000。随着计算机视觉技术的不断开源, AI开发者能更快实现从研究到模型的落地部署,也能更方便地在不同框架间切换,为每项任务选取最优的开发工具。相信随着越来越多的AI机构、企业和个人的算法开源,将驱动整个AI研究更快发展和落地。

欢迎关注磐创博客资源汇总站:http://docs.panchuang.net/

欢迎关注PyTorch官方中文教程站:http://pytorch.panchuang.net/

重磅!刷新两项世界纪录的腾讯优图人脸检测算法DSFD开源了!的更多相关文章

  1. caffe_实战之两个简单的例子(物体分类和人脸检测)

    一.物体分类: 这里使用的是caffe官网中自带的例子,我这里主要是对代码的解释~ 首先导入一些必要的库: import caffe import numpy as np import matplot ...

  2. 东方超环(EAST)世界纪录

    2017年7月3日夜晚,国家大科学装置——世界上第一个全超导托卡马克(EAST)东方超环再传捷报:实现了稳定的101.2秒稳态长脉冲高约束等离子体运行,创造了新的世界纪录.这标志着EAST成为了世界上 ...

  3. [APIO2018]铁人两项 --- 圆方树

     [APIO2018] 铁人两项 题目大意: 给定一张图,问有多少三元组(a,b,c)(a,b,c 互不相等)满足存在一条点不重复的以a为起点,经过b,终点为c的路径 如果你不会圆方树 ------- ...

  4. 世界视频编码器大赛结果揭晓,腾讯V265编码器勇夺两项第一

    2019年10月22日,由莫斯科国立大学(Moscow State University)举办的MSU世界视频编码器大赛成绩揭晓, 腾讯内部开源协同的V265编码器再创佳绩,一举拿下PSNR(峰值信噪 ...

  5. 人工机器:NDC-谷歌机器翻译破世界纪录,仅用Attention模型,无需CNN和RNN

    终于找到ML日报的微信链接,抄之...................................... 请拜访原文链接:[谷歌机器翻译破世界纪录]仅用Attention模型,无需CNN和RNN. ...

  6. 阿里巴巴AI夺肝结节诊断两项世界冠军,至今无人超越

    在澳门用人工智能预测流感趋势后,阿里巴巴还在继续探索如何用科技保障人类健康,这一次是更准确地测量肝结节. 12月28日消息,在全球LiTS(Liver Tumor Segmentation Chall ...

  7. 存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectStateManager 项。

    在用asp.net MVC3 的MusicStore时候 Edit某个数据项时提示下面的错误: 存储区更新.插入或删除语句影响到了意外的行数(0).实体在加载后可能被修改或删除.刷新 ObjectSt ...

  8. Word Flow:创造吉尼斯世界纪录的触屏文本输入的全新体验——微软Windows Phone 8.1系统倾情巨献

    Flow:创造吉尼斯世界纪录的触屏文本输入的全新体验--微软Windows Phone 8.1系统倾情巨献" title="Word Flow:创造吉尼斯世界纪录的触屏文本输入的全 ...

  9. Java程序员的两项通用能力

    工作这几年来,经历了很多.从小白到中级(手机里有一款叫中国象棋的游戏,里面给对弈中电脑水平分为小白.菜鸟.新手.入门.初级.中级.高级.大师.特级大师,编程我暂且按照这样来区分). 学校教给我的是从小 ...

随机推荐

  1. 你有哪些相见恨晚的Chrome 扩展?

    「Chrome 没插件,香味少一半」,本期我们就来一起盘点一下chrome上那些相见恨晚的扩展. 1 JSONView2 Adblock Plus3 Keylines4 彩云小译5 单词发现者6 鼠标 ...

  2. Java入门教程四(字符串处理)

    Java 语言的文本数据被保存为字符或字符串类型.字符及字符串的操作主要用到 String 类和 StringBuffer 类,如连接.修改.替换.比较和查找等. 定义字符串 直接定义字符串 直接定义 ...

  3. Spring Security基于Oauth2的SSO单点登录怎样做?一个注解搞定

    一.说明 单点登录顾名思义就是在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统,免除多次登录的烦恼.本文主要介绍 同域 和 跨域 两种不同场景单点登录的实现原理,并使用 Spring ...

  4. CVE-2019-0708 远程桌面漏洞复现

    漏洞影响Windows版本: Windows XP SP3 x86Windows XP Professional x64 Edition SP2Windows XP Embedded SP3 x86W ...

  5. 学习使用Guava Cache

    官方文档:https://github.com/google/guava/wiki/CachesExplained 目录 一.guava cache介绍 二.快速入门 2.1.引入依赖 2.2.第一个 ...

  6. python数据分析工具 | numpy

    Python中没有提供数组功能,虽然列表可以完成基本的数组功能,但并不是真正的数组,而且在数据量较大时,使用列表的速度回非常慢.因此,Numpy提供了真正的数组功能,以及对数据进行快速处理的函数.Nu ...

  7. web安全测试(上)

    前情提要: 公司的安全测试一直是安全部经理全权负责,测试部只做功能和自动化. 但是2019是公司业绩腾飞的一年,业务量越来越大了,安全部经理实在做不过来. 于是他给整个测试部培训<安全测试> ...

  8. 群辉DS418play体验+经验分享

    群辉DS418play体验+经验分享     群辉DS418play体验+经验分享   购买初衷 近期百度网盘到期,我又需要重复下载很多资源(游戏.电影.毛片),下载没速度&下完没空间怎么办? ...

  9. Natas19 Writeup(Session登录,常见编码,暴力破解)

    Natas19: 提示,与上一题源码类似,只是PHPSESSID不连续.随便输入username和password,抓包观察PHPSESSID,发现是输入的信息,按照id-username的格式,由a ...

  10. WTM 3.5发布,VUE来了!

    千呼万唤中,WTM的Vue前后端分离版本终于和大家见面了,我曾经跟群里1000多位用户保证过Vue版本会在春天到来,吹过的牛逼总算是圆上了. WTM一如既往地追求最大程度提高生产效率,所以内置的代码生 ...