Ultralytics YOLO26 模式#
简介#
Ultralytics YOLO26 不只是另一个目标检测模型;它是一个功能全面的框架,旨在覆盖机器学习模型的整个生命周期——从数据导入和模型训练,到验证、部署和实际场景中的跟踪。每种模式都有特定用途,经过专门设计,可为不同任务和使用场景提供所需的灵活性和效率。
有关计划中的 YOLO27 支持,请参阅 YOLO27 预览。YOLO27 即将推出,目前尚不可用;本指南使用的是已发布的 YOLO26 模型。
观看: Ultralytics 模式教程:训练、验证、预测、导出和基准测试。
模式概览#
了解 Ultralytics YOLO26 支持的不同模式,对于充分发挥模型效能至关重要:
- 训练模式:在自定义或预加载的数据集上微调模型。
- 验证模式:训练后用于验证模型性能的检查点。
- 预测模式:利用模型的预测能力处理真实世界数据。
- 导出模式:将模型转换为适用于各种格式的模型部署版本。
- 跟踪模式:将目标检测模型扩展到实时跟踪应用。
- 基准测试模式:分析模型在不同部署环境中的速度和准确率。
本综合指南旨在概述每种模式并提供实用见解,帮助你充分发挥 YOLO26 的潜力。
训练#
训练模式用于在自定义数据集上训练 YOLO26 模型。在此模式下,模型会使用指定的数据集和超参数进行训练。训练过程会优化模型参数,使模型能够准确预测图像中目标的类别和位置。训练对于创建能够识别与你的应用相关的特定目标的模型至关重要。
验证#
验证模式用于在 YOLO26 模型训练完成后对其进行验证。在此模式下,模型会在验证集上进行评估,以衡量其准确率和泛化性能。验证有助于发现过拟合等潜在问题,并提供平均精度均值(mAP)等指标来量化模型性能。此模式对于调整超参数和提升模型整体效果至关重要。
预测#
预测模式用于使用训练好的 YOLO26 模型对新图像或视频进行预测。在此模式下,模型从检查点文件加载,用户可以提供图像或视频进行推理。模型会识别并定位输入媒体中的目标,使其能够应用于真实场景。预测模式是将训练好的模型用于解决实际问题的入口。
导出#
导出模式用于将 YOLO26 模型转换为适合在不同平台和设备上部署的格式。此模式会将 PyTorch 模型转换为 ONNX、TensorRT 或 CoreML 等优化格式,以便在生产环境中部署。导出对于将模型集成到各种软件应用或硬件设备中至关重要,而且通常能显著提升性能。
跟踪#
跟踪模式扩展了 YOLO26 的目标检测能力,可跨视频帧或实时流跟踪目标。此模式对于需要持续识别目标的应用尤其有价值,例如监控系统或自动驾驶汽车。它包含六种跟踪器:TrackTrack(默认)、BoT-SORT、ByteTrack、OC-SORT、Deep OC-SORT 和 FastTracker。
基准测试#
基准测试模式用于评估 YOLO26 各种导出格式的速度和准确率。此模式会全面提供模型大小、准确率(检测、分割、姿态和 OBB 使用 mAP50-95;语义分割使用 mIoU;深度估计使用 delta1;分类使用 accuracy_top1)以及 ONNX、OpenVINO 和 TensorRT 等不同格式下的推理时间等指标。基准测试可以帮助你根据部署环境对速度和准确率的具体要求,选择最合适的导出格式。
常见问题#
使用 Ultralytics YOLO26 训练自定义目标检测模型需要使用训练模式。你需要准备一个采用 YOLO 格式的数据集,其中包含图像及其对应的标注文件。使用以下命令开始训练:
示例from ultralytics import YOLO # 加载预训练的 YOLO 模型(可选择 n、s、m、l 或 x 版本) model = YOLO("yolo26n.pt") # 开始在自定义数据集上训练 model.train(data="path/to/dataset.yaml", epochs=100, imgsz=640)如需更详细的说明,请参阅 Ultralytics 训练指南。
Ultralytics YOLO26 在验证过程中使用多种指标来评估模型性能,包括:
- mAP(平均精度均值):用于评估目标检测的准确率。
- IoU(交并比):衡量预测边界框与真实标注边界框之间的重叠程度。
- 精确率和召回率:精确率衡量真正例检测结果占所有正例检测结果的比例,召回率衡量真正例检测结果占所有实际正例的比例。
你可以运行以下命令开始验证:
示例from ultralytics import YOLO # 加载预训练或自定义 YOLO 模型 model = YOLO("yolo26n.pt") # 在你的数据集上运行验证 model.val(data="path/to/validation.yaml")更多详情请参阅验证指南。
Ultralytics YOLO26 提供导出功能,可将训练好的模型转换为 ONNX、TensorRT、CoreML 等多种部署格式。使用以下示例导出模型:
示例from ultralytics import YOLO # 加载训练好的 YOLO 模型 model = YOLO("yolo26n.pt") # 将模型导出为 ONNX 格式(可按需指定其他格式) model.export(format="onnx")有关每种导出格式的详细步骤,请参阅导出指南。
Ultralytics YOLO26 中的基准测试模式用于分析 ONNX、TensorRT 和 OpenVINO 等各种导出格式的速度和准确率。它会提供模型大小、目标检测的
mAP50-95以及不同硬件配置下的推理时间等指标,帮助你为部署需求选择最合适的格式。示例from ultralytics.utils.benchmarks import benchmark # 在 GPU 上运行基准测试(设备 0) # 你可以按需调整模型、数据集、图像尺寸和精度等参数 benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, device=0)更多详情请参阅基准测试指南。
你可以使用 Ultralytics YOLO26 的跟踪模式实现实时目标跟踪。此模式扩展了目标检测能力,可跨视频帧或实时视频流跟踪目标。使用以下示例启用跟踪:
示例from ultralytics import YOLO # 加载预训练的 YOLO 模型 model = YOLO("yolo26n.pt") # 开始跟踪视频中的目标 # 你也可以使用实时视频流或网络摄像头输入 model.track(source="path/to/video.mp4")如需详细说明,请访问跟踪指南。