Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Object Tracking

目标跟踪会关联视频不同帧中的检测结果,并在对象移动和受到遮挡时为每个对象保留持久 ID。了解跟踪器的工作原理并查看代码。

目标跟踪是计算机视觉任务:它在连续视频帧中定位目标,并将这些位置串联成轨迹,为每个目标分配一个持续不变的 ID。汽车以 ID 7 进入画面后,即使移动、转弯,或短暂地被公交车挡住,仍会保持 ID 7;这样系统就能只计数一次、测量汽车速度,并判断其行驶方向。单目标跟踪会跟随在第一帧中选定的一个目标;多目标跟踪(MOT)则是实践中最常见的形式,会同时跟踪所有感兴趣类别中的每个目标。

目标跟踪的工作原理#

大多数多目标跟踪器采用基于检测的跟踪方法:先由目标检测模型在每一帧中查找目标,再由跟踪器将这些检测结果随时间关联起来。跟踪器会使用运动模型(通常是卡尔曼滤波器)、通过交并比(IoU)衡量的边界框重叠度、可选的来自目标重识别(Re-ID)模型的外观嵌入,以及匈牙利算法等线性分配求解器。每帧都会执行以下四个步骤:

  1. 预测:假设物体匀速运动,卡尔曼滤波器会预测每条现有轨迹的边界框在新一帧中的位置。
  2. 评分:跟踪器会根据 IoU、运动信息,以及部分跟踪器中的外观相似度,构建预测轨迹与新检测结果之间的代价矩阵。
  3. 分配:求解器会选出代价最低的一对一匹配。
  4. 管理轨迹:匹配成功的轨迹会更新状态;置信度高但未匹配的检测结果会开启新轨迹;未匹配的轨迹则会在一定帧数的缓冲期内标记为“丢失”,以便在被遮挡后恢复。

生命周期管理步骤能在检测结果连续几帧消失时保持 ID 稳定:

这一核心设计始于 2016 年的 SORT,它只使用卡尔曼滤波器、IoU 代价和匈牙利算法。DeepSORT加入了外观特征,以便在遮挡后恢复目标身份;ByteTrack则通过在第二轮中匹配低置信度检测结果来提高召回率,因为这些结果往往对应部分被遮挡的目标。后续跟踪器加入了用于移动相机的相机运动补偿,以及适用于人群的更丰富关联规则。

跟踪与检测的比较#

检测器没有状态:它会独立处理每一帧,因此第 1 帧中的汽车与第 2 帧中的汽车是互不相关的检测结果。跟踪会添加跨帧传递身份的状态,而计数、停留时间和速度估算都依赖这一点。跟踪也不同于点跟踪和光流,后两者会跟随单个像素或表面点,而不会将它们归为带标签的物体。

Ultralytics YOLO 的跟踪模式可为任何 YOLO26检测、分割、姿态或定向框模型添加此状态;内置六种跟踪器,包括 ByteTrack、BoT-SORT 和默认的 TrackTrack:

from ultralytics import YOLO

# Load a YOLO26 detector; track() pairs it with a tracker that assigns persistent IDs
model = YOLO("yolo26n.pt")

detections, track_ids = 0, set()
for result in model.track(
    "https://github.com/ultralytics/assets/releases/download/v0.0.0/decelera_portrait_min.mov", stream=True
):
    detections += len(result.boxes)
    if result.boxes.is_track:
        track_ids.update(result.boxes.id.int().tolist())

print(f"Detections summed over all frames: {detections}")
print(f"Unique tracked objects: {len(track_ids)}")

唯一 ID 的数量小于检测结果总数,因为每个 ID 都代表一个物体,并贯穿该物体出现的所有帧。

实际应用#

  • 交通监控与速度估算:跨帧跟踪每辆车,可用于计数、车道级交通流分析,以及根据轨迹每秒覆盖的距离估算速度。
  • 零售分析:商店摄像头会跟踪顾客,以衡量客流量、排队长度和顾客在展示区前的停留时间,同时避免重复计算同一个人。
  • 体育分析:转播机构和教练会跟踪球员和球,以计算跑动距离、速度和球队阵型。
  • 自动驾驶车辆与机器人:感知系统会跟踪行人和车辆,以估算它们的速度,并预测它们下一秒的位置。

衡量跟踪质量#

跟踪器会在 MOT17、用于密集人群的 MOT20,以及面向外貌相似、运动难以预测的人群的 DanceTrack 等基准数据集上进行比较。MOTA 将漏检、误报和身份切换汇总为一个分数,但该分数主要受检测质量影响;IDF1 衡量每个真实目标能否始终保持同一 ID;HOTA则取检测准确率与关联准确率的几何平均值,平衡这两方面表现。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来