Link to this sectionЧасто задаваемые вопросы (FAQ) по Ultralytics YOLO#
В этом разделе FAQ рассматриваются распространенные вопросы и проблемы, с которыми ты можешь столкнуться при работе с репозиториями Ultralytics YOLO.
Link to this sectionFAQ#
Link to this sectionЧто такое Ultralytics и что компания предлагает?#
Ultralytics — это AI-компания в области компьютерного зрения, специализирующаяся на современных моделях обнаружения объектов и сегментации изображений с упором на семейство YOLO (You Only Look Once). Их предложения включают:
- Open-source реализации YOLO26 (последняя версия) и YOLO11 (предыдущее поколение)
- Широкий спектр предобученных моделей для различных задач компьютерного зрения
- Универсальный пакет Python для простой интеграции моделей YOLO в твои проекты
- Гибкие инструменты для обучения, тестирования и развертывания моделей
- Обширная документация и поддержка сообщества
Link to this sectionКак мне установить пакет Ultralytics?#
Установить пакет Ultralytics очень просто с помощью pip:
pip install ultralyticsЧтобы получить последнюю версию для разработки, установи пакет напрямую из репозитория GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitПодробные инструкции по установке можно найти в руководстве по быстрому старту.
Link to this sectionКаковы системные требования для запуска моделей Ultralytics?#
Минимальные требования:
- Python 3.8+
- PyTorch 1.8+
- GPU с поддержкой CUDA (для ускорения на GPU)
Рекомендуемая конфигурация:
- Python 3.8+
- PyTorch 1.10+
- NVIDIA GPU с CUDA 11.2+
- 8 ГБ+ ОЗУ
- 50 ГБ+ свободного места на диске (для хранения датасетов и обучения моделей)
Для устранения распространенных проблем посети страницу общих проблем YOLO.
Link to this sectionКак мне обучить собственную модель YOLO на моем датасете?#
Чтобы обучить собственную модель YOLO:
-
Подготовь датасет в формате YOLO (изображения и соответствующие текстовые файлы с разметкой).
-
Создай файл YAML, описывающий структуру твоего датасета и классы (см. пример YAML-файла датасета).
-
Используй следующий код на Python, чтобы начать обучение:
from ultralytics import YOLO # Load a model model = YOLO("yolo26n.yaml") # build a new model from scratch model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
Для получения более подробного руководства, включая подготовку данных и расширенные параметры обучения, обратись к полному руководству по обучению.
Link to this sectionКакие предобученные модели доступны в Ultralytics?#
Ultralytics предлагает разнообразный ассортимент предобученных моделей для различных задач:
- Обнаружение объектов: YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
- Сегментация экземпляров: YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
- Семантическая сегментация: YOLO26n-sem, YOLO26s-sem, YOLO26m-sem, YOLO26l-sem, YOLO26x-sem
- Классификация: YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
- Оценка позы: YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
- Ориентированное обнаружение (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb
Эти модели различаются по размеру и сложности, предлагая различные балансы между скоростью и точностью. Изучи полный ассортимент предобученных моделей, чтобы найти наиболее подходящую для твоего проекта.
Link to this sectionКак выполнить инференс с помощью обученной модели 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Для получения информации о расширенных возможностях инференса, включая пакетную обработку и инференс на видео, ознакомься с подробным руководством по предсказанию.
Link to this sectionМожно ли развертывать модели Ultralytics на периферийных устройствах или в производственных средах?#
Конечно! Модели Ultralytics разработаны для гибкого развертывания на различных платформах:
- Периферийные устройства: Оптимизируй инференс на устройствах типа NVIDIA Jetson или Intel Neural Compute Stick с помощью TensorRT, ONNX или OpenVINO.
- Мобильные устройства: развертывай на устройствах Android или iOS, конвертируя модели в LiteRT или Core ML.
- Облако: Используй такие фреймворки, как TensorFlow Serving или PyTorch Serve для масштабируемого развертывания в облаке.
- Веб: реализуй инференс в браузере с помощью LiteRT.js или ONNX.js.
Ultralytics предоставляет функции экспорта для конвертации моделей в различные форматы для развертывания. Изучи широкий спектр вариантов развертывания, чтобы найти лучшее решение для твоего случая использования.
Link to this sectionВ чем разница между YOLO11 и YOLO26?#
Основные отличия включают:
- Сквозной инференс без NMS: YOLO26 является нативно сквозной моделью, выдающей предсказания напрямую без подавления немаксимумов (NMS), что снижает задержку и упрощает развертывание.
- Удаление DFL: YOLO26 удаляет модуль Distribution Focal Loss, что упрощает экспорт и улучшает совместимость с периферийными и маломощными устройствами.
- Оптимизатор MuSGD: Гибрид SGD и Muon (вдохновленный Kimi K2 от Moonshot AI) для более стабильного обучения и быстрой сходимости.
- Производительность на CPU: YOLO26 обеспечивает до 43% более быстрый инференс на CPU, что делает его идеальным для устройств без GPU.
- Оптимизации под конкретные задачи: Улучшенная сегментация с семантической потерей и многомасштабными прототипами, RLE для точной оценки позы и улучшенное декодирование OBB с угловой потерей.
- Задачи: Обе модели поддерживают обнаружение объектов и сегментацию экземпляров, а YOLO26 также добавляет семантическую сегментацию для плотного предсказания на уровне пикселей. Обе модели также поддерживают классификацию, оценку позы и ориентированное обнаружение объектов (OBB) в единой структуре.
Для детального сравнения функций и метрик производительности посети страницу документации YOLO26.
Link to this sectionКак я могу внести свой вклад в проект с открытым исходным кодом Ultralytics?#
Вклад в развитие Ultralytics — отличный способ улучшить проект и расширить свои навыки. Вот как ты можешь принять участие:
- Сделай форк репозитория Ultralytics на GitHub.
- Создай новую ветку для своей функции или исправления ошибки.
- Внеси свои изменения и убедись, что все тесты проходят успешно.
- Отправь пул-реквест (PR) с четким описанием своих изменений.
- Прими участие в процессе проверки кода.
Ты также можешь внести свой вклад, сообщая об ошибках, предлагая новые функции или улучшая документацию. Подробные рекомендации и лучшие практики см. в руководстве по контрибьютингу.
Link to this sectionКак мне установить пакет Ultralytics в Python?#
Установить пакет Ultralytics в Python очень просто. Используй pip, выполнив следующую команду в своем терминале или командной строке:
pip install ultralyticsЧтобы получить самую актуальную версию для разработки, установи пакет напрямую из репозитория GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitДля получения инструкций по установке, специфичных для твоей среды, и советов по устранению неполадок, обратись к полному руководству по быстрому старту.
Link to this sectionКаковы основные особенности Ultralytics YOLO?#
Ultralytics YOLO обладает богатым набором функций для продвинутых задач компьютерного зрения:
- Детекция в реальном времени: Эффективное обнаружение и классификация объектов в сценариях реального времени.
- Многозадачность: Выполнение обнаружения объектов, сегментации экземпляров, семантической сегментации, классификации, оценки позы и ориентированного обнаружения объектов (OBB) в рамках единого фреймворка.
- Предобученные модели: Доступ к ряду предобученных моделей, балансирующих между скоростью и точностью для различных задач.
- Собственное обучение: Легко дообучай модели на своих наборах данных с помощью гибкого конвейера обучения.
- Широкие возможности развертывания: Экспортируй модели в различные форматы, такие как TensorRT, ONNX и CoreML, для развертывания на разных платформах.
- Обширная документация: Используй преимущества полной документации и поддержку сообщества для своих рабочих процессов в области компьютерного зрения.
Link to this sectionКак я могу улучшить производительность своей модели YOLO?#
Повышение производительности модели YOLO достигается с помощью нескольких методов:
- Настройка гиперпараметров: Экспериментируй с различными гиперпараметрами, используя руководство по настройке гиперпараметров для оптимизации производительности модели.
- Аугментация данных: Реализуй такие методы, как отражение, масштабирование, поворот и цветовая коррекция, чтобы расширить тренировочный набор данных и улучшить обобщающую способность модели.
- Трансферное обучение: Используй предобученные модели и донастраивай их на своем конкретном датасете, пользуясь Руководством по обучению.
- Экспорт в эффективные форматы: Конвертируй свою модель в оптимизированные форматы, такие как TensorRT или ONNX, для более быстрого инференса, следуя Руководству по экспорту.
- Бенчмаркинг: Используй режим бенчмарка для систематического измерения и улучшения скорости и точности инференса.
Link to this sectionМогу ли я развертывать модели Ultralytics YOLO на мобильных и периферийных устройствах?#
Да, модели Ultralytics YOLO спроектированы для универсального развертывания, включая мобильные и периферийные устройства:
- Мобильные устройства: конвертируй модели в LiteRT или CoreML для бесшовной интеграции в приложения Android или iOS. Обратись к LiteRT Integration Guide и CoreML Integration Guide за инструкциями по конкретным платформам.
- Периферийные устройства (Edge): Оптимизируй инференс на таких устройствах, как NVIDIA Jetson или другое оборудование, используя TensorRT или ONNX. Руководство по интеграции Edge TPU содержит подробные шаги для развертывания на периферии.
Для получения полного обзора стратегий развертывания на различных платформах ознакомься с руководством по вариантам развертывания.
Link to this sectionКак выполнить инференс с помощью обученной модели Ultralytics YOLO?#
Выполнить инференс с помощью обученной модели Ultralytics YOLO очень просто:
-
Загрузка модели:
from ultralytics import YOLO model = YOLO("path/to/your/model.pt") -
Запуск инференса:
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
Для продвинутых методов инференса, включая пакетную обработку, инференс на видео и пользовательскую предобработку, обратись к подробному руководству по предсказанию.
Link to this sectionГде я могу найти примеры и туториалы по использованию Ultralytics?#
Ultralytics предоставляет множество ресурсов, которые помогут тебе начать работу и освоить их инструменты:
- 📚 Официальная документация: Подробные руководства, ссылки на API и лучшие практики.
- 💻 Репозиторий GitHub: Исходный код, примеры скриптов и вклады сообщества.
- ✍️ Блог Ultralytics: Глубокие статьи, сценарии использования и технические инсайты.
- 💬 Форумы сообщества: общайся с другими пользователями, задавай вопросы и делись своим опытом.
- 🎥 YouTube-канал: видеоуроки, демонстрации и вебинары по различным темам Ultralytics.
Эти ресурсы содержат примеры кода, реальные сценарии использования и пошаговые руководства для решения различных задач с помощью моделей Ultralytics.
Если тебе нужна дополнительная помощь, обратись к документации Ultralytics или свяжись с сообществом через GitHub Issues либо официальный дискуссионный форум.