Energía solar

Visión artificial, una fascinante rama de la inteligencia artificial

La Inteligencia Artificial se ha convertido en un concepto recurrente en nuestras vidas, a tal punto de hacer uso de ella en nuestro día a día sin siquiera darnos cuenta de ello. Quizá una de sus ramas más fascinantes y con mayor interés científico e industrial es la Visión Artificial, que se ha convertido en la forma de ayudar a los computadores a ‘ver’ como lo hacemos los humanos. Pero, ¿Qué es?, ¿Cómo funciona y qué retos comprende?, ¿Cuáles son sus aplicaciones para mí o mi empresa? Sigue leyendo para que aclares esas y, seguro, muchas otras inquietudes.

 ¿Qué es la visión artificial?

También conocida como visión por computador o ‘computer vision’ en inglés, es quizás una de las ramas de la Inteligencia Artificial con mayor trabajo en investigación y desarrollo en la actualidad, debido a su amplia gama de aplicaciones en automatización de tareas, que dependen de una habilidad que tradicionalmente se atribuye a los humanos, pero no a los computadores: la capacidad de discernir, comprender y tomar decisiones a partir de la información que procesamos a través de la vista.  Así, el objetivo central de este campo de trabajo es lograr que un computador procese y ‘comprenda’ imágenes o videos, de una forma similar a cómo lo hacemos los humanos.

A pesar de haber sido juzgado como un problema prácticamente trivial en sus inicios, a día de hoy son muchos los retos en visión artificial que continúan siendo objeto de arduo trabajo de muchos científicos. Algunos ejemplos típicos de aplicaciones triviales de nuestra visión humana, que se convierten en problemas muy complejos para un computador son:

  •         Describir el contenido de una fotografía.
  •         Reconocer y distinguir a una persona al ver su rostro.
  •         Reconocer defectos visualmente en piezas manufacturadas en una compañía.
  •         Resumir el contenido de un video.
  •   Identificar posibles enfermedades a partir de imágenes médicas, como rayos X o tomografías.

 ¿Cómo funciona un modelo de Visión Artificial?

A pesar de que la gama de modelos desarrollados para extraer información a partir de imágenes y videos por medio de un computador es enorme, la tendencia más clara y con mejores resultados en la actualidad son los modelos basados en redes neuronales. Dada la estructura interconectada de estas, se suele hacer un símil entre este tipo de modelo y la estructura neuronal del cerebro humano. A pesar de que no hay claridad científica de si el proceso biológico de nuestro cerebro es en efecto similar al artificialmente creado a través de una red neuronal, es de destacar que, en algunas tareas específicas, existen modelos de visión artificial que, acoplados a cámaras de alta resolución, poseen mayor capacidad ‘visual’ que los humanos (por ejemplo, en la detección de rayaduras o defectos casi imperceptibles al ojo humano en piezas manufacturadas).

Como ocurre con cualquier algoritmo de inteligencia artificial, la primicia de la visión artificial es ‘aprender’ a identificar objetos o patrones en imágenes, sin que el computador se programe explícitamente. Por ejemplo, si el objetivo es que el computador aprenda a identificar cuando en una foto hay un rostro, el procedimiento no consiste en programarlo para forzarlo a que busque características que los humanos percibimos en un rostro (los ojos, las orejas, la nariz, la boca, etc). Esto haría que tengamos que considerar un sinfín de posibilidades, por ejemplo, cómo se ve el ojo o la nariz de frente o de perfil, cómo cambian los píxeles de la imagen en que aparece la boca si la foto se toma de cerca al rostro o de lejos, cómo hacer si el rostro no está en el centro de la imagen, etc. En lugar de esto, en nuestro ejemplo, el proceso consistiría en introducir al modelo muchas (miles en muchos casos) de fotos de rostros humanos, y el modelo se encargaría de extraer por sí mismo las características que le permiten, en cualquier otra foto, predecir si hay o no un rostro humano. Este es el proceso que comúnmente se denomina ‘entrenamiento’ del modelo.

Una complejidad adicional de estas técnicas es la gran diversidad del mundo visual. Una foto del mismo objeto puede verse relativamente diferente al ser tomada desde otro ángulo, mayor o menor cercanía, enfoque, iluminación, etc. Y esto a su vez, representa un reto enorme para un computador. Es por ello que la cantidad y diversidad de datos (imágenes) juega un rol fundamental en la capacidad de un modelo de visión artificial. Si se entrena una red neuronal con miles de fotos de rostros, pero todas son tomadas desde ángulos iguales, con la misma cercanía del rostro a la cámara y la misma iluminación, será complejo para el modelo lograr identificar un rostro en una foto nueva, tomada en condiciones de iluminación, ángulo y plano diferentes.

Cabe destacar que, si bien las redes neuronales no son un desarrollo reciente (su concepto existe hace ya varias décadas) sus capacidades no se habían explotado de la manera que se hace en el último tiempo, debido a que el acceso a los datos, así como la capacidad de procesamiento de los computadores anteriormente, limitaba fuertemente el desarrollo de esta clase de modelos.

¿Es Visión Artificial lo mismo que Procesamiento de Imagen?

Dada su cercanía, en cuanto a que ambas ramas tienen directamente que ver con imágenes digitales, es posible confundir sus respectivos campos de acción. El procesamiento de imagen es el proceso de crear una nueva imagen a partir de una existente, con base en técnicas de edición o mejoramiento de la misma. Teniendo en cuenta lo anterior, quizás la diferencia más importante entre Visión Artificial y Procesamiento de imagen es que este último no se preocupa en absoluto por que la máquina (el computador) extraiga un sentido o comprensión del contenido de la imagen, mientras que, para la primera, este es su objetivo fundamental.

Al desarrollar un modelo de visión artificial (por ejemplo, una red neuronal) el procesamiento de imagen suele ser una parte crucial del desarrollo, y puede ser realizado en la etapa de preprocesamiento de imágenes que se introducen al modelo. Un ejemplo de esto es la técnica comúnmente implementada de ‘Aumentación de datos’, que se usa para multiplicar el número de imágenes disponibles para entrenar un modelo de Visión Artificial, a partir de hacer modificaciones sencillas a cada imagen original (cortar una parte de la imagen en alguno de sus lados, reflejarla, girarla parcialmente, etc.). La aplicación de filtros para remover (o añadir) ruido a la imagen, mejorar el contraste, entre otros, también son técnicas de procesamiento de imagen comúnmente usadas como preprocesamiento para modelos de Visión Artificial.

¿Qué aplicaciones tiene la Visión Artificial?

En el mundo actual, prácticamente todos quienes tenemos acceso a la tecnología hemos visto en marcha alguna aplicación que incorpore Visión Artificial. Un par de ejemplos son las sugerencias de etiquetado de personas en redes sociales como Facebook, los filtros interactivos de Instagram o la recomendación de puntos de compra a partir de fotos de productos. Son muchas las aplicaciones actualmente existentes o en desarrollo en el mundo de la Visión Artificial, entre las cuales se destacan:

  •         Reconocimiento facial (que a su vez tiene diversas aplicaciones, desde la sugerencia de etiquetas en Facebook, hasta la habilitación de accesos a servicios o lugares con base en fotos del rostro o identificación de criminales).
  •         Vehículos sin conductor. 
  •         Imitación de gestos humanos de forma artificial (Conocido como Deepfake).
  •         Detección de posibles enfermedades a partir de radiografías y tomografías.

En particular, en Quoia, la línea de negocio de Inteligencia Artificial de Solenium, nos enfocamos en aplicaciones para procesos productivos, en los que la Visión Artificial ofrece gran poder en el control de calidad y/o automatización, a través del reconocimiento y clasificación de defectos, como lo son por ejemplo, defectos en productos textiles, defectos de llenado, tapado o etiquetado de botellas en la industria de bebidas, defectos superficiales en el desarrollo de circuitos integrados, defectos superficiales en componentes mecánicos, entre otros.

A pesar del enorme progreso que ha tenido la visión artificial en los últimos años, hay algunos problemas y aplicaciones que continúan planteándose, muchos de los cuales no tienen aún una solución definitiva. Sin embargo, muchas otras se han convertido gradualmente en lo habitual, como es el caso de aplicaciones que pasan desapercibidas en nuestra cotidianidad y que no serían posibles de no ser por el desarrollo de la visión artificial. Claramente esta tecnología es una tendencia en crecimiento, que continuará adquiriendo mayor fuerza a medida que se implementen más desarrollos.  Conforme esto ocurre, probablemente en algunos años llegaremos a confiar más en la visión de los computadores que en la nuestra para muchas tareas que desempeñamos hoy en día.

470 Visitas

 

Deja una respuesta

Su dirección de correo electrónico no será publicadoLos campos requeridos están marcados *