跳转至内容

Ultralytics YOLO 常见问题解答 (FAQ)

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

常见问题

Ultralytics 是什么,它提供哪些功能?

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

如何安装 Ultralytics 包?

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

pip install ultralytics

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

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

详细的安装说明请参考快速入门指南

运行 Ultralytics 模型有哪些系统要求?

最低要求:

  • Python 3.8+
  • PyTorch 1.8+
  • 兼容 CUDA 的 GPU(用于 GPU 加速)

推荐配置:

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

如需解决常见问题,请访问YOLO 常见问题页面。

如何在自己的数据集上训练自定义 YOLO 模型?

要训练自定义 YOLO 模型:

  1. 以 YOLO 格式准备您的数据集(图像和相应的标签 txt 文件)。
  2. 创建一个 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 中有哪些可用的预训练模型?

Ultralytics 为各种任务提供各种预训练模型:

  • 目标检测:YOLO26n、YOLO26s、YOLO26m、YOLO26l、YOLO26x
  • 实例分割:YOLO26n-seg、YOLO26s-seg、YOLO26m-seg、YOLO26l-seg、YOLO26x-seg
  • 分类: 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

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

如何使用训练好的 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

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

Ultralytics 模型可以部署在边缘设备或生产环境中吗?

当然!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 提供了导出功能,可将模型转换为各种格式以进行部署。浏览各种部署选项,找到最适合您用例的解决方案。

YOLO11和YOLO26之间有什么区别?

主要区别包括:

  • 端到端免NMS推理: YOLO26原生支持端到端,直接生成预测结果,无需非极大值抑制 (NMS),从而降低延迟并简化部署。
  • 移除DFL: YOLO26移除了分布焦点损失模块,简化了模型导出,并提高了与边缘和低功耗设备的兼容性。
  • MuSGD优化器: SGD和Muon的混合体(灵感来源于月之暗面Kimi K2),旨在实现更稳定的训练和更快的收敛。
  • CPU性能: YOLO26在CPU推理速度上提升高达43%,使其成为无GPU设备的理想选择。
  • 任务特定优化: 通过语义损失和多尺度原型增强segment,RLE用于精确姿势估计,以及通过角度损失改进obb解码。
  • 任务: 两种模型均支持目标检测、实例分割、分类、姿势估计以及旋转目标检测 (OBB) 在一个统一框架中。

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

如何为 Ultralytics 开源项目做贡献?

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

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

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

如何在 Python 中安装 Ultralytics 包?

在 Python 中安装 Ultralytics 包非常简单。通过在终端或命令提示符中运行以下命令来使用 pip:

pip install ultralytics

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

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

有关特定于环境的安装说明和故障排除提示,请查阅完整的快速入门指南

Ultralytics YOLO 的主要功能有哪些?

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

  • 实时 detect:在实时场景中高效 detect 和 classify 对象。
  • 多任务功能:使用统一框架执行对象检测、实例分割、分类和姿势估计。
  • 预训练模型:访问多种预训练模型,这些模型在速度和准确性之间取得平衡,适用于不同的用例。
  • 自定义训练:使用灵活的训练流程,轻松地在自定义数据集上微调模型。
  • 广泛的部署选项:将模型导出为各种格式,如 TensorRT、ONNX 和 CoreML,以便跨不同平台进行部署。
  • 全面的文档:受益于全面的文档以及一个支持性的社区,助力您的计算机视觉工作流。

如何提高我的 YOLO 模型的性能?

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

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

我可以在移动和边缘设备上部署 Ultralytics YOLO 模型吗?

是的,Ultralytics YOLO 模型专为通用部署而设计,包括移动和边缘设备:

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

有关各种平台上部署策略的全面概述,请参阅部署选项指南

如何使用训练好的 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
    

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

在哪里可以找到使用 Ultralytics 的示例和教程?

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

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

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

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



📅 创建于 2 年前 ✏️ 更新于 8 天前
glenn-jocherLaughing-qUltralyticsAssistantpderrengerRizwanMunawar

评论