# 基于PyTorch&YOLOv4的口罩佩戴检测
![build](https://img.shields.io/badge/build-passing-success)
![build](https://img.shields.io/badge/python-v3.7-ff68b4)
![build](https://img.shields.io/badge/pytorch-1.4.0-orange)
![build](https://img.shields.io/badge/license-GPL-blue)
本项目是利用YOLOv4进行口罩佩戴检测,使用PyTorch实现。虽然现在国内疫情基本得到有效遏制,但防控仍不可过于松懈,在一些公共场合佩戴口罩还是必不可少的。基于此,自己做了该项目,后续打算继续改进,争取将其运行到边缘设备上。希望本项目能给疫情常态化防控出一份力,也希望真正的新年早日到来。
数据集一部分来源于参考部分,另一部分为自己手动收集与标注,共1200张训练集,600张口罩佩戴,600张未佩戴口罩;400张测试集,200张口罩佩戴,200张未佩戴口罩。利用YOLOv4在数据集上冻结backbone训练了25个epoch,解冻后再训练了25个epoch,测试mAP为80.75%。检测效果如下:
![testImage_result](testImage_result.png)
在NVIDIA GeForce RTX 2080 Ti上FPS大概能达到13左右。
## 目录
- [基于PyTorch&YOLOv4的口罩佩戴检测](#基于pytorchyolov4的口罩佩戴检测)
- [目录](#目录)
- [安装](#安装)
- [数据集](#数据集)
- [依赖库](#依赖库)
- [模型权重](#模型权重)
- [使用](#使用)
- [检测图片](#检测图片)
- [检测视频](#检测视频)
- [训练](#训练)
- [评估](#评估)
- [其他](#其他)
- [目前进展](#目前进展)
- [训练&评估结果](#训练评估结果)
- [参考](#参考)
- [License](#license)
## 安装
### 数据集
[链接](https://pan.baidu.com/s/1v06PLSN52YYJJyzBMhWJBQ) 提取码:31f3
### 依赖库
- Python >= 3.7
- PyTorch >= 1.4.0
- opencv-python >= 4.2.0.32
- Pillow >= 7.0.0
### 模型权重
- COCO数据集预训练模型:[链接](https://pan.baidu.com/s/1JDclXgxDmA06Mv6hrRB5Sw) 提取码:cp4g
- 本项目训练权重:[链接](https://pan.baidu.com/s/1opAbsydKnS1WWN9rgaH5IA) 提取码:kk47
## 使用
### 检测图片
使用Jupyter Notebook打开predict.ipynb,设置好图片路径后,运行detect_image()函数即可。
已经转为.py文件,直接执行predict.py中的detect_image(image_file_path)
### 检测视频
使用Jupyter Notebook打开predict.ipynb,设置好视频路径后,运行detect_video()函数即可。
已经转为.py文件,直接执行predict.py中的detect_video(video_file_path)
已经转为.py文件,直接执行predict.py中的 detect_mask_by_camera()直接通过摄像头监测
### 训练
下载预训练模型:
- COCO数据集预训练模型:[链接](https://pan.baidu.com/s/1JDclXgxDmA06Mv6hrRB5Sw) 提取码:cp4g
- 本项目训练权重:[链接](https://pan.baidu.com/s/1opAbsydKnS1WWN9rgaH5IA) 提取码:kk47
使用Jupyter Notebook打开train.ipynb,设置好数据路径、模型路径以及超参数后,即可进行训练。
### 评估
使用Jupyter Notebook打开eval.ipynb,设置好测试集路径后,运行即可生成detection-results和ground-truth。
再运行mAP目录下的main.py,即可计算mAP等结果。
## 其他
### 目前进展
- [x] CSPDarknet53
- [x] SPP、PAN
- [x] Mosaic数据增强
- [x] Label Smoothing
- [x] CIOU
- [x] 学习率余弦变化
- [x] Mish激活函数
### 训练&评估结果
![trainloss](total_loss.png)
![mAP](mAP/output/mAP.png)
## 参考
- 部分数据集来源:
- https://github.com/hikariming/virus-mask-dataset
- https://www.kesci.com/home/dataset/5e958c69e7ec38002d033362
- YOLOv4 PyTorch基于:https://github.com/bubbliiiing/yolov4-pytorch
- mAP计算:https://github.com/Cartucho/mAP
## License
[GPL](https://github.com/Bil369/MaskDetect-YOLOv4-PyTorch/blob/master/LICENSE) © [Bil369](https://github.com/Bil369)
没有合适的资源?快使用搜索试试~ 我知道了~
MaskDetect-YOLOv4-PyTorch-master
共53个文件
py:17个
png:8个
txt:7个
需积分: 23 18 下载量 105 浏览量
2020-06-23
10:56:31
上传
评论
收藏 461.71MB ZIP 举报
温馨提示
给MaskDetect-YOLOv4-PyTorch-master加了一个通过Camera检测口罩,整体来说还可以,这么小的数据集得到这个准确率。
资源推荐
资源详情
资源评论
收起资源包目录
MaskDetect-YOLOv4-PyTorch-master.zip (53个子文件)
MaskDetect-YOLOv4-PyTorch-master
eval.ipynb 25KB
nets
CSPdarknet.py 5KB
yolo_training.py 21KB
__pycache__
yolo4.cpython-36.pyc 4KB
CSPdarknet.cpython-36.pyc 5KB
yolo4.py 5KB
model_data
yolov4_maskdetect_weights1.pth 244.32MB
yolo_anchors.txt 85B
yolov4_coco_pretrained_weights.pth 245.92MB
mask_classes.txt 12B
mask_val.txt 40KB
simhei.ttf 9.3MB
mask_train.txt 126KB
yolo.py 7KB
eval.py 4KB
total_loss.png 59KB
LICENSE 34KB
predict.ipynb 53KB
make_annotations.ipynb 4KB
README.md 4KB
.idea
misc.xml 292B
workspace.xml 3KB
codeStyles
Project.xml 1KB
MaskDetect-YOLOv4-PyTorch-master.iml 550B
dbnavigator.xml 22KB
inspectionProfiles
profiles_settings.xml 174B
modules.xml 316B
__pycache__
yolo.cpython-36.pyc 6KB
utilsnew
utils.py 12KB
__pycache__
utils.cpython-36.pyc 7KB
testImage_result.png 891KB
train.ipynb 45KB
mAP
output
classes
mask.png 18KB
nomask.png 17KB
mAP.png 15KB
ground-truth-info.png 20KB
detection-results-info.png 27KB
output.txt 24KB
lamr.png 16KB
scripts
extra
convert_dr_yolo.py 2KB
intersect-gt-and-dr.py 2KB
convert_gt_yolo.py 3KB
convert_gt_xml.py 1KB
find_class.py 1KB
README.md 3KB
convert_dr_darkflow_json.py 1KB
class_list.txt 381B
convert_keras-yolo3.py 4KB
result.txt 668B
main.py 34KB
predict.py 3KB
make_annotations.py 2KB
train.py 9KB
共 53 条
- 1
资源评论
东方佑
- 粉丝: 6674
- 资源: 312
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功