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

Multi-Object Tracking (MOT)

多目标跟踪 (MOT) 会跟踪视频中的每个对象,并在不同帧之间为每个对象保留一个 ID。了解跟踪器如何关联检测结果、相关指标和代码。

多目标跟踪 (MOT) 是计算机视觉中的一项任务,要求在视频中同时跟踪每个感兴趣的物体,为每个物体分配一个持久 ID,使其在各帧中的位置构成一条轨迹。物体数量未知且不断变化,因为行人或车辆会进入、离开、交错而过,并互相遮挡后消失;因此,跟踪器必须在每一帧中判断哪些检测结果延续现有轨迹、哪些开始新轨迹,以及哪些轨迹已经结束。MOT 是最常见的目标跟踪形式;单目标跟踪 (SOT) 则跟踪在第一帧中选定的一个目标,不受其类别限制。

多目标跟踪的工作原理#

大多数 MOT 系统采用检测式跟踪:一个目标检测模型在每一帧中查找物体,跟踪器则将这些检测结果与已有轨迹关联起来。跟踪器通常使用卡尔曼滤波器等运动模型预测每条轨迹的位置,根据框重叠度(IoU)、运动信息,以及可选的目标重识别 (Re-ID)模型生成的外观嵌入,构建预测轨迹与新检测结果之间的代价矩阵,然后使用匈牙利算法将匹配问题作为线性分配问题求解。匹配成功的轨迹会保留其 ID;置信度足够高但未匹配的检测结果会开始新轨迹;未匹配的轨迹则会在若干帧内标记为“丢失”,以便在遮挡后恢复。

人群场景会增加关联步骤的难度,因为被部分遮挡的人会产生低置信度检测结果,简单的阈值会将这些结果丢弃。ByteTrack会保留这些结果,以便进行第二轮匹配:

跟踪器设计#

  • SORT及其后续方法:SORT(2016 年)结合了卡尔曼滤波器、IoU 代价和匈牙利算法。DeepSORT 增加了外观特征,以便在遮挡后恢复身份;ByteTrack 增加了低置信度匹配环节;OC-SORT 提高了运动估计在遮挡情况下的稳健性;BoT-SORT 则为移动摄像头增加了相机运动补偿。
  • 联合检测与嵌入 (FairMOT):FairMOT 训练一个网络同时输出检测结果和 Re-ID 嵌入,因此无需额外模型即可获得外观特征。
  • 端到端跟踪 (MOTR):MOTR 和 TrackFormer 将 DETR Transformer 扩展为使用跟踪查询,让每个物体的身份在帧与帧之间延续,从而在训练期间学习关联关系。

Ultralytics YOLO 的跟踪模式会对任何 YOLO26检测、分割、姿态或定向框模型执行基于检测的跟踪,并通过 tracker 参数从六种内置跟踪器中选择:TrackTrack(默认)、BoT-SORT、ByteTrack、OC-SORT、Deep OC-SORT 和 FastTracker。此示例会跟踪短片中的人物,并统计每个 ID 持续出现的帧数:

from collections import Counter

from ultralytics import YOLO

model = YOLO("yolo26n.pt")
video = "https://github.com/ultralytics/assets/releases/download/v0.0.0/decelera_portrait_min.mov"

# 跟踪行人(COCO 类别 0),并统计每个跟踪 ID 出现的帧数
frames_per_id = Counter()
for result in model.track(video, stream=True, classes=[0]):
    if result.boxes.is_track:
        frames_per_id.update(result.boxes.id.int().tolist())

# 最长的五条轨迹,格式为(跟踪 ID,帧数)
print(frames_per_id.most_common(5))

每一对数值分别代表一个跟踪 ID 和该 ID 持续存在的帧数,因此持续时间较长的 ID 表示跟踪器在许多帧中持续跟踪同一个人。

衡量跟踪质量#

MOT 的评估会使用 基准测试 等,例如用于密集人群场景的 MOT17、MOT20,以及 DanceTrack;DanceTrack 中的舞者外观相似,动作难以预测。主要有三种指标:

  • MOTA:用漏检物体数、误报数和 ID 切换次数之和除以真实物体数,再用 1 减去该值,因此它主要受检测质量影响。
  • IDF1:正确识别的检测结果的 F1 分数,用于衡量每个真实物体保持同一 ID 的一致性。
  • HOTA:检测准确率与关联准确率的几何平均值,对发现物体和关联物体给予同等权重。

挑战#

  • 遮挡:物体被遮挡许多帧后可能会以新 ID 重新出现,除非运动预测或外观匹配能够恢复其身份。
  • 人群和相似外观:在人群密集的场景或穿着队服的运动员中,IoU 和外观代价容易产生歧义,导致 ID 互换。
  • 相机运动:平移或振动的摄像头会同时移动所有框;如果跟踪器不进行补偿,恒定速度运动模型就会失效。
  • 实时性能预算:检测、关联和任何 Re-ID 模型都要占用每帧的时间预算;单独的 Re-ID 模型还需要为每个检测到的物体额外运行一次网络。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 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 的未来!

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