YOLOv5 人脸口罩识别 免费提供数据集

本文分享快速使用YOLOv5训练自己的人脸口罩数据集。

第一步是搞数据,并把标注文件处理成YOLOv5格式,这其实是最费时的,此处省略1W字……我给同学们整了一个近8000张的人脸口罩数据集,拿走不蟹~

下载YOLOv5-3.1版本和模型权重,考虑到模型权重可能下载缓慢,我还上传了一份模型权重,和数据集一样都是免积分哒~ 天呐,博主也太贴心了叭!

我习惯把权重文件放在./weight下:

在这里插入图片描述
懒得每次在命令行里写参数,就直接在代码中改,程序中运行了。
/data下创建mask文件目录结构:

在这里插入图片描述
按自己的需求往里放训练和验证数据,我是用了7000张图片训练,1000张验证。图片和标签的文件名要对应,比如./images/train里放了一张1.jpg图片,相应的./labels/train里要放1.txt标签文件。

/data下新建mask.yaml文件,模仿coco128.yaml文件格式,填写数据路径、类别数、类别名:
在这里插入图片描述
找到train.py文件下的参数列表:

在这里插入图片描述
修改–weights和–data的default值,根据权重文件和yaml文件的实际位置修改,权重文件选择自己适合的模型大小:

parser.add_argument('--weights', type=str, default='./weights/yolov5s.pt', help='initial weights path')
parser.add_argument('--data', type=str, default='data/mask.yaml', help='data.yaml path')

轮次、批量、图片大小根据需求改,批量根据内存大小来定,图片大小得是32的倍数:

parser.add_argument('--epochs', type=int, default=100)
parser.add_argument('--batch-size', type=int, default=5, help='total batch size for all GPUs')
parser.add_argument('--img-size', nargs='+', type=int, default=[480, 480], help='[train, test] image sizes')

然后train.py文件跑起来就好啦,训练是不是也挺简单的嘛~

每次训练会在./run文件夹下生成一个exp文件,最好(best)和最新(last)权重就保存在weights里:

在这里插入图片描述
使用的时候,打开侦测文件detect.py:

在这里插入图片描述
改一下实际权重位置和图片大小:

parser.add_argument('--weights', nargs='+', type=str, default='./runs/exp0/weights/best.pt', help='model.pt path(s)')
parser.add_argument('--img-size', type=int, default=480, help='inference size (pixels)')

把要检测的图片或视频放在./inference/images下,检测完的结果就在output里了:

在这里插入图片描述
训个几轮就可以看效果了,有不少同学向我要训练权重,哎,操碎了心的博主给大家重新训练了一份25轮的权重,不算完全训练好,但测试正常的图片是没问题的,依然免积分~ 这都不值得同学们一个赞吗??

再次祭出小团团!!

在这里插入图片描述
在这里插入图片描述
YOLOv5真香~ 奈斯!

  • 39
    点赞
  • 155
    收藏
    觉得还不错? 一键收藏
  • 62
    评论
YOLOv5是一个目标检测算法,可以用于检测图像和视频中的多个物体。在人脸口罩识别方面,我们可以使用YOLOv5识别人脸和判断是否佩戴口罩。 首先,我们需要准备一个包含人脸口罩数据集,其中包括带口罩和不戴口罩人脸图像。然后,我们可以使用YOLOv5的训练脚本来训练一个人脸口罩识别模型。 在训练之前,我们需要配置YOLOv5的参数和网络结构。可以使用一个类似于YAML格式的文件来指定这些参数,包括输入图像尺寸、学习率、训练时使用的批次大小等。 在开始训练之前,我们还可以通过预训练模型来初始化网络权重,这有助于提高模型的性能和收敛速度。可以使用已经在大规模数据集上训练好的权重,例如COCO数据集。 接下来,我们可以运行训练脚本,指定数据集的路径、模型配置文件的路径等信息。训练过程中,YOLOv5会逐渐调整网络权重,使其适应人脸口罩识别任务。 经过足够的训练迭代之后,我们可以使用训练好的模型进行推理。将输入的图像传递给训练好的模型,就可以得到每个检测到的目标的位置和类别。在人脸口罩识别任务中,我们可以根据类别标签来确定是否佩戴口罩。 最后,我们可以根据识别结果进行进一步的处理,例如计算佩戴口罩的比例、统计不同地区的佩戴情况等。 总结起来,YOLOv5人脸口罩识别代码可以实现人脸口罩的检测、训练和推理过程。通过使用合适的数据集和训练参数,我们可以得到一个准确的人脸口罩识别模型,用于各种实际应用场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 62
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值