深圳Yolo 视觉
深圳
立即加入
词汇表

目标跟踪

了解Ultralytics 的物体跟踪功能!了解如何使用YOLO 模型实时track 视频中的运动、行为和交互。

物体跟踪是计算机视觉 (CV) 中的一项关键任务。 计算机视觉 (CV)中的一项重要任务。 视频序列中的特定实体,并监控其在连续帧中的移动。与静态图像分析不同 与静态图像分析不同的是,这一过程引入了时间维度,使系统能够在每个被检测到的物体穿越整个视频序列时,为其保持一个独特的身份。 检测到的项目在穿越场景时的唯一身份。通过为每个实体分配一个持久的识别码(ID),人工智能(AI)模型就能对其进行识别、 人工智能(AI)模型可以 分析轨迹、计算速度并了解随时间变化的互动情况。这种能力对于 这种能力对于将原始视频数据转化为可操作的洞察力至关重要,是高级视频理解系统的支柱。 视频理解系统的支柱。

跟踪的核心机制

现代跟踪系统通常采用 "检测跟踪 "模式。这种工作流程 物体检测模型,如 最先进的 YOLO11在每一帧中定位物体。 单帧中的物体。一旦检测到物体并用 一旦检测到物体并用边界框定位,跟踪算法就会接手,将这些检测结果与之前帧中的现有轨迹关联起来。 将这些检测结果与之前帧中的现有轨迹进行关联。

这一过程一般包括三个关键步骤:

  1. 运动预测:卡尔曼滤波(KF)等算法 卡尔曼滤波(KF)等算法利用物体过去的位置和速度 位置和速度来估计下一帧可能出现的位置。这种预测缩小了搜索范围 区域,大大提高了计算效率。
  2. 数据关联:系统利用匈牙利算法等优化方法,将新检测到的物体与现有轨迹进行匹配。 方法(如匈牙利算法)将新检测到的物体与现有轨迹进行匹配。这一步 依赖于以下指标 空间重叠或视觉特征相似性的 空间重叠度或视觉特征相似度。
  3. 身份维护:先进的追踪器,如 字节跟踪器BoT-SORT 等先进的跟踪器可处理复杂的场景,如 物体交叉路径或暂时隐藏在障碍物后面(遮挡)的复杂场景。通过利用 特征提取和深度学习 嵌入,即使物体再次出现,系统也能重新识别,防止 "ID 切换"。

目标跟踪 vs. 目标检测

虽然这些术语经常被放在一起提及,但它们在机器学习(ML)管道中却有不同的作用。 机器学习 (ML)管道中的不同目的。

  • 物体检测可以回答 "图像中出现了什么,在哪里?它 将每一帧图像都视为独立事件,输出类标签和 置信度分数,而无需记忆过去。
  • 物体跟踪可以回答 "这个特定物体将去哪里?它将检测 使系统能够识别第 10 帧中的汽车与第 100 帧中的汽车是同一辆车。 这种区分对于需要 行为预测建模的应用来说至关重要。

实际应用

在动态环境中进行实时推理,可靠跟踪物体的能力正在改变着各行各业。 在动态环境中进行实时推理

  • 智能交通系统:在自动驾驶汽车领域 在自动驾驶汽车领域,跟踪 是不可或缺的。自动驾驶汽车必须track 行人、骑自行车者和其他车辆,以预测他们的未来位置,避免碰撞。 位置,避免碰撞。这通常需要融合来自摄像头和 激光雷达传感器的数据,以便在各种天气条件下保持准确性。
  • 零售分析:实体店利用 零售业中的人工智能来绘制顾客旅程图。通过跟踪 移动模式,零售商可以生成热门通道的热图、分析停留时间并优化店铺 布局。这些数据有助于高效的 排队管理和库存摆放。
  • 体育分析:职业球队利用跟踪分析球员表现。通过将 跟踪与姿势估计 相结合,教练员可以评估 生物力学、速度和团队阵型,通过数据驱动的战略提供竞争优势。

用Python实现跟踪

使用该系统可直接实现高性能跟踪。 ultralytics 一揽子计划下面的 示例演示了如何加载预训练的 YOLO11 型号 并track 视频文件中的对象。视频 track 模式会自动处理检测和 ID 分配。

from ultralytics import YOLO

# Load the official YOLO11 nano model
model = YOLO("yolo11n.pt")

# Track objects in a video source (use '0' for webcam)
# The 'show=True' argument visualizes the tracking IDs in real-time
results = model.track(source="https://supervision.roboflow.com/assets/", show=True)

# Print the unique IDs detected in the first frame
if results[0].boxes.id is not None:
    print(f"Tracked IDs: {results[0].boxes.id.cpu().numpy()}")

相关概念

要完全掌握跟踪的细微差别,了解以下内容很有帮助 多目标跟踪 (MOT),它 多目标跟踪 (MOT),它特别侧重于在拥挤的场景中同时处理多个目标。此外,跟踪通常 与实例分割相结合,以track 精确的物体轮廓,而不仅仅是边界框,从而为医疗成像或机器人操纵等任务提供更高的粒度。 成像或机器人操纵等任务提供更高的精细度。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入