# Visión de máquina

La visión de máquina o visión artificial ( MV ) es la tecnología y los métodos utilizados para proporcionar inspección y análisis automáticos basados en imágenes para aplicaciones tales como inspección automática, control de procesos y 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 la ingeniería de sistemas se puede considerar distinta de la visión artificial, una forma de informática . Intenta integrar tecnologías existentes de nuevas formas y aplicarlas para resolver problemas del mundo real. El término es el predominante para estas funciones en entornos de automatización industrial, pero también se utiliza para estas funciones en otros entornos de guiado 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, seguido del análisis automatizado de la imagen y la extracción de la información requerida.

## 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 automática, a diferencia del procesamiento de imágenes, donde la salida es otra imagen. La información extraída puede ser una simple señal de parte buena/parte mala o, más bien, un conjunto 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 procesos y robots en la industria, para el control de la seguridad y la guía de vehículos. Este campo abarca una gran cantidad de tecnologías, productos de software y hardware, sistemas integrados, acciones, métodos y experiencia. 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 el guiado de vehículos. La visión artificial como disciplina de la ingeniería de sistemas se puede considerar distinta de la visión artificial, una forma de informática básica; La visión artificial intenta integrar las 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. El término también se usa en un sentido más amplio por ferias comerciales y grupos comerciales como la Asociación de imágenes automatizadas y la Asociación europea de visión artificial. Esta definición más amplia también abarca productos y aplicaciones asociados con mayor frecuencia con el procesamiento de imágenes. Los usos principales de la visión artificial son la inspección automática y la guía de procesos/ robots industriales . $^{:6–10}$ Ver glosario de visión artificial .

## Inspección y clasificación automáticas basadas 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 del robot.; $^{:6–10}$en esta sección la primera 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. Esta sección describe el proceso técnico que ocurre durante la operación 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 ha sido diseñada para proporcionar la diferenciación requerida por el procesamiento posterior. Los paquetes de software de MV y los programas desarrollados en ellos emplean varias técnicas de procesamiento de imágenes digitales para extraer la información requerida y, a menudo, toman decisiones (como aprobar/reprobar) en función de la información extraída. Los componentes de un sistema de inspección automática generalmente incluyen iluminación, una cámara u otro generador de imágenes, un procesador, software y dispositivos de salida. $^{:11–13}$

### Imágenes

El dispositivo de imágenes (por ejemplo, una cámara) puede estar separado de la unidad principal de procesamiento de imágenes o combinarse con ella, en cuyo caso la combinación generalmente se denomina cámara inteligente o sensor inteligente. La inclusión de la función de procesamiento completo en el mismo recinto que la cámara a menudo se denomina procesamiento integrado. Cuando se separan, la conexión se puede realizar a un hardware intermedio especializado, un dispositivo de procesamiento personalizado o un capturador de fotogramas dentro de una computadora mediante una interfaz analógica o digital estandarizada ( Camera Link, CoaXPress ). Las implementaciones de MV también usan cámaras digitales capaces de conectarse directamente (sin un capturador de fotogramas) a una computadora a través de interfaces FireWire, USB o Gigabit Ethernet . Si bien las imágenes convencionales (luz visible 2D) se usan más comúnmente en MV, las alternativas incluyen imágenes multiespectrales, imágenes hiperespectrales, imágenes de varias bandas infrarrojas, imágenes de barrido lineal, imágenes 3D de superficies e imágenes de rayos X. Las diferenciaciones clave dentro de las imágenes de luz visible MV 2D son monocromática frente a color, velocidad de fotogramas, resolución y si el proceso de imagen es simultáneo o no en toda la imagen, lo que lo hace adecuado para procesos en movimiento.
Estas cámaras necesitan tener especificaciones muy particulares para esta aplicación, ya que necesitan estar en uso por largos periodos de tiempo y muchas veces en un espacio reducido. Adicionalmente, estas cámaras normalmente disponen de una alta definición y FPS para poder capturar dimensiones y errores en la producción. Como mencionado anteriormente, interfaces como CoaXpress son utilizadas para poder transferir esta información de manera eficiente. Estas interfaces pueden llegar a velocidades de 12.5Gbps (gigabits por segundo) por canal de transmisión. "Garbage in, Garbage out" (en Español Basura entra, Basura sale) es un concepto de informática que se aplica aquí. Las cámaras requieren de estas características, ya que sin ellas, se producirían resultados mediocres. Alta velocidad y calidad de imagen son clave para la vision de maquina. Las condiciones del ambiente como la temperatura, golpes, etc. también necesitan ser consideradas en el contexto industrial.
Aunque la gran mayoría de las aplicaciones de visión artificial se resuelven mediante imágenes bidimensionales, las aplicaciones de visión artificial que utilizan imágenes 3D son un nicho en crecimiento dentro de la industria. El método más utilizado para la obtención de imágenes en 3D es la triangulación basada en el escaneo, que utiliza el movimiento del producto o la imagen durante el proceso de creación de imágenes. Un láser se proyecta sobre las superficies de un objeto. En la visión artificial, esto se logra con un movimiento de exploración, 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 varios escaneos se ensamblan en un mapa de profundidad o una nube de puntos. La visión estereoscópica se usa en casos especiales que involucran características únicas presentes en ambas vistas de un par de cámaras. Otros métodos 3D utilizados para la visión artificial son el tiempo de vuelo y la cuadrícula. Un método son los sistemas basados en matriz de cuadrículas que utilizan un sistema de luz estructurada pseudoaleatorio como el empleado por el sistema Microsoft Kinect alrededor de 2012.

### Procesamiento de imágenes

Una vez adquirida una imagen, se procesa. Las funciones de procesamiento central generalmente las realiza una CPU, una GPU, una FPGA o una combinación de estas. La inferencia y el entrenamiento de aprendizaje profundo imponen mayores requisitos de rendimiento de procesamiento. Por lo general, se utilizan múltiples etapas de procesamiento en una secuencia que termina como un resultado deseado. Una secuencia típica podría 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 por la comunicación de esos datos o la 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;
* Unión / Registro : Combinación de imágenes 2D o 3D adyacentes.
* Filtrado (por ejemplo, filtrado morfológico )
* Umbral: El umbral comienza con la configuración o determinación de un valor de gris que será útil para los siguientes pasos. Luego, el valor se usa para separar partes de la imagen y, a veces, para transformar cada parte de la imagen en blanco y negro, según esté por debajo o por encima de ese valor de escala de grises.
* Recuento de píxeles: cuenta el número de píxeles claros u oscuros
* 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.
* Detección de bordes : búsqueda de bordes de objetos
* Análisis de color: identifique piezas, productos y artículos mediante el color, evalúe la calidad a partir del color y aísle las características mediante el color.
* Detección y extracción de blobs : inspección de una imagen en busca de blobs discretos de píxeles conectados (por ejemplo, un agujero negro en un objeto gris) como puntos de referencia de la imagen.
* Red neuronal / aprendizaje profundo /procesamiento de aprendizaje automático : toma de decisiones multivariable ponderada y autodidacta Circa 2019 hay una gran expansión de esto, utilizando el aprendizaje profundo y el aprendizaje automático para expandir significativamente las capacidades de visión artificial. El resultado más común de dicho procesamiento es la clasificación. Ejemplos de clasificación son la identificación de objetos, la clasificación "pasa, falla" de objetos identificados y OCR.
* Reconocimiento de patrones, incluida la coincidencia de plantillas . Encontrar, emparejar y/o contar patrones específicos. Esto puede incluir la ubicación de un objeto que puede girarse, estar parcialmente oculto por otro objeto o variar en tamaño.
* Lectura de código de barras, matriz de datos y " código de barras 2D "
* Reconocimiento óptico de caracteres : lectura automatizada de texto como números de serie
* Medición/Metrología : medición de dimensiones de objetos (p. ej., en píxeles, pulgadas o milímetros )
* Comparación con los valores objetivo para determinar un resultado de "pasa o falla" o "pasa/no pasa". Por ejemplo, con la verificación de código o código de barras, el valor leído se compara con el valor objetivo almacenado. Para la medición, se compara una medida con el valor y las tolerancias adecuados. Para la verificación de códigos alfanuméricos, el valor de OCR se compara con el valor objetivo o adecuado. Para la inspección de imperfecciones, el tamaño medido de las imperfecciones puede compararse con los máximos permitidos por los estándares de calidad.

### Outputs

Una salida común (Output) de los sistemas de inspección automática son las decisiones de aprobación/rechazo. Estas decisiones pueden, a su vez, desencadenar mecanismos que rechacen elementos fallidos o hagan sonar una alarma. Otras salidas comunes incluyen la posición del objeto y la información de orientación para los sistemas de guía del robot. Además, los tipos de salida incluyen datos de medición numéricos, datos leídos de códigos y caracteres, conteos y clasificación de objetos, visualizaciones del proceso o resultados, imágenes almacenadas, alarmas de sistemas automatizados de monitoreo espacial MV y señales de control de procesos . Esto también incluye interfaces de usuario, interfaces para la integración de sistemas de múltiples componentes e intercambio de datos automatizado.

## 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 el advenimiento de la capacidad de aplicar con éxito dichas técnicas a imágenes completas en el espacio industrial de visión artificial. 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 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 "ver" el objeto más como lo hace un ser humano, lo que ahora hace posible lograr esas aplicaciones automáticas. El sistema aprende de una gran cantidad de imágenes durante una fase de entrenamiento y luego ejecuta la inspección durante el tiempo de ejecución, lo que se denomina "inferencia".

## Guiado de robot basado en imágenes

La visión artificial comúnmente proporciona información de ubicación y orientación a un robot para permitir que el robot agarre correctamente el producto. Esta capacidad también se usa para guiar el movimiento que es más simple que los robots, como un controlador de movimiento de 1 o 2 ejes. 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 la operación de la solución. Muchos de los pasos del proceso son los mismos que con la inspección automática, excepto que se enfocan en proporcionar información de posición y orientación como resultado.

## Mercado

Recientemente, en 2006, un consultor de la industria informó que MV representaba un mercado de $ 1.5 mil millones en América del Norte. Sin embargo, el editor en jefe de una revista comercial de MV afirmó que "la visión artificial no es una industria en sí misma", sino "la integración de tecnologías y productos que brindan servicios o aplicaciones que benefician a industrias reales como la automotriz o la fabricación de bienes de consumo"., agricultura y defensa".