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

Object Tracking

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

Отслеживание объектов — это задача компьютерного зрения, которая находит объекты в последовательных кадрах видео и связывает их местоположения в траектории, присваивая каждому объекту постоянный ID. Автомобиль, появившийся в кадре под ID 7, сохраняет этот ID, пока движется, поворачивает и ненадолго скрывается за автобусом; это позволяет посчитать его один раз, измерить скорость и определить, куда он направляется. Отслеживание одного объекта следует за целью, выбранной в первом кадре, а отслеживание множества объектов (MOT) — самый распространенный на практике вариант — одновременно отслеживает все объекты интересующих классов.

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

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

  1. Предсказание: фильтр Калмана, предполагая постоянную скорость, предсказывает, где рамка каждого существующего трека появится в новом кадре.
  2. Оценка: трекер формирует матрицу стоимостей между предсказанными треками и новыми детекциями на основе IoU, движения и, в некоторых трекерах, сходства внешнего вида.
  3. Сопоставление: алгоритм выбирает взаимно однозначные соответствия с наименьшей стоимостью.
  4. Управление треками: у сопоставленных треков обновляется состояние, уверенные несопоставленные детекции начинают новые треки, а несопоставленные треки сохраняются как «потерянные» на несколько кадров, чтобы их можно было восстановить после перекрытия.

Именно этап жизненного цикла позволяет ID оставаться стабильными, даже если детекции пропадают на несколько кадров:

Базовая архитектура появилась в SORT в 2016 году; она использовала только фильтр Калмана, стоимости 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: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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