¿Cómo funciona el MP3? Ursula Molter Departamento de Matemática Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Semana de la Matemática 2010 Digitalización ¿por qué y para qué? La palabra digital hoy ya se incorporó al lenguaje diario. cámaras digitales, teléfonos digitales, megapixeles, ancho de banda. La digitalización permite una transformación y procesamiento de la información, con grandes beneficios. Es aquí donde se necesita la matemática para desarrollar y fundamentar las técnicas usadas. ¿Qué queremos digitalizar? Las señales que pretendemos digitalizar - con distintos objetivos, incluyen: Señales de Audio: Música y Voz Video: Imágenes y Televisión Datos: Resonancia Magnética, Electrocardiogramas, Números, Letras, Patentes Señales de Audio Consideremos por ejemplo una suite de Bach. Cuando él la escribió, probablemente usó lo que se denomina notación musical. Es evidente que de esta escritura, no se obtiene toda la información de una pieza: depende de quién la ejecuta, cómo la interpreta, etc. Matemáticamente, esto no es muy preciso. ¿Cómo digitalizamos a Bach? 1 En primer lugar registramos el sonido con intervalos de tiempo muy pequeños. (muestreo - sampling de la señal analógica.) 2 Cada medición se cuantifica asignándole en forma proporcional un número entero positivo en un cierto rango, por ejemplo (de 0 a 512). 3 Cada uno de estos números es ahora convertido a notación binaria (ceros y unos). 4 Estos números binarios agrupados consecutivamente forman una sucesión de ceros y unos, que es lo que llamamos, la señal sonora digital en contraposición a la señal analógica. En este proceso de digitalización sólo se registró información en determinados instantes de tiempo equiespaciados. El resto de la señal aparentemente se ha perdido. Teorema del Muestreo ¿Cómo hacemos para entonces escuchar toda la música? Usamos la matemática! El Teorema de muestreo de Shannon, dice que para conocer el valor de una función o señal f (cuyo rango de frecuencias está limitado) basta con conocerla en algunos instantes equi-distribuidos. O sea, si conozco . . . , f (−1/B), f (0/B), f (1/B), f (2/B), . . . entonces puedo averiguar cuánto vale f en cualquier valor. Cómo? Lo que probó C.E. Shannon es que usando la función seno, puede calcular f en cualquier valor: f (x) = · · · + f (−1/B) sen(π(Bx − (0))) sen(π(Bx − (1))) sen(π(Bx − (−1))) + f (0/B) + f (1/B) +... π(Bx − (−1)) π(Bx − (0)) π(Bx − (1)) C.E. Shannon en realidad redescubrió este teorema en 1949 que había sido descubierto por Whittaker en 1935. Pero Shannon se dio cuenta de la utilidad de este resultado en la teoría de la transmisión de la información. Este teorema sólamente se aplica a señales cuyo rango de frecuencias está limitado a un intervalo finito. Pero esto es siempre el caso en las señales que aparecen en la práctica (por ejemplo, la frecuencia máxima trasmitida por una línea telefónica está alrededor de 4.000 ciclos por segundo). Este teorema se prueba (demuestra) utilizando la Transformada de Fourier. Transformada de Fourier El matemático Jean Baptiste-Joseph Fourier alrededor de 1800 escribió su famoso tratado del calor en el cual explicó que las funciones pueden ser descompuestas en componentes muy simples, utilizando sólamente funciones como cos(x) y sen(x). Transformada de Fourier (cont.) La transformada de Fourier es un procedimiento matemático que descompone una señal en cada una de las frecuencias que la componen. Se puede pensar en una analogía con un prisma que descompone la luz en colores. La idea es que cada función se puede escribir como una suma de múltiplos de senos y cosenos. Si consideramos para cada número entero k (positivo y negativo) las funciones cos(kx) y sen(kx) obtenemos un sistema (o familia) infinito de funciones, conocido como el sistema trigonométrico. Transformada de Fourier (cont.) Toda función f , de duración finita (por ejemplo dura 2π horas), puede ser escrita, de manera única, como sumas de múltiplos de estas funciones: f (x) = · · ·+a−2 cos(−2x)+a−1 cos(−x)+a0 +a1 cos(x)+a2 cos(2x)+. . . Está claro, que conociendo los números {. . . , a−2 , a−1 , a0 , a1 , a2 , . . . } se vuelve a obtener la función original. El procedimiento que a una función le asigna la sucesión de números {. . . , a−2 , a−1 , a0 , a1 , a2 , . . . }, es lo que se llama transformada de Fourier. (¡Ojo! hay infinitos números) Varios Cosenos Otras señales Una combinación de tres cosenos: Una función y su transformada: Virtudes ... Para remover “ruido”: Ejemplo con sonido: Digitalizando a Caruso La señal corresponde a un pasaje muy corto (6s) del tenor Caruso, obtenido a partir de una grabación de un disco de pasta. Caruso Original ¿Qué podemos hacer con esta representación numérica? Le aplicamos la transformada de Fourier, y le eliminamos las frecuencias altas. Caruso Limpio Hemos eliminado el ruido! Manipulando a Caruso Caruso Original Caruso Limpio Caruso Ruido Caruso Más Limpio Problemas El problema de la transformada de Fourier, para analizar señales, se presenta cuando hay cambios abruptos en la señal. Veamos: Podemos pensar en una función suave “+” dos saltos: Fenómeno de Gibbs La transformada de Fourier de la función de salto es: Esto produce, que al reproducir la función usando solamente un número finito de coeficientes, obtengamos: Esto se debe a que las funciones seno y coseno no están localizadas. Mala Sinfonía Pensando en la orquesta, Gilbert Strang en 1994 dijo: “La transformada de Fourier para representar una sinfonía, consta de una orquesta de infinitos músicos, cada uno tocando sólamente una nota: No se necesita director - los músicos están totalmente aburridos.” En contrapartida está la notación musical, donde las indicaciones si bien no totalmente precisas - se adecuan a lo que uno se imagina: las diferentes notas indican la duración y la posición en el pentagrama, la frecuencia. Mejorando Fourier Entonces está el desafío matemático: ¿Podemos inventar algo mejor? Sería bueno, que las funciones base estén localizadas en el tiempo, ya que entonces podemos analizar la señal localmente sin condicionar el resto. Efectivamente esto es posible, y se obtiene utilizando un resultado muy profundo que se debe a uno de los matemáticos más brillantes del siglo pasado, el argentino Alberto Calderón Wavelets Definición: Una wavelet es una función del tiempo, ψ = ψ(t), de energía finita, oscilante y bien concentrada. 3 wavelets famosas: Haar(1909) Meyer (1985) Daubechies (1988) . Wavelets Esta función luego es dilatada y trasladada para obtener una colección de funciones que nuevamente permiten representar todas las señales. Por ejemplo, ψ(2t) dura la mitad del tiempo, mientras que ψ(t/2) dura el doble. Por otro lado, la señal ψ(t − k) comienza k unidades de tiempoi más temprano, y aψ(t) tiene una amplitud a veces la wavelet original. Análisis por transformadas Lo que se denomina la transformada wavelet es la representación que asocia a cada señal una sucesión de coeficientes que corresponden a las traslaciones y dilataciones de una wavelet original. Teorema: Si ψ es una función adecuadamente elegida, a partir de la transformada wavelet se puede reconstruir la función. Ventajas de las “escalas” Observemos qué es lo que significa “analizar” una imágen con diferentes escalas de la función de Haar: ¿Qué se perdió? Esta imágen muestra lo que se ha perdido al pasar de la primer imágen a la segunda. Está claro que con las dos imágenes juntas (la segunda y esta diferencia) obtenemos la primera. + = Siguiendo La última imágen sólamente requiere 1024 pixeles, mientras que la original usa 262.144 Lena Otro éxito Las wavelets han sido exitosas en compresión: el FBI ha optado utilizar las mismas para comprimir su archivo de huellas digitales. ¡MUCHAS GRACIAS POR ESCUCHARME! Ursula Molter umolter@dm.uba.ar