人体口罩佩戴检测实战

基于yolov3的人体口罩佩戴检测

由于2020年新型冠状病毒,针对公共场合检测人员是否佩戴口罩,故用YOLOV3完成一个人体口罩佩戴检测。

效果展示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UStCwINI-1581837056283)(img/3_output.jpg)]
在这里插入图片描述
在这里插入图片描述

环境

工欲善其事必先利其器

  • Python: 3.7.4
  • Tensorflow-GPU 1.14.0
  • Keras: 2.2.4

数据集

口罩检测数据集,从互联网上搜集的数据集,大概1k多张图片。

训练

准备数据集

按照VOC数据集的格式来准备数据集,及图片以及xml标签

VOCdevkit
	-VOC2007
		├─ImageSets    # 存放数据集列表文件,由voc2yolo3.py文件生成
		├─Annotations  # 存放数据集中图片文件
		├─JPEGImages   # 存放图片标签,xml 格式
		└─voc2yolo3.py # 用来生成数据集列表文件

将你准备的数据集文件放入JPEGImages以及ImageSets文件中,然后运行python voc2yolo3.py来生成ImageSets中的数据列表文件

生成YOLOV3所需数据

在根目录下,运行 python voc_annotation.py,程序将在根目录下生成用于训练所需的数据列表。

YOLOv3训练

训练步骤

  • 1.下载yolov3的权重文件yolov3_weights

  • 2.执行如下命令将darknet下的yolov3配置文件转换成keras适用的h5文件。

    python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5

  • 3.在根目录下,运行 train.py 进行训练。可以根据情况修改 train.py 中的参数。

测试

  • 1.单张图片测试,需修改yolo.py文件中模型的位置,替换成你训练好的模型。然后在根目录下,运行python predict_img.py进行测试。

  • 2.自己电脑摄像头实时检测,在根目录下运行python predict_video.py

Github链接

项目链接

发布了487 篇原创文章 · 获赞 470 · 访问量 36万+

猜你喜欢

转载自blog.csdn.net/Mind_programmonkey/article/details/104343014