sábado, 23 de marzo de 2024

Ocultando imágenes en el espectro de un sonido con R

Un clásico juego de encriptación consiste en incrustar imágenes en el espectro de un archivo de audio. Escuchándolo va a sonar horrible, pero si dibujamos su espectrograma las imágenes aparecerán por arte de magia.

martes, 19 de marzo de 2024

Los fotógrafos son terribles estadísticos

Sin ánimo de chinchar a nadie pero diciendo las cosas como son, este artículo pretende mostrar varios ejemplos de por qué los fotógrafos en ocasiones resultan ser terribles en estadística, haciendo simplificaciones y asumiendo causalidades donde solo hay correlaciones, y llegando así a conclusiones erróneas. He tratado de ser muy breve en cada uno de los casos de uso pero se incluyen enlaces para ampliar información.

domingo, 10 de marzo de 2024

Midiendo la velocidad de centrifugado de una lavadora con la FFT

Con el análisis espectral del sonido que hace una lavadora durante su centrifugado podemos calcular con mucha precisión a cuántas rpm está girando. Lo mismo es aplicable al sonido de cualquier otro tipo de motor.

domingo, 3 de marzo de 2024

Apilado por media para simular ISO ultra bajo/filtro ND en RAW (II)

Como cierre del ejercicio 'Apilado por media para simular ISO ultra bajo/filtro ND en RAW (I)', vamos a promediar varios archivos RAW procedentes de capturas de la misma escena para simular el efecto de un filtro de densidad neutra (ND), con el objetivo de obtener un archivo RAW de larga exposición.

jueves, 29 de febrero de 2024

Añadiendo niebla a un mapa con Photoshop

En este ejercicio vamos a emular un efecto de niebla sobre un mapa de elevación con su correspondiente hillshade, y lo haremos enteramente con Photoshop, dejando la versión en código para otra iteración. La clave está en conocer la altitud en cada zona del mapa, lo que nos va a permitir aplicar la niebla selectivamente. Así crearemos dramatismo introduciéndola en los valles y laderas inferiores, dejando las cumbres más altas inalteradas.

lunes, 19 de febrero de 2024

Mapas estilo LEGO con R

Tras el bombardeo que el algoritmo de LinkedIn me ha propinado días atrás con mapas hechos de fichas LEGO con ArcGIS Pro o QGIS, he querido escribir mi propia función en R que vaya un poco más allá: se trata no solo de representar mapas con fichas de LEGO, sino que se utilicen diferentes tamaños y orientaciones de los ladrillos como ocurriría con un LEGO real.

domingo, 21 de enero de 2024

Plegando papel con R

En 'Digital map folding part 1: 2D' encontramos un tutorial para emular el plegado en papel de un mapa (aplicable a cualquier cosa susceptible de ser impresa). El proceso es laborioso y no parametrizable, fruto de usar un programa no pensado para ello, pero la idea es buena y fácilmente programable así que vamos a replicarla con R. La automatizaremos para un número arbitrario de pliegues por eje.

miércoles, 17 de enero de 2024

Los horizontes del Lago Michigan con R

Alguna vez de pie en la orilla de la playa te has preguntado a qué distancia quedaba el horizonte? seguramente te habrás pasado y por mucho. Depende de la estatura de cada uno, pero hay que ser muy alto para llegar a ver siquiera 5km.

lunes, 15 de enero de 2024

Conectando los Grandes Lagos al mar con R

Los cinco Grandes Lagos se encuentran por encima del nivel del mar (Superior: 183 m s. n. m., Michigan: 177 m s. n. m., Hurón: 176 m s. n. m., Erie: 174 m s. n. m., Ontario: 74 m s. n. m.). Esto significa que si instalásemos desagües en sus partes más profundas comunicando cada uno de ellos con el océano, se empezarían a vaciar hasta igualarse al nivel del mar.

lunes, 1 de enero de 2024

Reescalado de imágenes con el paquete 'terra' de R

Siempre he echado en falta que R no disponga de funciones estándar para reescalar imágenes (matrices/arrays). Existen varios paquetes con esta funcionalidad, y uno de ellos que empecé a usar hoy es bueno (calidad de implementación de los algoritmos de interpolación habituales con profusión de opciones de promediado), bonito (intuitivo y fácil de usar) y barato (aceptablemente rápido).