Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас

Представление сегментации экземпляров в Ultralytics YOLOv5 v7.0

Команда Ultralytics

3 мин чтения

23 ноября 2022 г.

Откройте для себя YOLOv5 v7.0 с новыми моделями сегментации экземпляров, превосходящими эталоны SOTA по точности и скорости работы ИИ. Присоединяйтесь к нашему сообществу.

YOLOv5 v7.0, последняя версия нашей архитектуры искусственного интеллекта, уже вышла, и мы рады представить вам новые модели сегментации экземпляров!

Во время работы над этим последним выпуском мы держали в центре внимания две цели. Первая — наша миссия сделать ИИ простым, а вторая — наша цель переосмыслить, что на самом деле означает «современный».

Благодаря значительным улучшениям, исправлениям и обновлениям мы сделали именно это. Сохранив те же простые рабочие процессы, что и в наших существующих моделях обнаружения объектов YOLOv5 , теперь обучать, проверять и внедрять свои модели с YOLOv5 v7.0 стало проще, чем когда-либо. Кроме того, мы превзошли все контрольные показатели SOTA, сделав YOLOv5 самым быстрым и точным в мире.

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

Ultralytics YOLOv5 v7.0 SOTA Сегментация экземпляров в реальном времени

Итак, давайте начнем знакомиться с информацией о выпуске YOLOv5 v7.0!

Важные обновления YOLOv5

Вот что было обновлено в YOLOv5 с момента нашего последнего выпуска YOLOv5 v6.2 в августе 2022 года.

  • Модели сегментации ⭐ НОВИНКА: Впервые доступны модели сегментации SOTA YOLOv5 COCO(#9052 by @glenn-jocher, @AyushExel, and @Laughing-q)
  • ЭкспортPaddlePaddle : Экспорт любой модели YOLOv5 (cls, seg, det) в формат Paddle с помощью python export.py --include paddle #9459 by @glenn-jocher)
  • YOLOv5 AutoCache: Использование python train.py --cache ram теперь будет проверять доступную память и сравнивать с прогнозируемым использованием оперативной памяти набора данных. Это снижает риск при кэшировании и должно помочь улучшить использование функции кэширования наборов данных, которая может значительно ускорить обучение.(#10027 by @glenn-jocher)
  • Интеграция сComet Logging и Visualization: Бесплатно навсегда, Comet позволяет сохранять модели YOLOv5 , возобновлять обучение, интерактивно визуализировать и отлаживать прогнозы.(#9232 by @DN6)

Новые контрольные точки сегментации

Мы обучили модели сегментации YOLOv5 на COCO в течение 300 эпох при размере изображения 640, используя графические процессоры A100. Мы экспортировали все модели в ONNX FP32 для тестирования скорости CPU и в TensorRT FP16 для тестирования скорости GPU . Все тесты проводились на ноутбуках Google Colab Pro для удобства воспроизведения.

  • Все контрольные точки обучены на 300 эпох с оптимизатором SGD с lr0=0.01 и weight_decay=5e-5 при размере изображения 640 и всех настройках по умолчанию. Все прогоны регистрируются здесь.
  • Значения точности приведены для одномодельного одномасштабного набора данных COCO . Воспроизвести с помощью python segment.py --data cocoyaml --weights yolov5s-seg.pt
  • Скорость усреднена по 100 изображениям для выводов с использованием экземпляра Colab Pro A100 High-RAM. Значения указывают только на скорость выводаNMS добавляет около 1 мс на изображение). Воспроизведено с помощью python segment.py --data cocoyaml --weights yolov5s-seg.pt --batch 1
  • Экспорт в ONNX при FP32 и TensorRT при FP16 выполняется с помощью export.py. Воспроизвести с помощью python export.py --weights yolov5s-seg.pt --include engine --device 0 --half

Новые примеры использования сегментации

Обучение

Обучение сегментации YOLOv5 поддерживает автоматическую загрузку набора данных сегментации COCO128 с аргументом --data coco128-segyaml и ручную загрузку набора данных COCO с помощью bash data/scripts/get_coco.sh --train --val --segments и затем python train.py --data cocoyaml.

GPU

python segment.py --model yolov5s-seg.pt --data coco128-segyaml --epochs 5 --img 640

GPU DDP

python -m torch.distributed.run --nproc_per_node 4 --master_port 1 segment.py --model yolov5s-seg.pt --data coco128-segyaml --epochs 5 --img 640 --device 0,1,2,3

Val

Проверка точности YOLOv5m-seg на наборе данных ImageNet:

bash data/scripts/get_coco.sh --val --segments # загрузить сегменты COCO val split (780 МБ, 5000 изображений) python segment.py --weights yolov5s-seg.pt --data cocoyaml --img 640 # проверить

Прогнозировать

Используйте предварительно обученную YOLOv5m-seg для прогнозирования bus.jpg:

python segment.py --weights yolov5m-seg.pt --data data/images/bus.jpg

model = torch.hub.load(ultralyticsyolov5', 'custom', 'yolov5m-seg.pt') # загрузка из PyTorch Hub (WARNING: inference not yet supported)

Сегментация экземпляров Ultralytics YOLOv5 v7.0


Экспорт

Экспортируйте модель YOLOv5s-seg в ONNX и TensorRT:

python export.py --weights yolov5s-seg.pt --include onnx engine --img 640 --device 0

Сегментация экземпляров Ultralytics YOLOv5 v7.0

Есть вопросы? Задайте их на форумеUltralytics , поднимите вопрос или отправьте PR в репозиторий. Вы также можете начать работу с нашим блокнотомYOLOv5 сегментации Colab для быстрого обучения.

Давайте строить будущее
ИИ вместе!

Начните свой путь в будущее машинного обучения

Начать бесплатно