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

YOLO入门(25.10)

YOLO_251005_160815

目的

  • 目标:用 Ultralytics YOLO(YOLOv8 / YOLO11)完成目标检测(推理 + 训练 + 自建数据集)。

1. 下载 Ultralytics(源码 + 预训练模型)

  1. 打开 Ultralytics 的 GitHub。
  2. Tags / Releases中找到你要用的版本,例如8.3.163
  3. 下载并解压,记住源码路径(后面 PyCharm 需要打开这个目录)。
  4. 下载预训练模型(例如yolo11n.pt)。
  • 常见做法:在 Release 里找 assets,或在页面里用Ctrl+F搜索模型名。

2. 安装 Anaconda(清华镜像)

  1. 用 TUNA(清华)镜像下载并安装 Anaconda(例如 2024.06-1)。

  2. 打开Anaconda Prompt

  3. 配置 conda 镜像:

    notepad .condarc
  • 去清华镜像网站复制配置内容,保存后关闭。
  1. 配置 pip 镜像:
  • 在 TUNA 搜索 pip 镜像配置,复制到配置文件后执行一次安装/更新验证。

3. 创建 YOLO 的 conda 环境(Python 3.11)

  1. 查看现有环境:

    condaenvlist
  2. 创建环境:

    conda create-nyolopython=3.11
  3. 激活环境:

    conda activate yolo

之后每次打开 Anaconda Prompt,默认在 base,需要手动conda activate yolo


4. 安装 PyTorch(匹配 CUDA)

  1. 先确认本机 CUDA/驱动情况:

    nvidia-smi
  • 确认 CUDA 版本是否满足你要装的 PyTorch(例如 CUDA 11.8)。
  1. 打开pytorch.org,找到对应版本(例如 v2.5.0),复制CUDA 11.8的安装命令。

  2. 回到 Anaconda Prompt:

    conda activate yolo# 粘贴 pytorch.org 提供的安装命令
  3. 验证(Python 里不报错即可):

    importtorchimporttorchvision

5. 配置 PyCharm 使用 conda 解释器

  1. 安装 PyCharm(例如 2025.1.1.1)。
  2. 用 PyCharm 打开ultralytics源码目录并Trust
  3. 设置解释器:
  • Settings → Project → Python Interpreter → Add Interpreter →Conda→ Existing
  • 选择conda.bat(在 Anaconda 的condabin目录)
  • 加载yolo环境
  1. 左下角显示yolo(或解释器名)即成功。

6. 推理(Inference):手写脚本跑官方模型

示例:mypredict.py

fromultralyticsimportYOLO model=YOLO(r"yolo11n.pt")model.predict(source=r"ultralytics\\assets",save=True,show=False,)
  • source:要预测的图片/视频路径,也可以是摄像头0
  • model:使用的权重文件(如yolo11n.pt
  • save:是否保存结果
  • show:是否立刻弹窗显示

常见说明

  • 预测视频时,输出可能是.avi,PyCharm 里不一定能直接预览。
  • 结果里出现Results saved to ...表示保存位置。

7. 训练(Train):用官方小数据集先跑通

示例:mytrain.py(先用coco8.yaml验证流程)

fromultralyticsimportYOLOif__name__=="__main__":model=YOLO(r"yolo11n.pt")model.train(data=r"coco8.yaml",epochs=10,imgsz=640,batch=2,cache=False,workers=0,)
  • 训练完成后,weights/目录里通常会有best.pt
  • val=False可以关闭验证(不建议长期这样做)

常见训练参数(你后面经常会用到)

  • epochs:训练轮数
  • imgsz:输入图片缩放尺寸
  • batch:每个 batch 的图片数量
  • cache:是否缓存加速
  • workers:加载数据的进程数

8. 数据集配置(YAML 关键点)

你需要提供:

  • 数据集文件夹本身
  • 数据集配置文件.yaml
  • YAML 内的path / train / val路径必须能对上实际目录

常见坑:

  • 报错很多来自path/train/val路径不匹配。
  • yaml结构
path: dataset train: images/train val: images/val names: 0: person 1: helmet
  • DATASET结构

dataset/ images/ train/ val/ labels/ train/ val/ data.yaml


9. 标注工具:LabelImg(YOLO 检测标签)

安装后,LabelImg 启动时建议明确传入 3 个路径:

  • 图片文件夹路径
  • classes.txt路径
  • 标签输出文件夹路径

注意:文件名统一用classes.txt

  • 建议放在labels/train(以及labels/val)里各放一份,避免混乱。

启动示例(路径按你的实际改):

labelimg"images\\train""labels\\train\\classes.txt""labels\\train"

10. 自己做数据集(最小可跑通流程)

  1. 拍视频 → 抽帧成图片。
  2. 建目录结构(示例):
  • images/train
  • images/val
  • labels/train
  • labels/val
  1. classes.txt写类别名(一行一个)。
  2. 标注生成 YOLO 格式 label。
  3. 写 YAML → 改mytrain.py里的data=你的yaml
  4. 训练后用best.pt回到mypredict.py做推理验证。

11. 重要提醒:类别错位(class mismatch)

训练时 YOLO 不看 label 名字,只看 class_id(数字)

  • 你的标签文件里是:

    class_id x1 y1 x2 y2 ...

  • YAML 的类别顺序必须和class_id对应。

如果你做的是LabelMe → YOLO segmentation,那么转换脚本生成class_id的顺序,必须和 YAML 的names顺序保持一致。

http://www.jsqmd.com/news/524345/

相关文章:

  • 如何高效下载无水印抖音视频?开源工具全解析与实践指南
  • 线性分类器:从基础概念到逻辑运算的实战解析
  • Qt C++ Modbus实现,可直接用于项目,测试通过
  • Java多线程学习(六)
  • 20253312 实验一《Python程序设计》实验报告
  • 论文写作新利器:书匠策AI,让数据分析变得像呼吸一样自然!
  • 2026年生鲜配送软件应用白皮书 中央厨房数字化剖析 - 优质品牌商家
  • 2026.3.23
  • 智能文字提取新标杆:Text-Grab本地化OCR工具全解析
  • LLM批处理系统:自适应并发控制;断点续传与进度追踪
  • 书匠策AI:论文数据分析的“超级外挂”,让学术研究如虎添翼
  • CloudWatch 告警实战:CPU 飙了自动扩容,账单超了 Slack 通知
  • 2026年水泥预制烟道厂家实力推荐榜:矩形/机制/装配式/锅炉专用烟道,精选耐用建材与专业工艺解析 - 品牌企业推荐师(官方)
  • 2026年3月郑州搬家公司最新推荐:金水区搬家、上街区搬家、惠济区搬家、荥阳搬家、新密搬家、新郑搬家公司选择指南 - 海棠依旧大
  • 2026年体育学论文降AI率工具推荐:运动训练方向同学看过来
  • 论文写作新利器:书匠策AI,让数据分析“智”在必得!
  • Electron应用安装包定制指南:如何用NSH脚本打造个性化安装界面(附完整代码示例)
  • 川内制造业短期工招聘服务品牌评测报告:就近安排找工作/工厂劳务外包派遣/工厂劳务派遣外包/工厂直招找工作/当天入职劳务派遣/选择指南 - 优质品牌商家
  • 省电神器!STM32G030的ADC低功耗采样方案:TIMER+DMA+HAL库全配置指南
  • 书匠策AI:论文数据分析的“超级外挂”,让科研之路畅通无阻
  • PD-L1重组兔单抗如何助力肿瘤免疫治疗的机制研究与疗效评估?
  • 2026化妆品源头工厂趋势:从规模到价值的跃迁 - 速递信息
  • # 发散创新:用 WebSocket 实现实时聊天系统的全链路架构设计
  • 企业在豆包做AI推广联系哪家公司?专业服务商深度解析 - 品牌2026
  • vxe-table列头合并避坑指南:从基础配置到高级动态调整
  • 8大需求分析软件选型指南:2026文档自动化新趋势解读
  • # 20253202 2025-2026-2 《Python程序设计》实验1报告
  • 基于太赫兹时域光谱的烟草含水量与厚度深度学习识别模型
  • 20252211 2025-2026-2 《Python程序设计》实验1报告
  • Ollama 非C盘部署