Открыть сервис

Трекинг объектов

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

История развития

Ранние методы (1950—1990-е годы)

Первые системы трекинга появились в военной сфере во время Второй мировой войны и после неё. Радиолокационные станции (РЛС) использовали методы сопровождения целей по данным об угловых координатах и дальности. В 1950-х годах для автоматического сопровождения целей в радиолокаторах были разработаны алгоритмы α-β-фильтрации, которые позволяли сглаживать шумы измерений и экстраполировать положение цели на следующий такт.

С развитием телевизионных камер и вычислительной техники в 1970-х годах появились первые системы оптического трекинга. В 1980-х годах были предложены методы на основе корреляции шаблонов (template matching) и оптического потока (optical flow), которые позволяли отслеживать объекты в видеопоследовательностях.

Эра вероятностных методов (1990—2010-е годы)

В 1990-х годах доминирующим подходом стали байесовские фильтры. Фильтр Калмана (Kalman filter) стал стандартом для линейных гауссовских систем, а его расширения (Extended Kalman Filter, Unscented Kalman Filter) — для нелинейных. Для задач с несколькими гипотезами и нелинейными распределениями начали применяться фильтры частиц (particle filters). В 1999 году был предложен метод Mean-Shift, основанный на поиске моды распределения градиента цвета, который стал популярным благодаря своей простоте и скорости.

Современный этап (2010-е — настоящее время)

С 2010-х годов, с развитием глубокого обучения, трекинг объектов перешёл на новый уровень. Появились методы на основе свёрточных нейронных сетей (CNN), такие как SiamFC (2016), SiamRPN (2018) и современные трекеры на основе трансформеров (например, TransT, 2021). Эти подходы значительно превзошли классические методы по точности, особенно в сложных сценариях с перекрытиями, изменением масштаба и сменой ракурса.

Классификация методов трекинга

Методы трекинга объектов можно классифицировать по нескольким признакам:

По типу сенсора

  • Оптический трекинг — использует видеокамеры (видимый, инфракрасный, мультиспектральный диапазон).
  • Радиолокационный трекинг — основан на данных от РЛС.
  • Лазерный трекинг (LIDAR) — использует лазерные сканеры для построения карт глубин.
  • Акустический трекинг — применяет микрофонные решётки для локализации источников звука.
  • Интегрированные системы — комбинируют данные от разных сенсоров (например, камера + LIDAR + радар).

По количеству объектов

  • Одиночный трекинг (Single Object Tracking, SOT) — отслеживание одного заранее заданного объекта.
  • Множественный трекинг (Multiple Object Tracking, MOT) — одновременное отслеживание нескольких объектов с их идентификацией и поддержанием уникальных ID.

По способу инициализации

  • Трекинг по заданному шаблонуобъект выделяется на первом кадре (например, вручную или детектором), и трекер ищет его на последующих кадрах.
  • Трекинг с детекцией (Tracking-by-Detection) — на каждом кадре сначала выполняется детекция объектов (например, с помощью YOLO, Faster R-CNN), а затем детекции ассоциируются в треки (траектории) с помощью алгоритмов сопоставления (например, венгерский алгоритм, алгоритм Джонкера-Вольканда).

По используемому алгоритму

  • Генеративные методы — строят модель внешнего вида объекта и ищут её наилучшее совпадение на новом кадре (например, Mean-Shift, метод на основе гистограмм).
  • Дискриминативные методы — обучают классификатор, отличающий объект от фона (например, TLD, Struck, методы на основе CNN).
  • Байесовские фильтры — фильтр Калмана, фильтр частиц.
  • Методы на основе корреляции — SiamFC, SiamRPN.
  • Трансформеры — трекеры, использующие механизм внимания для глобального анализа взаимосвязей между кадрами.

Устройство и характеристики типового трекера

Типовой алгоритм трекинга объектов (на примере Tracking-by-Detection) состоит из следующих этапов:

  1. Детекция — на каждом кадре нейросетевой детектор (например, YOLOv8) находит все объекты заданного класса и выдаёт их ограничивающие рамки (bounding boxes) с координатами и уверенностью.
  2. Извлечение признаков — для каждого обнаруженного объекта вычисляется дескриптор (вектор признаков), описывающий его внешний вид (например, с помощью ReID-сети).
  3. Ассоциация — дескрипторы текущего кадра сопоставляются с треками (историей объектов) из предыдущих кадров. Для этого вычисляется матрица сходства (например, косинусное расстояние между дескрипторами) и решается задача оптимального назначения (венгерский алгоритм).
  4. Обновление треков — для каждого сопоставленного трека обновляется его состояние (координаты, скорость, дескриптор) с помощью фильтра Калмана. Для несопоставленных детекций создаются новые треки, а для потерянных — треки объявляются «мёртвыми» после нескольких кадров отсутствия.

Ключевые характеристики трекера:

  • Точность (Accuracy) — измеряется метриками MOTA (Multiple Object Tracking Accuracy) и IDF1 (Identification F1-score).
  • Скорость (FPS) — количество кадров в секунду, которое может обработать трекер в реальном времени.
  • Робастностьустойчивость к перекрытиям, изменению освещения, деформациям объекта и смене ракурса.
  • Потребление ресурсов — требования к вычислительной мощности (GPU, CPU) и объёму оперативной памяти.

Применение трекинга объектов

Видеонаблюдение и безопасность

Трекинг объектов широко применяется в системах видеонаблюдения для автоматического обнаружения и сопровождения подозрительных лиц, транспортных средств или предметов. В России такие системы используются в метрополитенах, аэропортах, на вокзалах и в местах массового скопления людей. Алгоритмы трекинга позволяют отслеживать перемещение человека через несколько камер, что важно для расследования инцидентов.

Автономное вождение

В системах автономного управления автомобилем (например, разработки компаний «Яндекс», «Камаз», «СберАвтоТех») трекинг объектов является критически важным. Автомобиль должен непрерывно отслеживать положение других транспортных средств, пешеходов, велосипедистов и препятствий, чтобы прогнозировать их траектории и принимать решения о манёврах. Для этого используются данные от камер, радаров и LIDAR.

Робототехника

Мобильные роботы и дроны используют трекинг для навигации, следования за целью (например, за человеком), избегания препятствий и выполнения задач манипуляции. В России такие системы применяются в промышленных роботах на заводах и в беспилотных летательных аппаратах (БПЛА).

Спортивная аналитика

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

Биомедицинская визуализация

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

Военные системы

В оборонной сфере трекинг объектов применяется в системах управления огнём, наведения ракет, радиолокационного сопровождения целей и разведки. В России такие системы разрабатываются в рамках гособоронзаказа предприятиями, входящими в госкорпорацию «Ростех» и концерн «Алмаз-Антей».

Примеры реализаций

OpenCV и классические алгоритмы

Библиотека OpenCV (Open Source Computer Vision Library) содержит реализации классических трекеров: BOOSTING, MIL, KCF, TLD, MedianFlow, GOTURN и CSRT. Эти алгоритмы подходят для простых задач и работают на CPU.

SORT и Deep SORT

SORT (Simple Online and Realtime Tracking) — лёгкий трекер для множественного трекинга, основанный на фильтре Калмана и венгерском алгоритме. Deep SORT дополняет его нейросетевыми дескрипторами внешнего вида, что повышает устойчивость к перекрытиям.

ByteTrack

ByteTrack (2022) — современный трекер, который обрабатывает все детекции, включая низкоуверенные, что позволяет снизить количество разрывов треков. Показывает высокие результаты на бенчмарках MOT17 и MOT20.

YOLO + BoT-SORT

Популярная связка детектора YOLO (например, YOLOv8) и трекера BoT-SORT (ByteTrack с улучшенным фильтром Калмана) используется в реальных проектах для задач MOT.

Критика и ограничения

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

  • Перекрытия объектов — когда объекты частично или полностью закрывают друг друга, трекер может потерять идентификацию или «перепутать» объекты.
  • Изменение внешнего вида — деформация, поворот, изменение освещения или ракурса могут привести к тому, что дескриптор объекта перестанет соответствовать эталону.
  • Долговременная потеря — если объект выходит из поля зрения камеры на несколько секунд, трекер часто не может восстановить его трек.
  • Вычислительная сложность — современные глубокие трекеры требуют мощных GPU, что ограничивает их применение на встраиваемых системах (например, в дронах или камерах).
  • Необходимость большого количества размеченных данных — обучение нейросетевых трекеров требует тысяч размеченных видеороликов, что является трудоёмким процессом.

Перспективы развития

В настоящее время активно развиваются следующие направления:

  • Трекинг на основе трансформеров — архитектуры с механизмом внимания позволяют моделировать долговременные зависимости и глобальный контекст сцены.
  • Трекинг с использованием 3D-данных — интеграция LIDAR и стереокамер для построения трёхмерных траекторий.
  • Онлайн-обучение — адаптация трекера к новым условиям на лету, без необходимости переобучения на полном наборе данных.
  • Мультимодальный трекинг — объединение данных от камер, радаров, LIDAR и тепловизоров для повышения робастности.

Источники

  1. Yilmaz, A., Javed, O., & Shah, M. (2006). Object tracking: A survey. ACM Computing Surveys, 38(4), 13.
  2. Bewley, A., Ge, Z., Ott, L., Ramos, F., & Upcroft, B. (2016). Simple online and realtime tracking. IEEE International Conference on Image Processing (ICIP).
  3. Wojke, N., Bewley, A., & Paulus, D. (2017). Simple online and realtime tracking with a deep association metric. IEEE International Conference on Image Processing (ICIP).
  4. Zhang, Y., Sun, P., Jiang, Y., Yu, D., Weng, F., Yuan, Z., ... & Wang, X. (2022). ByteTrack: Multi-object tracking by associating every detection box. European Conference on Computer Vision (ECCV).
  5. Bradski, G., & Kaehler, A. (2008). Learning OpenCV: Computer vision with the OpenCV library. O'Reilly Media.
  6. Kalman, R. E. (1960). A new approach to linear filtering and prediction problems. Journal of Basic Engineering, 82(1), 35–45.
  7. Документация OpenCV по модулю tracking. OpenCV.org.
  8. Документация YOLOv8. Ultralytics.com.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →