La visión artificial es un campo de la inteligencia artificial (IA) que permite a los ordenadores y sistemas extraer información significativa a partir de imágenes digitales, videos y otras entradas visuales, y tomar medidas o realizar recomendaciones en función de esa información. Si la IA permite a los ordenadores pensar, la visión artificial les permite ver, observar y comprender.
La visión artificial funciona de manera muy similar a la visión humana, excepto que los humanos tienen una ventaja inicial. La vista humana tiene la ventaja de toda una vida de contexto para entrenar cómo distinguir los objetos, a qué distancia están, si se están moviendo y si hay algo mal en una imagen.
La visión artificial entrena a las máquinas para realizar estas funciones, pero tiene que hacerlo en mucho menos tiempo con cámaras, datos y algoritmos en lugar de retinas, nervios ópticos y una corteza visual. Como un sistema entrenado para inspeccionar productos o ver un activo de producción puede analizar miles de productos o procesos por minuto, detectando defectos o problemas imperceptibles, puede superar rápidamente las capacidades humanas.
La visión artificial se utiliza en sectores que van desde la energía y los servicios públicos hasta la fabricación y la automoción, y el mercado sigue creciendo. Se espera que alcance los 48 600 millones de dólares en 2022.1
La visión artificial necesita muchos datos. Ejecuta análisis de datos una y otra vez hasta que percibe diferencias y finalmente reconoce imágenes. Por ejemplo, para entrenar un ordenador para que reconozca neumáticos de automóviles, es necesario incorporarle una gran cantidad de imágenes de neumáticos y elementos relacionados con los neumáticos para que aprenda las diferencias y pueda reconocer un neumático, especialmente uno sin defectos.
Se utilizan dos tecnologías básicas para lograr esto: un tipo de machine learning denominado deep learning y una red neuronal convolucional (CNN, por sus siglas en inglés).
Machine learning utiliza modelos algorítmicos que permiten a un ordenador enseñarse a sí mismo el contexto de los datos visuales. Si se introducen suficientes datos a través del modelo, el ordenador "mirará" los datos y aprenderá a diferenciar una imagen de otra. Los algoritmos permiten que la máquina aprenda por sí misma, en lugar de que alguien la programe para que reconozca una imagen.
Una CNN ayuda a un modelo de machine learning o deep learning a "mirar" desglosando las imágenes en píxeles a los que se asignan etiquetas. Utiliza las etiquetas para realizar convoluciones (una operación matemática sobre dos funciones para generar una tercera función) y realizar predicciones sobre lo que está "viendo". La red neuronal ejecuta convoluciones y comprueba la exactitud de sus predicciones en una serie de iteraciones hasta que las predicciones empiezan a hacerse realidad. Entonces consigue reconocer o ver imágenes de una manera similar a los humanos.
De forma similar a un humano viendo una imagen a distancia, una CNN primero discierne los bordes más marcados y las formas simples, luego rellena la información a medida que ejecuta iteraciones de sus predicciones. Una CNN se utiliza una para comprender imágenes individuales. Una red neuronal recurrente (RNN) se usa de manera similar para aplicaciones de vídeo para ayudar a los ordenadores a comprender cómo se relacionan entre sí las imágenes en una serie de fotogramas.
Los científicos e ingenieros llevan aproximadamente 60 años tratando de desarrollar formas para que las máquinas vean y comprendan datos visuales. La experimentación comenzó en 1959 cuando un grupo de neurofisiólogos le mostraron a un gato una matriz de imágenes, intentando correlacionar una respuesta en su cerebro. Descubrieron que respondía primero a las líneas o los bordes más marcados y, científicamente, esto significaba que el procesamiento de imágenes comienza con formas simples, como los bordes rectos.(2)
Paralelamente, se desarrolló la primer tecnología de escaneo de imágenes, que permitía a los ordenadores digitalizar y adquirir imágenes. Otro hito se alcanzó en 1963, cuando los ordenadores fueron capaces de transformar imágenes bidimensionales en formas tridimensionales. En la década de 1960, la IA surgió como un campo académico de estudio y también marcó el comienzo de la búsqueda de la IA por resolver el problema de la visión humana.
1974 fue testigo de la introducción de la tecnología de reconocimiento óptico de caracteres (OCR, por sus siglas en inglés), que podía reconocer texto impreso en cualquier fuente o tipo de letra.(3) De manera similar, el reconocimiento inteligente de caracteres (ICR, por sus siglas en inglés) podía descrifrar texto escrito a mano mediante redes neuronales.(4) Desde entonces, OCR e ICR se aplican al procesamiento de documentos y facturas, reconocimiento de matrículas de vehículos, pagos móviles, traducción automática y otros usos comunes.
En 1982, el neurocientífico David Marr estableció que la visión funciona de forma jerárquica e introdujo algoritmos para que las máquinas detectaran bordes, esquinas, curvas y formas básicas similares. Al mismo tiempo, el científico informático Kunihiko Fukushima desarrolló una red de celdas capaz de reconocer patrones. La red, denominada Neocognitron, incluía capas convolucionales en una red neuronal.
En el año 2000, el foco del estudio se centró en el reconocimiento de objetos, y en 2001, aparecieron las primeras aplicaciones de reconocimiento facial en tiempo real. La estandarización de cómo se etiquetan y se anotan los conjuntos de datos visuales surgió a lo largo de la década de 2000. En 2010, se hizo público el conjunto de datos ImageNet. Contenía millones de imágenes etiquetadas en miles de clases de objeto y proporciona una base para las CNN y los modelos de deep learning que se utilizan actualmente. En 2012, un equipo de la Universidad de Toronto apuntó a una CNN a un concurso de reconocimiento de imágenes. El modelo, llamado AlexNet, redujo significativamente el índice de errores en el reconocimiento de imágenes. Después de este gran avance, las tasas de error se han reducido a un pequeño porcentaje.(5)
Acceda a videos, artículos, talleres y más.
Se lleva a cabo una gran cantidad de investigación en el campo de la visión artificial, pero no es solo investigación. Las aplicaciones del mundo real demuestran la importancia de la visión artificial en aplicaciones de empresa, ocio, transporte, asistencia sanitaria y tareas cotidianas. Un motor clave para el crecimiento de estas aplicaciones es la avalancha de información visual que se genera desde teléfonos inteligentes, sistemas de seguridad, cámaras de tráfico y otros dispositivos visualmente instrumentados. Estos datos podrían desempeñar un papel más destacado en distintos sectores, pero actualmente no se utilizan. La información crea una base de prueba para entrenar aplicaciones de visión artificial y una plataforma de lanzamiento para que se integren en diversas actividades humanas:
Muchas organizaciones no disponen de los recursos para financiar laboratorios de vision artificial y crear modelos de deep learning y redes neuronales. También les falta la potencia informática necesaria para procesar grandes conjuntos de datos visuales. Empresas como IBM ayudan ofreciendo servicios de desarrollo de software de vision artificial. Estos servicios suministran modelos de aprendizaje prediseñados, disponibles desde la nube, a la vez que alivian la demanda de recursos informáticos. Los usuarios se conectan a los servicios a través de una interfaz de programación de aplicaciones (API) y los utilizan para desarrollar aplicaciones de visión artificial.
IBM también ha presentado una plataforma de visión artificial que aborda tanto las cuestiones de desarrollo como las de recursos informáticos. IBM Maximo Visual Inspection incluye herramientas que permiten a los expertos en la materia etiquetar, entrenar e implementar modelos de visión de deep learning, sin codificación ni experiencia en deep learning. Los modelos de visión se pueden desplegar en centros de datos locales, la nube y dispositivos edge.
Si bien es cada vez más fácil obtener recursos para desarrollar aplicaciones de visión artificial, una pregunta importante a la cual es necesario responder desde el principio es: ¿Qué harán exactamente estas aplicaciones? Comprender y definir tareas específicas de visión artificial puede ayudar a establecer y validar proyectos y aplicaciones, además de facilitar el arranque.
A continuación, encontrará algunos ejemplos de tareas de visión artificial establecidas:
Desbloquee rápidamente el potencial de la visión computacional para la automatización de las inspecciones sin requerir experiencia en deep learning.
IBM Research es uno de los laboratorios de investigación corporativa más grandes del mundo. Obtenga más información sobre la investigación que se está realizando en distintos sectores.
Obtenga más información sobre cómo empezar con el reconocimiento visual e IBM Maximo Visual Inspection. Explore los recursos y cursos para desarrolladores.
1. https://www.forbes.com/sites/bernardmarr/2019/04/08/7-amazing-examples-of-computer-and-machine-vision-in-practice/#3dbb3f751018 (enlace externo a ibm.com)
2. https://hackernoon.com/a-brief-history-of-computer-vision-and-convolutional-neural-networks-8fe8aacc79f3 (enlace externo a ibm.com)
3. Reconocimiento óptico de caracteres, Wikipedia (enlace externo a ibm.com)
4. Reconocimiento inteligente de caracteres, Wikipedia (enlace externo a ibm.com)
5. A Brief History of Computer Vision (and Convolutional Neural Networks), Rostyslav Demush, Hacker Noon, 27 de febrero de 2019 (enlace externo a ibm.com)
6. 7 Amazing Examples of Computer And Machine Vision In Practice, Bernard Marr, Forbes, 8 de abril de 2019 (Enlace externo a ibm.com)
7. The 5 Computer Vision Techniques That Will Change How You See The World, James Le, Heartbeat, 12 de abril de 2018 (enlace externo a ibm.com)