代码地址:THU-MIG/yolov10: YOLOv10: Real-Time End-to-End Object Detection (github.com)
一、数据制作
在这篇文章有讲过如何制作数据集及代码实现
YOLOV9训练集制作+Train+Val记录_yolov9 train yaml-CSDN博客
二、配置文件
(1)代码结构,主要看下面这两个就好了
(2)创建自己数据集的yaml配置文件
(3)预训练权重下载,网盘的是pt模型。(官方的预训练权重现在放到了huggingface, 格式好像不太跟之前的不太一样,我个人不知道怎么使用,有会的可以指导一下)
网盘链接:链接:https://pan.baidu.com/s/17AyMlMTLW7iJaRKDf2VG1w?pwd=1234
提取码:1234
(4)网盘里面有一个yolov8n.pt文件,把它放到yolov10目录下
三、训练代码
路径修改成自己对应的路径
from ultralytics import YOLOv10
import torchif __name__ == '__main__':model_yaml_path = "ultralytics/cfg/models/v10/yolov10s.yaml"data_yaml_path = "ultralytics/cfg/datasets/my_data.yaml"pretrain_model_path = "weights/yolov10s.pt"device = "cuda" if torch.cuda.is_available() else "cpu"model = YOLOv10(model_yaml_path).load(pretrain_model_path)# print(model)model.train(data=data_yaml_path, epochs=800, batch=10, imgsz=640)
四、预测代码
import osfrom ultralytics import YOLOv10model_path = "runs/detect/train2/weights/best.pt" # 自己训练完之后的模型路径,默认保存在run文件夹下
img_folder = 图片路径
model = YOLOv10(model_path)
for img_name in os.listdir(img_folder):if not img_name.endswith(".jpg"):continueimg_path = os.path.join(img_folder, img_name)results = model.predict(img_path)# 显示检测结果results[0].show()
有用就点赞收藏 :)