赞
踩
YOLOv7源码:https://github.com/WongKinYiu/yolov7
在服务器上创建yolov7虚拟环境
conda create -n yolov7 python=3.7
进入虚拟环境,下载prtorch,不清楚怎么使用清华源下载pytorch的可以参考我的这篇文章:配置pytorch环境
conda activate yolov7
conda install pytorch torchvision torchaudio cudatoolkit=11.3
进入YOLOv7文件夹中,安装需要的依赖环境
cd yolov7-main
这里需要注释掉requirements.txt中的torch和torchvision
,因为官网给出的是CPU版本,我们上面已经下载了GPU版本,不需要重复安装。
安装依赖环境
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
安装完依赖环境后,去官网下载yolov7的权重文件,放入weights目录下,运行detec.py文件测试是否安装成功
python detect.py --weights weights/yolov7.pt --conf 0.25 --img-size 640 --source inference/images/horses.jpg
首先创建yolov7-custon.yaml文件
修改nc,设置为自己训练的类别个数
YOLOv7的代码风格和训练风格跟YOLOv5很相似,所以可以采用YOLOv5的数据集格式来训练,不知道怎么使用yolov5训练的可以参考我的这篇文章:将VOC格式转换为yolo格式
图片:
标签:
新建mydata.yaml文件
训练时需要注意这三个参数
在终端输入命令行开始训练
单GPU训练
python train.py --workers 1 --device 0 --batch-size 8 --data data/mydata.yaml --img 640 640 --cfg cfg/training/yolov7-custom.yaml --weights '' --name yolov7 --hyp data/hyp.scratch.p5.yaml
多GPU训练
python -m torch.distributed.launch --nproc_per_node 4 --master_port 9527 train.py --workers 8 --device 0,1,2,3 --sync-bn --batch-size 128 --data data/mydata.yaml --img 640 640 --cfg cfg/training/yolov7-custom.yaml --weights '' --name yolov7 --hyp data/hyp.scratch.p5.yaml
下载官方预训练权重
单GPU训练
python train.py --workers 8 --device 0 --batch-size 32 --data data/mydata.yaml --img 640 640 --cfg cfg/training/yolov7-custom.yaml --weights 'yolov7_training.pt' --name yolov7-fine-train --hyp data/hyp.scratch.p5.yaml
多GPU训练
# train p5 models
python -m torch.distributed.launch --nproc_per_node 4 --master_port 9527 train.py --workers 8 --device 0,1,2,3 --sync-bn --batch-size 128 --data data/mydata.yaml --img 640 640 --cfg cfg/training/yolov7-custom.yaml --weights 'yolov7_training.pt' --name yolov7-fine-tran --hyp data/hyp.scratch.p5.yaml
去runs文件下找到训练好的权重进行测试
python test.py --data data/mydata.yaml --img 640 --batch 32 --conf 0.001 --iou 0.65 --device 0 --weights runs/train/yolov7/weights/best.pt --name yolov7_640_val
python detect.py --weights runs/train/yolov7/weights/best.pt --conf 0.25 --img-size 640 --source inference/images/DOTA.jpg
效果还不错
出现这种情况大概率是传参有问题,参数缺失或者参数错误
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。