Part 3 YOLOv8 训练与预测
约 368 字大约 1 分钟
2025-08-07
改进 YOLOv8 结构后,需要训练模型验证改进效果。
1 从源码安装Ultralytics
克隆Ultralytics
源代码并以开发者模式安装:
git clone https://github.com/ultralytics/ultralytics.git
cd ultralytics
pip install -e .
-e .
表示以开发者模式安装,可以直接修改源码并立即生效。
2 训练
from ultralytics import YOLO
# 加载模型(可以是 .pt 或 .yaml)
model = YOLO('yolov8n.yaml') # 如果你要从头开始训练
model.train(data='data.yaml', epochs=50, imgsz=640)
data.yaml
是 YOLOv8 的数据配置文件,描述了数据集路径、类别数量和名称。
path: /path/to/dataset # 图片和标签的根路径
train: images/train
val: images/val
nc: 2 # 类别数量
names: ['bicycle', 'pedestrian'] # 类别名称
数据集的目录结构应该符合以下格式:
path/to/dataset数据集根路径
imagesRGB 图像
train训练集
val验证集
labels图像标签
train训练集
val验证集
images
中的每张图片都应该对应到labels
中的.txt
标签文件。YOLO 标签格式为:
class_id x_center y_center width height
其中坐标为 0 到 1 的归一化坐标。
3 预测
和训练类似:
from ultralytics import YOLO
# 加载训练好的模型
model = YOLO("path/to/best.pt")
# 进行预测
results = model.predict(source="example.jpg", save=True, conf=0.25)
results
是一个数组,每个元素是一张图片的预测结果,你可以从中获取:
boxes.xyxy
:边界框坐标;boxes.cls
:类别索引;boxes.conf
: 置信度;orig_img
: 原图;plot()
: 可视化图像。