Saltar al contenido

Roboflow

Roboflow tiene todo lo que necesitas para construir y desplegar modelos de visi贸n por ordenador. Conecta Roboflow en cualquier paso de tu proceso con API y SDK, o utiliza la interfaz integral para automatizar todo el proceso, desde la imagen hasta la inferencia. Tanto si necesitas etiquetar datos, entrenar modelos o desplegar modelos, Roboflow te ofrece bloques de construcci贸n para aportar soluciones personalizadas de visi贸n computerizada a tu proyecto.

Licencias

Ultralytics ofrece dos opciones de licencia:

Para m谩s detalles, consulta Ultralytics Licencias.

En esta gu铆a, vamos a mostrar c贸mo encontrar, etiquetar y organizar datos para utilizarlos en el entrenamiento de un modelo personalizado de Ultralytics YOLOv8 . Utiliza el 铆ndice que aparece a continuaci贸n para saltar directamente a una secci贸n concreta:

  • Recopila datos para entrenar un modelo personalizado YOLOv8
  • Carga, convierte y etiqueta los datos para el formato YOLOv8
  • Preprocesa y aumenta los datos para la solidez del modelo
  • Gesti贸n de conjuntos de datos para YOLOv8
  • Exporta datos en m谩s de 40 formatos para el entrenamiento de modelos
  • Sube los pesos personalizados del modelo YOLOv8 para probarlos y desplegarlos
  • Recopila datos para entrenar un modelo personalizado YOLOv8

Roboflow proporciona dos servicios que pueden ayudarte a recopilar datos para los modelos de YOLOv8 : Universo y Recopilar.

Universo es un repositorio en l铆nea con m谩s de 250.000 conjuntos de datos de visi贸n que suman m谩s de 100 millones de im谩genes.

Roboflow Universo

Con una cuenta gratuita en Roboflow , puedes exportar cualquier conjunto de datos disponible en Universe. Para exportar un conjunto de datos, haz clic en el bot贸n "Descargar este conjunto de datos" de cualquier conjunto de datos.

Roboflow Exportaci贸n del conjunto de datos Universo

Para YOLOv8, selecciona "YOLOv8" como formato de exportaci贸n:

Roboflow Exportaci贸n del conjunto de datos Universo

Universo tambi茅n tiene una p谩gina que agrega todos los modelos YOLOv8 p煤blicos afinados subidos a Roboflow. Puedes utilizar esta p谩gina para explorar modelos preentrenados que puedes utilizar para pruebas o para el etiquetado automatizado de datos o para crear prototipos con la inferenciaRoboflow .

Si quieres recoger im谩genes t煤 mismo, prueba Collect, un proyecto de c贸digo abierto que te permite recoger im谩genes autom谩ticamente utilizando una webcam en el borde. Con Collect puedes utilizar indicaciones de texto o imagen para indicar qu茅 datos deben recogerse, lo que te permite capturar s贸lo los datos 煤tiles que necesitas para construir tu modelo de visi贸n.

Cargar, convertir y etiquetar datos para el formato YOLOv8

Roboflow Anotar es una herramienta de anotaci贸n en l铆nea que se utiliza para etiquetar im谩genes para la detecci贸n, clasificaci贸n y segmentaci贸n de objetos.

Para etiquetar datos para un modelo de detecci贸n de objetos, segmentaci贸n de instancias o clasificaci贸n de YOLOv8 , crea primero un proyecto en Roboflow.

Crea un proyecto Roboflow

A continuaci贸n, sube tus im谩genes, y cualquier anotaci贸n preexistente que tengas de otras herramientas(utilizando uno de los m谩s de 40 formatos de importaci贸n admitidos), a Roboflow.

Subir im谩genes a Roboflow

Selecciona el lote de im谩genes que has subido en la p谩gina Anotar a la que se te lleva tras subir las im谩genes. A continuaci贸n, haz clic en "Empezar a anotar" para etiquetar las im谩genes.

Para etiquetar con recuadros delimitadores, pulsa B de tu teclado o haz clic en el icono de caja de la barra lateral. Haz clic en un punto donde quieras empezar tu cuadro delimitador, y luego arrastra para crear el cuadro:

Anotar una imagen en Roboflow

Aparecer谩 una ventana emergente pidi茅ndote que selecciones una clase para tu anotaci贸n una vez que la hayas creado.

Para etiquetar con pol铆gonos, pulsa la tecla P de tu teclado, o el icono de pol铆gono de la barra lateral. Con la herramienta de anotaci贸n de pol铆gonos activada, haz clic en puntos individuales de la imagen para dibujar un pol铆gono.

Roboflow ofrece un asistente de etiquetado basado en SAM con el que podr谩s etiquetar im谩genes m谩s r谩pido que nunca. SAM (Segment Anything Model) es un modelo de visi贸n por ordenador de 煤ltima generaci贸n que puede etiquetar im谩genes con precisi贸n. Con SAM, puedes acelerar considerablemente el proceso de etiquetado de im谩genes. Anotar im谩genes con pol铆gonos se convierte en algo tan sencillo como unos pocos clics, en lugar del tedioso proceso de hacer clic con precisi贸n en puntos alrededor de un objeto.

Para utilizar el asistente de etiquetas, haz clic en el icono del cursor de la barra lateral, se cargar谩 SAM para utilizarlo en tu proyecto.

Anotar una imagen en Roboflow con SAM-powered label assist

Pasa el rat贸n por encima de cualquier objeto de la imagen y SAM te recomendar谩 una anotaci贸n. Puedes pasar el rat贸n por encima para encontrar el lugar adecuado para la anotaci贸n y, a continuaci贸n, hacer clic para crearla. Para modificar tu anotaci贸n para que sea m谩s o menos espec铆fica, puedes hacer clic dentro o fuera de la anotaci贸n que SAM ha creado en el documento.

Tambi茅n puedes a帽adir etiquetas a las im谩genes desde el panel Etiquetas de la barra lateral. Puedes aplicar etiquetas a datos de una zona concreta, tomados desde una c谩mara espec铆fica, etc. A continuaci贸n, puedes utilizar estas etiquetas para buscar en los datos im谩genes que coincidan con una etiqueta y generar versiones de un conjunto de datos con im谩genes que contengan una etiqueta o un conjunto de etiquetas concreto.

A帽adir etiquetas a una imagen en Roboflow

Los modelos alojados en Roboflow pueden utilizarse con Label Assist, una herramienta de anotaci贸n autom谩tica que utiliza tu modelo YOLOv8 para recomendar anotaciones. Para utilizar Label Assist, primero sube un modelo YOLOv8 a Roboflow (consulta las instrucciones m谩s adelante en la gu铆a). A continuaci贸n, haz clic en el icono de la varita m谩gica de la barra lateral izquierda y selecciona tu modelo para utilizarlo en Label Assist.

Elige un modelo y haz clic en "Continuar" para activar el Asistente de Etiquetas:

Activar el Asistente de Etiquetas

Cuando abras nuevas im谩genes para anotarlas, el Asistente de Etiquetas activar谩 y recomendar谩 anotaciones.

ALabel Assist recomendando una anotaci贸n

Gesti贸n de conjuntos de datos para YOLOv8

Roboflow proporciona un conjunto de herramientas para comprender los conjuntos de datos de visi贸n por ordenador.

En primer lugar, puedes utilizar la b煤squeda de conjunto de datos para encontrar im谩genes que cumplan una descripci贸n sem谩ntica de texto (es decir, encontrar todas las im谩genes que contengan personas), o que cumplan una etiqueta especificada (es decir, que la imagen est茅 asociada a una etiqueta concreta). Para utilizar la b煤squeda de conjuntos de datos, haz clic en "Conjunto de datos" en la barra lateral. A continuaci贸n, introduce una consulta de b煤squeda utilizando la barra de b煤squeda y los filtros asociados de la parte superior de la p谩gina.

Por ejemplo, la siguiente consulta de texto busca im谩genes que contengan personas en un conjunto de datos:

Buscar una imagen

Puedes limitar tu b煤squeda a las im谩genes con una etiqueta concreta utilizando el selector "Etiquetas":

Filtrar im谩genes por etiqueta

Antes de empezar a entrenar un modelo con tu conjunto de datos, te recomendamos que utilices Roboflow Health Check, una herramienta web que proporciona una visi贸n de tu conjunto de datos y de c贸mo puedes mejorarlo antes de entrenar un modelo de visi贸n.

Para utilizar la Comprobaci贸n de Salud, haz clic en el enlace "Comprobaci贸n de Salud" de la barra lateral. Aparecer谩 una lista de estad铆sticas que muestran el tama帽o medio de las im谩genes de tu conjunto de datos, el equilibrio de clases, un mapa de calor de d贸nde est谩n las anotaciones en tus im谩genes, etc.

Roboflow An谩lisis del chequeo m茅dico

El chequeo puede recomendar cambios que ayuden a mejorar el rendimiento del conjunto de datos. Por ejemplo, la funci贸n de equilibrio de clases puede mostrar que hay un desequilibrio en las etiquetas que, si se soluciona, puede aumentar el rendimiento o tu modelo.

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

Para exportar tus datos, necesitar谩s una versi贸n del conjunto de datos. Una versi贸n es un estado de tu conjunto de datos congelado en el tiempo. Para crear una versi贸n, primero haz clic en "Versiones" en la barra lateral. A continuaci贸n, haz clic en el bot贸n "Crear nueva versi贸n". En esta p谩gina, podr谩s elegir aumentos y pasos de preprocesamiento para aplicar a tu conjunto de datos:

Crear una versi贸n del conjunto de datos en Roboflow

Para cada aumento que selecciones, aparecer谩 una ventana emergente que te permitir谩 ajustar el aumento a tus necesidades. Aqu铆 tienes un ejemplo de ajuste de un aumento de luminosidad dentro de los par谩metros especificados:

Aplicar aumentos a un conjunto de datos

Cuando se haya generado la versi贸n de tu conjunto de datos, podr谩s exportar tus datos a una serie de formatos. Haz clic en el bot贸n "Exportar conjunto de datos" de la p谩gina de tu versi贸n de conjunto de datos para exportar tus datos:

Exportar un conjunto de datos

Ya est谩s preparado para entrenar YOLOv8 con un conjunto de datos personalizado. Sigue esta gu铆a escrita y el v铆deo de YouTube para obtener instrucciones paso a paso o consulta la documentaci贸n deUltralytics .

Sube los pesos personalizados del modelo YOLOv8 para probarlo y desplegarlo

Roboflow ofrece una API infinitamente escalable para modelos desplegados y SDKs para su uso con NVIDIA Jetsons, Luxonis OAKs, Raspberry Pis, dispositivos basados en GPU y mucho m谩s.

Puedes desplegar los modelos de YOLOv8 cargando los pesos de YOLOv8 en Roboflow. Puedes hacerlo con unas pocas l铆neas de c贸digo de Python . Crea un nuevo archivo Python y a帽ade el siguiente c贸digo:

import roboflow  # install with 'pip install roboflow'

roboflow.login()

rf = roboflow.Roboflow()

project = rf.workspace(WORKSPACE_ID).project("football-players-detection-3zvbc")
dataset = project.version(VERSION).download("yolov8")

project.version(dataset.version).deploy(model_type="yolov8", model_path=f"{HOME}/runs/detect/train/")

En este c贸digo, sustituye el ID del proyecto y el ID de la versi贸n por los valores de tu cuenta y de tu proyecto. Aprende a recuperar tu clave API de Roboflow .

Cuando ejecutes el c贸digo anterior, se te pedir谩 que te autentiques. A continuaci贸n, se cargar谩 tu modelo y se crear谩 una API para tu proyecto. Este proceso puede tardar hasta 30 minutos en completarse.

Para probar tu modelo y encontrar instrucciones de despliegue para los SDK compatibles, ve a la pesta帽a "Desplegar" de la barra lateral Roboflow . En la parte superior de esta p谩gina, aparecer谩 un widget con el que podr谩s probar tu modelo. Puedes utilizar tu c谩mara web para realizar pruebas en directo o subir im谩genes o v铆deos.

Ejecutar la inferencia en una imagen de ejemplo

Tambi茅n puedes utilizar tu modelo subido como asistente de etiquetado. Esta funci贸n utiliza tu modelo entrenado para recomendar anotaciones en las im谩genes subidas a Roboflow.

C贸mo evaluar los modelos YOLOv8

Roboflow proporciona una serie de funciones para utilizar en la evaluaci贸n de modelos.

Una vez que hayas cargado un modelo en Roboflow, puedes acceder a nuestra herramienta de evaluaci贸n de modelos, que proporciona una matriz de confusi贸n que muestra el rendimiento de tu modelo, as铆 como un gr谩fico interactivo de an谩lisis vectorial. Estas funciones pueden ayudarte a encontrar oportunidades para mejorar tu modelo.

Para acceder a una matriz de confusi贸n, ve a la p谩gina de tu modelo en el panel Roboflow , y luego haz clic en "Ver evaluaci贸n detallada":

Inicia una evaluaci贸n del modelo Roboflow

Aparecer谩 una ventana emergente mostrando una matriz de confusi贸n:

Una matriz de confusi贸n

Pasa el rat贸n por encima de una casilla de la matriz de confusi贸n para ver el valor asociado a la casilla. Haz clic en una casilla para ver las im谩genes de la categor铆a correspondiente. Haz clic en una imagen para ver las predicciones del modelo y los datos reales asociados a esa imagen.

Para obtener m谩s informaci贸n, haz clic en An谩lisis Vectorial. Esto mostrar谩 un gr谩fico de dispersi贸n de las im谩genes de tu conjunto de datos, calculado mediante CLIP. Cuanto m谩s cerca est茅n las im谩genes en el gr谩fico, m谩s similares son sem谩nticamente. Cada imagen se representa como un punto con un color entre blanco y rojo. Cuanto m谩s rojo sea el punto, peor funcionar谩 el modelo.

Un gr谩fico de an谩lisis vectorial

Puedes utilizar el An谩lisis Vectorial para:

  • Encuentra grupos de im谩genes;
  • Identificar los grupos en los que el modelo funciona mal, y;
  • Visualiza los puntos en com煤n entre las im谩genes en las que el modelo obtiene malos resultados.

Recursos de aprendizaje

驴Quieres saber m谩s sobre el uso de Roboflow para crear modelos YOLOv8 ? Los siguientes recursos pueden serte 煤tiles en tu trabajo.

  • Entrena YOLOv8 en un conjunto de datos personalizado: Sigue nuestro cuaderno interactivo que te muestra c贸mo entrenar un modelo YOLOv8 en un conjunto de datos personalizado.
  • Autodistill: Utiliza modelos de visi贸n de gran base para etiquetar datos para modelos espec铆ficos. Puedes etiquetar im谩genes para utilizarlas en el entrenamiento de modelos de clasificaci贸n, detecci贸n y segmentaci贸n de YOLOv8 con Autodistill.
  • Supervisi贸n: Un paquete de Python con 煤tiles utilidades para trabajar con modelos de visi贸n por ordenador. Puedes utilizar la supervisi贸n para filtrar detecciones, calcular matrices de confusi贸n y mucho m谩s, todo ello en unas pocas l铆neas de c贸digo de Python .
  • Roboflow Blog: El blog Roboflow contiene m谩s de 500 art铆culos sobre visi贸n por ordenador, que abarcan temas desde c贸mo entrenar un modelo YOLOv8 hasta las mejores pr谩cticas de anotaci贸n.
  • Roboflow Canal de YouTube: Navega por docenas de gu铆as de visi贸n por ordenador en profundidad en nuestro canal de YouTube, que cubren temas desde el entrenamiento de modelos YOLOv8 hasta el etiquetado automatizado de im谩genes.

Muestra de proyectos

A continuaci贸n te presentamos algunos de los muchos comentarios que hemos recibido sobre el uso conjunto de YOLOv8 y Roboflow para crear modelos de visi贸n por ordenador.

Mostrar imagen Mostrar imagen Mostrar imagen



Creado 2023-11-12, Actualizado 2024-05-08
Autores: Burhan-Q (1), glenn-jocher (8), capjamesg (1)

Comentarios