Ir al contenido

Integración de Roboflow

Roboflow proporciona un conjunto de herramientas diseñadas para construir e implementar modelos de visión artificial. Puede integrar Roboflow en varias etapas de su pipeline de desarrollo utilizando sus APIs y SDKs, o utilizar su interfaz integral para gestionar el proceso desde la recopilación de imágenes hasta la inferencia. Roboflow ofrece funcionalidades para el etiquetado de datos, el entrenamiento de modelos y la implementación de modelos, proporcionando componentes para desarrollar soluciones de visión artificial personalizadas junto con las herramientas de Ultralytics.

Licencias

Ultralytics ofrece dos opciones de licencia para adaptarse a diferentes casos de uso:

  • Licencia AGPL-3.0: Esta licencia de código abierto aprobada por la OSI es ideal para estudiantes y entusiastas, ya que promueve la colaboración abierta y el intercambio de conocimientos. Consulte el archivo LICENSE para obtener más detalles.
  • Licencia Enterprise: Diseñada para uso comercial, esta licencia permite la integración perfecta del software Ultralytics y los modelos de IA en productos y servicios comerciales. Si su caso implica aplicaciones comerciales, póngase en contacto a través de Licencias de Ultralytics.

Para obtener más detalles, consulte la página de licencias de Ultralytics.

Esta guía demuestra cómo encontrar, etiquetar y organizar datos para entrenar un modelo Ultralytics YOLO11 personalizado utilizando Roboflow.

Recopile datos para entrenar un modelo YOLO11 personalizado.

Roboflow ofrece dos servicios principales para ayudar en la recopilación de datos para los modelos YOLO de Ultralytics: Universe y Collect. Para obtener información más general sobre las estrategias de recopilación de datos, consulte nuestra Guía de recopilación y anotación de datos.

Roboflow Universe

Roboflow Universe es un repositorio en línea que presenta un gran número de conjuntos de datos de visión.

Roboflow Universe

Con una cuenta de Roboflow, puede exportar conjuntos de datos disponibles en Universe. Para exportar un conjunto de datos, utilice el botón "Download this Dataset" (Descargar este conjunto de datos) en la página correspondiente del conjunto de datos.

Exportación de conjuntos de datos de Roboflow Universe

Para la compatibilidad con Ultralytics YOLO11, selecciona "YOLO11" como formato de exportación:

Selección del formato de exportación del conjunto de datos Roboflow Universe

Universe también cuenta con una página que agrega modelos YOLO ajustados públicamente y subidos a Roboflow. Esto puede ser útil para explorar modelos pre-entrenados para pruebas o etiquetado automatizado de datos.

Roboflow Collect

Si prefiere recopilar imágenes usted mismo, Roboflow Collect es un proyecto de código abierto que permite la recopilación automática de imágenes a través de una cámara web en dispositivos periféricos. Puede utilizar texto o indicaciones de imagen para especificar los datos que se van a recopilar, lo que ayuda a capturar solo las imágenes necesarias para su modelo de visión.

Carga, convierte y etiqueta datos para el formato YOLO11

Roboflow Annotate es una herramienta en línea para etiquetar imágenes para diversas tareas de visión artificial, incluyendo la detección de objetos, la clasificación y la segmentación.

Para etiquetar datos para un modelo Ultralytics YOLO (que admite detección, segmentación de instancias, clasificación, estimación de pose y OBB), comience creando un proyecto en Roboflow.

Crear un proyecto de Roboflow

A continuación, suba sus imágenes y cualquier anotación existente de otras herramientas a Roboflow.

Subir imágenes a Roboflow

Después de subir, serás dirigido a la página de Anotación. Selecciona el lote de imágenes subidas y haz clic en "Comenzar a Anotar" para empezar a etiquetar.

Herramientas de anotación

  • Anotación de Cajas Delimitadoras: Presionar B o haz clic en el icono de la caja. Haz clic y arrastra para crear el cuadro delimitador. Una ventana emergente le pedirá que seleccione una clase para la anotación.

Anotar una imagen en Roboflow con cuadros delimitadores

  • Anotación de polígonos: Utilizado para segmentación de instancias. Presione P o haz clic en el icono del polígono. Haz clic en los puntos alrededor del objeto para dibujar el polígono.

Asistente de etiquetado (integración SAM)

Roboflow integra un asistente de etiquetado basado en el Segment Anything Model (SAM) para acelerar potencialmente la anotación.

Para usar el asistente de etiquetado, haga clic en el icono del cursor en la barra lateral. SAM se habilitará para su proyecto.

Anotar una imagen en Roboflow con la asistencia de etiquetado impulsada por SAM

Pase el ratón por encima de un objeto y SAM puede sugerir una anotación. Haga clic para aceptar la anotación. Puede refinar la especificidad de la anotación haciendo clic dentro o fuera del área sugerida.

Etiquetado

Puede añadir etiquetas a las imágenes utilizando el panel de etiquetas en la barra lateral. Las etiquetas pueden representar atributos como la ubicación, la fuente de la cámara, etc. Estas etiquetas le permiten buscar imágenes específicas y generar versiones de conjuntos de datos que contengan imágenes con etiquetas concretas.

Añadir etiquetas a una imagen en Roboflow

Asistencia de etiquetado (basada en modelos)

Los modelos alojados en Roboflow se pueden utilizar con Label Assist, una herramienta de anotación automatizada que aprovecha su modelo YOLO11 entrenado para sugerir anotaciones. Primero, cargue los pesos de su modelo YOLO11 en Roboflow (consulte las instrucciones a continuación). Luego, active Label Assist haciendo clic en el icono de la varita mágica en la barra lateral izquierda y seleccionando su modelo.

Elija su modelo y haga clic en "Continuar" para habilitar la Asistencia de Etiquetado:

Habilitación de Label Assist en Roboflow

Cuando abra nuevas imágenes para la anotación, Label Assist puede sugerir automáticamente anotaciones basadas en las predicciones de su modelo.

Asistencia de etiquetado que recomienda una anotación basada en un modelo entrenado

Gestión de conjuntos de datos para YOLO11

Roboflow proporciona varias herramientas para comprender y gestionar sus conjuntos de datos de visión artificial.

Utilice la búsqueda de conjuntos de datos para encontrar imágenes basadas en descripciones de texto semánticas (por ejemplo, "encontrar todas las imágenes que contengan personas") o etiquetas específicas. Acceda a esta función haciendo clic en "Dataset" en la barra lateral y utilizando la barra de búsqueda y los filtros.

Por ejemplo, buscar imágenes que contengan personas:

Buscando una imagen en un conjunto de datos de Roboflow

Puede refinar las búsquedas utilizando etiquetas a través del selector "Tags":

Filtrado de imágenes por etiqueta en Roboflow

Comprobación del estado

Antes del entrenamiento, utiliza Roboflow Health Check para obtener información sobre tu conjunto de datos e identificar posibles mejoras. Accede a él a través del enlace de la barra lateral "Health Check". Proporciona estadísticas sobre los tamaños de las imágenes, el equilibrio de las clases, los mapas de calor de las anotaciones y mucho más.

Panel de análisis de Roboflow Health Check

La comprobación del estado puede sugerir cambios para mejorar el rendimiento, como abordar los desequilibrios de clase identificados en la función de equilibrio de clases. Comprender el estado del conjunto de datos es crucial para un entrenamiento del modelo eficaz.

Preprocesar y aumentar los datos para la robustez del modelo

Para exportar sus datos, necesita crear una versión del conjunto de datos, que es una instantánea de su conjunto de datos en un momento específico. Haga clic en "Versiones" en la barra lateral, luego en "Crear nueva versión". Aquí, puede aplicar pasos de preprocesamiento y aumentos de datos para mejorar potencialmente la robustez del modelo.

Creación de una versión de conjunto de datos en Roboflow con opciones de preprocesamiento y aumento

Para cada aumento seleccionado, una ventana emergente le permite ajustar sus parámetros, como el brillo. El aumento adecuado puede mejorar significativamente la generalización del modelo, un concepto clave que se analiza en nuestra guía de consejos para el entrenamiento de modelos.

Exporta datos en más de 40 formatos para el entrenamiento de modelos

Una vez que se genera la versión de tu dataset, puedes exportarla en varios formatos adecuados para el entrenamiento del modelo. Haz clic en el botón "Export Dataset" (Exportar Dataset) en la página de la versión.

Exportando un conjunto de datos desde Roboflow

Selecciona el formato "YOLO11" para la compatibilidad con los pipelines de entrenamiento de Ultralytics. Ahora estás listo para entrenar tu modelo personalizado YOLO11. Consulta la documentación del modo de entrenamiento de Ultralytics para obtener instrucciones detalladas sobre cómo iniciar el entrenamiento con tu conjunto de datos exportado.

Carga pesos de modelos YOLO11 personalizados para pruebas e implementación

Roboflow ofrece una API escalable para modelos implementados y SDK compatibles con dispositivos como NVIDIA Jetson, Luxonis OAK, Raspberry Pi y sistemas basados en GPU. Explore varias opciones de implementación de modelos en nuestras guías.

Puede implementar modelos YOLO11 cargando sus pesos a Roboflow usando un simple script de Python.

Crea un nuevo archivo Python y añade el siguiente código:

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 YOLO11 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'
project.version(dataset.version).deploy(
    model_type="yolov8", model_path=MODEL_PATH
)  # Note: Use "yolov8" as model_type for YOLO11 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.")

En este código, reemplace your-workspace-id, your-project-id, la VERSION número, y el MODEL_PATH con los valores específicos de su cuenta de Roboflow, proyecto y directorio local de resultados de entrenamiento. Asegúrese de que el MODEL_PATH apunta correctamente al directorio que contiene tu modelo entrenado best.pt archivo de pesos.

Cuando ejecute el código anterior, se le pedirá que se autentique (normalmente a través de una clave API). A continuación, su modelo se cargará y se creará un punto final de API para su proyecto. Este proceso puede tardar hasta 30 minutos en completarse.

Para probar su modelo y encontrar instrucciones de implementación para los SDK compatibles, vaya a la pestaña "Deploy" en la barra lateral de Roboflow. En la parte superior de esta página, aparecerá un widget que le permitirá probar su modelo utilizando su cámara web o cargando imágenes o vídeos.

Ejecutando la inferencia en una imagen de ejemplo utilizando el widget de implementación de Roboflow

Tu modelo subido también puede utilizarse como asistente de etiquetado, sugiriendo anotaciones en nuevas imágenes basadas en su entrenamiento.

¿Cómo evaluar modelos YOLO11?

Roboflow proporciona funciones para evaluar el rendimiento del modelo. Comprender las métricas de rendimiento es crucial para la iteración del modelo.

Después de subir un modelo, accede a la herramienta de evaluación del modelo a través de la página de tu modelo en el panel de Roboflow. Haz clic en "Ver Evaluación Detallada".

Inicio de una evaluación del modelo Roboflow

Esta herramienta muestra una matriz de confusión que ilustra el rendimiento del modelo y un diagrama de análisis vectorial interactivo que utiliza incrustaciones CLIP. Estas características ayudan a identificar áreas para la mejora del modelo.

La ventana emergente de la matriz de confusión:

Una matriz de confusión mostrada en Roboflow

Pase el ratón por encima de las celdas para ver los valores y haga clic en las celdas para ver las imágenes correspondientes con las predicciones del modelo y los datos de referencia.

Haga clic en "Análisis vectorial" para obtener un diagrama de dispersión que visualice la similitud de las imágenes basándose en las incrustaciones CLIP. Las imágenes más juntas son semánticamente similares. Los puntos representan imágenes, coloreadas de blanco (buen rendimiento) a rojo (mal rendimiento).

Un gráfico de análisis vectorial en Roboflow que utiliza incrustaciones CLIP

El análisis vectorial ayuda a:

  • Identificar clústeres de imágenes.
  • Identifica los clústeres donde el modelo tiene un rendimiento deficiente.
  • Comprender las características comunes entre las imágenes que causan un rendimiento deficiente.

Recursos de aprendizaje

Explore estos recursos para obtener más información sobre cómo usar Roboflow con Ultralytics YOLO11:

Exhibición de proyectos

Comentarios de usuarios que combinan Ultralytics YOLO11 y Roboflow:

Imagen de muestra 1 Imagen de muestra 2 Imagen de muestra 3

Preguntas frecuentes

Preguntas frecuentes

¿Cómo etiqueto datos para modelos YOLO11 usando Roboflow?

Utilice Roboflow Annotate. Cree un proyecto, suba imágenes y utilice las herramientas de anotación (B para cajas delimitadoras, P para polígonos) o el asistente de etiquetado basado en SAM para un etiquetado más rápido. Los pasos detallados están disponibles en Sección de Carga, Conversión y Etiquetado de Datos.

¿Qué servicios ofrece Roboflow para la recopilación de datos de entrenamiento de YOLO11?

Roboflow proporciona Universe (acceso a numerosos conjuntos de datos) y Collect (recopilación automatizada de imágenes a través de la cámara web). Estos pueden ayudar a adquirir los datos de entrenamiento necesarios para su modelo YOLO11, complementando las estrategias descritas en nuestra Guía de recopilación de datos.

¿Cómo puedo gestionar y analizar mi conjunto de datos YOLO11 usando Roboflow?

Utiliza la búsqueda de conjuntos de datos, el etiquetado y las funciones de Health Check de Roboflow. La búsqueda encuentra imágenes por texto o etiquetas, mientras que Health Check analiza la calidad del conjunto de datos (balance de clases, tamaños de imagen, etc.) para guiar las mejoras antes del entrenamiento. Consulta la sección de Gestión de Conjuntos de Datos para obtener más detalles.

¿Cómo exporto mi conjunto de datos YOLO11 desde Roboflow?

Crea una versión del dataset en Roboflow, aplica el preprocesamiento y las aumentaciones deseadas, luego haz clic en "Export Dataset" y selecciona el formato YOLO11. El proceso se describe en la sección Export Data. Esto prepara tus datos para su uso con los pipelines de entrenamiento de Ultralytics.

¿Cómo puedo integrar e implementar modelos YOLO11 con Roboflow?

Sube tus pesos entrenados de YOLO11 a Roboflow utilizando el script de python proporcionado. Esto crea un punto final de la API desplegable. Consulta la sección de Carga de Pesos Personalizados para ver el script y las instrucciones. Explora más opciones de implementación en nuestra documentación.



📅 Creado hace 1 año ✏️ Actualizado hace 5 meses

Comentarios