准备
首先第一步下载全部工程代码
GitHub 链接:https://github.com/WongKinYiu/yolov7
- 下载zip文件然后安装至服务器
(下载方法)
- 这个方法是设备上安装了git
命令:git clone 项目.git
(复制这个链接)
通过这个sh脚本获取coco数据集(我用的这里面的数据集,二十几个G)
可以下载coco128只有几兆(用这个的话记得改一下配置文件的代码)
链接:https://ultralytics.com/assets/coco128.zip
环境搭建
在服务器上创建一个conda虚拟环境,我这里用的是python3.8的版本
指令:
、、
conda create -n python==3.8
、、
激活虚拟环境,再进入到yolov7-main文件夹下,运行以下命令查看NVIDIA coda核心的版本,看看符不符合依赖运行
指令:
、、
nucc- V
、、
安装1.12.1版本的PyTorch,连接镜像
ps:yolov7需要这个哦
指令:
、、
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113
、、
按照项目需求去安装对应的Python库,运行需要额外Python库的项目
、、
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
、、
最后可以运行模型训练的命令,如果没有报错,则说明环境完全搭建好了
模型训练
配置完之后用以下代码进行训练
单CPU训练:
、、
python train.py --workers 8 --device 0 --batch-size 32 --data data/coco.yaml --img 640 640 --cfg cfg/training/yolov7.yaml --weights '' --name yolov7 --hyp data/hyp.scratch.p5.yaml
、、
多CPU训练:
# 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/coco.yaml --img 640 640 --cfg cfg/training/yolov7.yaml --weights '' --name yolov7 --hyp data/hyp.scratch.p5.yaml
# train p6 models
python -m torch.distributed.launch --nproc_per_node 8 --master_port 9527 train_aux.py --workers 8 --device 0,1,2,3,4,5,6,7 --sync-bn --batch-size 128 --data data/coco.yaml --img 1280 1280 --cfg cfg/training/yolov7-w6.yaml --weights '' --name yolov7-w6 --hyp data/hyp.scratch.p6.yaml
推理(用的是文件里有的图片)
图片:
python detect.py --weights yolov7.pt --conf 0.25 --img-size 640 --source inference/images/horses.jpg
视频(自定义视频):
python detect.py --weights yolov7.pt --conf 0.25 --img-size 640 --source yourvideo.mp4
运行成功
效果:
查看结果可以使用
也可以用插件(这个更方便)