未穿戴安全帽反光衣的人脸识别

构建数据集

网上开源的安全帽和反光衣的数据集,都是分开的,即没有一份数据集是同时拥有是否戴安全帽和是否穿反光衣这四类标注的。故工作开始之前的第一步就是构建一份同时拥有是否戴安全帽和是否穿反光衣这四类标注的数据集。

具体方法:用yolov5-6.0分别来训练出安全帽和反光衣的两个检测权重,然后通过模型融合的方法,将所需要的数据集当作检测的数据集,在检测时保存所检测图片的txt文件,最后进行人工数据清洗,得到一份完整的安全帽和反光衣的数据集。

数据集的标注如下:(0:反光衣,1:头,2:安全帽,3:其他衣服)

共计一万三千多张,目前数据集不打算开源 。

选定目标检测模型

模型这一块没有太大悬念,工程化的模型yolov5足够满足大部分需求,最新版的6.1版本都能tensorRT、openvino各种加速和导出了。

训练过程中无需对模型做任何改动,使用yolov5s权重进行训练,调整到适合自己电脑的epochs和batch-size,开启多尺度训练即可。训练结束后得到一个s的权重。

选定人脸识别模型

人脸模型选用经过cuda加速的dlib库提供的人脸识别模型。在yolov5的推理过程中加入人员是否正确穿戴安全帽和反光衣的判断条件后,将yolov5检测出来的人脸区域提取,根据人脸数据库进行模板匹配,最终,违规穿戴的人脸检测模型落成。

扫描二维码关注公众号,回复: 13711563 查看本文章

猜你喜欢

转载自blog.csdn.net/zqt321/article/details/123648638