yolov8训练自己的数据集(标注到训练)

yolov8可以用作目标检测,分割,姿态,跟踪。这里举例目标检测从标注到训练的过程。
官网连接
先把代码下载下来,这个不用说了。

然后准备数据集,创建一个文件夹dataset(自己命名),下面有images和labels.

在这里插入图片描述
images和labels文件夹下分别创建train和val文件夹,
把用作训练的图片放进train, 用作validation的图片放进val.
这时labels文件夹下的train和val都为空,因为还没有标注。
在这里插入图片描述

标注

可以用labelme或者其他工具标注,这里用makesense.ai,
这个只支持目标框和图像分类,并不支持分割。

在这里插入图片描述

点get started,打开train或val整个文件夹的image, 选择“目标检测”,然后点start project就可以开始标注,

在这里插入图片描述

在这里插入图片描述

标完框之后,选择右边的select label, 会提示label为空,点击label为空的地方,会出现编辑label。
编辑完保存之后下次标注就能直接选择label.

在这里插入图片描述

train文件夹或者val文件夹中的所有图片标完之后,选择“Export Annotations"。然后选择YOLO格式。会得到zip文件。
分别解压到labels文件夹下的train, val中,标注结束。

在这里插入图片描述

训练

数据集放在ultralytics/datasets下面。

在这里插入图片描述

创建自己的custom.yaml文件,放在ultralytics/datasets下面。
编辑路径,label.

在这里插入图片描述

写训练代码:

from ultralytics import YOLO

if __name__ == "__main__":
    #train
    model = YOLO('yolov8n.pt')

    model.train(
        data="ultralytics/datasets/custom.yaml",
        epochs=50,
        imgsz=640,
        batch=2,
        save_period=10,
    )

测试效果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/level_code/article/details/133162891
今日推荐