Установи Ultralytics#
Ultralytics предлагает различные способы установки, включая pip, conda и Docker. Ты можешь установить YOLO с помощью пакета pip ultralytics для получения последней стабильной версии или клонировать репозиторий Ultralytics на GitHub для работы с самой свежей версией. Docker также является отличным вариантом для запуска пакета в изолированном контейнере, что позволяет избежать локальной установки.
Watch: Ultralytics YOLO Quick Start Guide
Установи или обнови пакет ultralytics с помощью pip, выполнив команду pip install -U ultralytics. Более подробную информацию о пакете ultralytics можно найти в каталоге Python Package Index (PyPI).
# Install or upgrade the ultralytics package from PyPI
pip install -U ultralyticsТы также можешь установить ultralytics напрямую из репозитория Ultralytics на GitHub. Это может пригодиться, если тебе нужна последняя версия для разработки. Убедись, что у тебя установлен инструмент командной строки Git, а затем выполни:
# Install the ultralytics package from GitHub
pip install git+https://github.com/ultralytics/ultralytics.git@mainСписок зависимостей смотри в файле ultralytics pyproject.toml. Обрати внимание, что во всех примерах выше устанавливаются все необходимые зависимости.
Установка на headless-сервер#
Для серверных сред без графического интерфейса (например, облачных ВМ, Docker-контейнеров, CI/CD-пайплайнов) используй пакет ultralytics-opencv-headless. Он идентичен стандартному пакету ultralytics, но зависит от opencv-python-headless вместо opencv-python, что позволяет избежать ненужных зависимостей GUI и возможных ошибок libGL.
pip install ultralytics-opencv-headlessОба пакета предоставляют одинаковую функциональность и API. Headless-вариант просто исключает компоненты графического интерфейса OpenCV, которым требуются библиотеки для отображения.
Продвинутая установка#
Хотя стандартные способы установки подходят для большинства случаев, тебе может понадобиться более специализированная настройка для разработки или нестандартных конфигураций.
Если тебе нужны постоянные пользовательские изменения, ты можешь сделать форк репозитория Ultralytics, внести изменения в pyproject.toml или другой код и выполнить установку из своего форка.
- Сделай форк репозитория Ultralytics на GitHub в свой собственный аккаунт GitHub.
- Клонируй свой форк локально:
git clone https://github.com/YOUR_USERNAME/ultralytics.git cd ultralytics - Создай новую ветку для своих изменений:
git checkout -b my-custom-branch - Внеси изменения в
pyproject.tomlили другие файлы по своему усмотрению. - Закоммить и запушь свои изменения:
git add . git commit -m "My custom changes" git push origin my-custom-branch - Установи пакет с помощью pip, используя синтаксис
git+httpsи указав свою ветку:pip install git+https://github.com/YOUR_USERNAME/ultralytics.git@my-custom-branch
Использование Ultralytics через CLI#
Интерфейс командной строки (CLI) Ultralytics позволяет выполнять простые однострочные команды без необходимости настройки среды Python. CLI не требует никакой кастомизации или написания кода на Python; запускай все задачи из терминала с помощью команды yolo. Подробнее об использовании YOLO из командной строки см. в Руководстве по CLI.
Команды Ultralytics yolo используют следующий синтаксис:
yolo TASK MODE ARGSTASK(необязательно) — одно из (detect, segment, semantic, depth, classify, pose, obb)MODE(обязательно) — одно из (train, val, predict, export, track, benchmark)ARGS(необязательно) — это парыarg=value, такие какimgsz=640, которые переопределяют значения по умолчанию.
Посмотреть все параметры ARGS можно в полном Руководстве по конфигурации или с помощью команды CLI yolo cfg.
Аргументы должны передаваться как пары arg=value, разделенные знаком равенства = и пробелами. Не используй префиксы аргументов -- или запятые , между аргументами.
yolo predict model=yolo26n.pt imgsz=640 conf=0.25✅yolo predict model yolo26n.pt imgsz 640 conf 0.25❌ (пропущен=)yolo predict model=yolo26n.pt, imgsz=640, conf=0.25❌ (не используй,)yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25❌ (не используй--)yolo solution model=yolo26n.pt imgsz=640 conf=0.25❌ (используйsolutions, а неsolution)
Использование Ultralytics с Python#
Интерфейс Python для Ultralytics YOLO обеспечивает плавную интеграцию в проекты на Python, позволяя легко загружать, запускать и обрабатывать результаты работы моделей. Разработанный с акцентом на простоту, интерфейс Python позволяет пользователям быстро реализовывать обнаружение объектов, сегментацию экземпляров, семантическую сегментацию, оценку глубины и классификацию. Это делает интерфейс YOLO Python незаменимым инструментом для внедрения данных функций в проекты на Python.
Например, пользователи могут загрузить модель, обучить ее, оценить ее производительность и экспортировать в формат ONNX всего за несколько строк кода. Ознакомься с Руководством по Python, чтобы узнать больше об использовании YOLO в своих проектах на Python.
from ultralytics import YOLO
# Create a new YOLO model from scratch
model = YOLO("yolo26n.yaml")
# Load a pretrained YOLO model (recommended for training)
model = YOLO("yolo26n.pt")
# Train the model using the 'coco8.yaml' dataset for 3 epochs
results = model.train(data="coco8.yaml", epochs=3)
# Evaluate the model's performance on the validation set
results = model.val()
# Perform object detection on an image using the model
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to ONNX format
success = model.export(format="onnx")Настройки Ultralytics#
Библиотека Ultralytics включает в себя SettingsManager для детального управления экспериментами, предоставляя пользователям возможность легко получать доступ к настройкам и изменять их. Эти настройки, хранящиеся в JSON-файле в директории пользовательской конфигурации среды, могут просматриваться и изменяться в среде Python или через интерфейс командной строки (CLI).
Проверка настроек#
Чтобы посмотреть текущую конфигурацию твоих настроек:
Используй Python для просмотра своих настроек, импортировав объект settings из модуля ultralytics. Выведи и верни настройки с помощью этих команд:
from ultralytics import settings
# View all settings
print(settings)
# Return a specific setting
value = settings["runs_dir"]Изменение настроек#
Ultralytics позволяет легко изменять настройки следующими способами:
В Python используй метод update для объекта settings:
from ultralytics import settings
# Update a setting
settings.update({"runs_dir": "/path/to/runs"})
# Update multiple settings
settings.update({"runs_dir": "/path/to/runs", "tensorboard": False})
# Reset settings to default values
settings.reset()Понимание настроек#
В таблице ниже представлен обзор настраиваемых параметров в Ultralytics, включая примеры значений, типы данных и описания.
| Имя | Пример значения | Тип данных | Описание |
|---|---|---|---|
settings_version | '0.0.7' | str | Ultralytics settings version (distinct from the Ultralytics pip version) |
datasets_dir | '/path/to/datasets' | str | Директория, где хранятся наборы данных |
weights_dir | '/path/to/weights' | str | Директория, где хранятся веса моделей |
runs_dir | '/path/to/runs' | str | Директория, где хранятся результаты экспериментов |
uuid | 'a1b2c3d4' | str | Уникальный идентификатор текущих настроек |
sync | True | bool | Option to sync analytics and crashes to Ultralytics Platform |
api_key | '' | str | Ultralytics Platform API Key |
clearml | True | bool | Option to use ClearML logging |
comet | True | bool | Option to use Comet ML for experiment tracking and visualization |
dvc | True | bool | Option to use DVC for experiment tracking and version control |
mlflow | True | bool | Option to use MLFlow for experiment tracking |
neptune | True | bool | Option to use Neptune for experiment tracking |
raytune | True | bool | Option to use Ray Tune for hyperparameter tuning |
tensorboard | False | bool | Option to use TensorBoard for visualization |
wandb | False | bool | Option to use Weights & Biases logging |
vscode_msg | True | bool | When a VS Code terminal is detected, enables a prompt to download the Ultralytics-Snippets extension. |
Возвращайся к этим настройкам по мере продвижения в работе над проектами или экспериментами, чтобы обеспечить оптимальную конфигурацию.
FAQ#
Как установить Ultralytics с помощью pip?#
Установи Ultralytics с помощью pip, используя:
pip install -U ultralyticsЭто устанавливает последнюю стабильную версию пакета ultralytics из PyPI. Чтобы установить версию для разработки напрямую с GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitУбедись, что инструмент командной строки Git установлен в твоей системе.
Могу ли я установить Ultralytics YOLO с помощью conda?#
Да, установи Ultralytics YOLO с помощью conda командой:
conda install -c conda-forge ultralyticsЭтот метод является отличной альтернативой pip, обеспечивая совместимость с другими пакетами. Для сред CUDA установи ultralytics, pytorch и pytorch-cuda вместе, чтобы разрешить конфликты:
conda install -c pytorch -c nvidia -c conda-forge pytorch torchvision pytorch-cuda=12.1 ultralyticsДополнительные инструкции см. в руководстве по быстрому запуску Conda.
Каковы преимущества использования Docker для запуска Ultralytics YOLO?#
Docker предоставляет изолированную и стабильную среду для Ultralytics YOLO, обеспечивая бесперебойную работу в различных системах и избавляя от сложностей локальной установки. Официальные образы Docker доступны на Docker Hub в вариантах для GPU, CPU, ARM64, NVIDIA Jetson и Conda. Чтобы скачать и запустить последний образ:
# Pull the latest ultralytics image from Docker Hub
sudo docker pull ultralytics/ultralytics:latest
# Run the ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --device nvidia.com/gpu=all ultralytics/ultralytics:latestПодробные инструкции по использованию Docker см. в руководстве по быстрому запуску Docker.
Как клонировать репозиторий Ultralytics для разработки?#
Клонируй репозиторий Ultralytics и настрой среду разработки с помощью:
# Clone the ultralytics repository
git clone https://github.com/ultralytics/ultralytics
# Navigate to the cloned directory
cd ultralytics
# Install the package in editable mode for development
pip install -e .Это позволяет вносить вклад в развитие проекта или экспериментировать с последним исходным кодом. Подробности см. в репозитории Ultralytics на GitHub.
Зачем использовать CLI для Ultralytics YOLO?#
CLI для Ultralytics YOLO упрощает выполнение задач по обнаружению объектов без написания кода на Python, позволяя использовать однострочные команды для обучения, валидации и предсказания прямо из терминала. Базовый синтаксис:
yolo TASK MODE ARGSНапример, чтобы обучить модель обнаружения:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01Ознакомься с дополнительными командами и примерами использования в полном Руководстве по CLI.