Roboflow
Roboflow предоставляет инструменты для разметки данных и экспорта наборов данных в различных форматах, включая YOLO. Это руководство охватывает процессы разметки, экспорта и развертывания данных для моделей Ultralytics YOLO.
Ultralytics предлагает два варианта лицензирования для различных сценариев использования:
- Лицензия AGPL-3.0: Эта лицензия с открытым исходным кодом, одобренная OSI, идеально подходит для студентов и энтузиастов, способствуя открытому сотрудничеству и обмену знаниями. Более подробную информацию см. в файле LICENSE.
- Корпоративная лицензия: Предназначенная для коммерческого использования, эта лицензия позволяет беспрепятственно интегрировать программное обеспечение и модели ИИ от Ultralytics в коммерческие продукты и услуги. Если твой сценарий предполагает коммерческое применение, свяжись с нами через Ultralytics Licensing.
Более подробную информацию см. на странице лицензирования Ultralytics.
В этом руководстве показано, как находить, размечать и организовывать данные для обучения пользовательской модели Ultralytics YOLO26 с помощью Roboflow.
- Сбор данных для обучения
- Разметка данных
- Управление набором данных
- Экспорт данных
- Развертывание моделей
- Оценка моделей
- FAQ
Сбор данных для обучения пользовательской модели YOLO26
Roboflow предлагает два основных сервиса для помощи в сборе данных для моделей Ultralytics YOLO: Universe и Collect. Дополнительную общую информацию о стратегиях сбора данных см. в нашем Руководстве по сбору и аннотированию данных.
Roboflow Universe
Roboflow Universe — это онлайн-репозиторий наборов данных для компьютерного зрения. Ты можешь экспортировать наборы данных в формате YOLO для использования с моделями Ultralytics.
Roboflow Collect
Если ты предпочитаешь собирать изображения самостоятельно, Roboflow Collect — это проект с открытым исходным кодом, позволяющий автоматически собирать изображения с помощью веб-камеры на граничных устройствах. Ты можешь использовать текстовые или графические подсказки, чтобы указать, какие именно данные нужно собрать, что поможет захватить только необходимые изображения для твоей модели компьютерного зрения.
Загрузка, конвертация и разметка данных для формата YOLO26
Roboflow Annotate — это онлайн-инструмент для разметки изображений для различных задач компьютерного зрения, включая обнаружение объектов, классификацию и сегментацию.
Чтобы разметить данные для модели Ultralytics YOLO, создай проект в Roboflow, загрузи свои изображения и начни аннотирование.
Инструменты аннотирования
- Аннотирование ограничивающими рамками (BBox): Нажми
Bили щелкни значок рамки. Нажми и перетащи курсор, чтобы создать ограничивающую рамку. Во всплывающем окне тебе будет предложено выбрать класс для этой аннотации. - Полигональное аннотирование: Используется для сегментации экземпляров. Нажми
Pили щелкни значок многоугольника. Устанавливай точки вокруг объекта, чтобы нарисовать полигон.
Помощник по разметке (интеграция SAM)
Roboflow интегрирует помощника по разметке на основе Segment Anything Model (SAM), чтобы потенциально ускорить процесс аннотирования.
Чтобы использовать помощника по разметке, нажми значок курсора на боковой панели. SAM будет включен для твоего проекта.
Наведи курсор на объект, и SAM может предложить аннотацию. Нажми, чтобы принять её. Ты можешь уточнить детали аннотации, кликая внутри или снаружи предложенной области.
Тегирование
Ты можешь добавлять теги к изображениям, используя панель Tags на боковой панели. Теги могут обозначать такие атрибуты, как местоположение, источник камеры и т. д. Эти теги позволяют искать конкретные изображения и создавать версии наборов данных, содержащие изображения с определенными тегами.
Label Assist (на основе моделей)
Модели, размещенные в Roboflow, могут использоваться с Label Assist для предложения аннотаций. Загрузи веса своей модели YOLO в Roboflow (см. инструкции ниже), затем активируй Label Assist с помощью значка волшебной палочки на боковой панели.
Управление набором данных для YOLO26
Roboflow предоставляет несколько инструментов для понимания и управления твоими наборами данных компьютерного зрения.
Поиск по набору данных
Используй поиск по набору данных, чтобы находить изображения на основе текстовых описаний или конкретных меток/тегов. Доступ к этой функции можно получить, нажав "Dataset" на боковой панели.
Проверка состояния (Health Check)
Перед обучением используй Roboflow Health Check, чтобы получить представление о твоем наборе данных и выявить потенциальные улучшения. Доступ к нему осуществляется через ссылку "Health Check" на боковой панели. Он предоставляет статистику по размерам изображений, балансу классов, тепловым картам аннотаций и многое другое.
Health Check может предложить изменения для повышения производительности, например, устранение дисбаланса классов, выявленного в функции баланса классов. Понимание состояния набора данных имеет решающее значение для эффективного обучения модели.
Предварительная обработка и дополнение данных для повышения надежности модели
Чтобы экспортировать данные, нужно создать версию набора данных — это моментальный снимок твоего набора данных в определенный момент времени. Нажми "Versions" на боковой панели, затем "Create New Version". Здесь ты можешь применить шаги предобработки и аугментации данных, чтобы потенциально повысить надежность модели.
Для каждой выбранной аугментации во всплывающем окне можно настроить такие параметры, как яркость. Правильная аугментация может значительно улучшить обобщающую способность модели, что является ключевой концепцией, обсуждаемой в нашем руководстве по советам по обучению моделей.
Экспорт данных в 40+ форматах для обучения модели
После генерации версии набора данных ты можешь экспортировать её в различных форматах, подходящих для обучения моделей. Нажми кнопку "Export Dataset" на странице версии.
Выбери формат "YOLO26" для совместимости с конвейерами обучения Ultralytics. Теперь ты готов к обучению своей пользовательской модели YOLO26. Обратись к документации по режиму обучения Ultralytics для получения подробных инструкций по началу обучения с использованием экспортированного набора данных.
Загрузка весов пользовательской модели YOLO26 для тестирования и развертывания
Roboflow предлагает масштабируемый API для развернутых моделей и SDK, совместимые с такими устройствами, как NVIDIA Jetson, Luxonis OAK, Raspberry Pi и системами на базе GPU. Изучи различные варианты развертывания моделей в наших руководствах.
Ты можешь развернуть модели YOLO26, загрузив их веса в Roboflow с помощью простого скрипта Python.
Создай новый файл Python и добавь в него следующий код:
import roboflow # install with 'pip install roboflow'
# Log in to Roboflow (requires API key)
roboflow.login()
# Initialize Roboflow client
rf = roboflow.Roboflow()
# Define your workspace and project details
WORKSPACE_ID = "your-workspace-id" # Replace with your actual Workspace ID
PROJECT_ID = "your-project-id" # Replace with your actual Project ID
VERSION = 1 # Replace with your desired dataset version number
MODEL_PATH = "path/to/your/runs/detect/train/" # Replace with the path to your YOLO26 training results directory
# Get project and version
project = rf.workspace(WORKSPACE_ID).project(PROJECT_ID)
dataset = project.version(VERSION)
# Upload model weights for deployment
# Ensure MODEL_PATH points to the directory containing 'best.pt'
dataset.deploy(
model_type="yolov8",
model_path=MODEL_PATH,
) # Note: Use "yolov8" as model_type for YOLO26 compatibility in Roboflow deployment
print(f"Model from {MODEL_PATH} uploaded to Roboflow project {PROJECT_ID}, version {VERSION}.")
print("Deployment may take up to 30 minutes.")В этом коде замени your-workspace-id, your-project-id, номер VERSION и MODEL_PATH на значения, специфичные для твоего аккаунта Roboflow, проекта и локальной директории результатов обучения. Убедись, что MODEL_PATH правильно указывает на директорию, содержащую файл весов твоей обученной модели best.pt.
Когда ты запустишь указанный код, тебя попросят пройти аутентификацию (обычно через ключ API). Затем твоя модель будет загружена, и для твоего проекта будет создан конечная точка API. Этот процесс может занять до 30 минут.
Чтобы протестировать модель и найти инструкции по развертыванию для поддерживаемых SDK, перейди на вкладку "Deploy" на боковой панели Roboflow. В верхней части этой страницы появится виджет, позволяющий протестировать модель с помощью веб-камеры или загрузив изображения или видео.
Твою загруженную модель также можно использовать в качестве помощника по разметке, предлагающего аннотации к новым изображениям на основе ее обучения.
Как оценить модели YOLO26
Roboflow предоставляет функции для оценки производительности модели. Понимание метрик производительности имеет решающее значение для итерации модели.
После загрузки модели получи доступ к инструменту оценки модели через страницу модели на панели управления Roboflow. Нажми "View Detailed Evaluation".
Этот инструмент отображает матрицу ошибок, иллюстрирующую производительность модели, и интерактивный график векторного анализа с использованием эмбеддингов CLIP. Эти функции помогают выявить области для улучшения модели.
Всплывающее окно матрицы ошибок:
Наведи курсор на ячейки, чтобы увидеть значения, и нажми на ячейки, чтобы просмотреть соответствующие изображения с предсказаниями модели и данными истинной разметки (ground truth).
Нажми "Vector Analysis" для просмотра диаграммы рассеяния, визуализирующей сходство изображений на основе эмбеддингов CLIP. Изображения, расположенные ближе друг к другу, семантически похожи. Точки представляют изображения, окрашенные от белого (хорошая производительность) до красного (плохая производительность).
Векторный анализ помогает:
- Идентифицировать кластеры изображений.
- Точно определить кластеры, на которых модель работает плохо.
- Понять общие черты изображений, приводящие к низкой производительности.
Учебные ресурсы
- Обучение YOLO на пользовательском наборе данных (Colab): Интерактивный блокнот Google Colab для обучения на твоих данных.
- Документация Ultralytics YOLO: Обучение, экспорт и развертывание моделей YOLO.
- Блог Ultralytics: Статьи по компьютерному зрению и обучению моделей.
- YouTube-канал Ultralytics: Видеоинструкции по обучению и развертыванию моделей.
Часто задаваемые вопросы (FAQ)
Как размечать данные для моделей YOLO26 с помощью Roboflow?
Используй Roboflow Annotate. Создай проект, загрузи изображения и используй инструменты аннотирования (B для ограничивающих рамок, P для многоугольников) или помощника по разметке на основе SAM для более быстрой работы. Подробные шаги доступны в разделе Загрузка, конвертация и разметка данных.
Какие сервисы предлагает Roboflow для сбора данных для обучения YOLO26?
Roboflow предоставляет Universe (доступ к многочисленным наборам данных) и Collect (автоматизированный сбор изображений через веб-камеру). Они могут помочь получить необходимые данные для обучения для твоей модели YOLO26, дополняя стратегии, описанные в нашем Руководстве по сбору данных.
Как управлять и анализировать набор данных YOLO26 с помощью Roboflow?
Используй функции поиска по набору данных, тегирования и Health Check в Roboflow. Поиск находит изображения по тексту или тегам, а Health Check анализирует качество набора данных (баланс классов, размеры изображений и т. д.), чтобы направить улучшения перед обучением. Подробности см. в разделе Управление набором данных.
Как экспортировать набор данных YOLO26 из Roboflow?
Создай версию набора данных в Roboflow, примени желаемую предобработку и аугментации, затем нажми "Export Dataset" и выбери формат YOLO26. Процесс описан в разделе Экспорт данных. Это подготовит твои данные для использования с конвейерами обучения Ultralytics.
Как интегрировать и развернуть модели YOLO26 с помощью Roboflow?
Загрузи обученные веса YOLO26 в Roboflow с помощью предоставленного скрипта Python. Это создаст развертываемую конечную точку API. Обратись к разделу Загрузка пользовательских весов для получения скрипта и инструкций. Изучи дополнительные варианты развертывания в нашей документации.