YOLO Vision 2026:

Ultralytics YOLO 常见问题解答 (FAQ)#

本 FAQ 部分解答了用户在使用 Ultralytics YOLO 存储库时可能遇到的常见问题和疑难。

常见问题解答#

  • Ultralytics 是一家专注于计算机视觉的 AI 公司,专精于最先进的目标检测和图像分割模型,重点是 YOLO (You Only Look Once) 系列。其产品包括:

    • YOLO26(最新版)和 YOLO11(上一代)的开源实现
    • 用于各种计算机视觉任务的广泛 预训练模型
    • 一个用于将 YOLO 模型无缝集成到项目中的综合性 Python 包
    • 用于训练、测试和部署模型的多功能 工具
    • 详尽的文档 和支持性的社区
  • 使用 pip 安装 Ultralytics 包非常简单:

    pip install ultralytics

    若要获取最新的开发版本,可以直接从 GitHub 存储库安装:

    pip install git+https://github.com/ultralytics/ultralytics.git

    详细的安装说明可以在 快速入门指南 中找到。

  • 最低要求:

    • Python 3.8+
    • PyTorch 1.8+
    • 支持 CUDA 的 GPU(用于 GPU 加速)

    推荐配置:

    • Python 3.8+
    • PyTorch 1.10+
    • 配备 CUDA 11.2+ 的 NVIDIA GPU
    • 8GB 以上 RAM
    • 50GB 以上可用磁盘空间(用于数据集存储和模型训练)

    如需排查常见问题,请访问 YOLO 常见问题 页面。

  • 训练自定义 YOLO 模型的步骤:

    1. YOLO 格式准备你的数据集(图片及对应的 txt 标签文件)。

    2. 创建一个 YAML 文件来描述你的数据集结构和类别(参见 数据集 YAML 示例)。

    3. 使用以下 Python 代码开始训练:

      from ultralytics import YOLO
      
      # Load a model
      model = YOLO("yolo26n.yaml")  # build a new model from scratch
      model = YOLO("yolo26n.pt")  # load a pretrained model (recommended for training)
      
      # Train the model
      results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)

    如需更深入的指南(包括数据准备和高级训练选项),请参考综合性的 训练指南

  • Ultralytics 提供了多样化的预训练模型以支持各类任务:

    • 目标检测:YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
    • 实例分割:YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
    • 语义分割:YOLO26n-sem, YOLO26s-sem, YOLO26m-sem, YOLO26l-sem, YOLO26x-sem
    • 深度估计:YOLO26n-depth,YOLO26s-depth,YOLO26m-depth,YOLO26l-depth,YOLO26x-depth
    • 分类:YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
    • 姿态估计:YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
    • 旋转目标检测 (OBB):YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb

    这些模型在尺寸和复杂性上各不相同,在速度和 准确率 之间提供不同的权衡。探索完整的 预训练模型 系列,找到最适合你项目的模型。

  • 使用训练好的模型进行推理:

    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("path/to/your/model.pt")
    
    # Perform inference
    results = model("path/to/image.jpg")
    
    # Process results
    for r in results:
        print(r.boxes)  # print bbox predictions
        print(r.masks)  # print mask predictions
        print(r.probs)  # print class probabilities

    如需高级推理选项(包括批处理和视频推理),请查看详细的 预测指南

  • 当然可以!Ultralytics 模型专为跨平台的灵活部署而设计:

    • 边缘设备:使用 TensorRT、ONNX 或 OpenVINO 在 NVIDIA Jetson 或 Intel Neural Compute Stick 等设备上优化推理。
    • 移动端:通过将模型转换为 LiteRT 或 CoreML,即可部署在 Android 或 iOS 设备上。
    • 云端:利用 TensorFlow Serving 或 PyTorch Serve 等框架进行可扩展的云部署。
    • Web 端:使用 LiteRT.js 或 ONNX.js 实现浏览器内推理。

    Ultralytics 提供导出功能,可将模型转换为各种格式以供部署。探索广泛的 部署选项,为你的使用场景找到最佳解决方案。

  • 主要区别包括:

    • 端到端无 NMS 推理:YOLO26 原生支持端到端,直接生成预测结果而无需非极大值抑制 (NMS),从而减少延迟并简化部署。
    • 移除 DFL:YOLO26 移除了 Distribution Focal Loss 模块,简化了导出并提高了在边缘和低功耗设备上的兼容性。
    • MuSGD 优化器:结合了 SGD 和 Muon(灵感来自 Moonshot AI 的 Kimi K2),使训练更稳定,收敛速度更快。
    • CPU 性能:YOLO26 的 CPU 推理速度提升高达 43%,使其非常适合没有 GPU 的设备。
    • 特定任务优化:通过语义损失和多尺度 protos 增强了分割功能;使用角度损失提高了 RLE 精确姿态估计和 OBB 解码能力。
    • 任务:两个模型都支持目标检测和实例分割,此外 YOLO26 还增加了用于密集像素级预测的语义分割和用于逐像素深度的单目深度估计。两个模型还在一个统一框架内支持分类、姿态估计和旋转目标检测(OBB)。

    如需深入对比功能和性能指标,请访问 YOLO26 文档页面

  • 为 Ultralytics 做贡献是改善项目并提升自身技能的好方法。参与方式如下:

    1. 在 GitHub 上 Fork Ultralytics 存储库。
    2. 为你的功能改进或 Bug 修复创建一个新分支。
    3. 进行修改并确保所有测试通过。
    4. 提交一个拉取请求 (PR),并附上清晰的修改说明。
    5. 参与代码审查过程。

    你也可以通过报告 Bug、建议新功能或完善文档来做出贡献。有关详细指南和最佳实践,请参考 贡献指南

  • 在 Python 中安装 Ultralytics 包非常简单。使用 pip,在你的终端或命令行界面中运行以下命令:

    pip install ultralytics

    若要获取前沿的开发版本,可以直接从 GitHub 存储库安装:

    pip install git+https://github.com/ultralytics/ultralytics.git

    如需针对特定环境的安装说明和故障排除建议,请查阅综合性的 快速入门指南

  • Ultralytics YOLO 拥有一套丰富的功能,适用于高级计算机视觉任务:

    • 实时检测:在实时场景中高效地检测和分类对象。
    • 多任务能力:在一个统一框架内执行目标检测、实例分割、语义分割单目深度估计、分类、姿态估计和旋转目标检测(OBB)。
    • 预训练模型:访问各种在速度和准确率之间取得平衡的 预训练模型,以满足不同的使用场景。
    • 自定义训练:使用灵活的 训练流水线 在自定义数据集上轻松微调模型。
    • 广泛的 部署选项:将模型导出为 TensorRT、ONNX 和 CoreML 等各种格式,以便在不同平台上进行部署。
    • 详尽的文档:从全面的 文档 和支持性的社区中受益,助力你的计算机视觉工作流。
  • 你可以通过多种技术来提升 YOLO 模型的性能:

    1. 超参数调优:使用 超参数调优指南 试验不同的超参数,以优化模型性能。
    2. 数据增强:实施翻转、缩放、旋转和颜色调整等技术来丰富你的训练数据集,并提升模型的泛化能力。
    3. 迁移学习:利用预训练模型,并使用训练指南在你的特定数据集上对其进行微调。
    4. 导出为高效格式:使用导出指南将模型转换为 TensorRT 或 ONNX 等优化格式,以实现更快的推理速度。
    5. 基准测试:利用 基准测试模式 系统地测量和提升推理速度与准确率。
  • 可以,Ultralytics YOLO 模型专为灵活部署而设计,包括移动端和边缘设备:

    • 移动端:将模型转换为 LiteRT 或 CoreML,以便无缝集成到 Android 或 iOS 应用中。请参阅 LiteRT Integration GuideCoreML Integration Guide 获取特定平台的指导说明。
    • 边缘设备:使用 TensorRT 或 ONNX 优化 NVIDIA Jetson 等设备或其他边缘硬件上的推理。Edge TPU 集成指南 提供了边缘部署的详细步骤。

    如需了解跨各种平台的部署策略的综合概述,请查阅 部署选项指南

  • 使用训练好的 Ultralytics YOLO 模型进行推理非常简单:

    1. 加载模型:

      from ultralytics import YOLO
      
      model = YOLO("path/to/your/model.pt")
    2. 运行推理:

      results = model("path/to/image.jpg")
      
      for r in results:
          print(r.boxes)  # print bounding box predictions
          print(r.masks)  # print mask predictions
          print(r.probs)  # print class probabilities

    如需高级推理技术(包括批处理、视频推理和自定义预处理),请参考详细的 预测指南

  • Ultralytics 提供了丰富的资源来帮助你入门并精通其工具:

    • 📚 官方文档:综合指南、API 参考和最佳实践。
    • 💻 GitHub 存储库:源代码、示例脚本和社区贡献。
    • ✍️ Ultralytics 博客:深度文章、用例和技术洞察。
    • 💬 社区论坛:与其他用户交流、提问并分享你的经验。
    • 🎥 YouTube 频道:关于各种 Ultralytics 主题的视频教程、演示和网络研讨会。

    这些资源提供了使用 Ultralytics 模型执行各种任务的代码示例、真实用例和分步指南。

    如果需要进一步的帮助,请查阅 Ultralytics 文档,或通过 GitHub Issues 或官方 讨论论坛 联系社区。

评论