人脸检测算法_腾讯已开源高精度人脸检测算法DSFD
腾讯提出一种高精度双分支人脸检测器DSFD并开源。该算法曾在全球两大权威人脸检测数据集WIDERFACE和FDDB上均取得了第一。
任务介绍
人脸检测算法是在图像上检测出人脸的位置(通常以矩形框形式输出),是人脸配准、人脸属性识别、人脸核身、人脸检索等技术的基础。随着人工智能行业的发展,人脸相关技术在社交娱乐、智慧零售、互联网金融等领域得到了越来越广泛的应用,同时也对人脸检测技术提出了更多的挑战。由于场景不受控、人员非配合,人脸往往受到逆光、遮挡、模糊、姿态、尺度等因素的干扰,因此研发效果更优异的人脸检测算法具有重要意义。
多种场景下的人脸检测示意图
算法设计
此次提出的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)。
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。
DSFD算法在WIDERFACE榜单的结果
根据FDDB数据集召回率的计算方式不同,可以分为Discrete和Continuous两种评估方式,图中横轴为Falsepositives(误检数量),纵轴为Truepositive rate(召回率)。我们的DSFD在两种评估方式上均取得了Top-1,如下图所示。
DSFD算法在FDDB榜单的结果
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
(登录后才能访问公开项目)
腾讯工蜂源码系统为开源开发者提供完整、最新的腾讯开源项目国内镜像
人脸检测算法_腾讯已开源高精度人脸检测算法DSFD相关推荐
- 腾讯已开源高精度人脸检测算法DSFD
腾讯提出一种高精度双分支人脸检测器DSFD并开源.该算法曾在全球两大权威人脸检测数据集WIDERFACE和FDDB上均取得了第一. 任务介绍 人脸检测算法是在图像上检测出人脸的位置(通常以矩形框形式输 ...
- python开源的人脸识别库_什么是 SeetaFace 开源人脸识别引擎
区分不同的人是很多智能系统的必备能力.为实现此目的,一种可能的技术手段是通过对人脸的光学成像来感知人.识别人,即所谓的人脸识别技术.经过几十年的研发积累,特别是近年来深度学习技术的涌现,人脸识别取得了 ...
- 人脸检测算法_目前最强!开源人脸检测算法:RetinaFace
加入极市专业CV交流群,与6000+来自腾讯,华为,百度,北大,清华,中科院等名企名校视觉开发者互动交流!更有机会与李开复老师等大牛群内互动! 同时提供每月大咖直播分享.真实项目需求对接.干货资讯汇总 ...
- yolo人脸检测数据集_自定义数据集上的Yolo-V5对象检测
yolo人脸检测数据集 计算机视觉 (Computer Vision) Step by step instructions to train Yolo-v5 & do Inference(fr ...
- 人脸识别算法_格灵深瞳在人脸识别算法测试(FRVT)中斩获全球第一
1月6日,美国国家标准与技术研究院(NIST)公布了最新的人脸识别算法测试(FRVT)成果,格灵深瞳再次刷新纪录:在7项测试子任务中,获得2项第一.3项第二,综合排名世界第一的成绩. 过去几个月,很多 ...
- 蝴蝶优化算法_腾讯机智团队分享--AllReduce算法的前世今生
从事分布式深度学习相关工作的同学,应该都频繁地用到了AllReduce(规约)操作. 图1 AllReduce的示意图 但是对于训练框架中集成的AllReduce相关操作,其背后实现的原理是什么? 除 ...
- std中稳定排序算法_源代码库已开放 | 哈工大硕士生用 Python 实现了 11 种经典数据降维算法...
转自:AI开发者 网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA.LDA ...
- RefineDetLite:腾讯提出轻量级高精度目标检测网络
点击我爱计算机视觉标星,更快获取CVML新技术 前几天腾讯公布了一篇论文RefineDetLite: A Lightweight One-stage Object Detection Framewor ...
- python人脸识别理论_使用OpenCV和Python进行人脸识别
介绍 人脸识别是什么?或识别是什么?当你看到一个苹果时,你的大脑会立刻告诉你这是一个苹果.在这个过程中,你的大脑告诉你这是一个苹果水果,用简单的语言来说就是识别.那么什么是人脸识别呢?我肯定你猜对了. ...
最新文章
- JAVA面向对象-----final关键字
- 网络协议 19 - RPC 协议:远在天边近在眼前
- 用python tkinter显示Mandelbrot图
- 《软件工程》课之-调查问卷的心得体会
- sqlserver中创建包含事务的存储过程
- 库克:iPhone决不妥协!不爽换安卓 iPhone 更有“安全性和隐私性”
- OMS开发随笔之开发和部署要点
- 使用Postman做API自动化测试
- Ruby之散列与快排小程序
- HDU 5895 Mathematician QSC
- 贝叶斯估计原理及流程
- git stash (保存当前的工作现场)
- 算法:回溯三 Combination Sum组合总数
- [10]STM32程序调试方法-STLINK调试和软件调试
- python打开excel大文件慢,excel内容很少,文件却很大,怎么解决:python处理excel文件...
- 走向.NET架构设计—第三章—分层设计,初涉架构(后篇)
- AI---人工智能学习
- 该设备正在使用中。请关闭可能使用该设备的所有程序或窗口,然后重试。
- 重置已清账项目及两种不同重置方式(只重置、重置并冲销)介绍和实操-FBRA
- 游戏开挂的罪与非罪——从“王者荣耀外挂案”说起
热门文章
- 怎么将oracle的sql文件转换成mysql的sql文件
- 第一百四十一节,JavaScript,封装库--DOM加载
- html调用父页面的函数,js调用父框架函数与弹窗调用父页面函数的方法
- rocketmq新扩容的broker没有tps_深入研究RocketMQ消费者是如何获取消息的
- oracle实现id自增和设置主键
- oracle不要重复记录,Oracle中去重复记录 不用distinct
- Java语言所有异常类均继承自_Java将运行错误分为两类:(__)和(__), 其对应的类均派生自(__)类;...
- scala中捕获异常_如何在Scala中引发异常?
- Java BigInteger类| and()方法与示例
- java获取主机mac_Java 如何获取主机的MAC地址