首先是环境配置的工作,看这个

YOLOv8操作指南-下载+配置环境-CSDN博客

接着是数据集的准备工作,看这个

划分数据集,训练自己的数据集。-CSDN博客

现在开始

为了方便训练,在yolov8项目里创建一个py文件

我创了一个名字为train.py文件

内容参考了README.zh-CN.md文件,指令有

我里面的内容直接复制就可以了

from ultralytics import YOLO

if __name__ == "__main__":
    model = YOLO("ultralytics/cfg/models/v8/yolov8n.yaml")  # 从头开始构建新模型
    model = YOLO("yolov8n.pt")  # 加载预训练模型(建议用于训练)
    model.train(data="data.yaml")  # 训练模型

 对以上内容进行解释,第一个yolov8n.yaml并没有在ultralytics/cfg/models/v8找到对应的,是因为yolov8后面加上那个后缀就是哪个了,如果你想用yolov8m.yaml,直接改成yolov8m.yaml就可以了

具体参数的调整,在这里:ultralytics/cfg/default.yaml

这个文件里是具体的参数调节的,比如batchsize,epoch之类的调节

注意一下:我在调节的时候,之前一直运行报错,是datast找不到之类这种的,

RuntimeError: Dataset 'data.yaml' error Dataset 'data.yaml' images not found , missing path

在ultralytics/data/utils.py这个文件里

按住ctrl+f键搜索,    if not path 

直接就搜到了

我在这两行前面加了注释,就是前面加了#,就解决了,遇到这种情况可以试试

对于ultralytics/cfg/default.yaml里参数的调节,

我主要说几个

epochs是训练轮数, 100就说跑100轮

batch是设置一批次跑几个,这个看自己显存设置,显存大就设置大,小就设置小,如果用cpu的话还是设置小一些吧,不能为0,最小1

imgsz是图象的大小,这个看你数据吧,动不动都无所谓

workers:我的电脑设置了0,cpu一般的话都建议用0,牛逼的电脑可以设置4或者8

另外,如果有报错

OSError: [WinError 1455] 页面文件太小,无法完成操作。

那么就吧workers设置为0再试试

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐