YOLOv3, YOLOv3-Ultralytics, и YOLOv3u
Обзор
В этом документе представлен обзор трех близких моделей обнаружения объектов, а именно YOLOv3, YOLOv3-Ultralytics, и YOLOv3u.
-
YOLOv3: Это третья версия алгоритма обнаружения объектов You Only Look Once (YOLO). Изначально разработанный Джозефом Редмоном, YOLOv3 улучшил своих предшественников, введя такие функции, как многомасштабные предсказания и три разных размера ядер обнаружения.
-
YOLOv3-Ultralytics: Это Ultralytics' реализация модели YOLOv3. Она воспроизводит оригинальную архитектуру YOLOv3 и предлагает дополнительные функциональные возможности, такие как поддержка большего количества предварительно обученных моделей и более простые возможности настройки.
-
YOLOv3u: Это обновленная версия YOLOv3-Ultralytics , которая включает в себя безъякорную и безобъектную сплит-голову, используемую в моделях YOLOv8 . YOLOv3u сохраняет ту же архитектуру позвоночника и шеи, что и YOLOv3, но с обновленной головкой обнаружения из YOLOv8.
Основные характеристики
-
YOLOv3: Ввел использование трех разных масштабов для обнаружения, используя три разных размера ядер обнаружения: 13x13, 26x26 и 52x52. Это значительно повысило точность обнаружения объектов разных размеров. Кроме того, в YOLOv3 добавлены такие функции, как прогнозирование по нескольким меткам для каждого ограничительного поля и улучшенная сеть экстрактора признаков.
-
YOLOv3-Ultralytics: Ultralytics' реализация YOLOv3 обеспечивает ту же производительность, что и оригинальная модель, но в ней добавлена поддержка большего количества предварительно обученных моделей, дополнительные методы обучения и более простые возможности настройки. Это делает ее более универсальной и удобной для практического применения.
-
YOLOv3u: В этой обновленной модели применена безъякорная, безобъектная сплит-головка с сайта YOLOv8. Благодаря отсутствию необходимости в заранее заданных якорных ящиках и оценках объектности, такая конструкция головки обнаружения позволяет улучшить способность модели обнаруживать объекты разных размеров и форм. Это делает YOLOv3u более надежным и точным для задач обнаружения объектов.
Поддерживаемые задачи и режимы
Серия YOLOv3, включающая YOLOv3, YOLOv3-Ultralytics и YOLOv3u, разработана специально для задач по обнаружению объектов. Эти модели славятся своей эффективностью в различных реальных сценариях, балансом между точностью и скоростью. Каждый вариант предлагает уникальные возможности и оптимизации, что делает их подходящими для целого ряда приложений.
Все три модели поддерживают обширный набор режимов, что обеспечивает универсальность на различных этапах развертывания и разработки модели. Эти режимы включают в себя "Вывод", "Проверка", " Обучение" и " Экспорт", предоставляя пользователям полный набор инструментов для эффективного обнаружения объектов.
Тип модели | Поддерживаемые задачи | Заключение | Валидация | Тренировка | Экспорт |
---|---|---|---|---|---|
YOLOv3 | Обнаружение объектов | ✅ | ✅ | ✅ | ✅ |
YOLOv3-.Ultralytics | Обнаружение объектов | ✅ | ✅ | ✅ | ✅ |
YOLOv3u | Обнаружение объектов | ✅ | ✅ | ✅ | ✅ |
Эта таблица дает наглядное представление о возможностях каждого варианта YOLOv3, подчеркивая их универсальность и пригодность для выполнения различных задач и режимов работы в рабочих процессах обнаружения объектов.
Примеры использования
В этом примере приведены простые примеры обучения и вывода YOLOv3. Полную документацию по этим и другим режимам можно найти на страницах Predict, Train, Val и Export docs.
Пример
PyTorch предварительно обученный *.pt
модели, а также конфигурации *.yaml
файлы могут быть переданы в YOLO()
класс, чтобы создать экземпляр модели в python:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv3n model
model = YOLO("yolov3n.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 YOLOv3n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
CLI Для непосредственного запуска моделей доступны команды:
Цитаты и благодарности
Если ты используешь YOLOv3 в своих исследованиях, пожалуйста, ссылайся на оригинальные документы YOLO и репозиторий Ultralytics YOLOv3:
Спасибо Джозефу Редмону и Али Фархади за разработку оригинального YOLOv3.
ВОПРОСЫ И ОТВЕТЫ
Чем отличаются YOLOv3, YOLOv3-Ultralytics, и YOLOv3u?
YOLOv3 - это третья итерация алгоритма обнаружения объектов YOLO (You Only Look Once), разработанного Джозефом Редмоном, известного своим балансом точности и скорости, использующего три разных масштаба (13x13, 26x26 и 52x52) для обнаружения. YOLOv3-Ultralytics - это Ultralytics' адаптация YOLOv3, которая добавляет поддержку большего количества предварительно обученных моделей и облегчает настройку моделей. YOLOv3u - это модернизированный вариант YOLOv3-Ultralytics, в который интегрирована безъякорная и безобъектная сплит-головка из YOLOv8, повышающая надежность и точность обнаружения объектов различных размеров. Более подробную информацию о вариантах можно найти в серии YOLOv3.
Как обучить модель YOLOv3 с помощью Ultralytics?
Обучение модели YOLOv3 с помощью Ultralytics очень простое. Ты можешь обучить модель, используя либо Python , либо CLI:
Пример
Более подробные варианты тренировок и рекомендации ты найдешь в нашей документации по режиму обучения.
Что делает YOLOv3u более точным для задач по обнаружению объектов?
YOLOv3u улучшает YOLOv3 и YOLOv3-Ultralytics за счет включения безъякорной и безобъектной сплит-головы, используемой в моделях YOLOv8 . Эта модернизация устраняет необходимость в заранее заданных якорных ящиках и показателях объектности, повышая способность более точно обнаруживать объекты различных размеров и форм. Это делает YOLOv3u лучшим выбором для сложных и разнообразных задач по обнаружению объектов. За дополнительной информацией обращайся к разделу " Почему YOLOv3u ".
Как я могу использовать модели YOLOv3 для выводов?
Ты можешь делать выводы по моделям YOLOv3 как с помощью скриптов Python , так и с помощью команд CLI :
Пример
Подробнее о запуске моделей YOLO читай в документации по режиму Inference.
Какие задачи поддерживает YOLOv3 и его варианты?
YOLOv3, YOLOv3-Ultralytics, и YOLOv3u в первую очередь поддерживают задачи обнаружения объектов. Эти модели можно использовать на различных этапах развертывания и разработки моделей, таких как Inference, Validation, Training и Export. Полный набор поддерживаемых задач и более подробную информацию ты можешь найти в нашей документации по задачам обнаружения объектов.
Где я могу найти ресурсы для цитирования YOLOv3 в своих исследованиях?
Если ты используешь YOLOv3 в своих исследованиях, пожалуйста, ссылайся на оригинальные статьи YOLO и репозиторий Ultralytics YOLOv3. Пример цитирования в формате BibTeX:
О подробностях цитирования читай в разделе " Цитаты и благодарности ".