Revista de Divulgación Científico-Tecnológica del Gobierno del Estado de Morelos

Rotando imágenes pixeladas sin perder información.

Píxel es un neologismo (acepción o giro nuevo en una lengua), ya aceptado por la lengua castellana; es un acrónimo del inglés usado por computólogos e ingenieros de T.V. como contracción de “PICTure ELement”. Es el elemento más pequeño de una imagen que puede ser procesada individualmente en un sistema de video y manejada por cómputo digital. A diferencia de registros fotográficos, las imágenes pixeladas contienen una cantidad de información bien definida: cada píxel representa una unidad.

Una pantalla de alta definición contiene más de medio millón de píxeles, y más se usan para las imágenes que manejan los diseñadores de películas con efectos digitales. Dará una idea del poder de cómputo que requiere renovar imágenes 18 o 24 veces por segundo, todo basado en una rauda corriente digital de ceros y unos. Para reducir la complejidad del cálculo, existen algoritmos que ‘saltan’ aquellas áreas que no cambian de una imagen a la siguiente. Los píxeles individuales tienen forma generalmente cuadrada.

En tomografía médica se acumula gran número de imágenes pixeladas bidimensionales paralelas para formar una imagen en tres dimensiones, que permite reconocer mejor las estructuras internas que las obtenidas por proyección con rayos X.
Estas imágenes tridimensionales, desplegadas en la pantalla plana de un monitor pueden ser rotadas a voluntad y hay artificios para mostrarlas esteroscópicamente (cualquier técnica de grabación de la información visual tridimensional).

No existe impedimento teórico para concebir imágenes en D dimensiones, compuestas de píxeles que son unidades de información que incluyen las D coordenadas del píxel y su coeficiente de gris, de tres colores, etc. Nuestro interés estriba en una cuestión fundamental sobre imágenes pixeladas: ¿qué transformaciones conservan esa información? Es decir, si transformamos una imagen rotándola, deformándola o aberrándola, ¿podemos recuperar la original? Comúnmente vemos en T.V. que una escena da vueltas, se cizalla, enrolla, o se achica. Preguntamos: ¿puede recuperarse la imagen original? En este artículo nos limitaremos a la rotación de imágenes pixeladas en 2 y 3 dimensiones.
Veamos primero cómo hacerlo “a mano”. Escojamos un píxel de la pantalla y calculemos geométricamente dónde cae después de una rotación, como en la Figura 1. A menos que la rotación sea de 90º el centro de nuestro píxel no caerá al centro de otro, ¿qué hacer entonces?
La solución más obvia es interpolar entre los valores de los cuatro píxeles vecinos y el escogido, asignando a ese píxel un valor promedio ponderado por la distancia y orientación entre los dos centros.

El sistema de cómputo simbólico WOLFRAM MATHEMATICA 9.0 contiene paquetes con la capacidad de procesar imágenes para una gran variedad de usos científicos, de ingeniería y comerciales, detallados en el tutorial Image Processing. Entre otras funciones para hacerlo, ofrece ImageRotate[<imagen>, <ángulo>] con 22 opciones de interpolación que sopesan los píxeles vecinos con uno de varios criterios, con pesos proporcionales a su distancia (gaussianos, trigonométricos, o polinomiales). Los vértices de la imagen original determinan el tamaño de la imagen rotada y los espacios que quedan ‘vacíos’ se rellenan en negro.

Figura 1: La rotación de un píxel generalmente requiere la
interpolación con sus cuatro vecinos más próximos.

Sin embargo, con esta estrategia de manejo de imágenes perdemos información porque, si queremos regresar la imagen rotada a su posición original usando el mismo algoritmo, no podremos recuperarla: al interpolar ahora los píxeles de la imagen rotada, nuestro píxel escogido recibirá los valores ponderados de los cuatro vecinos del rotado, cada uno resultado de interpolación con sus propios cuatro vecinos. Es decir, la imagen original se habrá difundido como si fuera la temperatura en un medio conductor de calor. Además, ¿qué hacer con los píxeles cercanos a los vértices? Así la estrategia de interpolación no es reversible, y tampoco es multiplicable: si aplicamos 9 veces rotaciones de 10º, al llegar a 90º habremos interpolado entre más píxeles que con una sola rotación.

Nosotros abordamos el problema mediante una técnica derivada del uso de teoría de grupos importando un conjunto de imágenes como bases de funciones con las simetrías mostradas en la Figura 2, organizadas en rombos. Los hemos llamado modos de Kravchuk y de Laguerre-Kravchuk por motivos históricos, y usando las tácticas de la física matemática para trasplantar resultados de un campo (física nuclear) a otro (procesamiento de imágenes). Si tuviésemos un medio continuo donde pequeñas masas se mueven atadas a un centro con resortes (osciladores armónicos en el modelo de capas del núcleo atómico), las imágenes de la Figura 2 serían una versión pixelada de los estados cuánticos en ese sistema, arreglados horizontalmente por momento angular y verticalmente por energía. Las propiedades bajo rotación están contenidas en el momento angular y son éstas las que se importan para formar los patrones en la pantalla. En una pantalla de N x N píxeles habrá también N2 modos en los rombos. Cualquier imagen puede ser desarrollada con la suma de píxeles individuales, o la suma de sus modos. La transformación entre estas dos descripciones es reversible y cumple con otras propiedades, como la de preservar el valor de los traslapes entre cualesquiera dos imágenes. Tales se llaman unitarias; son reversibles, luego no pierden información, y son concatenables, es decir, que dos transformaciones unitarias aplicadas al hilo producen una tercera transformación, también unitaria.

Figura 2: Modos de Kravchuk clasificados por nx y ny (izquierda) y
de Laguerre-Kravchuk (derecha), donde la energía es n y el momento
angular μ determina su comportamiento bajo rotaciones.


Pasando de píxeles a modos de Laguerre- Kravchuk, rotando los modos, y regresando a la base de píxeles, obtenemos la Figura 3, donde una imagen original de ceros y unos (la letra R) está rotada con esta estrategia. El núcleo de la transformación está contenido en una matriz de N2 x N2 que es unitaria. Como vemos en la figura, aparecen oscilaciones; ésta es una característica ineludible de transformaciones unitarias en sistemas finitos, conocida como fenómeno de Gibbs, pero es necesaria.

Figura 3: Rotación de 45o en una imagen (la letra R) sobre una
pantalla de 17 x 17 píxeles, hecha con el algoritmo unitario descrito
en el texto.

Un ingeniero con toda razón diría que nuestro algoritmo de rotación puede ser elegante pero es inútil: con N = 100 píxeles por lado, la pantalla contendrá 10 mil píxeles, y como cada píxel rotado depende de todos los originales, requiere de un núcleo matricial con el cuadrado de este número de elementos –cien millones, pues crece como N4. Por ejemplo, en la Figura 3 tenemos una imagen de 17x17 pixeles; el núcleo matricial tiene 83 mil 521 elementos que pueden ser calculados en una PC estándar (con procesador Intel Core de 3.3GHz, sistema operativo de 64 bits y 6GB en memoria RAM) en 6 minutos; pero una vez computado este núcleo, puede ser aplicado a cualquier imagen para rotarla en una centésima de segundo. Los algoritmos de interpolación son mucho más rápidos. La motivación de nuestro trabajo no es obtener una codiciada patente para rotar fotos más barato, sino para investigar la conservación de información en imágenes discretas bajo transformaciones ópticas D-dimensionales, entre ellas las rotaciones.

El algoritmo de rotación unitaria en el plano puede extenderse a imágenes en tres dimensiones, porque éstas pueden descomponerse en tres rotaciones bidimensionales sobre ejes perpendiculares (los llamados ángulos de Euler). Un ejemplo de rotación tridimensional se muestra en la Figura 4. Sin mayor novedad, rotaciones en D dimensiones se descomponen en ½ D(D – 1) rotaciones planas sobre distintos ejes. Si bien éstas transformaciones son unitarias y reversibles, ya no pueden ser multiplicadas como si fuesen matrices.
Pero más aún, el modelo físico del oscilador armónico sugiere que usemos la frecuencia de las señales, análoga al número de nodos que se forman al pulsar la cuerda de una guitarra. Una señal compuesta por N píxeles puede sonar con N frecuencias, y podemos caracterizarla por sus píxeles o por los coeficientes de sus frecuencias; y podemos rotar entre estas dos bases señal mediante un símil de la transformación de Fourier, la cual es conocidamente unitaria.

Figura 4: Rotación de una imagen volumétrica dentro de un cubo, de
0o a 120o sobre el eje que une los vértices marcados

En pantallas planas, combinando rotaciones con transformaciones de Fourier en sus dos dimensiones, tendremos un conjunto de transformaciones unitarias parametrizadas por 4 ángulos que corresponde, en óptica geométrica plana, al conjunto de todos los instrumentos que podemos construir con lentes delgadas y espacios vacíos para rayos cerca de su eje óptico. En D dimensiones tendremos D2 parámetros angulares.
En otros trabajos hemos tratado con aberraciones de señales pixeladas, situándolas en correspondencia con las de sistemas ópticos planos; si hay N píxeles en línea, habrá no más de N2 aberraciones unitarias. Finalmente, cuando el número de píxeles y su densidad aumentan sin límite, recuperamos las propiedades de un medio continuo sujeto a ecuaciones y soluciones ampliamente conocidas.
El objetivo de estos trabajos, apoyados en los proyectos ‘Óptica Matemática’ por CONACyT y la UNAM, es desarrollar modelos pixelados (en principio manejables por cómputo numérico), bajo transformaciones que aproximen los de sistemas continuos con la misma geometría y dinámica, y que sean unitarios de modo que conserven la información.


 

Quím. Guillermo Krötzsch / Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.
Kenan Uriostegui* / Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.
Ing. Alejandro R. Urzúa** / Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.
Dr. Kurt Bernardo Wolf / Esta dirección de correo electrónico está protegida contra spambots. Usted necesita tener Javascript activado para poder verla.
Instituto de Ciencias Físicas de la Universidad Nacional Autónoma
de México, campus Morelos.
*Estudiante de la Facultad de Ciencias, UAEM
**Estudiante del Posgrado en Ciencias Físicas, UNAM