Перейти к содержимому

Модели, поддерживаемые Ultralytics

Добро пожаловать на Ultralytics' документация по моделям! Мы предлагаем поддержку широкого спектра моделей, каждая из которых предназначена для решения таких специфических задач, как обнаружение объектов, сегментация экземпляров, классификация изображений, оценка позы и отслеживание нескольких объектов. Если ты хочешь предложить свою архитектуру модели для Ultralytics, ознакомься с нашим руководством по внесению вклада.

Вот некоторые из основных поддерживаемых моделей:

  1. YOLOv3: Третья итерация семейства моделей YOLO , изначально созданных Джозефом Редмоном, известная своими эффективными возможностями обнаружения объектов в реальном времени.
  2. YOLOv4: Darknet-native обновление YOLOv3, выпущенное Алексеем Бочковским в 2020 году.
  3. YOLOv5: Улучшенная версия архитектуры YOLO от Ultralytics, предлагающая лучшие компромиссы между производительностью и скоростью по сравнению с предыдущими версиями.
  4. YOLOv6: Выпущен компанией Meituan в 2022 году и используется во многих автономных роботах-доставщиках компании.
  5. YOLOv7: Обновленные модели YOLO , выпущенные в 2022 году авторами YOLOv4.
  6. YOLOv8 НОВИНКА 🚀: Последняя версия семейства YOLO с расширенными возможностями, такими как сегментация экземпляров, оценка позы/ключевых точек и классификация.
  7. YOLOv9: Экспериментальная модель, обученная на Ultralytics YOLOv5 кодовой базе, реализующей программируемую градиентную информацию (PGI).
  8. YOLOv10: Разработанный университетом Цинхуа, он отличается отсутствием NMS-тренировок и архитектурой, ориентированной на эффективность и точность, обеспечивая самую современную производительность и задержку.
  9. Сегмент "Модель чего угодно" (SAM): Segment Anything Model Мета (SAM).
  10. Модель любого мобильного сегмента (MobileSAM): MobileSAM для мобильных приложений, разработанная университетом Кюнг Хи.
  11. Модель быстрого сегментирования чего угодно (FastSAM): FastSAM by Image & Video Analysis Group, Institute of Automation, Chinese Academy of Sciences.
  12. YOLO-NAS: YOLO Модели поиска нейронной архитектуры (NAS).
  13. Трансформаторы обнаружения в реальном времени (RT-DETR): Модели Baidu PaddlePaddle Realtime Detection Transformer (RT-DETR).
  14. YOLO-Мир: Модели обнаружения объектов из открытого словаря в реальном времени от Tencent AI Lab.



Смотри: Запускай модели Ultralytics YOLO всего за несколько строк кода.

Начало работы: Примеры использования

В этом примере приведены простые примеры обучения и вывода YOLO . Полную документацию по этим и другим режимам можно найти на страницах Predict, Train, Val и Export docs.

Обрати внимание, что ниже приведен пример с моделями YOLOv8 Detect для обнаружения объектов. О дополнительных поддерживаемых задачах читай в документах Segment, Classify и Pose.

Пример

PyTorch предварительно обученный *.pt модели, а также конфигурации *.yaml файлы могут быть переданы в YOLO(), SAM(), NAS() и RTDETR() классы, чтобы создать экземпляр модели в Python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Display model information (optional)
model.info()

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

CLI Для непосредственного запуска моделей доступны команды:

# Load a COCO-pretrained YOLOv8n model and train it on the COCO8 example dataset for 100 epochs
yolo train model=yolov8n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLOv8n model and run inference on the 'bus.jpg' image
yolo predict model=yolov8n.pt source=path/to/bus.jpg

Внесение новых моделей

Заинтересован в том, чтобы предоставить свою модель в Ultralytics? Отлично! Мы всегда открыты для расширения нашего модельного портфеля.

  1. Форк репозитория: Начни с форка репозиторияUltralytics на GitHub.

  2. Клонируй свой форк: клонируй свой форк на локальную машину и создай новую ветку для работы.

  3. Реализуй свою модель: Добавь свою модель, следуя стандартам кодирования и рекомендациям, изложенным в нашем руководстве по внесению вклада.

  4. Тщательно тестируй: Обязательно тщательно тестируй свою модель, как отдельно, так и в составе конвейера.

  5. Создай Pull Request: Как только ты будешь доволен своей моделью, создай запрос на выгрузку в основной репозиторий для проверки.

  6. Рецензирование и слияние кода: После рецензирования, если твоя модель соответствует нашим критериям, она будет слита в основной репозиторий.

Чтобы узнать подробные шаги, обратись к нашему руководству по контрибьютингу.



Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (11), Laughing-q (1)

Комментарии