Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Configuración de cookies
Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Aprenda a utilizar Albumentations para aumentos al entrenar de forma personalizada Ultralytics YOLO11 para mejorar el rendimiento del modelo con datos de entrenamiento diversos.
Al construir una solución de visión artificial, la recopilación de un conjunto diverso de imágenes para entrenar modelos de IA visual puede ser una parte crucial del proceso. A menudo requiere mucho tiempo y dinero, y a veces, las imágenes recogidas siguen sin ser lo suficientemente variadas para que los modelos aprendan eficazmente.
Por ejemplo, los modelos de visión artificial como Ultralytics YOLO11 pueden entrenarse de forma personalizada con conjuntos de datos de imágenes para diversas tareas de visión artificial relacionadas con diferentes aplicaciones. La diversidad de los datos es clave porque ayuda al modelo a generalizar mejor, lo que le permite reconocer objetos y patrones en una amplia gama de escenarios del mundo real.
Si tiene dificultades con la falta de diversidad de datos, las técnicas de aumento de datos de imagen pueden ser una gran solución. Métodos como la rotación, el volteo y el ajuste del brillo pueden ayudar a aumentar la variedad de su conjunto de datos, mejorando la capacidad del modelo para manejar una gama más amplia de condiciones.
Por eso, Ultralytics admite una integración para el aumento de datos de imagen. Utilizando Albumentations, una herramienta popular que ofrece una colección de transformaciones, puede crear datos visuales diversos. Esta integración simplifica el proceso de entrenamiento de YOLO11 al aumentar automáticamente las imágenes de entrenamiento, lo que conduce a un mejor rendimiento del modelo.
En este artículo, exploraremos cómo puede utilizar la integración de Albumentations, sus beneficios y su impacto en el entrenamiento de modelos.
¿Qué es Albumentations?
Los modelos de visión artificial pueden aprender de un amplio conjunto de imágenes de alta calidad para reconocer objetos en diferentes entornos. La recopilación de grandes conjuntos de datos de fuentes del mundo real puede ser lenta, costosa e ineficiente. Para agilizar esta tarea, puede utilizar la aumentación de datos de imagen para crear nuevas variaciones de las imágenes existentes, lo que ayuda a los modelos a aprender de diferentes escenarios sin recopilar más datos.
Específicamente, puede aprovechar Albumentations, una biblioteca de código abierto introducida para el aumento eficiente de datos de imágenes en 2018. Admite una variedad de operaciones, desde cambios geométricos simples como rotaciones e inversiones hasta ajustes más complejos como brillo, contraste y adición de ruido.
Fig 1. Ejemplos de diferentes tipos de aumentación de datos de imagen.
Características clave de Albumentations
Albumentations es conocido por su alto rendimiento, lo que significa que puede procesar imágenes de forma rápida y eficiente. Construido sobre bibliotecas optimizadas como OpenCV y NumPy, maneja grandes conjuntos de datos con un tiempo de procesamiento mínimo, lo que lo hace ideal para el aumento rápido de datos durante el entrenamiento del modelo.
Estas son algunas otras características clave de Albumentations:
Amplia gama de transformaciones: Albumentations proporciona más de 70 tipos de aumentos. Estas variaciones ayudan a los modelos a aprender a detectar objetos a pesar de los cambios en la iluminación, los ángulos o los fondos.
Optimizado para la velocidad: Utiliza técnicas de optimización avanzadas como SIMD (Single Instruction, Multiple Data), que procesa múltiples puntos de datos a la vez para acelerar el aumento de imágenes y manejar grandes conjuntos de datos de forma eficiente.
Tres niveles de aumentos: Mejora los datos de tres maneras. Por ejemplo, los aumentos a nivel de píxel ajustan el brillo y el color sin alterar los objetos. Mientras tanto, los aumentos a nivel espacial modifican el posicionamiento de los objetos preservando los detalles clave, y los aumentos a nivel de mezcla combinan partes de diferentes imágenes para crear nuevas muestras.
¿Por qué deberías usar la integración de Albumentations?
Puede que se pregunte: hay muchas maneras de aplicar aumentos a un conjunto de datos, e incluso podría crear el suyo propio utilizando herramientas como OpenCV. Entonces, ¿por qué elegir una integración que admita una biblioteca como Albumentations?
Crear manualmente aumentos con herramientas como OpenCV puede llevar mucho tiempo y requiere cierta experiencia. También puede ser complicado ajustar las transformaciones para obtener los mejores resultados. La integración de Albumentations facilita este proceso. Ofrece muchas transformaciones listas para usar que pueden ahorrarle tiempo y esfuerzo al preparar su conjunto de datos.
Otra razón para elegir la integración de Albumentations es que funciona sin problemas con el pipeline de entrenamiento de modelos de Ultralytics. Facilita mucho el entrenamiento personalizado de YOLO11, ya que las aumentaciones se aplican automáticamente durante el entrenamiento. Simplifica el proceso, para que pueda centrarse más en mejorar su modelo en lugar de manejar la preparación de datos.
Primeros pasos con la integración de Albumentations
Curiosamente, usar las integraciones de Albumentations para entrenar YOLO11 es más sencillo de lo que parece. Una vez que se configuran las bibliotecas correctas, la integración aplica automáticamente las aumentaciones de datos de imagen durante el entrenamiento. Ayuda al modelo a aprender de diferentes variaciones de imagen utilizando el mismo conjunto de datos.
A continuación, veamos cómo instalar y usar la integración de Albumentations al entrenar YOLO11 de forma personalizada.
Instalando el paquete de Python Ultralytics y Albumentations
Antes de aplicar las aumentaciones, tanto el paquete de Python de Ultralytics como Albumentations deben estar instalados. La integración se ha creado para que ambas bibliotecas trabajen juntas sin problemas de forma predeterminada, por lo que no tienes que preocuparte por configuraciones complejas.
Todo el proceso de instalación se puede completar en un par de minutos con un solo comando pip, que es una herramienta de administración de paquetes para instalar bibliotecas de Python, como se muestra en la imagen a continuación.
Fig. 2. Instalando Ultralytics y Albumentations.
Una vez instalado Albumentations, el modo de entrenamiento del modelo Ultralytics aplica automáticamente aumentos de imagen durante el entrenamiento. Si Albumentations no está instalado, estos aumentos no se aplicarán. Para obtener más detalles, puede consultar la documentación oficial de Ultralytics.
Entrenamiento de YOLO11 con la ayuda de la integración de Albumentations
Entendamos mejor lo que está sucediendo bajo el capó de la integración de Albumentations.
Aquí tiene un análisis más detallado de las aumentaciones que se aplican durante el entrenamiento de YOLO11:
Desenfoque: Esta transformación añade un ligero desenfoque a una imagen. Ayuda al modelo a detectar objetos incluso cuando están desenfocados.
Desenfoque de mediana: Reduce el ruido aleatorio a la vez que conserva los bordes de los objetos en una imagen. Esto facilita que el modelo detecte objetos en entornos complejos.
Escala de grises: Al convertir una imagen a blanco y negro, esta aumentación puede ayudar al modelo a centrarse en las formas y texturas en lugar de los colores.
CLAHE (Ecualización adaptativa del histograma con límite de contraste): Esta ampliación aumenta el contraste en las imágenes, particularmente en áreas que son demasiado oscuras o difíciles de ver, como en condiciones de poca luz o neblina. Esto hace que los objetos en esas áreas sean más claros y fáciles de identificar para el modelo.
Fig. 3. Un ejemplo de un aumento de escala de grises aplicado a una imagen de un gato.
Aplicaciones de YOLO11 y la integración de Albumentations
Si está entrenando YOLO11 de forma personalizada para una aplicación específica, la integración de Albumentations puede ayudar a mejorar el rendimiento del modelo adaptándose a diversas condiciones. Analicemos algunas aplicaciones del mundo real y los retos que puede resolver esta integración.
Sin embargo, la creación de estas soluciones de visión artificial conlleva su propio conjunto de desafíos. Los escaneos médicos pueden variar mucho entre hospitales, influenciados por factores como diferentes equipos, configuraciones e incluso la experiencia de los técnicos. Las variaciones en el brillo, el contraste y la exposición pueden afectar la consistencia y la precisión de los modelos de Visión Artificial, lo que dificulta su rendimiento fiable en diferentes entornos.
Aquí es donde la integración de herramientas como Albumentations se vuelve esencial. Al generar múltiples versiones aumentadas del mismo escaneo, Albumentations permite que el modelo aprenda de una variedad de calidades de imagen. Esto ayuda a que el modelo sea más robusto, lo que le permite detectar enfermedades con precisión tanto en imágenes de alta como de baja calidad.
Otra aplicación interesante de la visión artificial es en la seguridad y la vigilancia. La detección de objetos en tiempo real puede ayudar a los equipos de seguridad a identificar posibles amenazas rápidamente.
Una preocupación principal relacionada con esta aplicación es que las cámaras de seguridad capturan imágenes en diversas condiciones de iluminación a lo largo del día, y estas condiciones pueden afectar drásticamente la forma en que un modelo entiende tales imágenes. Factores como entornos con poca luz, deslumbramiento o poca visibilidad pueden dificultar que los modelos de visión artificial detecten objetos o reconozcan amenazas potenciales de manera consistente.
La integración de Albumentations ayuda aplicando transformaciones para imitar diferentes condiciones de iluminación. Esto permite que el modelo aprenda a detectar objetos tanto en entornos con mucha luz como con poca luz, lo que lo hace más fiable y mejora los tiempos de respuesta en condiciones difíciles.
Redefiniendo los flujos de trabajo minoristas y la experiencia del cliente
Un derrame en el pasillo de un supermercado, un perro corriendo por una tienda o un niño derribando una exhibición de productos son solo algunos ejemplos de eventos cotidianos que pueden ser casos límite para la IA de visión en entornos minoristas. La visión artificial se utiliza cada vez más para mejorar la experiencia del cliente mediante el seguimiento del comportamiento de los compradores, la supervisión del tráfico peatonal y la identificación de productos en los estantes. Sin embargo, estas situaciones del mundo real pueden ser difíciles de entender y procesar con precisión para los sistemas de IA.
Si bien no todos los escenarios pueden representarse en un conjunto de datos de visión artificial, la integración de Albumentations ayuda al aumentar los datos para cubrir muchas situaciones posibles, como iluminación inesperada, ángulos inusuales u obstrucciones. Esto ayuda a los modelos de visión artificial a adaptarse a diversas condiciones, mejorando su capacidad para manejar casos extremos y realizar predicciones precisas en entornos minoristas dinámicos.
Conclusiones clave
La recopilación de datos diversos del mundo real para el entrenamiento de modelos puede ser complicada, pero Albumentations lo facilita mediante la creación de variaciones de imagen que ayudan a los modelos a adaptarse a diferentes condiciones.
La integración de Albumentations, soportada por Ultralytics, simplifica el proceso de aplicación de estas aumentaciones durante el entrenamiento personalizado de YOLO11. Esto da como resultado una mejor calidad del conjunto de datos, lo que beneficia a una amplia gama de industrias al producir modelos de Vision AI más precisos y fiables.