Visión Artificial ¿Cómo funciona? Inteligencia artificial

Visión Artificial VS Visión Humana: Así ven los ordenadores

26/11/20 6 min. de lectura

En este artículo explicaremos qué es la Visión Artificial (o Visión por Computadora por sus siglas en inglés “Computer Vision”). Lo haremos desde el punto de vista de procesamiento de la imagen. Primero explicaremos como percibe el computador una imagen y luego como es el procesamiento básico de una imagen para reconocer su contenido.

No nos adentraremos mucho en el campo de la Inteligencia Artificial, porque necesitamos una base que no es el objeto de este artículo, pero tenemos que mencionarla dado que mediante sus avances y técnicas es posible la Visión Artificial.

En primer lugar ¿Cómo funciona la Visión Humana? 👁

La visión humana gira en torno a la luz y no implica repetición ni patrones. En otras palabras, no necesitamos aprender a ver, está biológicamente arraigado en nosotros. La visión humana consta de varios pasos. Primero, la luz rebota en la imagen y entra en los ojos a través de la córnea. Luego, la córnea dirige la luz a las pupilas y al iris, que trabajan juntos para controlar la cantidad de luz que ingresa al ojo. Una vez que la luz atraviesa la córnea, entra en la retina; la retina tiene sensores especiales llamados conos y bastones, que participan en la visualización del color.

Por lo tanto, la visión es, en primer lugar, una tarea de procesamiento de información ya que para poder entender lo que hay un una imagen, nuestro cerebro deben ser capaz de representar esta información como: color, forma, movimiento, detalle y belleza.

Visión del ojo humano

¿Qué es la Visión artificial o Computer Vision? 💻

Es una rama de la inteligencia artificial que tiene por objetivo modelar matemáticamente los procesos de percepción visual en los seres vivos, y generar modelos, algoritmos y programas que permitan simular estas capacidades visuales utilizando la capacidad de los ordenadores.

Esto significa que las computadoras pueden hacer inferencias sobre imágenes sin ayuda humana. Esto parece simple porque los humanos pueden ver sin esfuerzo el mundo que los rodea; sin embargo, enseñarle a una computadora a ver como un humano es difícil porque todavía no comprendemos realmente cómo funciona la visión humana.

Entonces ¿Cómo funciona la Visión Artificial? 🤔

Para entender cómo percibe el mundo una computadora, comencemos por definir qué es una imagen digital y el procesamiento básico que realiza.

La imagen 📷

Una imagen digital es una matriz. Si, las mismas que vimos en matemáticas en el colegio.

Coordenadas de una imagen digital

Una imagen digital está compuesta de un número finito de elementos, cada uno tiene una posición en un plano (cartesiano) con coordenadas x,y, y un valor asociado al color de la imagen en ese punto.

A estos elementos se les llama puntos elementales de la imagen o píxeles, siendo este último el término comúnmente utilizado para denotar la unidad mínima de medida de una imagen digital.

El color 🔴

La representación del color de la imagen en un pixel, puede ser binaria, para el caso de blanco y negro, o un número que representa la intensidad en la escala del gris, o una gama de colores, que explicaremos más adelante.

La figura 1, es una representación binaria de una imagen en blanco y negro. Se asigna 1 (negro) o 0 (blanco).

Representación binaria de una imagen
Figura 1

La figura 2, representa una imagen con 256 niveles de intensidad. En ella, cada uno de los píxeles representa un número entero que es interpretado como el nivel de intensidad luminosa en la escala de grises. Ampliando la imagen en una zona cualquiera, se pueden apreciar estos valores, que se muestran en forma de matriz en la misma figura, correspondiéndose cada elemento de la matriz con las coordenadas en el plano.

Representación de escala de grises de una imagen
Figura 2. Escala de grises de 0 a 250
Representación de escala de grises de una imagen
Otro ejemplo de asignación de escala de grises

En una imagen en color, cada píxel (o punto) de la imagen queda representado con tres valores, que codifican su color como una combinación de la cantidad de rojo, verde y azul, que inglés se conoce como RGB.

Representación de una imagen a color

El color resultante del píxel vendrá por tanto definido por la “cantidad” de intensidad que tenga cada componente. Así, el color blanco estará compuesto de la máxima intensidad de color para los tres componentes.

Modelo RGB
Modelo RGB
Escala de grises VS RGB
Representación imagen escala de grises y color

La resolución 💎

Otro de los parámetros en una imagen digital es su resolución. La resolución es la cantidad de píxeles que contiene una imagen. Se utiliza también para clasificar casi todos los dispositivos relacionados con las imágenes digitales. La resolución de una imagen se representa en dos valores numéricos, donde el primero es la cantidad de columnas de píxeles (ancho) y el segundo es la cantidad de filas de píxeles (alto).

Resolución de una imagen

Procesamiento digital básico ⚙️

En las siguientes imágenes podemos observar el aspecto que tendría una fotografía (blanco y negro) si la representamos en una matriz de cuadros o pixeles (resolución 4×4, 8×8 y 16×16) y a cada pixel le atribuimos uno de los dos colores: blanco o negro, dependiendo que color que predomina en cada uno de los cuadritos.

Si observamos la siguiente imagen podemos ver que a mayor número de pixeles obtenemos una imagen más parecida a la fotografía real (lo que conocemos como resolución).

Número de pixeles VS Resolución
4×4 8×8 16×16

Lo podemos comprobar con más detalle si seleccionamos la región del rostro y observamos su representación binaria.

Imagen ampliada 16x16
Ejemplo color que predomina en el pixel de la fotografía y su representación

En el siguiente post de Visión Artificial hablaremos sobre el procesamiento automatizado de imágenes donde la IA cobra mucha importancia. Además hablaremos sobre las redes neuronales y comentaremos todas las aplicaciones que tiene actualmente la Visión Artificial o Computer Vision.

¡No te pierdas el próximo post! 😀

Leo Gamboa Uribe

Santander Global Tech

Profesional  con más de 20 años de experiencia liderando proyectos tecnológicos en las áreas de Telecomunicaciones, Aeroespacial, IoT y  Finanzas. Fundador de Molino Valley, Incubadora Tecnológica  en Las Rozas de Madrid.

Amante de la naturaleza, deportista (Triatlón) , apasionado de la tecnología y la divulgación de áreas STEM (Science, Technology, Engineering, and Math).

 

👉 Mi perfil de LinkedIn

 

 

Otros posts