Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics YOLO 常见问题解答 (FAQ)#

此 FAQ 部分旨在解答用户在使用 Ultralytics YOLO 存储库时可能遇到的常见问题。

Link to this section常见问题解答#

Link to this section什么是 Ultralytics,它提供什么?#

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

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

Link to this section我该如何安装 Ultralytics 包?#

使用 pip 安装 Ultralytics 包非常简单:

pip install ultralytics

对于最新的开发版本,请直接从 GitHub 存储库安装:

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

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

Link to this section运行 Ultralytics 模型有哪些系统要求?#

最低要求:

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

推荐配置:

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

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

Link to this section我该如何在我自己的数据集上训练自定义 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)

有关包括数据准备和高级训练选项在内的更深入指南,请参阅全面的 训练指南

Link to this sectionUltralytics 中提供了哪些预训练模型?#

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-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

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

Link to this section如何使用已训练的 Ultralytics 模型进行推理?#

要使用已训练模型进行推理:

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

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

Link to this sectionUltralytics 模型可以部署在边缘设备或生产环境中吗?#

当然可以!Ultralytics 模型专为跨各种平台的多功能部署而设计:

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

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

Link to this sectionYOLO11 和 YOLO26 有什么区别?#

主要区别包括:

  • 端到端无 NMS 推理:YOLO26 原生支持端到端,无需非极大值抑制 (NMS) 即可直接生成预测,从而降低延迟并简化部署。
  • 移除 DFL:YOLO26 移除了 Distribution Focal Loss 模块,简化了导出并提高了与边缘设备和低功耗设备的兼容性。
  • MuSGD 优化器:SGD 和 Muon(受 Moonshot AI 的 Kimi K2 启发)的混合体,可实现更稳定的训练和更快的收敛。
  • CPU 性能:YOLO26 的 CPU 推理速度提升高达 43%,使其成为没有 GPU 的设备的理想选择。
  • 任务特定优化:利用语义损失和多尺度原型的增强分割、用于精确姿态估计的 RLE,以及带有角度损失的改进 OBB 解码。
  • 任务:两种模型都支持 目标检测 和实例分割,而 YOLO26 还增加了用于密集像素级预测的 语义分割。两种模型还在统一框架中支持分类、姿态估计和旋转目标检测 (OBB)。

有关功能和性能指标的深入对比,请访问 YOLO26 文档页面

Link to this section我该如何为 Ultralytics 开源项目做出贡献?#

为 Ultralytics 做出贡献是改进项目和扩展你技能的好方法。参与方式如下:

  1. 在 GitHub 上 fork Ultralytics 存储库。
  2. 为你的功能或错误修复创建一个新分支。
  3. 进行更改并确保所有测试通过。
  4. 提交一个包含清晰更改描述的 pull request。
  5. 参与代码审查过程。

你也可以通过报告错误、建议功能或改进文档来进行贡献。有关详细指南和最佳实践,请参阅 贡献指南

Link to this section如何在 Python 中安装 Ultralytics 包?#

在 Python 中安装 Ultralytics 包很简单。使用 pip,并在你的终端或命令提示符中运行以下命令:

pip install ultralytics

对于最前沿的开发版本,请直接从 GitHub 存储库安装:

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

有关环境特定的安装说明和故障排除提示,请参阅全面的 快速入门指南

Link to this sectionUltralytics YOLO 的主要功能是什么?#

Ultralytics YOLO 为高级计算机视觉任务提供了丰富的功能集:

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

Link to this section我该如何提高 YOLO 模型的性能?#

提高 YOLO 模型性能可以通过多种技术来实现:

  1. 超参数调优:使用 超参数调优指南 尝试不同的超参数,以优化模型性能。
  2. 数据增强:实现翻转、缩放、旋转和色彩调整等技术,以增强训练数据集并提高模型的泛化能力。
  3. 迁移学习:利用预训练模型,并使用 训练指南 在你的特定数据集上对其进行微调。
  4. 导出为高效格式:使用 导出指南 将模型转换为 TensorRT 或 ONNX 等优化格式,以实现更快的推理。
  5. 基准测试:利用 基准测试模式 系统地测量和提高推理速度及准确率。

Link to this section我可以将 Ultralytics YOLO 模型部署在移动端和边缘设备上吗?#

可以,Ultralytics YOLO 模型专为包括移动端和边缘设备在内的多种部署场景而设计:

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

如需了解跨各种平台的部署策略的全面概述,请参考 部署选项指南

Link to this section如何使用已训练的 Ultralytics YOLO 模型进行推理?#

使用已训练的 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

有关包括批量处理、视频推理和自定义预处理在内的高级推理技术,请参阅详细的 预测指南

Link to this section在哪里可以找到使用 Ultralytics 的示例和教程?#

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

  • 📚 官方文档:全面的指南、API 参考和最佳实践。
  • 💻 GitHub 存储库:源代码、示例脚本和社区贡献。
  • ✍️ Ultralytics 博客:深入的文章、用例和技术见解。
  • 💬 社区论坛:与其他用户联系、提问并分享你的使用经验。
  • 🎥 YouTube 频道:提供有关 Ultralytics 各类主题的视频教程、演示和网络研讨会。

这些资源为使用 Ultralytics 模型执行各类任务提供了代码示例、实际应用案例和分步指南。

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

评论