Para entender cómo se utiliza el álgebra lineal en el mundo práctico, juguemos con imágenes. Las imágenes son matrices. Veamos.

Se carga una imagen mediante el paquete magick.

A continuación se convierte a matriz numérica de dimensión:

## [1] 500 369   3

La primera dimensión es el alto de la imagen, la segunda el ancho, ambas en pixeles. La tercera dimensión guarda lo correspondiente al color: Rojo, Verde y Azul (RGB por sus respectivas iniciales en inglés).

Podría haber \(4\) dimensiones en la tercera posición en vez de \(3\), la cual corresponde al alfa.

Hay un alfa cuando el formato no es RGB puro, sino RGBA. Aunque a veces se describe como un espacio de color, en realidad es un modelo de color RGB de tres canales complementado con un cuarto canal alfa. El alfa indica el grado de opacidad de cada píxel y permite combinar una imagen sobre otras mediante la composición alfa, con áreas transparentes y antialiasing1 de los bordes dentados de las regiones opacas.

Inspeccionemos el color del primer pixel:

## [1] 0.7529412 0.9058824 0.4549020

Aunque lo normal es proporcionarlo en un espacio de 0 a 255:

## [1] 192 231 116

Este es el color:

Entendida la matriz, procedamos a cargar una segunda imagen, del mismo tamaño en matrizB.

Las matrices se pueden sumar. Un artilugio matemático común es este: \[\alpha A + (1 - \alpha)B = C\] donde \(\alpha\) es un número entre cero y uno. Es un tipo de interpolación lineal.

Si \(\alpha\) es \(1\), la matriz \(C\) es exactamente igual a la matriz \(A\). Si \(\alpha\) es \(0\), la matriz \(C\) es exactamente igual a la matriz \(B\). Con \(\alpha = 0.5\), la matriz \(C\) es algo intermedio entre \(A\) y \(B\).

Pero no queremos multiplicar las dos primeras dimensiones, la ubicación de los píxel, sino el color, que es lo que compone la imagen para el ojo humano y está ubicado en la tercera dimensión, como ya se explicó, así que la interpolación sólo aplica para cada color de dicha dimensión.

Sea llamada la función creada con \(\alpha = 1\)

Se comprueba que la nueva matriz sea igual a la original.

Ahora representemosla en la pantalla:

Estamos listos para probar con \(\alpha = 0.5\):

Esto es lo que se denomina fundido de imágenes. Variando \(\alpha\) de uno a cero se logra una transición de una imagen a otra.

Renderizando, no estas \(9\), sino \(24\) transiciones en un segundo, se obtiene un fundido suave y continuo para el ojo humano.


  1. En el área de la computación gráfica e infografía, el aliasing es el efecto que causa que señales continuas distintas se tornen indistinguibles cuando se muestrean digitalmente, y que puede dar origen a patrones de muaré (en las imágenes con muchos detalles finos) y también presentar bordes dentados.↩︎