0


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真香~ 奈斯!


本文转载自: https://blog.csdn.net/bu_fo/article/details/110921169
版权归原作者 不佛 所有, 如有侵权,请联系我们删除。

“YOLOv5 人脸口罩识别 免费提供数据集”的评论:

还没有评论