阶段性任务二 YOLO11的学习 (附上常见错误!!!) (郑纬华)

dead-liner 2024-11-28 18:16:44

经历了千辛万苦,终于有点成效了,搓yolo真不容易,是真的多bug

 

本帖子更多地为途中发现错误的同学指明一个方向,并不涉及详细地制作过程,具体过程可以看看凯杰同学写好的帖子,在此也非常感谢他的帮助。

 

首先,环境的配置不多说了,前面都没有什么问题

1、创建虚拟环境

2、激活虚拟环境

3、安装pytorch    (任务提供的官网有)

4、安装ultralytrics    (不想找的话给你附上conda的代码)

conda install conda-forge::ultralytics

5、在pycharm中新建项目选择你弄好的虚拟环境

6、按照阶段任务中的方式配置号文件夹框架(此处会存在问题)

7、网上找图并打标签,并将数据集按找任务中的方法分类(可以代码,可以手动)

 

以上都是普通的,在本次学习中应当掌握最基本的知识。接下来有问题的部分我会一一列举,如果还有其他错误问AI搜资料无法解决的话,可以在群里大家一起讨论。

 

一、训练模型代码问题

在阶段任务中,训练模型的代码本身就有错误,我们需要稍作修改

# train.py
from ultralytics import YOLO


Model = YOLO('yolo11n.pt')  # 你可以选其他的模型,如果显卡厉害的话

my_yaml = r'H:\Computer Vision\practice_again\practice2_again\resources\data\custom_dataset.yaml'

if __name__=='__main__':
    Model.train(data=my_yaml,epochs=300)  # 训练300轮
    Model.val()  # 验证模型

以上需要注意的问题

1、这里训练的模型(model),并不是yolov11n.pt!!!!    需要查看官方的文档,似乎并没有相应的模型,所以需要更改成其他模型,这里改成yolo11n.pt即可

2、在使用路径的时候,如果出现转义符,只需要在引号前面加上r即可(应该是学语法的时候讲到的,这个大家都能自己解决)

3、在Model.train后面的括号中,my_yaml要加上data=,而阶段任务里没有这东西,即按照上述代码即可。(这里是通过官方文档查看得知)

 

二、训练时出现的问题

1、我们会出现全是backgrounds的情况,如图1

图1

发现全是backgrounds而不是images,接下来的处理方式

处理方法:其实在文件夹框架的设置也是有问题的,其中所有txts文件夹要更名为labels文件夹,包括train、val、test中的txts文件夹都要改名,按照官方文档来即可 (如图2)

 

图2

这样子就能检测到大部分是images了

 

2、在训练时出现多线程错误(部分人有)

如果上述问题都解决了还不能正确训练,那么可能会遇到如图3的问题:

图3

这时需要在代码中修改了

# train.py
import os
from ultralytics import YOLO

os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
Model = YOLO('yolo11n.pt')  # 你可以选其他的模型,如果显卡厉害的话

my_yaml = r'H:\Computer Vision\practice_again\practice2_again\resources\data\custom_dataset.yaml'

if __name__=='__main__':
    Model.train(data=my_yaml,epochs=300)  # 训练300轮
    Model.val()  # 验证模型

 在代码中加上两行,分别时import os 和 os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"   ,然后运行,就能训练了。

 

3、预测模型保存的图片仅仅只能预测一种图片(比如所有图片只能预测LED之类的)

这种情况很大程度上是因为你并不是一次性把所有标签打完的,意思就是在打标签时就应该设置三个标签将所有图片打完,而不是LED打一部分,R打一部分,TRI打一部分。(不知道有没有说明白)

 

然后就是等待漫长的训练过程ing~~~~~~~

 

然后预测代码没有什么特别的,按照任务里的来就行了。。。

 

附上predict图

图4
图5

 

图6

 

此处不再一一列举了。

如果还有其他problems,欢迎讨论 

 

 

 

                                                                                                                                                                                                                           24 算法组 郑纬华

 

 

 

 

 

...全文
436 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

40

社区成员

发帖
与我相关
我的任务
社区描述
开放原子开源深大社团,致力于推动开源文化普及,培育和发掘开源人才,繁荣校园开源生态。
harmonyos经验分享 高校 广东省·深圳市
社区管理员
  • 趴抖
  • 辰风已久
  • num_19
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧