YOLO Vision 2026:

Comprender los pasos clave en un proyecto de visión artificial#

Construir un proyecto de visión artificial supone avanzar a través de una secuencia clara de etapas: definir tus objetivos, recopilar y anotar datos, entrenar y evaluar un modelo, y desplegarlo y mantenerlo en producción. Esta guía recorre cada paso en orden y explica por qué es importante, para que puedas planificar y ejecutar tu propio proyecto con confianza.

La visión por ordenador es una subdisciplina de la inteligencia artificial (IA) que ayuda a los ordenadores a ver y comprender el mundo del mismo modo que lo hacen las personas. Procesa y analiza imágenes o vídeos para extraer información, reconocer patrones y tomar decisiones basándose en esos datos.



Watch: How to Do Computer Vision Projects | A Step-by-Step Guide

Las técnicas de visión por ordenador, como la detección de objetos, la clasificación de imágenes y la segmentación de instancias, se pueden aplicar en diversos sectores, desde la conducción autónoma hasta la imagen médica, para obtener información valiosa.

Una visión general de un proyecto de visión artificial#

Antes de tratar los detalles de cada paso necesario en un proyecto de visión artificial, echemos un vistazo al proceso general. Si iniciaras un proyecto de visión artificial hoy, seguirías estos pasos:

Computer Vision Project Steps Overview

Ahora que sabemos qué esperar, profundicemos en los pasos y hagamos que tu proyecto avance.

Paso 1: Definir los objetivos de tu proyecto#

El primer paso en cualquier proyecto de visión artificial es definir claramente el problema que intentas resolver. Conocer el objetivo final te ayuda a empezar a construir una solución. Esto es especialmente cierto en lo que respecta a la visión artificial, porque el objetivo de tu proyecto afectará directamente a la tarea de visión artificial en la que debes centrarte.

Aquí tienes algunos ejemplos de objetivos de proyectos y las tareas de visión artificial que pueden utilizarse para alcanzar estos objetivos:

  • Objetivo: Desarrollar un sistema que pueda supervisar y gestionar el flujo de diferentes tipos de vehículos en autopistas, mejorando la gestión del tráfico y la seguridad.

    • Tarea de visión artificial: La detección de objetos es ideal para el control del tráfico porque localiza e identifica eficazmente múltiples vehículos. Es menos exigente desde el punto de vista computacional que la segmentación de imágenes, que proporciona detalles innecesarios para esta tarea, garantizando un análisis más rápido y en tiempo real.
  • Objetivo: Desarrollar una herramienta que ayude a los radiólogos proporcionando contornos precisos a nivel de píxel de los tumores en escaneos de imágenes médicas.

    • Tarea de visión artificial: La segmentación de imágenes es adecuada para imágenes médicas porque proporciona límites precisos y detallados de los tumores, algo crucial para evaluar el tamaño, la forma y la planificación del tratamiento.
  • Objetivo: Crear un sistema digital que clasifique diversos documentos (por ejemplo, facturas, recibos, documentos legales) para mejorar la eficiencia organizativa y la recuperación de documentos.

    • Tarea de visión por ordenador: La clasificación de imágenes es ideal en este caso, ya que procesa un documento a la vez sin necesidad de tener en cuenta la posición del documento en la imagen. Este enfoque simplifica y acelera el proceso de clasificación.

Seleccionar el modelo adecuado y el enfoque de entrenamiento#

Tras comprender el objetivo del proyecto y las tareas de visión por ordenador adecuadas, una parte esencial de la definición de la meta del proyecto es seleccionar el modelo correcto y el enfoque de entrenamiento.

Dependiendo del objetivo, puedes elegir seleccionar el modelo primero o después de ver qué datos puedes recopilar en el Paso 2. Por ejemplo, supongamos que tu proyecto depende en gran medida de la disponibilidad de tipos específicos de datos. En ese caso, puede ser más práctico reunir y analizar los datos primero antes de seleccionar un modelo. Por otro lado, si tienes una comprensión clara de los requisitos del modelo, puedes elegir el modelo primero y luego recopilar los datos que se ajusten a esas especificaciones.

Elegir entre entrenar desde cero o utilizar el aprendizaje por transferencia afecta a la forma en que preparas tus datos. El entrenamiento desde cero requiere un conjunto de datos diverso para construir la comprensión del modelo desde los cimientos. Por otro lado, el aprendizaje por transferencia te permite utilizar un modelo preentrenado y adaptarlo con un conjunto de datos más pequeño y específico. Asimismo, elegir un modelo específico para entrenar determinará cómo debes preparar tus datos, como cambiar el tamaño de las imágenes o añadir anotaciones, de acuerdo con los requisitos específicos del modelo.

Training From Scratch Vs. Using Transfer Learning

Considera el despliegue al elegir un modelo

Considera el destino de despliegue de un modelo para garantizar la compatibilidad y el rendimiento. Por ejemplo, los modelos ligeros son ideales para la informática en el borde gracias a su eficiencia en dispositivos con recursos limitados.

Para obtener más información, lee nuestra guía sobre cómo definir los objetivos de tu proyecto y seleccionar el modelo adecuado.

Antes de empezar con el trabajo práctico de un proyecto de visión artificial, es importante tener una comprensión clara de estos detalles. Comprueba dos veces que has tenido en cuenta lo siguiente antes de pasar al Paso 2:

  • Define claramente el problema que intentas resolver.
  • Determina el objetivo final de tu proyecto.
  • Identifica la tarea de visión artificial específica necesaria (por ejemplo, detección de objetos, clasificación de imágenes, segmentación de imágenes).
  • Decide si entrenar un modelo desde cero o utilizar aprendizaje por transferencia.
  • Selecciona el modelo adecuado para tu tarea y tus necesidades de despliegue.

Paso 2: Recopilación y anotación de datos#

La calidad de tus modelos de visión por ordenador depende de la calidad de tu conjunto de datos. Puedes recopilar imágenes de internet, hacer tus propias fotos o utilizar conjuntos de datos ya existentes. Aquí tienes algunos recursos excelentes para descargar conjuntos de datos de alta calidad: Google Dataset Search Engine, UC Irvine Machine Learning Repository y Kaggle Datasets.

Algunas bibliotecas, como Ultralytics, proporcionan compatibilidad integrada para varios conjuntos de datos, lo que facilita empezar a trabajar con datos de alta calidad. Estas bibliotecas suelen incluir utilidades para utilizar conjuntos de datos populares sin problemas, lo que puede ahorrarte mucho tiempo y esfuerzo en las fases iniciales de tu proyecto.

Sin embargo, si decides recopilar imágenes o hacer tus propias fotos, tendrás que anotar tus datos. La anotación de datos es el proceso de etiquetar tus datos para transmitir conocimientos a tu modelo. El tipo de anotación de datos con el que trabajes dependerá de tu técnica específica de visión por ordenador. Aquí tienes algunos ejemplos:

  • Clasificación de imágenes: Etiquetarás la imagen completa como una sola clase.
  • Detección de Objetos: Dibujarás cuadros delimitadores alrededor de cada objeto en la imagen y etiquetarás cada cuadro.
  • Segmentación de Imágenes: Etiquetarás cada píxel de la imagen según el objeto al que pertenezca, creando límites de objetos detallados.

Bounding box, polygon, and keypoint annotations

La recopilación y anotación de datos puede ser una tarea manual que requiere mucho tiempo. Una herramienta de anotación dedicada la hace más rápida: Ultralytics Platform proporciona un editor de anotaciones integrado con anotación inteligente impulsada por SAM para datos de detección, segmentación y OBB, guardando las etiquetas directamente en formato YOLO.

Paso 3: Aumento de datos y división de tu conjunto de datos#

Tras recopilar y anotar tus datos de imagen, es importante dividir primero tu conjunto de datos en conjuntos de entrenamiento, validación y prueba antes de realizar el aumento de datos. Dividir tu conjunto de datos antes del aumento es crucial para probar y validar tu modelo con datos originales y sin alteraciones. Ayuda a evaluar con precisión cómo se generaliza el modelo a datos nuevos y no vistos.

Así es como debes dividir tus datos:

  • Conjunto de entrenamiento: Es la mayor parte de tus datos, normalmente el 70-80% del total, utilizados para entrenar tu modelo.
  • Conjunto de Validación: Por lo general, representa entre el 10% y el 15% de tus datos; este conjunto se utiliza para ajustar los hiperparámetros y validar el modelo durante el entrenamiento, lo que ayuda a prevenir el sobreajuste.
  • Conjunto de prueba: El 10-15% restante de tus datos se reserva como conjunto de prueba. Se utiliza para evaluar el rendimiento del modelo con datos no vistos una vez completado el entrenamiento.

Después de dividir tus datos, puedes realizar el aumento de datos aplicando transformaciones como rotar, escalar y voltear imágenes para aumentar artificialmente el tamaño de tu conjunto de datos. El aumento de datos hace que tu modelo sea más robusto ante variaciones y mejora su rendimiento en imágenes no vistas.

Data augmentation examples

Bibliotecas como OpenCV, Albumentations y TensorFlow ofrecen funciones de aumento flexibles que puedes utilizar. Además, algunas bibliotecas, como Ultralytics, cuentan con ajustes de aumento integrados directamente en su función de entrenamiento de modelos, lo que simplifica el proceso.

Para entender mejor tus datos, puedes usar herramientas como Matplotlib o Seaborn para visualizar las imágenes y analizar su distribución y características. Visualizar tus datos ayuda a identificar patrones, anomalías y la eficacia de tus técnicas de aumento. La pestaña Charts de Ultralytics Platform puede revelar muchos de estos conocimientos sin necesidad de código, generando automáticamente la distribución de divisiones, recuentos de clases, histogramas de dimensiones de imagen y mapas de calor de la posición de anotación para cada conjunto de datos cargado.

Al comprender, dividir y aumentar tus datos correctamente, puedes desarrollar un modelo bien entrenado, validado y probado que funcione bien en aplicaciones del mundo real.

Paso 4: Entrenamiento del modelo#

Una vez que tu conjunto de datos esté listo para el entrenamiento, puedes centrarte en configurar el entorno necesario, gestionar tus conjuntos de datos y entrenar tu modelo.

En primer lugar, tendrás que asegurarte de que tu entorno esté configurado correctamente. Normalmente, esto incluye lo siguiente:

  • Instalación de bibliotecas y frameworks esenciales como TensorFlow, PyTorch o Ultralytics.
  • Si utilizas una GPU, instalar bibliotecas como CUDA y cuDNN ayudará a habilitar la aceleración por GPU y acelerar el proceso de entrenamiento.

A continuación, puedes cargar tus conjuntos de datos de entrenamiento y validación en tu entorno. Normaliza y preprocesa los datos mediante el cambio de tamaño, la conversión de formatos o el aumento. Con tu modelo seleccionado, configura las capas y especifica los hiperparámetros. Compila el modelo configurando la función de pérdida, el optimizador y las métricas de rendimiento.

Bibliotecas como Ultralytics simplifican el proceso de entrenamiento. Puedes iniciar el entrenamiento introduciendo datos en el modelo con un código mínimo. Estas bibliotecas gestionan los ajustes de pesos, la propagación hacia atrás y la validación de forma automática. También ofrecen herramientas para monitorizar el progreso y ajustar los hiperparámetros fácilmente. Después del entrenamiento, guarda el modelo y sus pesos con unos pocos comandos.

Es importante tener en cuenta que una gestión adecuada del conjunto de datos es vital para un entrenamiento eficiente. Utiliza el control de versiones para los conjuntos de datos con el fin de rastrear los cambios y garantizar la reproducibilidad. Herramientas como DVC (Data Version Control) pueden ayudar a gestionar grandes conjuntos de datos.

Paso 5: Evaluación y ajuste fino del modelo#

Es importante evaluar el rendimiento de tu modelo utilizando varias métricas y refinarlo para mejorar la precisión. La evaluación ayuda a identificar las áreas en las que el modelo destaca y aquellas en las que puede necesitar mejoras. El ajuste fino garantiza que el modelo esté optimizado para ofrecer el mejor rendimiento posible.

  • Métricas de Rendimiento: Utiliza métricas como la precisión, la sensibilidad, el exhaustividad y la puntuación F1 para evaluar el rendimiento de tu modelo. Estas métricas proporcionan información sobre lo bien que tu modelo está haciendo las predicciones.
  • Ajuste de Hiperparámetros: Ajusta los hiperparámetros para optimizar el rendimiento del modelo. Técnicas como la búsqueda en cuadrícula o la búsqueda aleatoria pueden ayudar a encontrar los mejores valores de los hiperparámetros.
  • Ajuste Fino: Realiza pequeños ajustes en la arquitectura del modelo o en el proceso de entrenamiento para mejorar el rendimiento. Esto puede implicar retocar las tasas de aprendizaje, los tamaños de lote u otros parámetros del modelo.

Para comprender mejor las técnicas de evaluación y ajuste fino de modelos, consulta nuestra guía de perspectivas de evaluación de modelos.

Paso 6: Pruebas del modelo#

Las pruebas de modelo confirman que tu modelo funciona bien con datos completamente inéditos, verificando su preparación para el despliegue. La diferencia entre las pruebas de modelo y la evaluación del modelo es que las pruebas se centran en verificar el rendimiento del modelo final en lugar de mejorarlo de forma iterativa.

Es importante probar a fondo y depurar cualquier problema común que pueda surgir. Prueba tu modelo en un conjunto de datos de prueba independiente que no se haya utilizado durante el entrenamiento o la validación. Este conjunto de datos debe representar escenarios del mundo real para garantizar que el rendimiento del modelo sea coherente y fiable.

Asimismo, aborda problemas comunes como el sobreajuste, el subajuste y la fuga de datos. Utiliza técnicas como la validación cruzada y la detección de anomalías para identificar y solucionar estos problemas. Para obtener estrategias de prueba exhaustivas, consulta nuestra guía de pruebas de modelos.

Paso 7: Despliegue del modelo#

Una vez que tu modelo haya sido probado exhaustivamente, es el momento de desplegarlo. El despliegue del modelo implica poner tu modelo a disposición para su uso en un entorno de producción. Aquí tienes los pasos para desplegar un modelo de visión por ordenador:

  • Configuración del entorno: Configura la infraestructura necesaria para la opción de despliegue elegida, ya sea basada en la nube (AWS, Google Cloud, Azure) o basada en el borde (dispositivos locales, IoT).
  • Exportación del Modelo: Exporta tu modelo al formato adecuado (por ejemplo, ONNX, TensorRT, CoreML para YOLO26) para garantizar la compatibilidad con tu plataforma de despliegue.
  • Despliegue del modelo: Despliega el modelo configurando APIs o puntos finales e integrándolo con tu aplicación.
  • Garantizar la escalabilidad: Implementa equilibradores de carga, grupos de autoescalado y herramientas de monitorización para gestionar los recursos y manejar el aumento de datos y las solicitudes de los usuarios.

Para obtener una orientación más detallada sobre las estrategias de despliegue y las mejores prácticas, consulta nuestra guía de prácticas de despliegue de modelos. Ultralytics Platform también proporciona puntos de acceso de despliegue gestionados con autoescalado en 42 regiones globales, gestionando la configuración de la infraestructura de forma automática.

Paso 8: Monitorización, mantenimiento y documentación#

Una vez desplegado tu modelo, es importante supervisar continuamente su rendimiento, mantenerlo para gestionar cualquier problema y documentar todo el proceso para futuras referencias y mejoras.

Las herramientas de monitorización pueden ayudarte a realizar un seguimiento de los indicadores clave de rendimiento (KPI) y detectar anomalías o caídas en la precisión. Al supervisar el modelo, puedes ser consciente de la deriva del modelo, donde el rendimiento del mismo disminuye con el tiempo debido a cambios en los datos de entrada. Vuelve a entrenar periódicamente el modelo con datos actualizados para mantener la precisión y la relevancia.

Model monitoring and maintenance lifecycle

Además de la monitorización y el mantenimiento, la documentación también es clave. Documenta exhaustivamente todo el proceso, incluida la arquitectura del modelo, los procedimientos de entrenamiento, los hiperparámetros, los pasos de preprocesamiento de datos y cualquier cambio realizado durante el despliegue y el mantenimiento. Una buena documentación garantiza la reproducibilidad y facilita las futuras actualizaciones o la resolución de problemas. Al monitorizar, mantener y documentar tu modelo de forma eficaz, puedes asegurarte de que siga siendo preciso, fiable y fácil de gestionar a lo largo de su ciclo de vida.

Participar en la comunidad#

Conectar con una comunidad de entusiastas de la visión artificial puede ayudarte a abordar cualquier problema que te surja mientras trabajas en tu proyecto con confianza. Aquí tienes algunas formas de aprender, solucionar problemas y establecer contactos eficazmente.

Recursos de la comunidad#

  • GitHub Issues: Echa un vistazo al repositorio de GitHub de YOLO26 y utiliza la pestaña Issues para hacer preguntas, informar de errores y sugerir nuevas funciones. La comunidad activa y los mantenedores están ahí para ayudar con problemas específicos.
  • Servidor de Discord de Ultralytics: Únete al servidor de Discord de Ultralytics para interactuar con otros usuarios y desarrolladores, obtener soporte y compartir conocimientos.

Documentación oficial#

  • Documentación de YOLO26 de Ultralytics: Explora la documentación oficial de YOLO26 para obtener guías detalladas con consejos útiles sobre diferentes tareas y proyectos de visión por ordenador.

Utilizar estos recursos te ayudará a superar desafíos y a mantenerte al día con las últimas tendencias y mejores prácticas en la comunidad de visión artificial.

Siguientes pasos#

Ahora dispones de una hoja de ruta para cada etapa de un proyecto de visión por ordenador, desde la definición de los objetivos hasta la monitorización de un modelo desplegado. Ponla en práctica entrenando tu primer modelo YOLO o profundiza en cualquier etapa concreta a través de las guías enlazadas anteriormente. Para ejecutar todo el pipeline sin escribir código, explora Ultralytics Platform.

FAQ#

¿Cómo elijo la tarea de visión artificial adecuada para mi proyecto?#

Elegir la tarea de visión por ordenador adecuada depende del objetivo final de tu proyecto. Por ejemplo, si deseas monitorizar el tráfico, la detección de objetos es adecuada, ya que puede localizar e identificar múltiples tipos de vehículos en tiempo real. Para la imagen médica, la segmentación de imágenes es ideal para proporcionar límites detallados de los tumores, ayudando en el diagnóstico y la planificación del tratamiento. Obtén más información sobre tareas específicas como la detección de objetos, la segmentación de instancias, la segmentación semántica y la clasificación de imágenes.

¿Por qué es crucial la anotación de datos en los proyectos de visión artificial?#

La anotación de datos es vital para enseñar a tu modelo a reconocer patrones. El tipo de anotación varía según la tarea:

  • Clasificación de imágenes: Imagen completa etiquetada como una sola clase.
  • Detección de objetos: Cajas delimitadoras dibujadas alrededor de los objetos.
  • Segmentación de imágenes: Cada píxel etiquetado según el objeto al que pertenece.

El editor de anotaciones integrado en Ultralytics Platform puede ayudarte en este proceso. Para más detalles, consulta nuestra guía de recopilación y anotación de datos.

¿Qué pasos debo seguir para aumentar y dividir mi conjunto de datos eficazmente?#

Dividir tu conjunto de datos antes del aumento ayuda a validar el rendimiento del modelo con datos originales y sin alterar. Sigue estos pasos:

  • Conjunto de entrenamiento: 70-80% de tus datos.
  • Conjunto de Validación: 10-15% para el ajuste de hiperparámetros.
  • Conjunto de prueba: 10-15% restante para la evaluación final.

Tras la división, aplica técnicas de aumento de datos como la rotación, el escalado y el volteo para aumentar la diversidad del conjunto de datos. Bibliotecas como Albumentations y OpenCV pueden ayudar. Ultralytics también ofrece ajustes de aumento integrados para mayor comodidad.

¿Cómo puedo exportar mi modelo de visión artificial entrenado para su implementación?#

Exporta tu modelo entrenado con el método export, eligiendo un formato que coincida con tu destino de despliegue. Ultralytics admite múltiples formatos, incluidos ONNX, TensorRT y CoreML. Para exportar tu modelo YOLO26, sigue estos pasos:

  • Utiliza el método export con el parámetro de formato deseado.
  • Asegúrate de que el modelo exportado se ajuste a las especificaciones de tu entorno de implementación (por ejemplo, dispositivos edge, nube).

Para obtener más información, consulta la guía de exportación de modelos.

¿Cuáles son las mejores prácticas para supervisar y mantener un modelo de visión artificial implementado?#

La monitorización y el mantenimiento continuos son esenciales para el éxito a largo plazo de un modelo. Implementa herramientas para realizar un seguimiento de los Indicadores Clave de Rendimiento (KPI) y detectar anomalías. Vuelve a entrenar el modelo periódicamente con datos actualizados para contrarrestar la deriva del modelo. Documenta todo el proceso, incluida la arquitectura del modelo, los hiperparámetros y los cambios, para garantizar la reproducibilidad y facilitar las futuras actualizaciones. Obtén más información en nuestra guía de monitorización y mantenimiento.

Comentarios