学习笔记——yolov11训练代码

from ultralytics import YOLO

if __name__ == '__main__':
    # 加载模型
    # model = YOLO('ultralytics/cfg/models/11/yolo11n.yaml', task="detect")  # 不使用预训练权重训练 | detect, segment, classify, pose, obb
    model = YOLO('ultralytics/cfg/models/11/yolo11n.yaml').load('runs/train/exp3/weights/best.pt')  # 使用预训练权重训练
    # 训练参数 ----------------------------------------------------------------------------------------------
    model.train(
        data='data.yaml',
        epochs=100,  # (int) 训练的周期数
        time=None,   #不设置训练时间限制
        patience=50,  # (int) 等待无明显改善以进行早期停止的周期数
        batch=8,  # (int) 每批次的图像数量(-1 为自动批处理)
        imgsz=160, # (int) 输入图像的大小,整数或w,h
        save=True,  # (bool) 保存训练检查点和预测结果
        save_period=-1,  # (int) 每x周期保存检查点(如果小于1则禁用)
        cache='disk',  # (bool) True/ram、磁盘或False。使用缓存加载数据
        device= 0,  # (int | str | list, optional) 运行的设备,例如 cuda device=0 或 device=0,1,2,3 或 device=cpu
        workers=8,  # (int) 数据加载的工作线程数(每个DDP进程)
        project='runs/train',  # (str, optional) 项目名称
        name='exp',  # (str, optional) 实验名称,结果保存在'project/name'目录下
        exist_ok = Fal
### YOLOv3 学习资料与笔记 YOLOv3 是一种基于卷积神经网络的目标检测算法,相较于之前的版本,它通过引入多尺度预测来提高小目标的检测能力。以下是关于 YOLOv3 的学习资源和教程: #### 1. 官方论文解读 YOLOv3 的官方论文《YOLOv3: An Incremental Improvement》提供了详细的理论基础和技术改进说明[^2]。阅读这篇论文可以帮助理解其核心思想以及如何实现更快更准的目标检测。 #### 2. 博客文章总结 许多开发者撰写了详尽的技术博客分享他们的经验。例如,在一篇名为 **"YOLO学习-YOLOv1~v3原理学习笔记整合)"** 中提到,YOLOv3 不仅继承了前代的优点,还增加了锚框机制以适应不同大小的对象检测需求[^2]。此外,该博文也对比分析了一阶段方法(如 YOLO 系列)与两阶段方法(如 Faster R-CNN 和 Mask RCNN),指出一阶段方法虽然牺牲了一些精度但显著提升了速度性能[^2]。 #### 3. 实践指南 对于希望动手实践的朋友来说,《YoloV3学习笔记(二)——环境配置》是一份非常实用的手册[^4]。尽管其中提到了一些旧硬件环境下遇到的问题,但它依然能够指导新手完成从零搭建开发平台到运行第一个 demo 的全过程。特别需要注意的是软件包之间的兼容性问题;如果可能的话建议使用较新的 GPU 来获得更好的支持体验[^4]。 #### 4. GitHub 开源项目 GitHub 上有许多优秀的开源实现可供参考。比如 ultralytics/yolov3 就是一个被广泛使用的 Python 版本库,包含了训练、验证及推理等功能模块。该项目文档清晰易懂,并附带多个预训练权重文件供下载测试之用。 ```python import torch from models import * # 导入模型定义脚本中的类对象 device = 'cuda' if torch.cuda.is_available() else 'cpu' model = Darknet('cfg/yolov3.cfg', img_size=(416, 416)).to(device) if device != 'cpu': model.half() ckpt = torch.load('weights/yolov3.pt', map_location=device)['model'] model.load_state_dict(ckpt.state_dict()) print("Model Loaded Successfully!") ``` 上面这段代码展示了如何加载 yolov3 配置文件并初始化相应架构实例化过程的一部分[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值