Обзор наборов данных для отслеживания нескольких объектов
Отслеживание нескольких объектов является важным компонентом в видеоаналитике, который идентифицирует объекты и поддерживает уникальные ID для каждого обнаруженного объекта в видеокадрах. Ultralytics YOLO предоставляет мощные возможности отслеживания, которые можно применять в различных областях, включая наблюдение, спортивную аналитику и мониторинг трафика.
Формат набора данных (скоро)
Детектор нескольких объектов не требует отдельного обучения и напрямую поддерживает предварительно обученное обнаружение, сегментацию или модели Pose. Поддержка обучения только трекеров появится в ближайшее время.
Доступные трекеры
Ultralytics YOLO поддерживает следующие алгоритмы отслеживания:
- BoT-SORT - Используйте
botsort.yaml
чтобы включить этот трекер (по умолчанию) - ByteTrack - Используйте
bytetrack.yaml
чтобы включить этот трекер
Использование
Пример
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.3, iou=0.5, show=True)
yolo track model=yolo11n.pt source="https://youtu.be/LNwODJXcvt4" conf=0.3, iou=0.5 show
Сохранение треков между кадрами
Для непрерывного отслеживания по видеокадрам можно использовать persist=True
:
Пример
import cv2
from ultralytics import YOLO
# Load the YOLO model
model = YOLO("yolo11n.pt")
# Open the video file
cap = cv2.VideoCapture("path/to/video.mp4")
while cap.isOpened():
success, frame = cap.read()
if success:
# Run tracking with persistence between frames
results = model.track(frame, persist=True)
# Visualize the results
annotated_frame = results[0].plot()
cv2.imshow("Tracking", annotated_frame)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
else:
break
cap.release()
cv2.destroyAllWindows()
Часто задаваемые вопросы
Как использовать отслеживание нескольких объектов с Ultralytics YOLO?
Чтобы использовать отслеживание нескольких объектов с помощью Ultralytics YOLO, вы можете начать с использования предоставленных примеров Python или CLI. Вот как вы можете начать:
Пример
from ultralytics import YOLO
model = YOLO("yolo11n.pt") # Load the YOLO11 model
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.3, iou=0.5, show=True)
yolo track model=yolo11n.pt source="https://youtu.be/LNwODJXcvt4" conf=0.3 iou=0.5 show
Эти команды загружают модель YOLO11 и используют ее для отслеживания объектов в заданном видеоисточнике с определенной уверенностью (conf
) и Пересечение над объединением (iou
) пороги. Для получения более подробной информации обратитесь к документация по режиму отслеживания.
Какие функции появятся в ближайшее время для обучения трекеров в Ultralytics?
Ultralytics постоянно совершенствует свои AI-модели. В будущей функции появится возможность обучения автономных трекеров. До тех пор Multi-Object Detector использует предварительно обученные модели обнаружения, сегментации или Pose для отслеживания, не требуя автономного обучения. Следите за обновлениями в нашем блоге или проверяйте предстоящие функции.
Почему мне следует использовать Ultralytics YOLO для отслеживания нескольких объектов?
Ultralytics YOLO — это современная модель обнаружения объектов, известная своей производительностью в реальном времени и высокой точностью. Использование YOLO для отслеживания нескольких объектов предоставляет ряд преимуществ:
- Отслеживание в реальном времени: Обеспечивает эффективное и высокоскоростное отслеживание, идеально подходящее для динамических сред.
- Гибкость с предварительно обученными моделями: Нет необходимости обучать с нуля; просто используйте предварительно обученные модели обнаружения, сегментации или определения позы.
- Простота использования: Простая интеграция API как с Python, так и с CLI упрощает настройку конвейеров отслеживания.
- Обширная документация и поддержка сообщества: Ultralytics предоставляет исчерпывающую документацию и активный форум сообщества для устранения неполадок и улучшения ваших моделей отслеживания.
Для получения более подробной информации о настройке и использовании YOLO для отслеживания посетите наше руководство по использованию отслеживания.
Могу ли я использовать пользовательские наборы данных для отслеживания нескольких объектов с помощью Ultralytics YOLO?
Да, вы можете использовать пользовательские наборы данных для отслеживания нескольких объектов с помощью Ultralytics YOLO. Хотя поддержка автономного обучения трекера является будущей функцией, вы уже можете использовать предварительно обученные модели на своих пользовательских наборах данных. Подготовьте свои наборы данных в соответствующем формате, совместимом с YOLO, и следуйте документации для их интеграции.
Как интерпретировать результаты модели отслеживания Ultralytics YOLO?
После запуска задачи отслеживания с помощью Ultralytics YOLO, результаты включают различные точки данных, такие как ID отслеживаемых объектов, их ограничивающие рамки и оценки достоверности. Вот краткий обзор того, как интерпретировать эти результаты:
- Отслеживаемые ID: Каждому объекту присваивается уникальный ID, который помогает отслеживать его по кадрам.
- Ограничивающие рамки: Они указывают местоположение отслеживаемых объектов в кадре.
- Оценки достоверности: Они отражают уверенность модели в обнаружении отслеживаемого объекта.
Подробные инструкции по интерпретации и визуализации этих результатов см. в руководстве по обработке результатов.
Как настроить конфигурацию трекера?
Вы можете настроить трекер, создав измененную версию файла конфигурации трекера. Скопируйте существующий файл конфигурации трекера из ultralytics\/cfg\/trackers, измените параметры по мере необходимости и укажите этот файл при запуске трекера:
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
results = model.track(source="video.mp4", tracker="custom_tracker.yaml")