• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

FaceMaskDetection: 检测人脸并判断是否佩戴了口罩

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

FaceMaskDetection

开源软件地址:

https://gitee.com/mirrors/FaceMaskDetection

开源软件介绍:

FaceMaskDetection

English Version | 中文版

[updates]

人脸口罩检测,现开源所有主流框架模型和推理代码,支持的框架如下:

  • PyTorch
  • TensorFlow(包含tflite模型和pb模型)
  • Keras
  • MXNet
  • Caffe
  • Paddle
  • OpenCV dnn

检测人脸并判断是否佩戴了口罩, 并开源近8000张人脸口罩标注数据

Detect faces and determine whether they are wearing mask.

首先,祝愿我国和世界各国早日战胜新冠肺炎疫情,武汉加油!中国加油!

  • 我们开源了人脸口罩检测的所有主流框架(PyTorch、TensorFlow、Keras、MXNet和caffe)的相应模型(使用keras训练的模型,并转换得到的其他框架模型),并提供了所有五大框架的的推理代码。所有模型都在models文件夹下。

  • 开源了标注的7971张人脸标注图片,数据集来自于WIDER FaceMAFA数据集, 我们重新修改了标注并进行了校验(主要是MAFA和WIDER Face的人脸位置定义不一样,所以我们进行了修改标注)并将其开源出来。(有需要的朋友,敬请关注我们新建的公众号AIZOO(本文末也有二维码,可以扫描关注),回复口罩数据集就可以了。公众号刚开,恳请大家帮忙关注和扩散一下~)

关于本项目的介绍,请参考以下三篇我们公众号的文章

我们也使用TensorFlow.js部署了一个网页版,大家可以点击下面链接访问欢迎大家点击链接在线体验

aizoo.com跑在您浏览器的口罩检测模型

模型结构

我们在本项目中使用了SSD类型的架构,为了让模型可以实时的跑在浏览器以及终端设备上,我们将模型设计的非常小,只有101.5万个参数。模型结构在本文附录部分。

本模型输入大小为260x260,主干网络只有8个卷积层,加上定位和分类层,一共只有24层(每层的通道数目基本都是32\64\128),所以模型特别小,只有101.5万参数。模型对于普通人脸基本都能检测出来,但是对于小人脸,检测效果肯定不如大模型。具体效果,大家可以点击以下链接,访问我们的网站在线体验效果。aizoo.com跑在您浏览器的口罩检测模型

网页使用了Tensorflow.js库,所以模型是完全运行在您浏览器里面的。运行速度的快慢,取决于您电脑配置的高低。

模型在五个卷积层上接出来了定位分类层,其大小和anchor设置信息如下表.

卷积层特征图大小anchor大小anchor宽高比(aspect ratio)
第一层33x330.04,0.0561,0.62,0.42
第二层17x170.08,0.111,0.62,0.42
第三层9x90.16,0.221,0.62,0.42
第四层5x50.32,0.451,0.62,0.42
第五层3x30.64,0.721,0.62,0.42

运行方法

opencv

python opencv_dnn_infer.py  --img-path /path/to/your/img

paddle

on image:

python paddle_infer.py  --img-path /path/to/your/img

pytorch

如果您要运行图片:

python pytorch_infer.py  --img-path /path/to/your/img

如果您要在视频上跑,只需要:

python pytorch_infer.py --img-mode 0 --video-path /path/to/video  # 如果要打开本地摄像头, video_path填写0就可以了,如下python pytorch_infer.py --img-mode 0 --video-path 0

TensorFlow/Keras/MXNet/Caffe

另外四大框架运行方法基本类似,只不过将pytorch_infer.pypytorch的换成对应框架名字即可即可,以TensorFlow为例:

python tensorflow_infer.py  --img-path /path/to/your/img

注意,对于caffe的推理,我们使用了permute层,所以需要使用caffe-ssd,也就是SSD作者开源的caffe版本,官方版本的caffe并不包含permute层。您也可以使用opencv的dnn模块来加载模型推理,opencv支持permute层。

不过如果您需要可以在官方版本的caffe上可以运行的模型,也可以联系我们修改模型,实现不需要permute层的模型。

附录

问题反馈与交流

欢迎AI圈和科技圈的朋友关注我们的公众号,这是我们分享AI技术和资讯的地方。我们要做的事情是搭建开发者和AI算法和产品需求方的一个桥梁,欢迎有AI算法需求的朋友关注我们,也欢迎有熟练算法和开发经验的工程师添加我们,与我们交流。

如果你有任何问题,欢迎关注我们的公众号,通过后台给我留言,或者添加作者元峰的微信AIZOOTech与我联系 ,我会将您拉入AIZOO技术交流群。我们的技术交流群二维码,欢迎算法开发者和需求方进群交流,请输入备注,例如张三丰-浙大-目标检测或者张三丰-腾讯-图像分割

** 扫描元峰的微信号,邀请您入群。**

模型结构图

为了可视化方便,我们省略了BN层,如果您要查看完整模型,可以查看img文件夹的face_mask_detection.hdf5.png图片

测试集PR曲线

因为WIDER face是一个任务比较复杂的数据集,我们的模型又设计的非常小,所以对于人脸的PR曲线并不是那么性感。这点可以通过设计大模型来提升对于小人脸的检测效果,如果您有需求,欢迎通过上述二维码联系我们。

因为WIDER face是一个任务比较复杂的数据集,我们的模型又设计的非常小,所以对于人脸的PR曲线并不是那么性感。这点可以通过设计大模型来提升对于小人脸的检测效果,如果您有需求,欢迎通过上述二维码联系我们。

我们的网页长这样

欢迎大家点击链接在线体验

aizoo.com跑在您浏览器的口罩检测模型


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap