本文使用Ultralytics的python API进行模型训练,适用于yolov8小白入门,大佬请忽略本文 笔者也是昨天开始学习的小白,如有错误希望多多指正
准备数据集
首先得准备好数据集,你的数据集至少包含images和labels,严格来说你的images应该包含训练集train、验证集val和测试集test,不过为了简单说明使用步骤,其中test可以不要,val和train可以用同一个,因此我这里只用了一个images
其中images装的是图片数据,labels装的是与图片一一对应同名的yolo格式txt,即类别号,经过归一化的中心x和y坐标以及宽和高
python安装yolov8
然后我们开始准备yolov8,使用python的API的话就比较简单,首先安装一下yolov8
用pip的话安装的话
代码语言:javascript复制pip install ultralytics
使用pycharm安装的话
配置yaml
安装完了之后,差不多就可以开始了,我们首先看看官方给的代码
代码语言:javascript复制from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.yaml") # build a new model from scratch
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Use the model
model.train(data="coco128.yaml", epochs=3) # train the model
metrics = model.val() # evaluate model performance on the validation set
results = model("https://ultralytics.com/images/bus.jpg") # predict on an image
path = model.export(format="onnx") # export the model to ONNX format
其中迷惑的是yolov8n.yaml、yolov8n.pt和coco128.yaml这几个文件,yolov8n.yaml是yolov8的配置,yolov8n.pt是预训练的模型,coco128.yaml是coco数据集的配置参数
因此如果我们想要训练自己的模型的话,需要修改一下配置文件,首先到GitHub上下载yolov8n.yaml和coco128.yaml下来,这两个文件的位置有可能会变,所以最好在仓库上直接搜索
大概长这样,你也可以自己创建,然后把内容复制进去
yolov8n.yaml
代码语言:javascript复制# Ultralytics YOLO