用yolov5做人脸检测
用yolov5做人脸识别
·
配置:ubuntu20,pytorch1.7.1,GTX1660Ti
1、anaconda、yolov5下载、环境、数据处理、数据标注等:
yolov5 URL:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
请参考其他人的。
2、数据集:CASIA-FaceV5
如果想自己打标的话,可以下官网的或我的百度网盘里的。如果不想自己打标,可以用我打标后的,数据存储位置已经过处理,打标工具labelimg,打的没有数据标注员的好,不过我自己检测的时候效果也不错。
官网:BIT
我的百度网盘:链接: https://pan.baidu.com/s/1dXbGO5KceMFISaf2lc-0yw 提取码: 8jyg
--来自百度网盘超级会员v5的分享
本人打标后的:链接: https://pan.baidu.com/s/1bZzX7jchBln7NYx7H-26XQ 提取码: sv2v
--来自百度网盘超级会员v5的分享
数据集存储位置:
train:2000张图片
val:500张图片
test:没放图片。
按流出法可以自己按6:2:2即1500:500:500存放。
yolov5-master
└─ CASIA-FaceV5
├─ images
│ ├─ train
│ ├─ val
│ └─ test
└─ labels
├─ train
├─ val
├─ test
3、创建数据集及模型配置文件:
1、在yolov5-master/data下创建***.yaml文件(***自己起名),内容如下:
train: ***/yolov5-master/CASIA-FaceV5/images/train
val: ***/yolov5-master/CASIA-FaceV5/images/val
nc: 1
names: ["face"]
***:请填写自己的路径
nc:1 是因为要识别的只有人脸
names:["face"] 如果自己打的标请填写自己的标注名称,如果用的我打标的数据请不要修改。
2、在yolov5-master/models下创建***.yaml文件(可以自己直接复制旁边的yolov5s.yaml,我选择的这个模型,如有需要,可改为其他模型),只修改nc: 1即可,不要改其他的!
4、模型训练(迁移学习):
请于终端进入yolov5-master文件夹下进行操作
python train.py --data data/***.yaml --cfg models/***.yaml --weights pretrained/yolov5s.pt --epoch 5 --batch-size 16 --device cuda:0
训练完后,终端会显示训练后的参数保存在哪里
5、模型验证:
python val.py --data ./data/***.yaml --weights ./runs/train/exp4/weights/best.pt --batch-size 8 --device cuda:0
6、模型测试:
我没有建立测试集来进行测试,而是采用摄像头实时检测我自己。(按q退出)
python detect.py --weights runs/train/exp4/weights/best.pt --source 0
7、应用:
# 摄像头实时检测
python detect.py --weights runs/train/exp4/weights/best.pt --source 0
# 图片、视频(source 后面路径+文件名)
python detect.py --weights runs/train/exp4/weights/best.pt --source path/name
# 网络视频(字符串式的URL)
python detect.py --weights runs/train/exp4/weights/best.pt --source "***"
更多推荐
已为社区贡献1条内容
所有评论(0)