无脑007--Yolov7推理测试

此次项目是为了下一个项目做准备,打算学习一下docker和迁移学习的技术。

1.下载代码和模型

首先从github下载yolov7的官方代码:
https://github.com/WongKinYiu/yolov7
直接点击绿色的code,然后点Download zip进行下载

无脑007--Yolov7推理测试_第1张图片
我们把下载好的文件统一放到

G:\bsh\yolov7\yolov7-main

这个目录下边(demo是我自己新建的文件夹)
无脑007--Yolov7推理测试_第2张图片
然后在官网下载他们提供的官方模型,这里我选择的是最基础的yolov7.pt
无脑007--Yolov7推理测试_第3张图片
下载后放到相同目录中

G:\bsh\yolov7\yolov7-main\yolov7.pt

至此,我们需要下载的代码和模型已经准备好了,接下来我们准备安装yolov7所需要的环境

2.安装yolov7的运行环境

我使用的是windows中安装的wsl虚拟机,
我的笔记本是拯救者Y7000P ,GPU是1060,
我的CUDA是10.1

使用conda创建虚拟环境

conda create -n yolov7 python=3.8

然后安装requirements

pip install -r requirements.txt

注意,安装完成之后,需要检查pytorch和cuda是否对应,比如我的GPU 1060 对应cuda 10.1 需要对应pytorch 1.7.1,否则会报错,具体参考附录1。然后我需要覆盖安装pytorch1.7.1,直接输入安装即可

conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 -c pytorch

3.inference 推理测试

因为我们不去测试coco数据集,因为他真的太大了,我们直接对单张图片进行推理测试,只需要运行inference推理代码:

python detect.py --weights yolov7.pt --conf 0.25 --img-size 640 --source inference/images/horses.jpg

terminal显示:

(yolov7) xcblinux@LAPTOP-T7NLN4J3:/mnt/g/bsh/yolov7/yolov7-main$ python detect.py --weights yolov7.pt --conf 0.25 --img-size 640 --source inference/images/horses.jpg
Namespace(agnostic_nms=False, augment=False, classes=None, conf_thres=0.25, device='', exist_ok=False, img_size=640, iou_thres=0.45, name='exp', no_trace=False, nosave=False, project='runs/detect', save_conf=False, save_txt=False, source='inference/images/horses.jpg', update=False, view_img=False, weights=['yolov7.pt'])
YOLOR  2023-7-18 torch 1.7.1 CUDA:0 (NVIDIA GeForce GTX 1060, 6143.8125MB)

Fusing layers... 
RepConv.fuse_repvgg_block
RepConv.fuse_repvgg_block
RepConv.fuse_repvgg_block
Model Summary: 306 layers, 36905341 parameters, 6652669 gradients, 104.5 GFLOPS
 Convert model to Traced-model...
 traced_script_module saved! 
 model is traced! 

5 horses, Done. (39.2ms) Inference, (13.4ms) NMS
 The image with the result is saved in: runs/detect/exp2/horses.jpg
Done. (0.367s)

表明我们的代码可以运行,推理的结果存放在runs/detect/exp2/horses.jpg这里
打开进行查看
原图:
无脑007--Yolov7推理测试_第4张图片
检测后的图:
无脑007--Yolov7推理测试_第5张图片
五匹马都被检测出来了,效果不错,再换一张图进行测试,其实可以把检测的代码最后的图片换成文件夹,就会对文件夹种的所有图片进行推理测试:

python detect.py --weights yolov7.pt --conf 0.25 --img-size 640 --source demo/

无脑007--Yolov7推理测试_第6张图片
检测到了人、飞盘、汽车(coco数据集没有帽子吗??)
无脑007--Yolov7推理测试_第7张图片

插个题外话,coco果真没有帽子
无脑007--Yolov7推理测试_第8张图片

你可能感兴趣的:(无脑100,YOLO)