Ultralytics YOLO27:

Roboflow#

Roboflow предоставляет инструменты для разметки данных и экспорта наборов данных в различных форматах, включая YOLO. В этом руководстве рассматриваются разметка, экспорт и подготовка данных к использованию в моделях Ultralytics YOLO.

Лицензирование

Ultralytics предлагает два варианта лицензирования для разных сценариев использования:

  • Лицензия AGPL-3.0: эта лицензия на открытое ПО, одобренная OSI, подходит студентам и энтузиастам, способствуя открытому сотрудничеству и обмену знаниями. Подробнее см. в файле LICENSE.
  • Корпоративная лицензия: для разработки и использования в продакшене. Она позволяет без ограничений интегрировать программное обеспечение и модели ИИ Ultralytics в коммерческие продукты и сервисы, включая внутренние инструменты, автоматизированные процессы и промышленные развертывания, без выполнения требований лицензии AGPL-3.0 с открытым исходным кодом. Чтобы начать, свяжись с нами через страницу лицензирования Ultralytics.

Подробнее см. на странице лицензирования Ultralytics.

В этом руководстве показано, как с помощью Roboflow находить, размечать и упорядочивать данные для обучения собственной модели Ultralytics YOLO26.

Сбор данных для обучения собственной модели YOLO26#

Roboflow предлагает две основные услуги для помощи в сборе данных для моделей Ultralytics YOLO: Universe и Collect. Общие сведения о стратегиях сбора данных см. в нашем руководстве по сбору и аннотированию данных.

Roboflow Universe#

Roboflow Universe — это онлайн-хранилище наборов данных для компьютерного зрения. Ты можешь экспортировать наборы данных в формате YOLO для использования с моделями Ultralytics.

Roboflow Collect#

Если ты предпочитаешь собирать изображения самостоятельно, Roboflow Collect — это проект с открытым исходным кодом, который позволяет автоматически собирать изображения с веб-камеры на периферийных устройствах. Чтобы указать, какие данные нужно собрать, используй текстовые или графические запросы: это поможет получать только изображения, необходимые для твоей модели компьютерного зрения.

Загрузка, преобразование и разметка данных в формате YOLO26#

Roboflow Annotate — это онлайн-инструмент для разметки изображений в различных задачах компьютерного зрения, включая обнаружение объектов, классификацию и сегментацию.

Чтобы разметить данные для модели Ultralytics YOLO, создай проект в Roboflow, загрузи изображения и начни аннотирование.

Инструменты аннотирования#

  • Разметка ограничивающими рамками: нажми B или щелкни значок рамки. Нажми и перетащи курсор, чтобы создать ограничивающую рамку. Во всплывающем окне предложат выбрать класс для аннотации.
  • Разметка многоугольниками: используется для сегментации экземпляров. Нажми P или щелкни значок многоугольника. Щелкай по точкам вокруг объекта, чтобы нарисовать многоугольник.

Помощник по разметке (интеграция SAM)#

В Roboflow встроен помощник по разметке на основе модели Segment Anything (SAM), который может ускорить аннотирование.

Чтобы воспользоваться помощником по разметке, щелкни значок курсора на боковой панели. Для проекта будет включен SAM.

Наведи курсор на объект, и SAM может предложить аннотацию. Щелкни, чтобы принять ее. Ты можешь уточнить область аннотации, щелкнув внутри или снаружи предложенной области.

Теги#

Ты можешь добавлять теги к изображениям на панели Tags на боковой панели. Теги могут обозначать такие атрибуты, как местоположение, источник камеры и т. д. С их помощью можно искать нужные изображения и создавать версии набора данных, содержащие изображения с определенными тегами.

Label Assist (на основе модели)#

Модели, размещенные на Roboflow, можно использовать с Label Assist для предложения аннотаций. Загрузи веса модели YOLO в Roboflow (инструкции приведены ниже), затем включи Label Assist с помощью значка волшебной палочки на боковой панели.

Управление набором данных для YOLO26#

Roboflow предоставляет несколько инструментов для анализа и управления твоими наборами данных для компьютерного зрения.

Используй поиск по набору данных, чтобы находить изображения по текстовым описаниям или определенным меткам и тегам. Чтобы открыть эту функцию, щелкни «Dataset» на боковой панели.

Проверка качества#

Перед обучением воспользуйся Roboflow Health Check, чтобы получить сведения о своем наборе данных и определить, что можно улучшить. Открой этот инструмент по ссылке «Health Check» на боковой панели. Он показывает статистику по размерам изображений, балансу классов, тепловым картам аннотаций и другим параметрам.

Roboflow Health Check analysis dashboard

Health Check может предложить изменения для повышения качества, например устранение дисбаланса классов, выявленного функцией анализа баланса классов. Понимание состояния набора данных крайне важно для эффективного обучения модели.

Предварительная обработка и аугментация данных для повышения устойчивости модели#

Чтобы экспортировать данные, сначала создай версию набора данных — его снимок на определенный момент времени. Щелкни «Versions» на боковой панели, затем «Create New Version». Здесь можно применить шаги предварительной обработки и аугментации данных, чтобы повысить устойчивость модели.

Creating Roboflow dataset version with augmentation

Для каждой выбранной аугментации во всплывающем окне можно настроить параметры, например яркость. Правильно подобранные аугментации значительно улучшают обобщающую способность модели — ключевой аспект, который рассматривается в нашем руководстве с советами по обучению моделей.

Экспорт данных в более чем 40 форматах для обучения моделей#

После создания версии набора данных ее можно экспортировать в различных форматах, подходящих для обучения моделей. Щелкни кнопку «Export Dataset» на странице версии.

Roboflow dataset export to YOLO format

Выбери формат «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. В верхней части страницы появится виджет, с помощью которого можно протестировать модель через веб-камеру или загрузив изображения и видео.

Roboflow deployment widget for model inference

Загруженную модель также можно использовать как помощника по разметке: она будет предлагать аннотации для новых изображений на основе результатов обучения.

Как оценивать модели YOLO26#

Roboflow предоставляет функции для оценки производительности моделей. Понимание метрик производительности крайне важно для итеративного улучшения модели.

После загрузки модели открой инструмент ее оценки на странице модели в панели управления Roboflow. Щелкни «View Detailed Evaluation».

Initiating a Roboflow model evaluation

Этот инструмент отображает матрицу ошибок, показывающую производительность модели, и интерактивную диаграмму векторного анализа на основе эмбеддингов CLIP. Эти функции помогают определить, что можно улучшить в модели.

Всплывающее окно матрицы ошибок:

A confusion matrix displayed in Roboflow

Наведи курсор на ячейки, чтобы увидеть значения, или щелкни по ним, чтобы посмотреть соответствующие изображения с предсказаниями модели и эталонными данными.

Щелкни «Vector Analysis», чтобы открыть диаграмму рассеяния, на которой показано сходство изображений на основе эмбеддингов CLIP. Изображения, расположенные близко друг к другу, семантически похожи. Точки обозначают изображения и окрашены от белого (высокая производительность) до красного (низкая производительность).

Roboflow vector analysis plot using CLIP embeddings

Векторный анализ помогает:

  • Находить группы похожих изображений.
  • Выявлять группы изображений, на которых модель работает плохо.
  • Понимать общие характеристики изображений, на которых модель работает плохо.

Полезные материалы#

Часто задаваемые вопросы#

  • Используй Roboflow Annotate. Создай проект, загрузи изображения и воспользуйся инструментами аннотирования (B для ограничивающих рамок, P для многоугольников) или помощником по разметке на основе SAM, чтобы ускорить процесс. Подробные инструкции приведены в разделе Загрузка, преобразование и разметка данных.

  • Roboflow предлагает Universe (доступ к многочисленным наборам данных) и Collect (автоматический сбор изображений с веб-камеры). Эти инструменты помогут собрать необходимые обучающие данные для твоей модели YOLO26 и дополнят стратегии, описанные в нашем руководстве по сбору данных.

  • Используй функции поиска по набору данных, добавления тегов и Health Check в Roboflow. Поиск находит изображения по тексту или тегам, а Health Check анализирует качество набора данных (баланс классов, размеры изображений и т. д.), помогая определить, что улучшить до начала обучения. Подробнее см. в разделе Управление набором данных.

  • Создай версию набора данных в Roboflow, примени нужные шаги предварительной обработки и аугментации, затем щелкни «Export Dataset» и выбери формат YOLO26. Процесс описан в разделе Экспорт данных. После этого данные будут готовы для использования в конвейерах обучения Ultralytics.

  • Загрузи веса обученной модели YOLO26 в Roboflow с помощью предоставленного скрипта Python. В результате будет создана конечная точка API для развертывания. Скрипт и инструкции см. в разделе Загрузка весов собственной модели. Другие варианты развертывания смотри в нашей документации.

Комментарии