Tecnología y métodos utilizados para proporcionar inspección y análisis automáticos basados en imágenes
La visión artificial es la tecnología y los métodos utilizados para proporcionar inspección y análisis automáticos basados en imágenes para aplicaciones como la inspección automática, el control de procesos y la guía de robots, generalmente en la industria. La visión artificial se refiere a muchas tecnologías, productos de software y hardware, sistemas integrados, acciones, métodos y experiencia. La visión artificial como disciplina de ingeniería de sistemas puede considerarse distinta de la visión por computadora , una forma de ciencia informática . Intenta integrar tecnologías existentes de nuevas formas y aplicarlas para resolver problemas del mundo real. El término es el que prevalece para estas funciones en entornos de automatización industrial, pero también se usa para estas funciones en otros entornos de guía de vehículos.
El proceso general de visión artificial incluye la planificación de los detalles de los requisitos y el proyecto, y luego la creación de una solución. Durante el tiempo de ejecución, el proceso comienza con la creación de imágenes, seguida del análisis automatizado de las imágenes y la extracción de la información necesaria.
Definición
Las definiciones del término "visión artificial" varían, pero todas incluyen la tecnología y los métodos utilizados para extraer información de una imagen de forma automatizada, a diferencia del procesamiento de imágenes , donde el resultado es otra imagen. La información extraída puede ser una simple señal de pieza buena/pieza mala, o un conjunto más complejo de datos como la identidad, la posición y la orientación de cada objeto en una imagen. La información se puede utilizar para aplicaciones como la inspección automática y la guía de robots y procesos en la industria, para la monitorización de la seguridad y la guía de vehículos. [1] [2] [3] Este campo abarca una gran cantidad de tecnologías, productos de software y hardware, sistemas integrados, acciones, métodos y experiencia. [3] [4] La visión artificial es prácticamente el único término utilizado para estas funciones en aplicaciones de automatización industrial; el término es menos universal para estas funciones en otros entornos como la seguridad y la guía de vehículos. La visión artificial como disciplina de ingeniería de sistemas puede considerarse distinta de la visión por computadora , una forma de ciencia informática básica ; la visión artificial intenta integrar tecnologías existentes de nuevas formas y aplicarlas para resolver problemas del mundo real de una manera que cumpla con los requisitos de la automatización industrial y áreas de aplicación similares. [3] : 5 [5] El término también se utiliza en un sentido más amplio en ferias comerciales y grupos comerciales como la Automated Imaging Association y la European Machine Vision Association. Esta definición más amplia también abarca productos y aplicaciones asociados con mayor frecuencia con el procesamiento de imágenes. [4] Los usos principales de la visión artificial son la inspección automática y la guía de procesos/ robótica industrial . [6] [7] : 6–10 [8] En tiempos más recientes, los términos visión artificial y visión por computadora han convergido en mayor grado. [9] : 13 Véase el glosario de visión artificial .
Inspección y clasificación automática basada en imágenes
Los usos principales de la visión artificial son la inspección y clasificación automáticas basadas en imágenes y la guía de robots. [6] [7] : 6–10 En esta sección, el primero se abrevia como "inspección automática". El proceso general incluye la planificación de los detalles de los requisitos y el proyecto, y luego la creación de una solución. [10] [11] Esta sección describe el proceso técnico que ocurre durante el funcionamiento de la solución.
Métodos y secuencia de operación
El primer paso en la secuencia de operación de inspección automática es la adquisición de una imagen , generalmente utilizando cámaras, lentes e iluminación que han sido diseñadas para proporcionar la diferenciación requerida por el procesamiento posterior. [12] [13] Los paquetes de software MV y los programas desarrollados en ellos emplean luego varias técnicas de procesamiento de imágenes digitales para extraer la información requerida y, a menudo, toman decisiones (como aprobar/reprobar) basadas en la información extraída. [14]
Equipo
Los componentes de un sistema de inspección automática suelen incluir iluminación, una cámara u otro generador de imágenes, un procesador, software y dispositivos de salida. [7] : 11–13
Imágenes
El dispositivo de imágenes (por ejemplo, la cámara) puede estar separado de la unidad principal de procesamiento de imágenes o combinado con ella, en cuyo caso la combinación generalmente se denomina cámara inteligente o sensor inteligente. [15] [16] La inclusión de la función de procesamiento completa en el mismo gabinete que la cámara a menudo se denomina procesamiento integrado. [17] Cuando está separado, la conexión se puede realizar a hardware intermedio especializado, un dispositivo de procesamiento personalizado o un capturador de fotogramas dentro de una computadora utilizando una interfaz analógica o digital estandarizada ( Camera Link , CoaXPress ). [18] [19] [20] [21] Las implementaciones de MV también utilizan cámaras digitales capaces de conexiones directas (sin un capturador de fotogramas) a una computadora a través de interfaces FireWire , USB o Gigabit Ethernet . [21] [22]
Si bien las imágenes convencionales (luz visible 2D) son las más utilizadas en MV, las alternativas incluyen imágenes multiespectrales , imágenes hiperespectrales , imágenes de varias bandas infrarrojas, [23] imágenes de escaneo lineal, imágenes 3D de superficies e imágenes de rayos X. [6] Las diferenciaciones clave dentro de las imágenes de luz visible 2D de MV son monocromáticas vs. color, velocidad de cuadros , resolución y si el proceso de obtención de imágenes es simultáneo o no en toda la imagen, lo que las hace adecuadas para procesos en movimiento. [24]
Aunque la gran mayoría de las aplicaciones de visión artificial se resuelven utilizando imágenes bidimensionales, las aplicaciones de visión artificial que utilizan imágenes 3D son un nicho en crecimiento dentro de la industria. [25] [26] El método más comúnmente utilizado para la obtención de imágenes 3D es la triangulación basada en escaneo que utiliza el movimiento del producto o la imagen durante el proceso de obtención de imágenes. Se proyecta un láser sobre las superficies de un objeto. En la visión artificial, esto se logra con un movimiento de escaneo, ya sea moviendo la pieza de trabajo o moviendo la cámara y el sistema de imágenes láser. La línea es vista por una cámara desde un ángulo diferente; la desviación de la línea representa variaciones de forma. Las líneas de múltiples escaneos se ensamblan en un mapa de profundidad o nube de puntos. [27] La visión estereoscópica se utiliza en casos especiales que involucran características únicas presentes en ambas vistas de un par de cámaras. [27] Otros métodos 3D utilizados para la visión artificial son el tiempo de vuelo y la cuadrícula. [27] [25] Un método son los sistemas basados en matrices de cuadrícula que utilizan un sistema de luz estructurada pseudoaleatoria como el empleado por el sistema Microsoft Kinect alrededor de 2012. [28] [29]
Procesamiento de imágenes
Después de adquirir una imagen, se procesa. [20] Las funciones de procesamiento central generalmente las realiza una CPU , una GPU , un FPGA o una combinación de estos. [17] El entrenamiento y la inferencia de aprendizaje profundo imponen requisitos de rendimiento de procesamiento más altos. [30] Generalmente se utilizan múltiples etapas de procesamiento en una secuencia que termina como un resultado deseado. Una secuencia típica puede comenzar con herramientas como filtros que modifican la imagen, seguido de la extracción de objetos, luego la extracción (por ejemplo, mediciones, lectura de códigos) de datos de esos objetos, seguido de la comunicación de esos datos o su comparación con valores objetivo para crear y comunicar resultados de "aprobado/reprobado". Los métodos de procesamiento de imágenes de visión artificial incluyen;
Umbralización: la umbralización comienza con la configuración o determinación de un valor de gris que será útil para los pasos siguientes. El valor se utiliza luego para separar partes de la imagen y, a veces, para transformar cada parte de la imagen simplemente en blanco y negro en función de si está por debajo o por encima de ese valor de escala de grises. [32]
Segmentación : Partición de una imagen digital en múltiples segmentos para simplificar y/o cambiar la representación de una imagen en algo que sea más significativo y más fácil de analizar. [33] [34]
Análisis de color: identificar piezas, productos y artículos mediante el color, evaluar la calidad a partir del color y aislar características mediante el color. [6]
Detección y extracción de manchas : inspección de una imagen en busca de manchas discretas de píxeles conectados (por ejemplo, un agujero negro en un objeto gris) como puntos de referencia de la imagen. [36]
Procesamiento de redes neuronales , aprendizaje profundo y aprendizaje automático : toma de decisiones multivariable ponderada y con autoentrenamiento [37] Alrededor de 2019, se ha producido una gran expansión de este tipo de procesamiento, que se basa en el uso del aprendizaje profundo y el aprendizaje automático para ampliar significativamente las capacidades de visión artificial. El resultado más común de dicho procesamiento es la clasificación. Algunos ejemplos de clasificación son la identificación de objetos, la clasificación de "aprobado" de objetos identificados y el reconocimiento óptico de caracteres (OCR). [37]
Reconocimiento de patrones , incluida la comparación de plantillas . Búsqueda, comparación y/o recuento de patrones específicos. Esto puede incluir la ubicación de un objeto que puede estar rotado, parcialmente oculto por otro objeto o variar de tamaño. [38]
Comparación con valores objetivo para determinar un resultado de "aprobado o reprobado" o "pasa/no pasa". Por ejemplo, en la verificación de códigos o códigos de barras, el valor leído se compara con el valor objetivo almacenado. Para la calibración, se compara una medición con el valor adecuado y las tolerancias. Para la verificación de códigos alfanuméricos, el valor OCR se compara con el valor adecuado o objetivo. Para la inspección de imperfecciones, el tamaño medido de las imperfecciones se puede comparar con los máximos permitidos por las normas de calidad. [39]
Salidas
Un resultado común de los sistemas de inspección automática son las decisiones de aprobación/rechazo. [14] Estas decisiones pueden, a su vez, activar mecanismos que rechacen los elementos que fallaron o hagan sonar una alarma. Otros resultados comunes incluyen información sobre la posición y la orientación de los objetos para los sistemas de guía de robots. [6] Además, los tipos de salida incluyen datos de medición numérica, datos leídos de códigos y caracteres, recuentos y clasificación de objetos, visualizaciones del proceso o resultados, imágenes almacenadas, alarmas de sistemas de monitoreo espacial automatizados MV y señales de control de procesos . [10] [13] Esto también incluye interfaces de usuario, interfaces para la integración de sistemas multicomponentes e intercambio automatizado de datos. [42]
Aprendizaje profundo
El término aprendizaje profundo tiene significados variables, la mayoría de los cuales se pueden aplicar a las técnicas utilizadas en la visión artificial durante más de 20 años. Sin embargo, el uso del término en "visión artificial" comenzó a fines de la década de 2010 con la llegada de la capacidad de aplicar con éxito dichas técnicas a imágenes completas en el espacio de la visión artificial industrial. [43] La visión artificial convencional generalmente requiere la fase de "física" de una solución de inspección automática de visión artificial para crear una diferenciación simple y confiable de los defectos. Un ejemplo de diferenciación "simple" es que los defectos son oscuros y las partes buenas del producto son claras. Una razón común por la que algunas aplicaciones no eran factibles era cuando era imposible lograr lo "simple"; el aprendizaje profundo elimina este requisito, en esencia, "viendo" el objeto más como lo hace un humano, lo que ahora hace posible lograr esas aplicaciones automáticas. [43] El sistema aprende de una gran cantidad de imágenes durante una fase de entrenamiento y luego ejecuta la inspección durante el uso en tiempo de ejecución, lo que se denomina "inferencia". [43]
Guía robótica basada en imágenes
La visión artificial suele proporcionar información de ubicación y orientación a un robot para permitirle agarrar correctamente el producto. Esta capacidad también se utiliza para guiar el movimiento que es más simple que el de los robots, como un controlador de movimiento de 1 o 2 ejes. [6] El proceso general incluye la planificación de los detalles de los requisitos y el proyecto, y luego la creación de una solución. Esta sección describe el proceso técnico que ocurre durante el funcionamiento de la solución. Muchos de los pasos del proceso son los mismos que en la inspección automática, excepto que se centran en proporcionar información de posición y orientación como resultado. [6]
Mercado
En 2006, un consultor del sector informó que la visión artificial representaba un mercado de 1.500 millones de dólares en América del Norte. [44] Sin embargo, el editor jefe de una revista especializada en visión artificial afirmó que "la visión artificial no es una industria en sí misma", sino más bien "la integración de tecnologías y productos que proporcionan servicios o aplicaciones que benefician a industrias reales como la fabricación de automóviles o bienes de consumo, la agricultura y la defensa". [4]
^ Steger, Carsten; Markus Ulrich; Christian Wiedemann (2018). Algoritmos y aplicaciones de visión artificial (2ª ed.). Weinheim: Wiley-VCH . pag. 1.ISBN 978-3-527-41365-2. Recuperado el 30 de enero de 2018 .
^ Beyerer, Jürgen; Puente León, Fernando y Frese, Christian (2016). Visión artificial: inspección visual automatizada: teoría, práctica y aplicaciones. Berlín: Springer . doi :10.1007/978-3-662-47794-6. ISBN .978-3-662-47793-9. Recuperado el 11 de octubre de 2016 .
^ abc Graves, Mark y Bruce G. Batchelor (2003). Visión artificial para la inspección de productos naturales. Springer . p. 5. ISBN978-1-85233-525-0. Recuperado el 2 de noviembre de 2010 .
^ abc Holton, W. Conard (octubre de 2010). "By Any Other Name". Diseño de sistemas de visión . 15 (10). ISSN 1089-3709 . Consultado el 5 de marzo de 2013 .
^ Owen-Hill, Alex (21 de julio de 2016). "Visión robótica vs. visión por computadora: ¿cuál es la diferencia?". Robotics Tomorrow.
^ abcdefg Turek, Fred D. (junio de 2011). "Fundamentos de visión artificial: cómo hacer que los robots vean". NASA Tech Briefs . 35 (6): 60–62 . Consultado el 29 de noviembre de 2011 .
^ abc Cognex (2016). "Introducción a la visión artificial" (PDF) . Revista Assembly . Consultado el 9 de febrero de 2017 .
^ Lückenhaus, Maximilian (1 de mayo de 2016). "Visión artificial en IIoT". Revista Calidad .
^ Principios de visión artificial , algoritmos, aplicaciones y aprendizaje, quinta edición, de ER Davies Academic Press, Elselvier 2018 ISBN 978-0-12-809284-2
^ ab West, Perry Una hoja de ruta para construir un sistema de visión artificial Páginas 1-35
^ Dechow, David (enero de 2009). «Integración: cómo hacer que funcione». Vision & Sensors : 16–20. Archivado desde el original el 14 de marzo de 2020. Consultado el 12 de mayo de 2012 .
^ Hornberg, Alexander (2006). Manual de visión artificial. Wiley-VCH . pág. 427. ISBN.978-3-527-40584-8. Recuperado el 5 de noviembre de 2010 .
^ ab Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. ISBN3-540-66410-6.[ página necesaria ]
^ de Hornberg, Alexander (2006). Manual de visión artificial. Wiley-VCH. pág. 429. ISBN978-3-527-40584-8. Recuperado el 5 de noviembre de 2010 .
^ Dechow, David (febrero de 2013). "Explore the Fundamentals of Machine Vision: Part 1". Diseño de sistemas de visión . 18 (2): 14–15 . Consultado el 5 de marzo de 2013 .
^ ab Consideraciones críticas para el diseño de visión integrada por Dave Rice y Amber Thousand Photonics Revista Spectra publicada por Laurin Publishing Co. Número de julio de 2019 Páginas 60-64
^ Wilson, Andrew (31 de mayo de 2011). "El estándar CoaXPress obtiene soporte para cámaras y capturadores de imágenes". Vision Systems Design . Consultado el 28 de noviembre de 2012 .
^ Wilson, Dave (12 de noviembre de 2012). "Cámaras certificadas como compatibles con el estándar CoaXPress". Diseño de sistemas de visión . Consultado el 5 de marzo de 2013 .
^ ab Davies, ER (1996). Visión artificial: teoría, algoritmos y aspectos prácticos (2.ª ed.). Harcourt & Company. ISBN978-0-12-206092-2.[ página necesaria ] .
^ ab Dinev, Petko (marzo de 2008). "¿Digital o analógica? La selección de la cámara adecuada para una aplicación depende de lo que el sistema de visión artificial esté intentando lograr". Vision & Sensors : 10–14. Archivado desde el original el 2020-03-14 . Consultado el 2012-05-12 .
^ Wilson, Andrew (diciembre de 2011). "Product Focus - Looking to the Future of Vision" (Enfoque de producto: mirando hacia el futuro de la visión). Vision Systems Design . 16 (12) . Consultado el 5 de marzo de 2013 .
^ Wilson, Andrew (abril de 2011). "La elección infrarroja". Vision Systems Design . 16 (4): 20–23 . Consultado el 5 de marzo de 2013 .
^ West, Perry , CyberOptics , visión artificial en tiempo real y alta velocidad , páginas 1-38
^ ab Murray, Charles J (febrero de 2012). "3D Machine Vison Comes into Focus". Design News . Archivado desde el original el 2012-06-05 . Consultado el 2012-05-12 .
^ Davies, ER (2012). Visión artificial y por ordenador: teoría, algoritmos y aspectos prácticos (4.ª ed.). Academic Press. pp. 410–411. ISBN9780123869081. Recuperado el 13 de mayo de 2012 .
^ abc Imágenes en 3D: una descripción práctica de la visión artificial Por Fred Turek y Kim Jackson Quality Magazine, edición de marzo de 2014, volumen 53/número 3, páginas 6-8
^ http://research.microsoft.com/en-us/people/fengwu/depth-icip-12.pdf LUZ ESTRUCTURADA HÍBRIDA PARA DETECCIÓN DE PROFUNDIDAD ESCALABLE Yueyi Zhang, Zhiwei Xiong, Feng Wu Universidad de Ciencia y Tecnología de China, Hefei, China Microsoft Research Asia, Beijing, China
^ R. Morano, C. Ozturk, R. Conn, S. Dubin, S. Zietz, J. Nissano, "Luz estructurada utilizando códigos pseudoaleatorios", IEEE Transactions on Pattern Analysis and Machine Intelligence 20 (3)(1998)322–327
^ Encontrar el hardware óptimo para la inferencia de aprendizaje profundo en visión artificial por Mike Fussell Revista Vision Systems Design Número de septiembre de 2019 páginas 8-9
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 39. ISBN3-540-66410-6.
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 96. ISBN3-540-66410-6.
^ Lauren Barghout. Enfoque taxométrico visual La segmentación de imágenes mediante cortes de taxones espaciales difusos produce regiones contextualmente relevantes. Procesamiento de información y gestión de la incertidumbre en sistemas basados en el conocimiento. CCIS Springer-Verlag. 2014
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 108. ISBN3-540-66410-6.
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 95. ISBN3-540-66410-6.
^ ab Turek, Fred D. (marzo de 2007). "Introducción a la visión artificial mediante redes neuronales". Diseño de sistemas de visión . 12 (3) . Consultado el 5 de marzo de 2013 .
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 111. ISBN3-540-66410-6.
^ ab Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 125. ISBN3-540-66410-6.
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 132. ISBN3-540-66410-6.
^ Demant C.; Streicher-Abel B. y Waszkewitz P. (1999). Procesamiento de imágenes industriales: control de calidad visual en la fabricación . Springer-Verlag. pág. 191. ISBN3-540-66410-6.
^ Hornberg, Alexander (2006). Manual de visión artificial. Wiley-VCH . pág. 709. ISBN.978-3-527-40584-8. Recuperado el 5 de noviembre de 2010 .
^ abc El lugar del aprendizaje profundo en la visión artificial Revista Quality Número de mayo de 2022, volumen 61, número 5 Publicado por BNP Media II
^ Hapgood, Fred (15 de diciembre de 2006 – 1 de enero de 2007). «Fábricas del futuro». CIO . 20 (6): 46. ISSN 0894-9301 . Consultado el 28 de octubre de 2010 .