Visión artificial

La visión artificial o visión por computador es una disciplina científica que incluye métodos para adquirir, procesar, analizar y comprender las imágenes del mundo real con el fin de producir información numérica o simbólica para que puedan ser tratados por un computador. Tal y como los humanos usamos nuestros ojos y cerebros para comprender el mundo que nos rodea, la visión por computador trata de producir el mismo efecto para que las computadoras puedan percibir y comprender una imagen o secuencia de imágenes y actuar según convenga en una determinada situación. Esta comprensión se consigue gracias a distintos campos como la geometría, la estadística, la física y otras disciplinas. La adquisición de los datos se consigue por varios medios como secuencias de imágenes, vistas desde varias cámaras de video o datos multidimensionales desde un escáner médico.

Esquema de las relaciones entre la visión por computadora y otras áreas afines.

Hay muchas tecnologías que utilizan la visión por computador, entre las cuáles: reconocimiento de objetos, detección de eventos, reconstrucción de una escena (mapping) y restauración de imágenes.

Interferencias técnicas y optimizaciones

A la hora de aplicar los conceptos teóricos de la visión por computador encontraremos siempre interferencias y problemas relacionados con el mundo que nos rodea. Esto es por el mero hecho de que nuestro mundo no es perfecto y los aparatos de medición y captura tampoco lo son. Estos introducen siempre (a mayor o menos cantidad) una distorsión o ruido que contamina la muestra o imagen con la que deseamos trabajar.

Teniendo en cuenta estos problemas denominamos los siguientes tipos de ruidos (entre otros) como ruidos técnicos:

Ruidos técnicos

Salt and pepper

Ruido impulsivo que hace tender a los píxeles a un máximo (blanco) y a un mínimo (negro). El efecto de este ruido es tener diversos puntos blancos y negros esparcidos aleatoriamente por la imagen. De ahí el nombre Salt and Pepper (sal y pimienta), debido a que parece que la imagen haya sido rociada por estos compuestos. Este ruido puede aparecer a causa de los canales de transmisión de las imágenes. Para solventar este ruido podremos utilizar (pese a perder definición) un filtro de promedio espacial.

Ruido uniforme

Ruido que afecta a la imagen tendiendo a blanco y a negro de manera uniforme. El efecto a simple vista de este ruido es percibir interferencias en la imagen, como si esta estuviese codificada. Observamos una pantalla por encima de la imagen llena de pixeles de valores aleatorios y uniformemente expandidos. Este ruido puede aparecer en el procesado de cuantificación de una imagen. Para solventar este ruido podremos utilizar (pese a perder definición) un filtro de promedio espacial.

Ruido Gaussiano

Ruido derivado de los equipos de captura que sigue la fórmula (falta fórmula). El efecto en la imagen será parecido al uniforme solo que los valores del ruido no son tan abruptos, tenderán más a grises que a negros y blancos. Para solventar el problema podríamos utilizar un filtro de promedio espacial con coeficientes Gaussianos.

En todos los casos, para solventar cualquier tipo de ruido deberemos aplicar algún tipo de filtro compatible con nuestro ruido.

Existen otro tipo de interferencias debidas al contexto e interpretación de la imagen. Pasamos a enumerar algunas:

Interferencias debidas al contexto

Punto de vista

Como está la imagen orientada respecto al observador. Un animal no se ve igual de frente que de espaldas, aunque éste sigue siendo un animal. Iluminación: La cantidad de luz que recibe el objeto. Un objeto deberá ser distinguible independientemente de si tiene alguna cara oscura debido a la iluminación.

Oclusión

Un objeto puede estar en segundo plano, es decir, que otro objeto tape parcialmente nuestro objetivo a la hora de extraerlo o analizarlo. Deberemos ser capaces de saber interpretar que un objeto diferente está entre nuestro objeto a extraer y el observador.

Escala

Factor que determina el tamaño de la imagen respecto al real. Un edificio no parecerá tener el mismo tamaño dependiendo de la imagen capturada (ya sea por distancia, ángulo…). Deberemos ser capaces de interpretar que un objeto puede ser el mismo pese a que el tamaño en las fotografías pueda ser diferente.

Deformación

Un objeto puede estar deformado debido a múltiples factores (véase el ejemplo de la carretera en pleno verano) o simplemente debido a errores de captura, o posicionamiento y ángulo de la captura. Deberemos interpretar que el objeto pertenece a una categoría pese a sus deformaciones.

Fondo desordenado

Un objeto puede estar en un contexto desordenado y caótico. Como por ejemplo un mosaico. Deberemos saber distinguir el objeto entre el caos que le envuelve.

Variaciones dentro de una misma clase

Un tipo de objeto puede ser muy dispar a otro de su misma categoría. Si tomamos el ejemplo de una silla observamos que hay multitud de sillas diferentes pero a todas les unen los mismos rasgos característicos: 4 patas, una placa donde sentarse, un reposo para la espalda…

Dependiendo de cómo solucionemos estos problemas (qué tipo de algoritmos y procesos aplicamos) nuestro programa/aplicación será más o menos eficiente y más o menos fiable.

Other Languages