Обзор наборов данных для многообъектного отслеживания#
Многообъектное отслеживание — это критически важный компонент видеоаналитики, который идентифицирует объекты и сохраняет уникальные идентификаторы для каждого обнаруженного объекта в кадрах видео. Ultralytics YOLO предоставляет мощные возможности отслеживания, которые можно применять в различных областях, включая видеонаблюдение, спортивную аналитику и мониторинг дорожного движения.
Формат набора данных (скоро появится)#
Трекинг в Ultralytics в настоящее время повторно использует модели детектирования, сегментации, поз или OBB без необходимости обучения, специфичного для трекера. Нативная поддержка обучения трекеров находится в активной разработке.
Доступные трекеры#
Ultralytics YOLO поддерживает следующие алгоритмы отслеживания:
- BoT-SORT — используй
botsort.yaml, чтобы включить этот трекер (по умолчанию) - ByteTrack — используй
bytetrack.yaml, чтобы включить этот трекер - OC-SORT — используй
ocsort.yaml, чтобы включить этот трекер - Deep OC-SORT — используй
deepocsort.yaml, чтобы включить этот трекер - FastTracker — используй
fasttrack.yaml, чтобы включить этот трекер - TrackTrack — используй
tracktrack.yaml, чтобы включить этот трекер
Использование#
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)Сохранение треков между кадрами#
Для непрерывного трекинга между кадрами видео ты можешь использовать параметр persist=True:
import cv2
from ultralytics import YOLO
# Load the YOLO model
model = YOLO("yolo26n.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()FAQ#
Как использовать многообъектное отслеживание с Ultralytics YOLO?#
Чтобы использовать многообъектное отслеживание с Ultralytics YOLO, начни с использования примеров для Python или CLI. Вот как ты можешь начать:
from ultralytics import YOLO
model = YOLO("yolo26n.pt") # Load the YOLO26 model
results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.1, iou=0.7, show=True)Эти команды загружают модель YOLO26 и используют ее для трекинга объектов в заданном видеоисточнике с определенными пороговыми значениями уверенности (conf) и Intersection over Union (iou). Подробнее см. в документации по режиму track.
Какие функции для обучения трекеров в Ultralytics появятся в будущем?#
Ultralytics постоянно совершенствует свои модели ИИ. Скоро появится функция, позволяющая обучать автономные трекеры. А пока Multi-Object Detector использует предобученные модели детектирования, сегментации, поз или OBB для трекинга без необходимости автономного обучения. Следи за обновлениями в нашем блоге.
Почему стоит использовать Ultralytics YOLO для многообъектного отслеживания?#
Ultralytics YOLO — это современная модель обнаружения объектов, известная своей производительностью в реальном времени и высокой точностью. Использование YOLO для многообъектного трекинга дает несколько преимуществ:
- Отслеживание в реальном времени: обеспечивай эффективное и высокоскоростное отслеживание, идеально подходящее для динамических сред.
- Гибкость с предобученными моделями: не нужно обучать с нуля — просто используй предобученные модели детектирования, сегментации, поз или OBB.
- Простота использования: простая интеграция API как с Python, так и с CLI делает настройку конвейеров отслеживания понятной.
- Обширная документация и поддержка сообщества: Ultralytics предоставляет исчерпывающую документацию и активный форум сообщества для устранения неполадок и улучшения твоих моделей отслеживания.
Подробности о настройке и использовании YOLO для трекинга ищи в нашем руководстве по использованию track.
Могу ли я использовать собственные наборы данных для многообъектного отслеживания с Ultralytics YOLO?#
Да, ты можешь использовать собственные наборы данных для многообъектного отслеживания с Ultralytics YOLO. Хотя поддержка обучения автономных трекеров — это будущая функция, ты уже можешь использовать предобученные модели на своих наборах данных. Подготовь свои данные в подходящем формате, совместимом с YOLO, и следуй документации, чтобы их интегрировать.
Как интерпретировать результаты модели отслеживания Ultralytics YOLO?#
После выполнения задачи отслеживания с помощью Ultralytics YOLO результаты включают различные точки данных, такие как ID отслеживаемых объектов, их ограничивающие прямоугольники (bbox) и оценки достоверности. Вот краткий обзор того, как интерпретировать эти результаты:
- ID отслеживания: каждому объекту присваивается уникальный идентификатор, который помогает отслеживать его в разных кадрах.
- Ограничивающие прямоугольники (BBox): они указывают расположение отслеживаемых объектов в кадре.
- Оценки достоверности: они отражают уверенность модели в обнаружении отслеживаемого объекта.
Подробные инструкции по интерпретации и визуализации этих результатов см. в руководстве по работе с результатами.
Как настроить конфигурацию трекера?#
Ты можешь настроить трекер, создав измененную версию файла конфигурации трекера. Скопируй существующий файл конфигурации трекера из ultralytics/cfg/trackers, измени параметры по своему усмотрению и укажи этот файл при запуске трекера:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model.track(source="video.mp4", tracker="custom_tracker.yaml")