Визуальное сопровождение цели (трекинг)

Кратко

Визуальное сопровождение (video tracking, трекинг) — определение положения движущегося объекта от кадра к кадру по видео с камеры. В отличие от детекции, которая заново находит объекты на каждом кадре, трекер удерживает идентичность цели во времени: «этот пешеход на новом кадре — тот же, что и на предыдущем». Без трекинга невозможны подсчёт объектов, анализ траекторий и автоматическое удержание цели камерой.

Для чего используется

  • охрана и видеонаблюдение: сопровождение людей и транспорта в кадре;
  • управление трафиком: подсчёт и анализ траекторий транспорта;
  • спортивная аналитика: сопровождение мяча и игроков;
  • дополненная реальность — привязка виртуальных объектов к реальным;
  • взаимодействие человек-компьютер и медицинская визуализация;
  • сжатие видео.

Как работает

Алгоритм трекинга состоит из двух частей: представление и локализация цели (найти похожий на цель участок нового кадра — это требует немного вычислений) и фильтрация с ассоциацией данных (учесть динамику движения и связать наблюдения между кадрами — вычислений нужно больше, зато трекер не теряет цель при перекрытиях).

Одиночный трекинг. Классические методы ведут одну цель по её внешнему виду: mean-shift итеративно максимизирует меру сходства с образцом, корреляционные фильтры (KCF, CSRT — есть готовые в OpenCV) ищут отклик шаблона. Движение цели предсказывает фильтр Калмана — рекурсивный алгоритм оценки состояния по зашумлённым измерениям (Калман, 1960); для нелинейных и негауссовых случаев — фильтр частиц.

Многообъектный трекинг. Доминирует парадигма tracking-by-detection: на каждом кадре работает детектор, а трекер сопоставляет свежие детекции с существующими треками. Эталон минимализма — SORT (Bewley et al., ICIP 2016): фильтр Калмана предсказывает, куда сместилась рамка, венгерский алгоритм решает задачу назначения «какая детекция — чей трек». Обновление занимало 260 Гц — в 20+ раз быстрее трекеров state-of-the-art того времени. Качество при этом определяется детектором: его замена улучшала результат SORT до 18,9%.

Слабое место чисто геометрического подхода — перекрытия: когда объекты заслоняют друг друга, треки путаются. DeepSORT (Wojke et al., 2017) добавил к SORT внешний вид: нейросеть, обученная на датасете переидентификации людей, выдаёт вектор признаков внешности, и детекции связываются с треками по близости этих векторов. Число перепутываний идентичности снизилось на 45%, объект переживает более длительные заслонения.

Аналогия: SORT следит только за тем, «куда двигался» объект; DeepSORT ещё и помнит, «как он выглядел».

Основные компоненты

  • детектор объектов — источник наблюдений в tracking-by-detection;
  • модель движения — фильтр Калмана или фильтр частиц: предсказание позиции;
  • ассоциация данных — венгерский алгоритм, метрики близости (IoU, признаки внешности);
  • модель внешности — сеть переидентификации (re-ID) в DeepSORT и наследниках.

Примеры

  • OpenCV 4.x — готовые одиночные трекеры TrackerKCF и TrackerCSRT с единым API, задуманным для сравнения алгоритмов.
  • SORT / DeepSORT — открытый код, стандартные базовые методы многообъектного трекинга.
  • Ultralytics YOLO — режим сопровождения множества объектов встроен рядом с детекцией и сегментацией: практичный путь «детекция + трекинг» одной библиотекой.

Связанные темы

Источники

Обновлено: 2026-07-10