大小仅1MB,超轻量级通用人脸检测模型登上GitHub趋势榜

2019 年 10 月 14 日 机器之心

机器之心报道

项目作者:Linzaer

近日,用户 Linzaer 在 Github 上推出了一款适用于边缘计算设备、移动端设备以及 PC 的超轻量级通用人脸检测模型,该模型文件大小仅 1MB,320x240 输入下计算量仅 90MFlops。项目推出不久即引起了大家的关注,登上了今天的 Github trending。



项目地址:https://github.com/Linzaer/Ultra-Light-Fast-Generic-Face-Detector-1MB


以下是作者对此项目的介绍:

该模型设计是针对边缘计算设备或低算力设备 (如用 ARM 推理) 设计的一款实时超轻量级通用人脸检测模型,旨在能在低算力设备中如用 ARM 进行实时的通用场景的人脸检测推理,同样适用于移动端环境(Android & IOS)、PC 环境(CPU & GPU )。有如下几个特点:


  • 在模型大小方面,默认 FP32 精度下(.pth)文件大小为 1.1MB,推理框架 int8 量化后大小为 300KB 左右。

  • 在模型计算量方面,320x240 的输入分辨率下仅 90~109 MFlops 左右,足够轻量。

  • 模型设计有两个版本,version-slim(主干精简速度略快),version-RFB(加入了修改后的 RFB 模块,精度更高)。

  • 提供了 320x240、640x480 不同输入分辨率下使用 widerface 训练的预训练模型,更好的工作于不同的应用场景。

  • 无特殊算子,支持 onnx 导出,便于移植推理。


测试过正常的运行环境

  • Ubuntu16.04、Ubuntu18.04、Windows 10

  • Python3.6

  • Pytorch1.2

  • CUDA10.0 + CUDNN7.6


精度、速度、场景测试、模型大小比较

训练集是使用 Retinaface 提供的清理过的 widerface 标签配合 widerface 数据集生成 VOC 训练集(PS:以下测试结果均为本人测试,结果可能有部分出入)。


Widerface 测试

在 WIDER FACE test 集测试精度(单尺度输入分辨率:320*240)


在 WIDER FACE test 集测试精度(单尺度输入分辨率:VGA 640*480)


终端设备推理速度

树莓派 4B MNN 推理测试耗时 (单位:ms)(ARM/A72x4/1.5GHz/输入分辨率 : 320x240 /int8 量化)


场景测试

若干不同场景视频大致有效人脸检出数量测试(单位:个)(分辨率:VGA 640*480,阈值 0.6):


模型大小比较

若干主流开源轻量级人脸检测模型大小比较 :


此外,如果读者希望复现这些测试,或者亲自试试训练效果,那么可以直接下载 widerface 官网数据集或者下载作者提供的训练集。 这些数据集都需要放到./data 文件夹,且需要过滤掉 10×10 像素以下的人脸。 如果从官网下载的数据集,那么还需要运行一个脚本过滤太小的人脸,因此最好的方法就是直接下载作者提供已过滤的数据集。


  • 下载地址:https://pan.baidu.com/share/init?surl=m600pp-AsNot6XgIiqDlOw

  • 提取码:x5gt


在移除了 10*10 像素以下的极小人脸后,这个超轻量人脸检测模型能识别该图中的335张人脸。


至此 VOC 训练集准备完毕,项目根目录下分别有 train_mb_tiny_fd.sh 和 train_mb_tiny_RFB_fd.sh 两个脚本,前者用于训练 slim 版本模型,后者用于训练 RFB 版本模型,默认参数已设置好,参数如需微调请参考 ./train.py 中关于各训练超参数的说明。


文为机器之心报道,转载请联系本公众号获得授权
✄------------------------------------------------
加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com
投稿或寻求报道:content@jiqizhixin.com
广告 & 商务合作:bd@jiqizhixin.com
登录查看更多
1

相关内容

人脸检测(Face Detection)是一种在任意数字图像中找到人脸的位置和大小的计算机技术。它可以检测出面部特征,并忽略诸如建筑物、树木和身体等其他任何东西。有时候,人脸检测也负责找到面部的细微特征,如眼睛、鼻子、嘴巴等的精细位置。
专知会员服务
31+阅读 · 2020年4月24日
专知会员服务
160+阅读 · 2020年4月21日
专知会员服务
109+阅读 · 2020年3月12日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
35+阅读 · 2019年12月15日
【课程】伯克利2019全栈深度学习课程(附下载)
专知会员服务
56+阅读 · 2019年10月29日
大小仅1MB!超轻量级的人脸识别模型火爆Github
大数据技术
25+阅读 · 2019年10月24日
使用ONNX+TensorRT部署人脸检测和关键点250fps
极市平台
34+阅读 · 2019年10月22日
小于1MB的行人检测网络
极市平台
8+阅读 · 2019年9月23日
深大教授开源的人脸检测库,速度号称史上最快
大数据技术
9+阅读 · 2019年3月21日
1500+ FPS!目前最快的CNN人脸检测算法开源
极市平台
25+阅读 · 2019年3月15日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Arxiv
5+阅读 · 2019年2月28日
Learning Recommender Systems from Multi-Behavior Data
Arxiv
7+阅读 · 2018年6月1日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关VIP内容
专知会员服务
31+阅读 · 2020年4月24日
专知会员服务
160+阅读 · 2020年4月21日
专知会员服务
109+阅读 · 2020年3月12日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
35+阅读 · 2019年12月15日
【课程】伯克利2019全栈深度学习课程(附下载)
专知会员服务
56+阅读 · 2019年10月29日
相关资讯
大小仅1MB!超轻量级的人脸识别模型火爆Github
大数据技术
25+阅读 · 2019年10月24日
使用ONNX+TensorRT部署人脸检测和关键点250fps
极市平台
34+阅读 · 2019年10月22日
小于1MB的行人检测网络
极市平台
8+阅读 · 2019年9月23日
深大教授开源的人脸检测库,速度号称史上最快
大数据技术
9+阅读 · 2019年3月21日
1500+ FPS!目前最快的CNN人脸检测算法开源
极市平台
25+阅读 · 2019年3月15日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Top
微信扫码咨询专知VIP会员