跳转至内容

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("yolov8n.yaml")  # build a new model from scratch
    model = YOLO("yolov8n.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 为各种任务提供各种预训练模型:

  • 目标检测:YOLO11n、YOLO11s、YOLO11m、YOLO11l、YOLO11x
  • 实例分割:YOLO11n-seg、YOLO11s-seg、YOLO11m-seg、YOLO11l-seg、YOLO11x-seg
  • 分类:YOLO11n-cls、YOLO11s-cls、YOLO11m-cls、YOLO11l-cls、YOLO11x-cls
  • 姿势估计: YOLO11n-pose, YOLO11s-pose, YOLO11m-pose, YOLO11l-pose, YOLO11x-pose

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

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

YOLOv8 和 YOLO11 之间有什么区别?

主要区别包括:

  • 架构:YOLO11 具有改进的骨干和头部设计,以增强性能。
  • 性能:与 YOLOv8 相比,YOLO11 通常提供更高的准确性和速度。
  • 效率:YOLO11m在COCO数据集上实现了更高的平均精度均值(mAP),参数比YOLOv8m少22%。
  • 任务:两种模型都支持在统一框架中进行对象检测、实例分割、分类和姿势估计。
  • 代码库:YOLO11 采用更模块化和可扩展的架构实现,从而更容易进行自定义和扩展。

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

如何为 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 拥有一系列丰富的功能,适用于高级计算机视觉任务:

  • 实时检测:在实时场景中高效地检测和分类对象。
  • 多任务功能:使用统一框架执行对象检测、实例分割、分类和姿势估计。
  • 预训练模型:访问各种预训练模型,这些模型在速度和准确性之间取得平衡,以适应不同的用例。
  • 自定义训练:使用灵活的训练流程,轻松地在自定义数据集上微调模型。
  • 广泛的部署选项:将模型导出为各种格式,如 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 或官方讨论论坛联系社区。



📅 创建于 1 年前 ✏️ 更新于 2 个月前

评论