YOLOv8使用Python文件操作

习惯了YOLOv5使用Python文件操作,用不惯YOLOv8删除了Python文件操作。
手搓一下

from ultralytics import YOLO

if __name__ == '__main__':

    #设置运行模式
    mode = "deploy"

    if mode == "train":
        #项目命名
        projectname='YOLOv8-small'

        # 加载一个模型
        model = YOLO('yolov8s-P2.yaml')  # 从YAML建立一个新模型
        model = YOLO('yolov8s.pt')  # 加载预训练模型(推荐用于训练)

        # 训练模型
        model.train(data="F://datasets//rebar//rebar.yaml", epochs=10, imgsz=640, name='F://Llandudno//train//'+projectname)  # train the model
        metrics = model.val(name='F://Llandudno//val//'+projectname)  # evaluate model performance on the validation set
        #results = model("https://ultralytics.com/images/bus.jpg")  # 使用刚训练好图片进行预测
        #path = model.export(format="onnx")  # 刚训练好的模型导出格式

    elif mode == "val":
        # 项目命名
        projectname = 'YOLOv8s'

        # 加载模型
        #model = YOLO('yolov8.pt')  # 加载官方模型
        model = YOLO('E://PycharmProjects//ultralytics-main//runs//detect//coco128//weights//best.pt')  # 加载自定义模型

        # 验证模型
        metrics = model.val(name='F://Llandudno//val//'+projectname)  # 无需参数,数据集和设置记忆
        metrics.box.map  # map50-95
        metrics.box.map50  # map50
        metrics.box.map75  # map75
        metrics.box.maps  # 包含每个类别的map50-95列表

    elif mode == "predict":
        # 项目命名
        projectname = 'YOLOv8s-P2'

        # 加载模型
        model = YOLO('F://Llandudno//train//YOLOv8s-P2//weights//best.pt')  # 设置检测模型

        # 在图片列表上运行批量推理
        #results = model('F://datasets//rebar_rgb//images//val', save=True)
        results = model('F://datasets//test//imgs2', save=True, name='F://Llandudno//predict//'+projectname)  #指定路径保存检测结果

        # 处理结果列表
        for result in results:
            boxes = result.boxes  # 边界框输出的 Boxes 对象
            masks = result.masks  # 分割掩码输出的 Masks 对象
            keypoints = result.keypoints  # 姿态输出的 Keypoints 对象
            probs = result.probs  # 分类输出的 Probs 对象

    else:
        # 加载模型
        model = YOLO('F://Llandudno//train//coco128//weights//best.pt')  # 加载自定义训练的模型

        # 导出模型
        model.export(format='onnx')
  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值