Перейти к содержанию

Режимы Ultralytics YOLO11

Экосистема и интеграции Ultralytics YOLO

Введение

Ultralytics YOLO11 — это не просто еще одна модель обнаружения объектов; это универсальная платформа, разработанная для охвата всего жизненного цикла моделей машинного обучения — от приема данных и обучения модели до валидации, развертывания и отслеживания в реальных условиях. Каждый режим служит определенной цели и разработан для предоставления вам гибкости и эффективности, необходимых для различных задач и вариантов использования.



Смотреть: Учебное пособие по режимам Ultralytics: обучение, валидация, прогнозирование, экспорт и бенчмаркинг.

Режимы вкратце

Понимание различных режимов, которые поддерживает Ultralytics YOLO11, имеет решающее значение для максимальной отдачи от ваших моделей:

  • Режим обучения (Train): Точная настройка вашей модели на пользовательских или предварительно загруженных наборах данных.
  • Режим валидации (Val): Чекпойнт после обучения для проверки производительности модели.
  • Режим прогнозирования (Predict): Раскройте прогностическую силу вашей модели на данных реального мира.
  • Режим экспорта (Export): Подготовьте развертывание вашей модели в различных форматах.
  • Режим отслеживания (Track): Расширьте свою модель обнаружения объектов до приложений отслеживания в реальном времени.
  • Режим бенчмаркинга (Benchmark): Анализируйте скорость и точность вашей модели в различных средах развертывания.

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

Обучение

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

Примеры обучения

Валидация

Режим Val используется для проверки модели YOLO11 после ее обучения. В этом режиме модель оценивается на проверочном наборе данных для измерения ее точности и обобщающей способности. Проверка помогает выявить потенциальные проблемы, такие как переобучение, и предоставляет метрики, такие как средняя точность (mAP), для количественной оценки производительности модели. Этот режим имеет решающее значение для настройки гиперпараметров и повышения общей эффективности модели.

Примеры валидации

Прогнозирование

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

Примеры прогнозирования

Экспорт

Режим экспорта используется для преобразования модели YOLO11 в форматы, подходящие для развертывания на различных платформах и устройствах. Этот режим преобразует вашу модель PyTorch в оптимизированные форматы, такие как ONNX, TensorRT или CoreML, что позволяет развертывать ее в производственной среде. Экспорт необходим для интеграции вашей модели с различными программными приложениями или аппаратными устройствами, что часто приводит к значительному повышению производительности.

Примеры экспорта

Отслеживание

Режим отслеживания расширяет возможности обнаружения объектов YOLO11 для отслеживания объектов на видеокадрах или в прямых трансляциях. Этот режим особенно ценен для приложений, требующих постоянной идентификации объектов, таких как системы видеонаблюдения или автомобили с автоматическим управлением. Режим отслеживания реализует сложные алгоритмы, такие как ByteTrack, для поддержания идентичности объекта между кадрами, даже когда объекты временно исчезают из поля зрения.

Примеры отслеживания

Бенчмарк

Режим бенчмаркинга профилирует скорость и точность различных форматов экспорта для YOLO11. Этот режим предоставляет исчерпывающие метрики по размеру модели, точности (mAP50-95 для задач обнаружения или accuracy_top5 для классификации) и времени инференса для различных форматов, таких как ONNX, OpenVINO и TensorRT. Бенчмаркинг помогает выбрать оптимальный формат экспорта, исходя из ваших конкретных требований к скорости и точности в вашей среде развертывания.

Примеры бенчмарков

Часто задаваемые вопросы

Как обучить собственную модель обнаружения объектов с помощью Ultralytics YOLO11?

Обучение пользовательской модели обнаружения объектов с помощью Ultralytics YOLO11 включает использование режима train. Вам потребуется набор данных, отформатированный в формате YOLO, содержащий изображения и соответствующие файлы аннотаций. Используйте следующую команду, чтобы начать процесс обучения:

Пример

from ultralytics import YOLO

# Load a pre-trained YOLO model (you can choose n, s, m, l, or x versions)
model = YOLO("yolo11n.pt")

# Start training on your custom dataset
model.train(data="path/to/dataset.yaml", epochs=100, imgsz=640)
# Train a YOLO model from the command line
yolo train data=path/to/dataset.yaml epochs=100 imgsz=640

Более подробные инструкции можно найти в Руководстве по обучению Ultralytics.

Какие метрики использует Ultralytics YOLO11 для проверки производительности модели?

Ultralytics YOLO11 использует различные метрики в процессе валидации для оценки производительности модели. К ним относятся:

  • mAP (средняя точность): оценивает точность обнаружения объектов.
  • IOU (Intersection over Union): измеряет перекрытие между предсказанными и фактическими ограничивающими рамками.
  • Точность и Полнота: Точность измеряет отношение истинно положительных обнаружений к общему количеству обнаруженных положительных результатов, в то время как полнота измеряет отношение истинно положительных обнаружений к общему количеству фактических положительных результатов.

Вы можете выполнить следующую команду, чтобы начать валидацию:

Пример

from ultralytics import YOLO

# Load a pre-trained or custom YOLO model
model = YOLO("yolo11n.pt")

# Run validation on your dataset
model.val(data="path/to/validation.yaml")
# Validate a YOLO model from the command line
yolo val data=path/to/validation.yaml

Подробности смотрите в Руководстве по валидации.

Как я могу экспортировать свою модель YOLO11 для развертывания?

Ultralytics YOLO11 предлагает функциональность экспорта для преобразования обученной модели в различные форматы развертывания, такие как ONNX, TensorRT, CoreML и другие. Используйте следующий пример для экспорта вашей модели:

Пример

from ultralytics import YOLO

# Load your trained YOLO model
model = YOLO("yolo11n.pt")

# Export the model to ONNX format (you can specify other formats as needed)
model.export(format="onnx")
# Export a YOLO model to ONNX format from the command line
yolo export model=yolo11n.pt format=onnx

Подробные инструкции для каждого формата экспорта можно найти в Руководстве по экспорту.

Каково назначение режима benchmark в Ultralytics YOLO11?

Режим бенчмарка в Ultralytics YOLO11 используется для анализа скорости и точность различных форматов экспорта, таких как ONNX, TensorRT и OpenVINO. Он предоставляет такие метрики, как размер модели, mAP50-95 для обнаружения объектов и время инференса на различных аппаратных конфигурациях, помогая вам выбрать наиболее подходящий формат для ваших нужд развертывания.

Пример

from ultralytics.utils.benchmarks import benchmark

# Run benchmark on GPU (device 0)
# You can adjust parameters like model, dataset, image size, and precision as needed
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
# Benchmark a YOLO model from the command line
# Adjust parameters as needed for your specific use case
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 half=False device=0

Для получения более подробной информации обратитесь к Руководству по бенчмаркам.

Как я могу выполнять отслеживание объектов в реальном времени с помощью Ultralytics YOLO11?

Отслеживание объектов в реальном времени может быть достигнуто с помощью режима track в Ultralytics YOLO11. Этот режим расширяет возможности обнаружения объектов для отслеживания объектов в видеокадрах или прямых трансляциях. Используйте следующий пример, чтобы включить отслеживание:

Пример

from ultralytics import YOLO

# Load a pre-trained YOLO model
model = YOLO("yolo11n.pt")

# Start tracking objects in a video
# You can also use live video streams or webcam input
model.track(source="path/to/video.mp4")
# Perform object tracking on a video from the command line
# You can specify different sources like webcam (0) or RTSP streams
yolo track source=path/to/video.mp4

Для получения подробных инструкций посетите Руководство по отслеживанию.



📅 Создано 1 год назад ✏️ Обновлено 5 месяцев назад

Комментарии