安装

YOLO(You Only Look Once)是目前最主流的实时目标检测算法系列,若想直接调用,可安装Ultralytics,支持命令行和Python调用。目前(2026-5)Ultralytics最高支持Python3.13,Python环境没问题,可用pip直接安装,安装时自动包含PyTorch依赖。

conda create -n yolo python=3.13
conda activate yolo
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu130
pip install ultralytics

此外,我在测试的时候报错了,许要额外安装下面的库,安装完成后,刷新环境路径

conda install -c conda-forge xz
conda clean --all -y

最简调用

ultralytics中的yolo模型做到了开箱即用,只需三步,加载模型、预测、输出结果,示例如下

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
results[0].save("output.jpg")

这三行代码可读性非常高,几乎不用怎么解释,预测结果如下

在这里插入图片描述

yolo26是Ultralytics的最新模型,后缀n表示轻量。ultralytics的模型后缀从小到大依次是n(nano),s(small),m(medium),l(large),x(extra large)。

模型输出

ultralytics能够将模型导出为其他格式,以适配不同的工作场景。

以onnx为例,ONNX(Open Neural Network Exchange)是目前最通用的AI模型格式,几乎可以在任何硬件和推理引擎上直接运行。

pip install onnx onnxruntime onnxsim

导出代码为

model.export(format="onnx", dynamic=True)

更多格式可见Ultralytics 导出格式

模型训练

ultralytics的功能非常全面,除了加载已经训练好的模型之外,也支持自己训练,示例如下

from ultralytics import YOLO

#1️⃣ 加载模型
model = YOLO("yolo26n.pt")

# 2️⃣ 训练
train_res = model.train(data="coco8.yaml", epochs=3)
best_pt = str(train_res.save_dir / "weights/best.pt")   # 训练结果存放地址

# 3️⃣ 验证 & 指标直取
model = YOLO(best_pt)
val_res = model.val(data="coco8.yaml", plots=True)

目标跟踪

ultralytics支持视频的目标跟踪,但需要安装lap求解器

pip install lapx

跟踪效果如下

在这里插入图片描述

代码为

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
res = model.track(source="vtest.avi", show=True)

其中vtest.avi是opencv的测试视频,地址在:https://github.com/opencv/opencv/blob/4.x/samples/data/vtest.avi

Ultralytics YOLO 支持以下跟踪算法:

  • 【BoT-SORT】 使用 botsort.yaml 启用此跟踪器(默认)
  • 【ByteTrack】 指明参数tracker="bytetrack.yaml"

小结

本文介绍了YOLO目标检测算法的安装与使用方法。首先说明了通过pip安装Ultralytics库的步骤,包括Python环境配置和依赖项安装。接着展示了YOLO的最简调用方式,只需三行代码即可完成目标检测。文章还介绍了模型输出功能,支持将模型导出为ONNX等通用格式。此外,详细说明了模型训练流程,包括加载预训练模型、训练和验证步骤。最后演示了视频目标跟踪功能,支持BoT-SORT和ByteTrack等跟踪算法。全文提供了完整的代码示例,帮助用户快速上手YOLO目标检测应用。

更多推荐