当前位置: 首页 > news >正文

YOLOv5(三):Jupyter

  • tutorial.ipynb

这份 JSON 内容是 YOLOv5 v6.1 官方教程的 Jupyter Notebook 完整结构,包含环境配置、推理、验证、训练、可视化等核心流程,以下是按逻辑整理的解析:

一、文档基础信息

  • 类型:YOLOv5 官方教程(Jupyter Notebook),适配 Google Colab 环境(含 GPU 加速配置)。

  • 版本:基于 YOLOv5 v6.0-48-g84a8099,依赖 PyTorch≥1.7,支持 CUDA 加速。

  • 许可证:GPL-3.0,官方维护方为 Ultralytics。

二、核心内容解析

1. 环境搭建(Setup)
  • 目标:克隆仓库、安装依赖、验证环境(PyTorch 与 GPU 可用性)。

  • 关键操作

!git clone https://github.com/ultralytics/yolov5  # 克隆仓库%cd yolov5%pip install -qr requirements.txt  # 安装依赖(含PyTorch、OpenCV等)
  • 环境检查:通过utils.notebook_init()验证 GPU 是否可用(输出显示CUDA:0及显存信息,如Tesla V100-SXM2-16GB)。
2. 推理(Inference)
  • 功能:使用预训练模型对图像、视频等数据源进行目标检测,结果保存至runs/detect

  • 支持的输入源:摄像头(0)、本地图像(img.jpg)、视频(vid.mp4)、目录(path/)、YouTube 链接、RTSP 流等。

  • 示例代码

!python detect.py --weights yolov5s.pt --img 640 --conf 0.25 --source data/images
  • --weights:模型权重(yolov5s.pt为轻量模型);

  • --img:输入图像尺寸(640x640);

  • --conf:置信度阈值(0.25);

  • --source:输入数据源(data/images含示例图像 zidane.jpg、bus.jpg)。

  • 输出结果:检测到的目标类别(如 “person”“bus”“tie”)、置信度及坐标,图像保存至runs/detect/exp
3. 模型验证(Validate)
  • 目标:在标准数据集(如 COCO)上评估模型精度(mAP 等指标)。

    • COCO val 验证

      • 下载 COCO val 2017 数据集(5000 张图像):
torch.hub.download\_url\_to\_file('https://ultralytics.com/assets/coco2017val.zip', 'tmp.zip')!unzip -q tmp.zip -d ../datasets && rm tmp.zip
  • yolov5x.pt(大型模型)验证:
!python val.py --weights yolov5x.pt --data coco.yaml --img 640 --iou 0.65 --half
  • 输出指标:mAP@0.5(0.689)、mAP@0.5:0.95(0.507),以及不同尺寸目标(小 / 中 / 大)的精度。
  • COCO test 验证

    • 下载 COCO test2017 数据集(40000 张图像),生成符合评估服务器格式的*.json结果文件,用于提交至 COCO 官方评估平台。
4. 模型训练(Train)
  • 目标:在自定义或标准数据集上训练模型,支持预训练权重微调或从头训练。

  • 关键参数

    • --data:数据集配置文件(如coco128.yaml,含 128 张 COCO 子集);

    • --weights:预训练权重(yolov5s.pt)或从头训练('');

    • --epochs:训练轮次;

    • --batch:批处理大小;

    • --img:输入图像尺寸。

  • 示例代码(COCO128 数据集训练 3 轮):

!python train.py --img 640 --batch 16 --epochs 3 --data coco128.yaml --weights yolov5s.pt --cache
  • 训练结果:保存至runs/train/exp,含权重文件(last.pt/best.pt)、训练日志、混淆矩阵等。

  • 辅助工具

    • Tensorboard:实时可视化损失、精度曲线(%tensorboard --logdir runs/train);

    • Weights & Biases(W&B):云端日志记录与团队协作(需pip install wandb)。

5. 可视化(Visualize)
  • W&B 日志:实时查看训练过程(损失、学习率、mAP)、样本预测结果,支持生成报告分享。

  • 本地日志

    • 训练批次图像(train_batch0.jpg):展示 4 张图像拼接的 “马赛克” 数据增强效果;

    • 验证标签与预测(test_batch0_labels.jpg/test_batch0_pred.jpg):对比真实标签与模型预测;

    • 结果曲线(results.png):由results.csv生成,包含训练 / 验证损失、mAP 等指标趋势。

6. 支持环境(Environments)
  • 兼容平台:Google Colab/Kaggle(免费 GPU)、Google Cloud Deep Learning VM、Amazon Deep Learning AMI、Docker 镜像(ultralytics/yolov5)。
7. 附录(Appendix)
  • 功能扩展

    • 模型重现性验证:对比不同模型(yolov5n/s/m/l/x)的速度与精度;

    • PyTorch Hub 调用:通过torch.hub.load快速加载模型推理;

    • CI 测试:验证训练、验证、推理、导出功能在多系统(MacOS/Windows/Ubuntu)的兼容性;

    • 模型导出:支持 TensorRT、ONNX 等格式(如export.py`` --include engine);

    • 超参数进化(Evolve):自动优化超参数提升性能;

    • VOC 数据集训练:适配经典目标检测数据集。

总结

该教程完整覆盖了 YOLOv5 v6.1 的核心流程:从环境搭建到推理、验证、训练,再到结果可视化,同时提供了扩展功能(如自定义数据训练、模型导出)的示例,适合新手快速入门目标检测任务。

(注:文档部分内容可能由 AI 生成)

http://www.dtcms.com/a/593933.html

相关文章:

  • 1.postman调用契约锁接口
  • 代刷网站推广如何用网站模板做网站
  • 前端学校网站开发视频教程廊坊设计网站公司
  • 实例介绍:Unittest框架及自动化测试实现流程
  • NAS 只在局域网能用?加上cpolar这样设置让文件访问不受限
  • web网页,在线%茶叶商城系统%系统demo,基于vscode,vue,java,jdk,springboot,mysql
  • 青岛seo网站管理网站这么推广
  • MATLAB数值分析方程求解方法详解
  • vue 不触发自动播放音频
  • 17做网站新塘牛仔城购物网站 英文介绍
  • 嘉兴建设工程造价信息网站如何做wordpress主题
  • 【把Linux“聊”明白】从冯诺依曼架构到操作系统
  • SEO 搜索优化测试环节深度解析:决定流量转化的隐性关键
  • NumPy性能密码:Python循环优化方法
  • 九洋建设官方网站wordpress 文章标题查询
  • 线性代数 - 齐次线性方程组的样子
  • TikTok矩阵运营的提速方法
  • 酒店如何做团购网站贵州省民贸民品企业信息管理系统
  • 海口网站开发抚州市临川区建设局网站
  • 如何做网站的二级页面马鞍山建设机械网站
  • 国外有什么网站做游戏吗深圳全网营销
  • Python 数据类(dataclass)深度解析与 Pydantic 对比
  • 从C内存管理进阶到C++内存管理(中)-new与delete详解
  • 免费注册域名网站餐饮营销型网站建设
  • 深入理解 Java 8:从语法到思想的革命
  • 温州网站建设公司有哪些开发客户的70个渠道
  • 报错处理(2)终止多线程父进程后子进程还存在
  • 重庆论坛网站建设新版的百度网址大全
  • 【AI学习-comfyUI学习-面部修复工作流-各个部分学习-第六节】
  • 建设网站有何要求网络营销与直播电商是干什么的