Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Multi-Object Tracking (MOT)

Многократное отслеживание объектов (MOT) отслеживает каждый объект в видео и сохраняет за ним один и тот же ID между кадрами. Разбираем, как трекеры связывают детекции, метрики и код.

Многообъектное отслеживание (MOT) — задача компьютерного зрения, в которой нужно одновременно следить за каждым интересующим объектом в видео, присваивая ему постоянный идентификатор, чтобы его положения в разных кадрах образовывали траекторию. Число объектов заранее неизвестно и постоянно меняется: люди или автомобили появляются в кадре, уходят из него, пересекаются и скрываются друг за другом. Поэтому трекер должен в каждом кадре определять, какие обнаруженные объекты продолжают существующие траектории, какие начинают новые и какие траектории завершились. MOT — наиболее распространённый тип отслеживания объектов; однообъектное отслеживание (SOT) следит за одной целью, выбранной в первом кадре, независимо от её класса.

Как работает многообъектное отслеживание#

В большинстве систем MOT используется подход «отслеживание по обнаружениям»: модель обнаружения объектов находит объекты в каждом кадре, а трекер связывает обнаружения с уже существующими траекториями. С помощью модели движения, обычно фильтра Калмана, трекер предсказывает, где должна находиться каждая цель, а затем строит матрицу стоимости между прогнозируемыми траекториями и новыми обнаружениями, учитывая перекрытие рамок (IoU), движение и, при необходимости, эмбеддинги внешнего вида, полученные моделью повторной идентификации объектов (Re-ID). Соответствия ищутся как задача о линейном назначении с помощью венгерского алгоритма. Совпавшие траектории сохраняют свои идентификаторы, обнаружения с высокой уверенностью, для которых не найдено соответствий, начинают новые траектории, а траектории без совпадения некоторое число кадров сохраняются как «потерянные», чтобы их можно было восстановить после перекрытия.

В толпе сопоставлять объекты сложно: частично скрытые люди дают обнаружения с низкой уверенностью, которые отбрасываются при простом пороговом отсечении. ByteTrack сохраняет такие обнаружения для второго прохода сопоставления:

Архитектуры трекеров#

  • SORT и его последователи: SORT (2016) объединяет фильтр Калмана, стоимости на основе IoU и венгерский алгоритм. DeepSORT добавил признаки внешнего вида для восстановления идентификаторов после перекрытия, ByteTrack — второй проход для обнаружений с низкой уверенностью, OC-SORT — устойчивые к перекрытиям оценки движения, а BoT-SORT — компенсацию движения камеры для движущихся камер.
  • Совместное обнаружение и получение эмбеддингов (FairMOT): FairMOT обучает одну сеть одновременно формировать обнаружения и эмбеддинги Re-ID, поэтому для признаков внешнего вида не нужна вторая модель.
  • Отслеживание от начала до конца (MOTR): MOTR и TrackFormer расширяют трансформер DETR запросами траекторий, которые переносят идентификатор каждого объекта из кадра в кадр; таким образом, сопоставление обучается в ходе тренировки.

Режим трекинга 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) и подсчёт кадров, в которых появляется каждый идентификатор траектории
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())

# Пять самых длинных траекторий в формате (идентификатор траектории, число кадров)
print(frames_per_id.most_common(5))

Каждая пара содержит идентификатор траектории и число кадров, в течение которых он сохранялся. Долгоживущий идентификатор означает, что трекер продолжал следить за одним человеком на протяжении многих кадров.

Оценка качества отслеживания#

Качество MOT оценивают на таких бенчмарках, как MOT17, MOT20 для плотных толп и DanceTrack, где танцоры похожи друг на друга и непредсказуемо двигаются. Наиболее распространены три метрики:

  • MOTA: Единица минус сумма пропущенных объектов, ложноположительных результатов и переключений идентификаторов, делённая на число объектов с эталонной разметкой. Поэтому метрика в основном отражает качество обнаружения.
  • IDF1: F1-мера правильно идентифицированных обнаружений, показывающая, насколько последовательно каждому реальному объекту присваивается один и тот же идентификатор.
  • HOTA: Геометрическое среднее точности обнаружения и точности сопоставления, которое одинаково учитывает поиск объектов и связывание их в траектории.

Сложности#

  • Перекрытие: Объект, скрытый на протяжении многих кадров, может вернуться с новым идентификатором, если его не удастся восстановить по прогнозу движения или сопоставлению внешнего вида.
  • Толпы и сходство внешнего вида: В плотных группах людей или среди игроков в одинаковой форме оценки по IoU и внешнему виду становятся неоднозначными, и идентификаторы меняются местами.
  • Движение камеры: При панорамировании или вибрации камеры все рамки одновременно смещаются, нарушая модели движения с постоянной скоростью, если трекер не компенсирует движение камеры.
  • Ограничения реального времени: Обнаружение, сопоставление и любая модель Re-ID используют общий временной бюджет кадра, а отдельная модель Re-ID требует дополнительного прохода сети для каждого обнаруженного объекта.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения