Ultralytics YOLO Часто задаваемые вопросы (FAQ)
В этом разделе FAQ рассматриваются общие вопросы и проблемы, с которыми пользователи могут столкнуться при работе с Ultralytics YOLO репозиториями.
ВОПРОСЫ И ОТВЕТЫ
Что такое Ultralytics и что он предлагает?
Ultralytics Компания, занимающаяся разработкой ИИ для компьютерного зрения, специализируется на современных моделях обнаружения объектов и сегментации изображений, уделяя особое внимание семейству YOLO (You Only Look Once). Их предложения включают:
- Реализации с открытым исходным кодом YOLOv5 и YOLOv8
- Широкий выбор предварительно обученных моделей для различных задач компьютерного зрения
- Комплексный пакетPython для беспрепятственной интеграции моделей YOLO в проекты
- Универсальные инструменты для обучения, тестирования и развертывания моделей
- Обширная документация и поддерживающее сообщество
Как установить пакет Ultralytics ?
Установить пакет Ultralytics очень просто с помощью pip:
Чтобы получить последнюю версию разработки, установи ее прямо из репозитория GitHub:
Подробные инструкции по установке можно найти в руководстве по быстрому старту.
Каковы системные требования для запуска моделей Ultralytics ?
Минимальные требования:
- Python 3.7+
- PyTorch 1.7+
- CUDA-совместимый GPU (для ускорения GPU )
Рекомендуемый сетап:
- Python 3.8+
- PyTorch 1.10+
- NVIDIA GPU с CUDA 11.2+
- 8 ГБ+ ОЗУ
- 50 ГБ+ свободного места на диске (для хранения наборов данных и обучения моделей)
О том, как устранить общие неполадки, читай на странице YOLO "Общие проблемы".
Как обучить пользовательскую модель YOLOv8 на собственном наборе данных?
Чтобы обучить пользовательский YOLOv8 модель:
- Подготовьте набор данных в YOLO (изображения и соответствующие TXT-файлы меток).
- Создайте файл YAML, описывающий структуру и классы набора данных.
- Используйте следующее Python Код для начала обучения:
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.yaml") # build a new model from scratch
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Более подробное руководство, включая подготовку данных и варианты расширенного обучения, ты найдешь в комплексном руководстве по обучению.
Какие предварительно обученные модели доступны на Ultralytics?
Ultralytics предлагает разнообразный набор предварительно обученных моделей YOLOv8 для различных задач:
- Обнаружение объектов: YOLOv8n, YOLOv8s, YOLOv8m, YOLOv8l, YOLOv8x
- Сегментация экземпляров: YOLOv8n-сег, YOLOv8s-сег, YOLOv8m-сег, YOLOv8l-сег, YOLOv8x-сэг
- Классификация: YOLOv8n-cls, YOLOv8s-cls, YOLOv8m-cls, YOLOv8l-cls, YOLOv8x-клс
Эти модели различаются по размеру и сложности, предлагая различные компромиссы между скоростью и точностью. Изучи весь спектр предварительно обученных моделей, чтобы найти наиболее подходящую для твоего проекта.
Как сделать вывод, используя обученную модель Ultralytics ?
Чтобы выполнить логический вывод с помощью обученной модели, выполните следующие действия.
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/your/model.pt")
# Perform inference
results = model("path/to/image.jpg")
# Process results
for r in results:
print(r.boxes) # print bbox predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilities
О продвинутых возможностях предсказания, включая пакетную обработку и предсказание по видео, читай в подробном руководстве по предсказанию.
Можно ли развернуть модели Ultralytics на граничных устройствах или в производственных средах?
Конечно! Модели Ultralytics предназначены для универсального развертывания на различных платформах:
- Граничные устройства: Оптимизируй выводы на таких устройствах, как NVIDIA Jetson или Intel Neural Compute Stick, используя TensorRT, ONNX или OpenVINO.
- Мобильный: Разверни на устройствах Android или iOS , преобразовав модели в TFLite или Core ML.
- Облако: Используй такие фреймворки, как TensorFlow Serving или PyTorch Serve, для масштабируемых облачных развертываний.
- Веб: Реализуй внутрибраузерные выводы, используя ONNX.js или TensorFlow.js.
Ultralytics предоставляет функции экспорта для преобразования моделей в различные форматы для развертывания. Изучи широкий спектр вариантов развертывания, чтобы найти лучшее решение для твоего случая использования.
Какая разница между YOLOv5 и YOLOv8?
Ключевые отличия включают в себя:
- Архитектура: YOLOv8 отличается улучшенным дизайном позвоночника и головки для повышения производительности.
- Производительность: YOLOv8 обычно предлагает более высокую точность и скорость по сравнению с YOLOv5.
- Задачи: YOLOv8 изначально поддерживает обнаружение объектов, сегментацию экземпляров и классификацию в единой структуре.
- Кодовая база: YOLOv8 реализована с более модульной и расширяемой архитектурой, что способствует более легкой настройке и расширению.
- Обучение: YOLOv8 включает в себя передовые методы обучения, такие как обучение с использованием нескольких наборов данных и эволюция гиперпараметров для улучшения результатов.
Для подробного сравнения возможностей и показателей производительности посети страницу сравнения YOLOv5 vs YOLOv8.
Как я могу внести свой вклад в проект Ultralytics с открытым исходным кодом?
Вклад в Ultralytics - отличный способ улучшить проект и расширить свои навыки. Вот как ты можешь принять в этом участие:
- Разветвление Ultralytics репозиторий на GitHub.
- Создайте новую ветку для вашей функции или исправления ошибки.
- Внесите изменения и убедитесь, что все тесты пройдены.
- Отправьте запрос на вытягивание с четким описанием ваших изменений.
- Участвуйте в процессе проверки кода.
Ты также можешь внести свой вклад, сообщая об ошибках, предлагая функции или улучшая документацию. Подробные рекомендации и лучшие практики ты найдешь в руководстве по внесению вклада.
Как установить пакет Ultralytics в Python?
Установить пакет Ultralytics в Python очень просто. Используй pip, выполнив следующую команду в терминале или командной строке:
Чтобы получить самую современную версию разработки, установи ее прямо из репозитория GitHub:
Инструкции по установке и советы по устранению неполадок, специфичные для конкретной среды, можно найти в исчерпывающем руководстве по быстрому запуску.
Каковы основные особенности сайта Ultralytics YOLO ?
Ultralytics YOLO Может похвастаться богатым набором функций для продвинутого обнаружения объектов и сегментации изображений:
- Обнаружение в реальном времени: Эффективно обнаруживай и классифицируй объекты в сценариях реального времени.
- Предварительно обученные модели: Получи доступ к множеству предварительно обученных моделей, в которых сбалансированы скорость и точность для разных случаев использования.
- Обучение на заказ: Легко настраивай модели на пользовательских наборах данных с помощью гибкого конвейера обучения.
- Широкие возможности развертывания: Экспортируй модели в различные форматы, такие как TensorRT, ONNX и CoreML , для развертывания на разных платформах.
- Обширная документация: Воспользуйся обширной документацией и поддержкой сообщества, которое поможет тебе пройти путь компьютерного зрения.
Изучи страницу моделейYOLO , чтобы подробно ознакомиться с возможностями и архитектурой различных версий YOLO .
Как я могу улучшить производительность своей модели YOLO ?
Повысить производительность твоей модели YOLO можно с помощью нескольких приемов:
- Настройка гиперпараметров: Экспериментируй с различными гиперпараметрами, используя руководство по настройке гиперпараметров, чтобы оптимизировать работу модели.
- Дополнение данных: Используй такие техники, как переворот, масштабирование, вращение и корректировка цвета, чтобы расширить свой набор обучающих данных и улучшить обобщение модели.
- Трансферное обучение: Используй предварительно обученные модели и настраивай их на своем конкретном наборе данных, используя руководство Train YOLOv8.
- Экспортируй в эффективные форматы: Преобразуй свою модель в оптимизированные форматы, такие как TensorRT или ONNX , чтобы быстрее делать выводы, используя руководство по экспорту.
- Бенчмаркинг: Используй режим бенчмарка, чтобы систематически измерять и улучшать скорость и точность умозаключений.
Можно ли развернуть модели Ultralytics YOLO на мобильных и пограничных устройствах?
Да, модели Ultralytics YOLO предназначены для универсального развертывания, включая мобильные и пограничные устройства:
- Мобильность: Преобразуй модели в TFLite или CoreML для бесшовной интеграции в приложения Android или iOS . Инструкции для конкретной платформы см. в руководстве по интеграции TFLite и руководстве по интеграцииCoreML .
- Пограничные устройства: Оптимизируй выводы на таких устройствах, как NVIDIA Jetson, или на другом краевом оборудовании, используя TensorRT или ONNX. В руководстве по интеграции Edge TPU приведены подробные шаги по развертыванию краевых устройств.
Чтобы получить исчерпывающий обзор стратегий развертывания на различных платформах, обратись к руководству по вариантам развертывания.
Как сделать вывод, используя обученную модель Ultralytics YOLO ?
Делать выводы с помощью обученной модели Ultralytics YOLO очень просто:
- Загрузи модель:
- Выполняй умозаключения:
results = model("path/to/image.jpg")
for r in results:
print(r.boxes) # print bounding box predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilities
О продвинутых техниках предсказания, включая пакетную обработку, предсказание по видео и пользовательскую препроцессинг, читай в подробном руководстве по предсказанию.
Где можно найти примеры и руководства по использованию Ultralytics?
Ultralytics предоставляет множество ресурсов, которые помогут тебе начать и освоить их инструменты:
- 📚 Официальная документация: Исчерпывающие руководства, ссылки на API и лучшие практики.
- 💻 Репозиторий GitHub: Исходный код, примеры скриптов и вклад сообщества.
- ✍️ Ultralytics Блог: Глубокие статьи, примеры использования и технические аспекты.
- 💬 Форумы сообщества: Общайся с другими пользователями, задавай вопросы и делись своим опытом.
- 🎥 YouTube-канал: Видеоуроки, демоверсии и вебинары по различным темам Ultralytics .
Эти ресурсы содержат примеры кода, реальные примеры использования и пошаговые руководства по решению различных задач с помощью моделей Ultralytics .
Если тебе нужна дополнительная помощь, не стесняйся обратиться к документации Ultralytics или связаться с сообществом через GitHub Issues или официальный дискуссионный форум.