Object Tracking
Узнай, как работает трекинг объектов в компьютерном зрении. Открой для себя, как использовать Ultralytics YOLO26 для идентификации и мониторинга объектов с уникальными ID для анализа в реальном времени.
Трекинг объектов — это динамический процесс в компьютерном зрении (CV), который включает в себя определение конкретных сущностей на видео и мониторинг их движения по последовательности кадров. В отличие от статического анализа изображений, который рассматривает каждый снимок изолированно, трекинг вводит измерение времени. Это позволяет системам искусственного интеллекта (ИИ) присваивать уникальный идентификационный номер (ID) каждому обнаруженному элементу — например, автомобилю, человеку или животному — и сохранять эту идентичность по мере того, как объект движется, меняет ориентацию или временно скрывается из вида. Эта возможность является краеугольным камнем продвинутого понимания видео, позволяя машинам анализировать поведение, рассчитывать траектории и получать полезные выводы из сырых видеоматериалов.
Как работает отслеживание объектов#
Современные системы отслеживания обычно используют парадигму «отслеживание через обнаружение» (tracking-by-detection). Этот рабочий процесс объединяет мощные модели обнаружения со специализированными алгоритмами для связывания результатов обнаружения во времени. Процесс обычно состоит из трех основных этапов:
-
Детекция: На каждом кадре модель детекции объектов, такая как передовая YOLO26, сканирует изображение для поиска интересующих объектов. Модель выдает ограничивающие рамки (bounding boxes), которые определяют пространственные границы каждого объекта.
-
Предсказание движения: Алгоритмы вроде фильтра Калмана оценивают будущее положение объекта на основе его текущей скорости и траектории. Это предсказание сужает область поиска для следующего кадра, делая систему более эффективной.
-
Ассоциация данных: Система сопоставляет новые детекции с существующими треками, используя методы оптимизации вроде венгерского алгоритма. Этот шаг часто опирается на такие метрики, как пересечение по объединению (IoU), чтобы измерить, насколько предсказанный прямоугольник перекрывается с новой детекцией. Продвинутые трекеры также могут использовать визуальное извлечение признаков для повторной идентификации похожих объектов.
Отслеживание объектов против обнаружения объектов#
Хотя эти термины тесно связаны, они выполняют различные функции в конвейере машинного обучения (ML).
- Обнаружение объектов отвечает на вопрос: «Что присутствует на этом изображении и где?». Оно не имеет состояния (stateless), то есть у него нет памяти о предыдущих кадрах. Если автомобиль проезжает через видео, детектор видит «автомобиль» в кадре 1 и «автомобиль» в кадре 2, но не знает, что это одно и то же транспортное средство.
- Трекинг объектов отвечает на вопрос: «Куда направляется этот конкретный объект?» Он обладает состоянием. Он связывает «автомобиль» в кадре 1 с «автомобилем» в кадре 2, позволяя системе зафиксировать, что «Автомобиль ID #42» движется слева направо. Это необходимо для таких задач, как прогнозирующее моделирование и подсчет.
Реальные приложения#
Способность сохранять идентичность объектов позволяет создавать сложные приложения инференса в реальном времени в различных отраслях.
- Интеллектуальные транспортные системы: Трекинг жизненно важен для безопасной навигации автономных транспортных средств. Отслеживая пешеходов и другие автомобили, машины могут прогнозировать потенциальные столкновения. Кроме того, инженеры дорожного движения используют эти системы для оценки скорости, чтобы обеспечивать соблюдение правил безопасности и оптимизировать транспортный поток.
- Аналитика в ритейле: Обычные магазины используют ИИ в ритейле для понимания поведения клиентов. Трекинг позволяет менеджерам магазинов осуществлять подсчет объектов для измерения пешеходного трафика, анализировать время пребывания перед витринами с помощью тепловых карт и оптимизировать управление очередями для сокращения времени ожидания.
- Спортивный анализ: В профессиональном спорте тренеры используют трекинг в сочетании с оценкой позы для анализа биомеханики игроков и командных построений. Эти данные дают конкурентное преимущество, выявляя закономерности, невидимые невооруженным глазом.
Реализация отслеживания с помощью Python#
Ultralytics позволяет легко реализовать высокопроизводительный трекинг. Режим track в библиотеке автоматически обрабатывает детекцию, предсказание движения и назначение ID. Пример ниже показывает, как использовать совместимую с Ultralytics Platform модель YOLO26 для отслеживания объектов на видео.
from ultralytics import YOLO
# Load the official YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Track objects in a video file or webcam (source=0)
# 'show=True' displays the video with bounding boxes and unique IDs
results = model.track(source="https://ultralytics.com/images/bus.jpg", show=True)
# Access the unique tracking IDs from the results
if results[0].boxes.id is not None:
print(f"Detected Track IDs: {results[0].boxes.id.cpu().numpy()}")Связанные концепции#
Чтобы досконально понять экосистему трекинга, полезно изучить сегментацию экземпляров, которая отслеживает точные контуры объекта на уровне пикселей, а не просто рамку. Кроме того, соревнования по многообъектному трекингу (MOT) часто включают широко используемые бенчмарки, такие как MOTChallenge, для оценки того, насколько хорошо алгоритмы справляются со сценами с большим скоплением людей и перекрытиями. Для развертывания в производственных средах разработчики часто используют такие инструменты, как NVIDIA DeepStream или OpenCV, для интеграции этих моделей в эффективные конвейеры.






