YOLOv11 训练模型示例
1. 准备数据集
首先,您需要准备数据集。Ultralytics 版本的 YOLO 所需格式的数据集标签为 txt 格
式的文本文件,文本文件中保存的标签信息分别为:类别序号、中心点 x/y 坐标、标注
框的归一化信息,每一行对应一个对象。图像中有几个标注的对象就有几行信息。
2. 创建 data.yaml 文件
创建 data.yaml 文件保存数据集的相关信息,如果使用本文提供的数据集可使用以下代
码:
yaml
# dataset
pathtrain: ./images/trainval: ./images/testtest: ./images/test
# number of classesnc: 15
# class namesnames: ['car', 'Truck', 'Van', 'Long Vehicle','Bus',
'Airliner', 'Propeller Aircraft', 'Trainer Aircraft', 'Chartered
Aircraft', 'Fighter Aircraft','Others', 'Stair Truck', 'Pushback
Truck', 'Helicopter', 'Boat']
3. 模型训练
创建 train.py 文件,依次填入以下信息。epochs=2 表示只训练两轮,通常设置为
100-300 之间,此处仅测试两轮。batch=1 表示每批次仅训练一张图片,可按显存大
小调整 batchsize,一般 24g 卡可设置为 16-64。
python
from ultralytics import YOLOimport os
os.environ['KMP_DUPLICATE_LIB_OK'] = 'True'if __name__ == '__main__':
model = YOLO(model='ultralytics/cfg/models/11/yolo11.yaml')
model.train(data='./data.yaml', epochs=2, batch=1, device='0',
imgsz=640, workers=2, cache=False,
amp=True, mosaic=False, project='runs/train',
name='exp')
说明: