立山 发表于 2025-1-23 07:58:19

YOLO-cls训练及踩坑记录

提示:文章写完后,目录可以主动生成,如何生成可参考右边的帮助文档

   文章目录

前言
一、模子训练
二、测试
三、踩坑记录
1、推理时设置的imgsz不生效
方法一:
方法二:
2、Windows下torchvision版本问题导致报错
总结
前言

        近期,想尝试下yolov11-cls的实际效果,以是在网上随便找了个花分类的数据集测试了下。数据准备阶段可以参考我的另一篇博客举行处理,链接如下:数据准备参考链接。接下来的正文部分就是我的训练和踩坑记录。留意:假造环境里不要安装ultralytics库,否则改动的代码不会生效!!!

一、模子训练

代码链接为:yolov11        
它的训练方式非常简单,查考yolov11官方文档即可,我的训练方法为:
from ultralytics import YOLO
model= YOLO("./yolo11n-cls.pt")
model.train(data="./datasets",epochs=100,imgsz=,batch=32)
其中,模子路径和数据集路径需要改为自己的,epochs、imgsz、batch等根据自己的呆板环境设定。留意,数据集要根据我开头给的谁人链接里的格式摆放,即在datasets下包罗两级目录,如图:
https://i-blog.csdnimg.cn/direct/3bc63880ee2a48c6a40c20e8e1400184.png
然后,train和val下有每个类别的训练和测试数据。训练完成后,我们的模子默认存在./runs/classify下,如我的:
https://i-blog.csdnimg.cn/direct/90cbab4d026e40b587237b039f239f0e.png
二、测试

我的测试代码如下:
from ultralytics import YOLO

model=YOLO('./runs/classify/train/weights/best.pt')

res=model("./test.jpg",imgsz=256,device="cuda")
print(res) Linux下根本可以正常执行,其他涉及到的问题继续往下看

三、踩坑记录

1、推理时设置的imgsz不生效

用如上代码推理时,发现日志输出包罗这个内容:
https://i-blog.csdnimg.cn/direct/0530f11ed4be4648b571aef031534090.png
what???我设置的imgsz是256,为毛推理时还是224?估计是推理时尺寸强制用了训练时候的尺寸,假如你想在推理时更改尺寸,办理办法如下:
方法一:

根据这个issues的方法,在./ultralytics/engine/predictor.py里的setup_source函数(大概190行左右)举行更改,如下:
源代码:
https://i-blog.csdnimg.cn/direct/cff26e32d8864075b618117e804a5dcd.png
更改后:
https://i-blog.csdnimg.cn/direct/69baba8f951548308d405b0bdb63c3c4.png
然后在执行推理即可。
方法二:

看到./ultralytics/models/yolo/classify/predict.py里的如下代码(留意红框里的代码):
https://i-blog.csdnimg.cn/direct/8b32f74025964a029fd6e2e0d9db1a10.png
由红框里的代码可以知道,当你的img是非tensor时才会去举行预处理,以是你提前给它处理成tensor不举行if下的数据操纵即可,代码如下(预处理代码均是从官方预处理代码里拷贝的):
https://i-blog.csdnimg.cn/direct/5901fc16bacd4f4c832b8d3efe604571.png
https://i-blog.csdnimg.cn/direct/47f5e2862dfa444eaeec1bfa38cee127.png
完备代码可以我提的issues里获取。
2、Windows下torchvision版本问题导致报错

和服务器同样的torch和torchvision版本,但是在我自己的windows下推理时,抛出了如下异常:
https://i-blog.csdnimg.cn/direct/d4c52bfb6e9741db9d97bbca4967a4da.png
这个问题就是torchvision版本的问题,经过多次尝试,发现如下版本可以正常执行。另外该报错也可通过问题1的办理方案办理。
pip install torch==1.8.1+cpu torchvision==0.9.1+cpu torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html 留意,上边那条命令安装的是cpu的,假如你要装gpu的,去官方文档里找对对应的命令即可。

总结

以上就是本篇的全部内容,如有问题,欢迎评论区交流,或+企鹅群:995760755交流;如以为有用,欢迎三连

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: YOLO-cls训练及踩坑记录