Una imagen es una tabla de números
Una foto es una tabla de números: tres por píxel, rojo, verde y azul. Lo ves en una manzana y por qué su rojo son miles de números. Curso de IA, 0.2.

Curso de IA › Nivel 0 — Cómo ve el mundo una máquina parte 2 de 4
Una foto, para un ordenador, es una tabla: filas y columnas de casillas, y en cada casilla tres números, uno por color. Y en la piel de una manzana esos números cambian tanto de una zona a otra que el mismo rojo son miles de ternas distintas.
Toca esto primero
Abre esta manzana en la herramienta Imágenes. A la izquierda verás la foto; a la derecha, una tabla de 8 × 8 casillas, cada una pintada de su color y con tres números dentro. Cada casilla es un píxel, uno de los puntos de los que está hecha la imagen, y sus tres números dicen cuánto rojo, cuánto verde y cuánto azul lleva, de 0 a 255. Pincha en cualquier otra parte de la manzana y la tabla cambia a los píxeles de esa zona.

Ahora compara dos zonas de la misma piel roja. Abre la parte donde le da la luz: los números rondan 205, 127, 104. Y ahora el borde que queda en sombra: rondan 121, 1, 13.
Baja hasta Los tres canales, por separado y juntos. La misma manzana aparece cuatro veces: tres en gris y una en color.
Qué acaba de pasar
Cada píxel guarda tres números, uno por color, y cada uno va de 0 a 255: 256 valores posibles, justo lo que cabe en un byte (8 bits). Con tres números así salen 256 × 256 × 256 = 16 777 216 colores distintos. La foto de la manzana mide 480 × 433 píxeles, así que son 207 840 píxeles y 623 520 números. Esos 623 520 números son toda la foto.
¿Por qué tres colores y no dos o cinco? Porque el ojo humano tiene tres tipos de conos, las células que distinguen el color, y cada tipo es más sensible a una zona distinta de la luz: longitudes de onda cortas, medias y largas (Cone cell, en la Wikipedia en inglés). Una pantalla aprovecha eso: mezclando solo tres luces, en la proporción justa, consigue que el ojo vea una gama muy amplia de colores.
Los canales son esas tres tablas por separado. En cada imagen gris hay un solo número por píxel: blanco es 255 (mucho de ese color) y negro es 0 (nada). En el canal R la manzana sale casi blanca, porque lleva mucho rojo; en el G y en el B sale casi negra. La cuarta imagen junta los tres números de cada píxel y vuelve a salir la foto en color.
Un detalle, porque Imágenes también tiene una pestaña de Base64 (una forma de escribir bytes cualesquiera con letras y números, para pegarlos como texto): lo que sale ahí son los bytes del fichero comprimido (un JPEG, un PNG), que guarda la imagen de forma mucho más compacta, y no esta tabla. Para llegar a los píxeles hay que descomprimirlo, que es lo que hace la tool antes de enseñártelos.
El error típico
Podrías pensar que el color es una propiedad de la manzana: la manzana es roja y ya está. Para el ordenador no. Pon las dos ternas de antes una al lado de la otra: con luz, 205, 127, 104; en sombra, 121, 1, 13. Cambian los tres números. El rojo baja de 205 a 121, y el que más cambia es el que menos esperarías en una manzana roja: el verde, que pasa de 127 a 1. Son dos ternas que no se parecen en nada, y las dos son «el rojo de la manzana».
Un programa que buscara manzanas por «el número del rojo» fallaría en cuanto cambiase la luz. Lo que hay que reconocer es una forma: un patrón entre muchos píxeles vecinos (cómo se hace eso se cuenta en Convolución).
Pruébalo tú mismo
En la manzana de la herramienta Imágenes, junto al rabillo, hay una zona amarilla. Antes de pinchar en ella, apuesta: ¿qué números esperas? ¿Cuál de los tres será el más bajo? Pincha y compruébalo. Después cambia de RGB a R, G y B con los botones de encima de la tabla y mira qué canal se queda con casi todo.
Luego abre el Conversor de Color y escribe las dos ternas de antes, una detrás de otra: rgb(205,127,104) y rgb(121,1,13). La tool las pasa a otra forma de describir un color, HSL (hue, saturation, lightness: tono, saturación y luminosidad). ¿Cuál de los tres números cambia menos entre la zona con luz y la de sombra? ¿Qué te dice eso de lo que significa «rojo»? (Una pista: el tono es un ángulo del círculo de color, de 0 a 360, así que 354 está muy cerca de 0.)
Y si quieres, en Imágenes puedes cargar una foto tuya y ver sus números.
Si quieres más
- En Jarroba, Binario: combinación y conversión explica el modelo RGB con sus 24 bits por píxel (8 por canal), y en ¿Qué es el Clustering? Ricardo Moya usa el color del pelo en RGB como datos de un ejemplo de aprendizaje automático (machine learning).
- RGB, en la Wikipedia en español: cómo se percibe cada color, la señal de vídeo y su uso en HTML.
«Una imagen es una tabla de números», de Ramón Invarato en jarroba.com, con licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0. Obra registrada en Safe Creative.

Te puede interesar
Qué es un modelo (y por qué una recta ya cuenta como uno)
Qué es un modelo, entrenar y predecir, con una recta que ajustas arrastrando puntos. Y por qué un modelo no entiende sus datos. Curso de IA, 0.4.
Cuando un bit se corrompe, y cómo arreglarlo sin saber cuál es
Cómo un ordenador encuentra y arregla un bit estropeado sin saber cuál es: el código de Hamming, sus límites y SECDED. Curso de IA, 0.3.





Deja un comentario