Object Tracking
Узнай, как работает отслеживание объектов в компьютерном зрении. Изучи, как использовать Ultralytics YOLO26 для идентификации и мониторинга объектов по уникальным ID в целях анализа в реальном времени.
Отслеживание объектов — это динамический процесс в компьютерном зрении (CV), который включает идентификацию определённых сущностей в видео и мониторинг их перемещения в последовательности кадров. В отличие от статического анализа изображений, при котором каждый снимок рассматривается изолированно, отслеживание добавляет измерение времени. Благодаря этому системы искусственного интеллекта (AI) могут присваивать уникальный идентификационный номер (ID) каждому обнаруженному объекту — например, автомобилю, человеку или животному — и сохранять его идентичность, пока объект перемещается, меняет ориентацию или временно скрыт. Эта возможность лежит в основе продвинутого понимания видео, позволяя машинам анализировать поведение, рассчитывать траектории и извлекать практически применимые выводы из необработанных видеозаписей.
Как работает отслеживание объектов#
Современные системы отслеживания обычно используют парадигму «отслеживание по обнаружениям». Этот рабочий процесс объединяет мощные модели обнаружения со специализированными алгоритмами для сопоставления обнаружений во времени. Как правило, процесс состоит из трёх основных этапов:
-
Обнаружение: На каждом кадре модель обнаружения объектов, например современная модель YOLO26, сканирует изображение, чтобы найти интересующие объекты. Модель выдаёт ограничивающие рамки, определяющие пространственные границы каждого объекта.
-
Прогнозирование движения: Такие алгоритмы, как фильтр Калмана, оценивают будущее положение объекта на основе его текущей скорости и траектории. Этот прогноз уменьшает область поиска для следующего кадра, повышая эффективность системы.
-
Сопоставление данных: Система сопоставляет новые обнаружения с существующими треками, используя методы оптимизации, такие как венгерский алгоритм. На этом этапе часто применяются такие метрики, как пересечение по объединению (IoU), чтобы измерить степень перекрытия прогнозируемой рамки с новым обнаружением. Продвинутые трекеры также могут использовать визуальное извлечение признаков для повторной идентификации похожих объектов.
Отслеживание объектов и обнаружение объектов#
Хотя эти термины тесно связаны, они выполняют разные функции в конвейере машинного обучения (ML).
- Обнаружение объектов отвечает на вопрос: «Что присутствует на этом изображении и где?». Оно не сохраняет состояние, то есть не имеет памяти о предыдущих кадрах. Если автомобиль проезжает через видео, детектор видит «автомобиль» в кадре 1 и «автомобиль» в кадре 2, но не знает, что это одна и та же машина.
- Отслеживание объектов отвечает на вопрос: «Куда движется именно этот объект?». Оно сохраняет состояние. Оно связывает «автомобиль» в кадре 1 с «автомобилем» в кадре 2, позволяя системе зафиксировать, что «автомобиль с ID №42» движется слева направо. Это необходимо для таких задач, как прогнозное моделирование и подсчёт объектов.
Практические применения#
Возможность сохранять идентичность объектов позволяет создавать сложные приложения вывода в реальном времени в различных отраслях.
- Интеллектуальные транспортные системы: Отслеживание жизненно важно для автономных транспортных средств, чтобы они могли безопасно ориентироваться в окружающей обстановке. Отслеживая пешеходов и другие автомобили, машины могут прогнозировать потенциальные столкновения. Кроме того, инженеры по организации дорожного движения используют эти системы для оценки скорости, чтобы обеспечивать соблюдение правил безопасности и оптимизировать транспортные потоки.
- Аналитика в розничной торговле: Обычные магазины используют AI в розничной торговле, чтобы понимать поведение клиентов. Отслеживание позволяет управляющим магазинов выполнять подсчёт объектов для измерения посещаемости, анализировать время пребывания покупателей перед витринами с помощью тепловых карт и оптимизировать управление очередями, сокращая время ожидания.
- Анализ спортивных состязаний: В профессиональном спорте тренеры используют отслеживание в сочетании с оценкой позы, чтобы анализировать биомеханику игроков и построение команды. Эти данные дают конкурентное преимущество, выявляя закономерности, невидимые невооружённым глазом.
Реализация отслеживания с помощью Python#
Ultralytics упрощает реализацию высокопроизводительного отслеживания. Режим track в библиотеке автоматически выполняет обнаружение, прогнозирование движения и присвоение ID. В примере ниже показано, как использовать совместимую с платформой Ultralytics модель 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()}")Связанные понятия#
Чтобы полностью понять экосистему отслеживания, полезно изучить сегментацию экземпляров, которая отслеживает точные контуры объекта на уровне пикселей, а не только его рамку. Кроме того, задачи многoобъектного отслеживания (MOT) часто используют широко распространённые тестовые наборы, такие как MOTChallenge, для оценки того, насколько хорошо алгоритмы работают со сценами с большим скоплением объектов и перекрытиями. Для развёртывания в производственных средах разработчики часто используют такие инструменты, как NVIDIA DeepStream или OpenCV, чтобы интегрировать эти модели в эффективные конвейеры.









