- Introducción: Por qué las imágenes en escala de grises pueden afectar la detección de anomalías.
- Detección de anomalías, imágenes en escala de grises: Resumen rápido sobre los dos temas principales discutidos en este artículo.
- Configuración del experimento: Qué y cómo comparamos.
- Resultados de rendimiento: Cómo las imágenes de la escala de grises afectan el rendimiento del modelo.
- Resultados de la velocidad: Cómo las imágenes de la escala de grises afectan la velocidad de inferencia.
- Conclusión
1. Introducción
En este artículo, exploraremos cómo las imágenes en escala de grises afectan el rendimiento de los modelos de detección de anomalías y examinaremos cómo esta elección influye en la velocidad de inferencia.
En la visión por computadora, está bien establecido que los modelos de clasificación pre-capacitados en las imágenes de la escala de grises pueden conducir a un rendimiento degradado. Pero que hay modelos de detección de anomalías? Estos modelos no requieren ajuste fino, pero utilizan modelos de clasificación previamente capacitados como WideSnet o EfficientNet como extractores de características. Esto plantea una pregunta importante: ¿estos extractores de características producen características menos relevantes cuando se aplican a una imagen en escala de grises?
Esta pregunta no es solo académica, sino una con implicaciones del mundo real para cualquier persona que trabaje en la automatización de la inspección visual industrial en la fabricación. Por ejemplo, es posible que se pregunte si una cámara de color es necesaria o si una escala de grises más barata será suficiente. O podría tener inquietudes con respecto a la velocidad de inferencia y desea aprovechar cualquier oportunidad para aumentarla.
2. Detección de anomalías, imágenes en escala de grises
Si ya está familiarizado con la detección de anomalías en la visión por computadora y los conceptos básicos de la representación de la imagen digital, no dude en omitir esta sección. De lo contrario, proporciona una breve descripción general y enlaces para una mayor exploración.
Detección de anomalías
En la visión por computadora, la detección de anomalías es un campo de evolución rápida dentro del aprendizaje profundo que se centra en identificar patrones inusuales en las imágenes. Por lo general, estos modelos están entrenados utilizando solo imágenes sin defectos, lo que permite que el modelo aprenda cómo se ve “normal”. Durante la inferencia, el modelo puede detectar imágenes que se desvían de esta representación aprendida como anormal. Dichas anomalías a menudo corresponden a varios defectos que pueden aparecer en un entorno de producción pero no se observaron durante el entrenamiento. Para una introducción más detallada, ver este enlace.
Imágenes en escala de grises
Para los humanos, las imágenes de color y escala de grises se ven bastante similares (aparte de la falta de color). Pero para las computadoras, una imagen es una variedad de números, por lo que se vuelve un poco más complicado. Una imagen en escala de grises es una matriz bidimensional de números, que generalmente varía de 0 a 255, donde cada valor representa la intensidad de un píxel, siendo 0 negro y 255 blanco.
En contraste, las imágenes en color generalmente se componen de tres imágenes de escala de grises separadas (llamadas canales) apiladas para formar una matriz tridimensional. Cada canal (rojo, verde y azul) describe la intensidad del color respectivo, y su combinación crea una imagen en color. Puedes aprender más sobre esto aquí.
3. Establecimiento de experimentos
Modelos
Usaremos cuatro lo último Modelos de detección de anomalías: Muelle, Destilación inversa, Flujo rápidoy VASO. Estos modelos representan diferentes tipos de algoritmos de detección de anomalías y, al mismo tiempo, se usan ampliamente en aplicaciones prácticas debido a la rápida capacitación y la velocidad de inferencia. Los primeros tres modelos usan la implementación del Biblioteca de anomalibpara el vidrio empleamos el implementación oficial.
Conjunto de datos
Para nuestros experimentos, usamos el Visa conjunto de datos con 12 categorías de objetos, que proporcionan una variedad de imágenes y no tiene defectos dependientes del color.
Métrica
Usaremos el nivel de imagen Auroc Para ver si toda la imagen se clasificó correctamente sin la necesidad de seleccionar un umbral en particular y a nivel de píxel Auproque muestra lo buenos que somos para localizar áreas defectuosas en la imagen. La velocidad se evaluará utilizando la métrica de cuadros por segundo (FPS). Para todas las métricas, los valores más altos corresponden a mejores resultados.
Conversión en escala de grises
Para hacer una imagen en la escala de grises, usaremos Transforma de visión de antorchas.
Para un canal, también modificamos extractores de características utilizando el in_chans parámetro en el Biblioteca Timm.
El código para adaptar anomalib para usar un canal está disponible aquí.
4. Resultados de rendimiento
RGB
Estas son imágenes regulares con canales rojos, azules y verdes.
Escala de grises, tres canales
Las imágenes se convirtieron a escala de grises utilizando transformación de visión de torch Escala de grises con tres canales.
Escala de grises, un canal
Las imágenes se convirtieron en escala de grises utilizando la misma escala de grises de transformación de visión de antorchas con un canal.
Comparación
Podemos ver que Muelle y Destilación inversa Tener resultados cercanos en los tres experimentos para las métricas a nivel de imagen y píxel. Flujo rápido se vuelve algo peor, y VASO se vuelve notablemente peor. Los resultados se promedian en las 12 categorías de objetos en el conjunto de datos de visa.
¿Qué pasa con los resultados por categoría de objetos? ¿Quizás algunos de ellos funcionan peor que otros, y algunos mejor, lo que hace que los resultados promedio parezcan iguales? Aquí está la visualización de resultados para PatchCore en los tres experimentos que muestran que los resultados también son bastante estables dentro de las categorías.
La misma visualización para el vidrio muestra que algunas categorías pueden ser ligeramente mejores, mientras que algunas pueden ser muy peores. Sin embargo, esto no es necesariamente causado solo por la transformación de la escala de grises; Algunos de ellos pueden ser fluctuaciones de resultados regulares debido a cómo se capacita el modelo. Los resultados promediados muestran una clara tendencia de que para este modelo, las imágenes RGB producen el mejor resultado, la escala de grises con tres canales algo peor, y la escala de grises con un canal es el peor resultado.
Prima
¿Cómo cambian los resultados por categoría? Es posible que algunas categorías sean simplemente más adecuadas para RGB o imágenes en escala de grises, incluso si no hay defectos dependientes del color.
Aquí está la visualización de la diferencia entre RGB y GrayScale con un canal para todos los modelos. Podemos ver que solo la categoría de pipe_fryum se vuelve ligeramente (o fuertemente) peor para cada modelo. El resto de las categorías empeoran o mejoran, dependiendo del modelo.
Bono extra
Si está interesado en cómo se ve este pipe_fryum, aquí hay un par de ejemplos con predicciones del modelo de vidrio.
5. Resultados de la velocidad
El número de canales afecta solo a la primera capa del modelo, el resto permanece sin cambios. La mejora de la velocidad parece ser insignificante, destacando cómo la extracción de características de la primera capa es solo una pequeña parte de los cálculos realizados por los modelos. El vidrio muestra una mejora algo notable, pero al mismo tiempo, muestra la peor disminución de las métricas, por lo que requiere precaución si desea acelerarlo cambiando a un canal.
6. Conclusión
Entonces, ¿cómo afecta el uso de imágenes en escala de grises de la detección de anomalías visuales? Depende, pero RGB parece ser la apuesta más segura. El impacto varía según el modelo y los datos. La destilación de PatchCore y inversa generalmente manejan bien las entradas de escala de grises, pero debe tener más cuidado con el flujo rápido y especialmente el vidrio, lo que muestra cierta mejora de la velocidad, pero también la caída más significativa en las métricas de rendimiento. Si desea usar la entrada de escala de grises, debe probarla y compararla con RGB en sus datos específicos.
El cuaderno Jupyter con el código anomalib: enlace.
Seguir al autor sobre LinkedIn Para obtener más información sobre la detección de anomalías visuales industriales.
Referencias
1. C. Hughes, Transferir el aprendizaje en las imágenes de la escala de grises: cómo ajustar los modelos previos a la aparición (2022), towdatascience.com
2. S. Wehkamp, Una guía práctica para la detección de anomalías basadas en imágenes utilizando anomalib (2022), blog.ml6.eu
3. A. Baitieva, Y. Bouauni, A. Briot, D. Ameln, S. Khalfaoui y S. Akcay. Más allá de los puntos de referencia académicos: análisis crítico y mejores prácticas para la detección de anomalías industriales visuales (2025), Taller CVPR sobre anomalía visual y detección de novedades (Vand)
4. Y. Zou, J. Jeong, L. Pemula, D. Zhang y O. Dabeer, Pre-SOUPERADO DE PRESENTACIÓN SOBRE DE AFEFERACIÓN PARA LA Detección y segmentación de anomalías (2022), ECCV
5. S. Akcay, D. Ameln, A. Vaidya, B. Lakshmanan, N. Ahuja y U. Genc, Anomalib (2022), ICIP