跳至内容

多目标跟踪数据集概述

多目标跟踪是视频分析的一个重要组成部分,它可以识别目标,并为每个检测到的目标在视频帧中保持唯一的 ID。Ultralytics YOLO 具有强大的跟踪功能,可应用于监控、体育分析和交通监控等多个领域。

数据集格式(即将推出)

多物体检测器无需独立训练,可直接支持预训练的检测、分割或姿态模型。即将支持单独训练跟踪器。

可用跟踪器

Ultralytics YOLO 支持以下跟踪算法:

  • BoT-SORT - 使用 botsort.yaml 启用该跟踪器(默认)
  • 字节跟踪 - 使用 bytetrack.yaml 以启用此跟踪器

使用方法

示例

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.3, iou=0.5, show=True)
yolo track model=yolo11n.pt source="https://youtu.be/LNwODJXcvt4" conf=0.3, iou=0.5 show

在帧间保持轨迹

对于跨视频帧的连续跟踪,可以使用 persist=True 参数:

示例

import cv2

from ultralytics import YOLO

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

# Open the video file
cap = cv2.VideoCapture("path/to/video.mp4")

while cap.isOpened():
    success, frame = cap.read()
    if success:
        # Run tracking with persistence between frames
        results = model.track(frame, persist=True)

        # Visualize the results
        annotated_frame = results[0].plot()
        cv2.imshow("Tracking", annotated_frame)

        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
    else:
        break

cap.release()
cv2.destroyAllWindows()

常见问题

如何使用Ultralytics YOLO 进行多目标跟踪?

要通过Ultralytics YOLO 使用多对象跟踪功能,可以先使用所提供的Python 或CLI 示例。以下是开始使用的方法:

示例

from ultralytics import YOLO

model = YOLO("yolo11n.pt")  # Load the YOLO11 model
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.3, iou=0.5, show=True)
yolo track model=yolo11n.pt source="https://youtu.be/LNwODJXcvt4" conf=0.3 iou=0.5 show

这些命令会加载YOLO11 模型,并使用该模型以特定的置信度跟踪给定视频源中的物体 (conf)和 联合路交叉口 (iou)阈值。有关详细信息,请参阅 轨道模式文件.

Ultralytics 中的训练追踪器即将推出哪些功能?

Ultralytics 正在不断增强其人工智能模型。即将推出的一项功能将使独立跟踪器的训练成为可能。在此之前,多目标检测器利用预先训练好的检测、分割或姿态模型进行跟踪,无需进行独立训练。请关注我们的博客或查看即将推出的功能,了解最新信息。

为什么要使用Ultralytics YOLO 进行多目标跟踪?

Ultralytics YOLO 是一种先进的物体检测模型,以其实时性和高精确度而著称。使用YOLO 进行多目标跟踪具有多个优势:

  • 实时跟踪:实现高效高速跟踪,是动态环境的理想选择。
  • 预训练模型的灵活性:无需从头开始训练;只需使用预训练的检测、分割或姿势模型即可。
  • 易于使用:与Python 和CLI 的简单 API 集成使跟踪管道的设置简单明了。
  • 广泛的文档和社区支持: Ultralytics 提供全面的文档和活跃的社区论坛,帮助您排除故障和改进跟踪模型。

有关设置和使用YOLO 进行跟踪的更多详情,请访问我们的跟踪使用指南

可以使用Ultralytics YOLO 的自定义数据集进行多目标跟踪吗?

是的,您可以通过Ultralytics YOLO 将自定义数据集用于多目标跟踪。虽然即将推出支持独立跟踪器训练的功能,但您已经可以在自定义数据集上使用预训练模型。以与YOLO 兼容的适当格式准备数据集,并按照文档进行整合。

如何解释Ultralytics YOLO 追踪模型的结果?

使用Ultralytics YOLO 运行跟踪作业后,结果包括各种数据点,如跟踪对象 ID、其边界框和置信度分数。下面简要介绍如何解释这些结果:

  • 跟踪 ID:每个对象都有一个唯一的 ID,有助于跨帧跟踪。
  • 边界框:这些方框表示跟踪物体在画面中的位置。
  • 信心分数:这些分数反映了模型检测到被跟踪物体的信心。

有关解释和可视化这些结果的详细指导,请参阅结果处理指南

如何自定义跟踪器配置?

你可以通过创建修改版跟踪器配置文件来定制跟踪器。从ultralytics 复制现有的跟踪器配置文件,根据需要修改参数,并在运行跟踪器时指定该文件:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
results = model.track(source="video.mp4", tracker="custom_tracker.yaml")


📅创建于 1 年前 ✏️已更新 2 个月前

评论