Date post: | 20-Apr-2015 |
Category: |
Documents |
Upload: | melissagjt |
View: | 72 times |
Download: | 2 times |
Transformada de Haar Rafael Molina 1
Wavelets de Haar
Rafael MolinaDepto de Ciencias de la Computación
e IA.Universidad de Granada
Transformada de Haar Rafael Molina 2
Contenidos1. Introducción2. La Transformada de Haar
1. La Transformada de Haar de nivel 13. Conservación y Compactación de la Energía
1. Conservación de la Energía2. Transformada de Haar, niveles múltiples3. Justificación de la Conservación de la Energía
4. Wavelets de Haar5. Análisis Multiresolución
1. Análisis Multiresolución, múltiples niveles6. Compresión de Señales• Bibliografía
Transformada de Haar Rafael Molina 3
I. IntroducciónLa wavelet de Haar es la forma más simple de wavelet.
Este tipo de wavelet está relacionado con una operación matemática llamada la transformada de Haar que sirve además como prototipo para otro tipo de transformaciones wavelets.
Una característica muy importante de la transformada de Haar es su sencillez y su fácil cálculo manual.
En este tema veremos como la transformada de Haar puede utilizarse para comprimir audio.
Transformada de Haar Rafael Molina 4
En estos temas vamos a trabajar fundamentalmente con señales discretas que normalmente expresaremos de la forma
II. La transformada de Haar
donde N es un número positivo par (la longitud de f)
Al igual que todas las transformadas wavelets, la transformada de Haar descompone una señal discreta f en dos subseñales que tienen tamaño N/2.
Una subseñal contiene la tendencia, la otra las fluctuaciones.
f = (f1, f2, . . . , fN)
Transformada de Haar Rafael Molina 5
Comencemos con la primera tendencia
Sus elementos se calculan como pares de medias multiplicados luego por la raíz cuadrada de dos, o dicho de otra forma, sumamos los dos valores y dividimos por la raíz cuadrada de dos
y en general
a1 = (a1, a2, . . . , aN/2)
a1 =f1 + f2√
2
a2 =f3 + f4√
2
am =f2m−1 + f2m√
2
m = 1, 2, . . . , N/2
Transformada de Haar Rafael Molina 6
Veamos un ejemplo. Supongamos que
Entonces la primera tendencia viene dada por
La otra subseñal se llama la primera fluctuación
Sus elementos se calculan como pares de diferencias medias y multiplicados luego por la raíz cuadrada de dos o dicho de otra forma, restamos los dos valores y dividimos por la raíz cuadrada de dos.
d1 = (d1, d2, . . . , dN/2)
f = (4, 6, 10, 12, 8, 6, 5, 5)
a1 = (5√2, 11√2, 7√2, 5√2)
Transformada de Haar Rafael Molina 7
y en general
d1 =f1 − f2√
2
d2 =f3 − f4√
2
dm =f2m−1 − f2m√
2
m = 1, 2, . . . , N/2Supongamos de nuevo que
f = (4, 6, 10, 12, 8, 6, 5, 5)
Entonces la primera fluctuación viene dada por
d1 = (−√2,−√2,√2, 0)
Transformada de Haar Rafael Molina 8
La transformada de Haar se realiza a varios niveles. El primer nivel es la aplicación H1 definida por
que transforma una señal discreta f en su primera tendencia a1 y su primera fluctuación d1 . Para el ejemplo anterior
II.1 La Transformada de Haar, nivel 1
H1 : f −→ (a1|d1)
H1 : (4, 6, 10, 12, 8, 6, 5, 5) −→(5√2, 11√2, 7√2, 5√2|−
√2,−√2,√2, 0)
Transformada de Haar Rafael Molina 9
La aplicación H1 anterior tiene inversa (y esto es muy importante). Su inversa aplica (transforma) la señal (a1 |d1 ) en la señal original mediante la fórmula siguiente
En otras palabras, como
f1 =a1 + d1√
2
f2 =a1 − d1√
2
f3 =a2 + d2√
2
f4 =a2 − d2√
2
y así sucesivamente
f =
µa1 + d1√
2,a1 − d1√
2, . . . ,
aN/2 + dN/2√2
,aN/2 − dN/2√
2
¶
am =f2m−1 + f2m√
2
m = 1, 2, . . . , N/2
dm =f2m−1 − f2m√
2
m = 1, 2, . . . , N/2
Transformada de Haar Rafael Molina 10
Puede comprobarse fácilmente que
se transforma en
(4, 6, 10, 12, 8, 6, 5, 5)
(5√2, 11√2, 7√2, 5√2|−
√2,−√2,√2, 0)
que era nuestra señal original
¿Cuáles son las grandes ventajas de realizar la transformación de Haar?.
Transformada de Haar Rafael Molina 11
Todas las ventajas de realizar esta transformación, que serán más prominentes en la transformaciones de Daubechies que veremos en el capítulo siguiente se basan en:
Rasgo de Pequeñas Fluctuaciones: Las magnitudes de los valores de la subseñal de fluctuación son frecuentemente significativamente menores que las magnitudes de la señal original
Observa que este rasgo se cumple con el ejemplo que hemos desarrollado, veamos ahora otro ejemplo.
Transformada de Haar Rafael Molina 12
-1
1
0
0 10.5
A la izquierda tenemos la representación de la señal
En el intervalo [0,1)
g(x) = 20x2(1− x)4 cos(12πx)
A la derecha tenemos la representación de 1 nivel de su transformada de Haar.La tendencia está representada en [0,0.5) y la fluctuación en [0.5,1) -1
1
0
0 10.5
Transformada de Haar Rafael Molina 13
De la transformación de Haar de nivel 1 es claro que:
1. la parte de las fluctuaciones está cercana al cero y, 2. la señal original se parece bastante a la tendencia
aunque reducida en su tamaño a la mitad.
Observa que si el muestreo es rápido, si tenemos en cuenta que
esperamos que estos valores sean cercanos a cero. Por la misma razón
dm =g(t2m−1)− g(t2m)√
2
am =g(t2m−1) + g(t2m)√
2≈√2g(t2m)
Transformada de Haar Rafael Molina 14
El Rasgo de Pequeñas Fluctuaciones es importante, entre otras razones, por su aplicación a compresión.
En nuestro ejemplo podríamos pensar en transmitir sólo la subseñal de tendencia y luego realizar la transformada de Haar inversa (considerando cero las fluctuaciones).
Tendríamos una aproximación de la señal original y puesto que su longitud es la mitad podríamos decir que alcanzamos el 50% de compresión.
Veremos con posterioridad estos conceptos con más detenimiento.
Transformada de Haar Rafael Molina 15
III. Conservación y Compactación de la Energía
Vamos ahora a discutir las dos propiedades más importantes de la transformada de Haar de nivel 1:
1. Conserva la energía de la señal.
2. Compacta la energía de la señal.
Transformada de Haar Rafael Molina 16
III.1 Conservación de la EnergíaRecordemos que la energía de una señal f se define como
Para nuestro ejemplo inicial
f = (4, 6, 10, 12, 8, 6, 5, 5)
Su energía vale
Si consideramos su transformación Haar de nivel 1
(a1|d1) = (5√2, 11√2, 7√2, 5√2|−
√2,−√2,√2, 0)
su energía vale
Ef = f21 + f22 + . . .+ f2N
Ef = 42 + 62 + . . .+ 52 = 446
E(a1|d1) = 25× 2 + 121× 2 + . . .+ 2 + 0 = 446
Transformada de Haar Rafael Molina 17
Conservación de la Energía: La transformada de Haar de nivel 1 conserva la energía. Es decir, para cualquier señal f
E(a1|d1) = Ef
Con posterioridad veremos la demostración.
Aunque la conservación de la energía es importante, es incluso más importante estudiar como la transformada de Haar redistribuye la energía, llevándose la mayor parte a la subseñal de tendencia.
Transformada de Haar Rafael Molina 18
Recuerda de nuevo, para nuestro ejemplo inicial
f = (4, 6, 10, 12, 8, 6, 5, 5)Su energía vale
Ef = 42 + 62 + . . .+ 52 = 446La energía de la tendencia
a1 = (5√2, 11√2, 7√2, 5√2)
vale
mientras que la del detalle o fluctuación
d1 = (−√2,−√2,√2, 0)
vale
Ea1 = 25× 2 + 121× 2 + 49× 2 + 25× 2 = 440
Ed1 = 2 + 2 + 2 = 6
Transformada de Haar Rafael Molina 19
Observa que la energía de la tendencia corresponde a
440/446=98.7%
En otras palabras la transformada de Haar de nivel 1 redistribuye la energía de la señal de forma que la tendencia recoge el 98% de la energía (en nuestro ejemplo).
Por razones obvias el principio recibe el nombre de compactación de la energía.
Transformada de Haar Rafael Molina 20
Normalmente se cumple el siguiente principio general (piensa cuando no se cumple)
Compactación de la energía. La energía de la subseñal tendencia a1 recoge un alto
porcentaje de la energía de la señal transformada (a1|d1).
Transformada de Haar Rafael Molina 21
III.2 Transformada de Haar, niveles múltiples
Una vez que hemos realizado la transformada de Haar de nivel uno, es fácil repetir el proceso y calcular la transformada de Haar de varios niveles.
Dada una señal f :
1. Calculamos su primera tendencia a1 y su primera fluctuación d1,
2. El segundo nivel de la transformada de Haar se obtiene calculando: la segunda tendencia a2 y la segunda fluctuación d2 de la primera tendencia a1
Transformada de Haar Rafael Molina 22
Por ejemplo, si f = (4, 6, 10, 12, 8, 6, 5, 5)
sabíamos quea1 = (5
√2, 11√2, 7√2, 5√2)
Para calcular la segunda tendencia, calculamos la tendencia de a1, es decir, a2
y para calcular la segunda fluctuación, calculamos la fluctuación de a1, es decir d2
d2 = (−6,−2)de modo que la descomposición de Haar nivel 2 de f es
a2 = (16, 12)
d1 = (−√2,−√2,√2, 0)
(a2|d2|d1) = (16, 12|− 6,−2|−√2,−√2,√2, 0)
Transformada de Haar Rafael Molina 23
Si a partir de
(a2|d2|d1) = (16, 12|− 6,−2|−√2,−√2,√2, 0)
Queremos calcular la descomposición de Haar de nivel 3 tenemos
(a3|d3|d2|d1) = (14√2|2√2|− 6,−2|−
√2,−√2,√2, 0)
Observa que
Casi el 90% de la energía (2/8 del tamaño de la señal)
Casi el 88% de la energía (1/8 del tamaño de la señal)
Ea2 = 400
Ea3 = 392
Transformada de Haar Rafael Molina 24
0
-1.5
1.5
0
-1.5
1.5
0 2
0 2
A la izquierda tenemos la función (4096 puntos)
A la derecha la descomposición de Haar de nivel 2 de dicha función
g(x) = 50x(1− x)6 cos(12πx)× (0 < x < 1)
+ 80(1− x)2(2− x)8 sin(20πx)× (1 < x < 2)
Transformada de Haar Rafael Molina 25
En la transparencia siguiente vamos a dibujar el:
Perfil acumulado de la energía de una señal f que en cada punto representa
µf21Ef,f21 + f
22
Ef,f21 + f
22 + f
23
Ef, . . . , 1
¶
Transformada de Haar Rafael Molina 26
0
-1.5
1.5
0 2
2
1
0
0
-1.5
1.5
2
1
0
Señ
alFr
acci
ón a
cum
ulad
a de
la
Ene
rgía
Tot
al
Haa
r con
2 n
ivel
es
Transformada de Haar Rafael Molina 27
III.3 Justificación de la conservación de la Energía
Vamos a terminar esta sección justificando brevemente la conservación de la energía de la transformada de Haar.
Recuerda que
y en general
Por tanto
a21 + d21 =
µf1 + f2√
2
¶2+
µf1 − f2√
2
¶2= f21 + f
22
a2m + d2m = f
22m−1 + f
22mPN/2
k=1(a2k + d
2k) =
PNk=1 f
2k
Transformada de Haar Rafael Molina 28
IV. Wavelets de HaarEn esta sección vamos a discutir la wavelet más simple, la wavelet de Haar. Este tipo de wavelets nos servirá para introducir las wavelets de Daubechies que son más sofisticadas y aparecerán en el tema siguiente.
Comenzamos discutiendo las wavelets de Haar de nivel uno. Están definidas mediante
W11 =
µ1√2,−1√2, 0, 0, . . . , 0
¶W1
2 =
µ0, 0,
1√2,−1√2, 0, 0, . . . , 0
¶...
W1N/2 =
µ0, 0, . . . , 0,
1√2,−1√2
¶Tienen energía uno y
son rápidas fluctuaciones con
media 0
Transformada de Haar Rafael Molina 29
Todas las wavelets anteriores son muy similares, son traslaciones por un número par de ceros de la wavelet W1
1
Con estos wavelets vemos ahora que podemos expresar las fluctuaciones de nivel 1 de la subseñal de las secciones anteriores de una forma muy sencilla.
Recuerda que
Producto escalar: el producto escalar f.g de las señales f=(f1 ,f2 ,…,fN ) y g=(g1 ,g2 ,…,gN ) se define mediante
f · g = f1g1 + f2g2 + . . .+ fNgN
Transformada de Haar Rafael Molina 30
Tiene valores y
en las posiciones 2m-1 y 2m
Utilizando la transformada wavelets de nivel uno podemos obtener la primera fluctuación de la señal como producto escalar. Por ejemplo:
En general tendremos
d1 =f1 − f2√
2= f ·W1
11√2
− 1√2
recuerda que
dm =f2m−1 − f2m√
2m = 1, 2, . . . , N/2
y por tanto
dm = f ·W1m m = 1, 2, . . . , N/2
dm =1√2f2m−1 +
1√2f2m = f ·W1
m
Transformada de Haar Rafael Molina 31
Tenemos la siguiente versión más precisa del Rasgo de Pequeñas Fluctuaciones.
Propiedad 1. Si una señal f es (aproximadamente) constante sobre el soporte de una wavelet de nivel 1 de Haar, entonces el valor de la fluctuación dk =f.Wk
1 es aproximadamente cero.
El conjunto de índices donde una señal es no nula recibirá el nombre de soporte de la señal, por ejemplo, el soporte de (0,0,5,7,-2,0,2,0) incluye las posiciones 3,4,5 y 7. El soporte de la wavelets de Haar W2
1 son los índices 3 y 4.
Transformada de Haar Rafael Molina 32
Además de las fluctuaciones también podemos expresar la tendencia como producto escalar de la señal con algunas funciones elementales. Estas funciones elementales reciben el nombre de señales de Haar de escala y se definen como
V11 =
µ1√2,1√2, 0, 0, . . . , 0
¶V12 =
µ0, 0,
1√2,1√2, 0, 0, . . . , 0
¶...
V1N/2 =
µ0, 0, . . . , 0,
1√2,1√2
¶Vm
1 tiene valores y en las posiciones 2m-1 y 2m 1√2
− 1√2
Transformada de Haar Rafael Molina 33
De la misma forma obtenemos
Las señales de escala de Haar son muy similares a los wavelets de Haar, tienen energía 1 y su soporte es siempre dos índices consecutivos. Sin embargo, en este caso la media, como ves, no es cero.
¿Cómo extendemos las ideas anteriores a otros niveles?
Por simplicidad restringiremos el estudio al segundo nivel. Las señales de escala de nivel 2 de Haar se definen como
am = f ·V1m m = 1, 2, . . . , N/2
Transformada de Haar Rafael Molina 34
Esta señales de escala son todas traslaciones múltiplos por cuatro unidades de tiempo de la primera señal de escala de segundo nivel, todas tienen energía 1 y su valor medio es ½. Además la tendencia de segundo nivel cumple
En general
a2 =³f ·V2
1, f ·V22, . . . , f ·V2
N/4
´
V21 =
µ1
2,1
2,1
2,1
2, 0, 0, . . . , 0
¶=
1√2V11 +
1√2V12
V22 =
µ0, 0, 0, 0,
1
2,1
2,1
2,1
2, 0, 0, . . . , 0
¶=
1√2V13 +
1√2V14
...
V2N/4 =
µ0, 0, . . . , 0,
1
2,1
2,1
2,1
2
¶=
1√2V1N−1 +
1√2V1N
V2m =
1√2V12m−1 +
1√2V12m
Transformada de Haar Rafael Molina 35
Estas wavelets son todas traslaciones múltiplos por cuatro unidades de tiempo de la primera wavelet de segundo nivel, todas tienen energía 1 y su valor medio es 0. Además la fluctuación de segundo nivel cumple
De la misma forma tenemos para los wavelets de Haar de segundo nivel
En general
W21 =
µ1
2,1
2,−12,−12, 0, 0, . . . , 0
¶=
1√2V11 −
1√2V12
W22 =
µ0, 0, 0, 0,
1
2,1
2,−12,−12, 0, 0, . . . , 0
¶=
1√2V13 −
1√2V14
...
W2N/4 =
µ0, 0, . . . , 0,
1
2,1
2,−12,−12
¶=
1√2V1N−1 −
1√2V1N
d2 =³f ·W2
1, f ·W22, . . . , f ·W2
N/4
´W2
m =1√2V12m−1 −
1√2V12m
Transformada de Haar Rafael Molina 36
Observa que en la construcción de los vectores hemos estado haciendo lo siguiente. De
V01 = (1, 0, 0, . . . , 0)
V02 = (0, 1, 0, 0, . . . , 0)
...
V0N = (0, 0, . . . , 0, 1)
hemos construido
en general V1m =
1√2V02m−1 +
1√2V02m
V11 =
1√2V01 +
1√2V02
V12 =
1√2V03 +
1√2V04
...
V1N/2 =
1√2V0N−1 +
1√2V0N
W11 =
1√2V01 −
1√2V02
W12 =
1√2V03 −
1√2V04
...
W1N/2 =
1√2V0N−1 −
1√2V0N
en general W1
m =1√2V02m−1 −
1√2V02m
Transformada de Haar Rafael Molina 37
Para el segundo nivel
W2m =
1√2V12m−1 −
1√2V12m
V2m =
1√2V12m−1 +
1√2V12m
m=1,2,…,N/4
y así sucesivamente
Transformada de Haar Rafael Molina 38
V. Análisis MultiresoluciónEn la sección anterior discutimos como la transformada de Haar puede describirse como producto escalar con wavelets de Haar y señales de escala.Discutiremos ahora como la transformada de Haar inversa puede describirse también en términos de estas mismas señales elementales. Veremos, por tanto, como:
Una señal puede sintetizarse comenzando por una señal de muy baja resolución y añadirle detalles para crear versiones de mayor resolución para
terminar con la síntesis de la señal a la resolución más fina.
Es el llamado análisis multiresolución (MRA) que es la base del análisis wavelet.
Transformada de Haar Rafael Molina 39
Para hacer estas ideas precisas recordemos que dadas dos señales de la misma longitud
Podemos calcular:
La suma
La diferencia
La multiplicación por una constante c
cf = (cf1, cf2, . . . , cfN)
f = (f1, f2, . . . , fN )
g = (g1, g2, . . . , gN )
f + g = (f1 + g1, f2 + g2, . . . , fN + gN )
f − g = (f1 − g1, f2 − g2, . . . , fN − gN )
Transformada de Haar Rafael Molina 40
Observemos que si aplicamos repetidamente la suma y multiplicación por un escalar podemos escribir
Esta fórmula que es muy natural nos permite expresar nuestra señal a partir de las señales elementalesV01 = (1, 0, 0, . . . , 0)
V02 = (0, 1, 0, 0, . . . , 0)
...
V0N = (0, 0, . . . , 0, 1)
f = (f1, f2, . . . , fN)
= (f1, 0, . . . , 0) + (0, f2, . . . , 0)
+ . . .+ (0, 0, . . . , 0, fN)
= f1(1, 0, . . . , 0) + f2(0, 1, . . . , 0)
+ . . .+ fN(0, 0, . . . , 0, 1)
mediante f =
NXn=1
fiV0i
Desarrollo natural de una señal f en función de la base natural V0
1 , V0
2 , …, V0N .
Transformada de Haar Rafael Molina 41
En la sección anterior vimos como expresar la transformada de Haar de nivel 1 en términos de las señales wavelets y de escala.
Veremos ahora que también es posible expresar la inversa de la transformada de Haar de primer nivel en función de estas señales elementales. Esto conduce al primer nivel del MRA de Haar.Recuerda que teníamos
f =
µa1 + d1√
2,a1 − d1√
2, . . . ,
aN/2 + dN/2√2
,aN/2 − dN/2√
2
¶=
µa1√2,a1√2,a2√2,a2√2. . . ,
aN/2√2,aN/2√2
¶+
µd1√2,−d1√2,d2√2,−d2√2, . . . ,
dN/2√2,−dN/2√
2
¶
Transformada de Haar Rafael Molina 42
que podemos reescribir como
f = A1 +D1
donde
A1 =
µa1√2,a1√2,a2√2,a2√2. . . ,
aN/2√2,aN/2√2
¶D1 =
µd1√2,−d1√2,d2√2,−d2√2, . . . ,
dN/2√2,−dN/2√
2
¶
primera señal promedio primera señal detalle
que podemos reescribir como
A1 = a1V11 + a2V
12 + . . .+ aN/2V
1N/2
D1 = d1W11 + d2W
12 + . . .+ dN/2W
1N/2
Transformada de Haar Rafael Molina 43
y puesto que
tendremos
A1 = (f ·V11)V
11 + (f ·V1
2)V12 + . . .+ (f ·V1
N/2)V1N/2
D1 = (f ·W11)W
11 + (f ·V1
2)W12 + . . .+ (f ·W1
N/2)W1N/2
Estas fórmulas muestran que:
1. la señal promedio es una combinación de las funciones de escala de Haar con los valores de la primera tendencia como coeficientes.
2. La señal de detalle es una combinación de wavelets de Haar con los valores de las fluctuaciones como coeficientes.
am = f ·Vm, dm = f ·W1m m = 1, 2, . . . , N/2
Transformada de Haar Rafael Molina 44
Veamos un ejemplo. Consideremos la señal
Sabíamos quef = (4, 6, 10, 12, 8, 6, 5, 5)
a1 = (5√2, 11√2, 7√2, 5√2)
d1 = (−√2,−√2,√2, 0)
A1 =
µa1√2,a1√2,a2√2,a2√2. . . ,
aN/2√2,aN/2√2
¶D1 =
µd1√2,−d1√2,d2√2,−d2√2, . . . ,
dN/2√2,−dN/2√
2
¶y de las ecuaciones
obtenemos A1 = (5, 5, 11, 11, 7, 7, 5, 5)
D1 = (−1, 1,−1, 1, 1,−1, 0, 0)Obviamente f = A1 +D1
Transformada de Haar Rafael Molina 45
Si ahora queremos expresar A1 y D1 en función de las funciones de escala y wavelets, recordamos que
f = (4, 6, 10, 12, 8, 6, 5, 5)
a1 = (5√2, 11√2, 7√2, 5√2)
d1 = (−√2,−√2,√2, 0)
y como
obtenemos
A1 = a1V11 + a2V
12 + . . .+ aN/2V
1N/2
D1 = d1W11 + d2W
12 + . . .+ dN/2W
1N/2
A1 = 5√2V1
1 + 11√2V1
2 + 7√2V1
2 + 5V14
D1 = −√2W1
2 −√2W1
2 +√2W1
3 + 0W14
Transformada de Haar Rafael Molina 46
V.1 Análisis Multiresolución, varios nivelesLas ideas discutidas en la sección anterior pueden extenderse a más niveles, tantos como el número de veces que la longitud de la señal puede ser dividida por dos.
El segundo nivel del MRA de una señal f significa expresar f como
f = A2 +D2 +D1
donde A2 es la segunda señal media y D2 es la segunda señal de detalle. Si comparamos esta ecuación con
f = A1 +D1
obtenemosA1 = A2 +D2
Transformada de Haar Rafael Molina 47
La fórmula anterior expresa que para calcular la segunda señal promedio A2 y la segunda señal de detalles D2, sólo tenemos que realizar el primer nivel MRA de la señal A1. Por tanto tendremos
A2 = (f ·V21)V
21 + (f ·V2
2)V22 + . . .+ (f ·V2
N/4)V2N/4
D2 = (f ·W21)W
21 + (f ·W2
2)W22 + . . .+ (f ·W2
N/4)W2N/4
Como
Para la señal f = (4, 6, 10, 12, 8, 6, 5, 5)
V21 =
µ1
2,1
2,1
2,1
2, 0, 0, 0, 0
¶V22 =
µ0, 0, 0, 0,
1
2,1
2,1
2,1
2
¶A2 = 16
µ1
2,1
2,1
2,1
2, 0, 0, 0, 0
¶+ 12
µ0, 0, 0, 0,
1
2,1
2,1
2,1
2
¶= (8, 8, 8, 8, 6, 6, 6, 6)
Transformada de Haar Rafael Molina 48
como
De nuevo para la señal f = (4, 6, 10, 12, 8, 6, 5, 5)
Teniendo en cuenta que
D2 = (f ·W21)W
21 + (f ·W2
2)W22 + . . .+ (f ·W2
N/4)W2N/4
W21 =
µ1
2,1
2,−12,−12, 0, 0, 0, 0
¶W2
2 =
µ0, 0, 0, 0,
1
2,1
2,−12,−12
¶
D2 = −6µ1
2,1
2,−12,−12, 0, 0, 0, 0
¶+ 2
µ0, 0, 0, 0,
1
2,1
2,−12,−12
¶= (−3,−3, 3, 3, 1, 1,−1,−1)
Transformada de Haar Rafael Molina 49
Lo que teniendo en cuenta que para
f = (4, 6, 10, 12, 8, 6, 5, 5)
hemos obtenido
y por tanto
A2 = (8, 8, 8, 8, 6, 6, 6, 6)
D2 = (−3,−3, 3, 3, 1, 1,−1,−1)
f = A2 +D2 +D1
= (8, 8, 8, 8, 6, 6, 6, 6) + (−3,−3, 3, 3, 1, 1,−1,−1)+ (−1, 1,−1, 1, 1,−1, 0, 0)
D1 = (−1, 1,−1, 1, 1,−1, 0, 0)
Transformada de Haar Rafael Molina 50
La fórmula anterior ilustra la idea del MRA. La señal f se descompone como la suma de una señal de muy baja resolución (A2), la primera suma complemente esta resolución con detalle (D2), y la segunda suma añade más detalle hasta obtener la señal original.
En general si el número N de valores de la señal es divisible k veces por 2, entonces el MRA de k niveles es
f = Ak +Dk + . . .+D2 +D1
Transformada de Haar Rafael Molina 51
g(x) = 50x(1− x)6 cos(12πx)× (0 < x < 1)
+ 80(1− x)2(2− x)8 sin(20πx)× (1 < x < 2)
con 1024 puntos
Original
A1
A3
A4
A5
A2
Transformada de Haar Rafael Molina 52
VI. Compresión de la SeñalEn este tema hemos visto como la transformada de Haar puede utilizarse para localizar la energía de la señal en sus subseñales más cortas.
Veamos como esta idea puede utilizarse para comprimir señales de audio y en general otros tipos de señales digitalizadas.
Para ilustrar en este tema los principios generales de la compresión basada en wavelets examinaremos como la transformada de Haar puede usarse para comprimir algunas señales test.
Transformada de Haar Rafael Molina 53
Consideremos la señal que se muestra en la página siguiente, consiste en 1024 puntos muestreados sobre el intervalo [0,20).
Muchos de sus valores son constantes sobre intervalos largos y por eso es compresible utilizando la transformada de Haar, otras señales requerirán transformaciones wavelets más sofisticadas.
Pasos de la compresión basada en wavelets:
1. Realizar la transformada wavelets de la señal.2. Hacer cero todos los valores transformados que sean
insignificantes (menores que un umbral).3. Transmitir sólo los significativos.4. En el receptor realizar la transformada inversa, asignando
antes cero a los valores que no fueron transmitidos.
Transformada de Haar Rafael Molina 54
-4
0
-4
0 5 10 15 20-20
0
-20
0 5 10 15 20
-1 200
1
2
-4
0
-4
0 5 10 15 20
Seña
l orig
inal
Tran
sfor
mad
a de
Haa
r, 10
ni
vele
s
Ene
rgía
acu
mul
ada,
co
efic
ient
es o
rden
ados
Rec
onst
rucc
ión
con
los
52
coef
icie
ntes
de
may
or e
nerg
ía
Transformada de Haar Rafael Molina 55
Veamos los pasos anteriores con algún detenimiento.
En la página anterior hemos realizado la transformada de Haar de nivel 10 de la señal original.
Para elegir un umbral en el paso 2, primero ordenamos las magnitudes de la transformada de Haar en orden decreciente
L1 ≥ L2 ≥ L3 ≥ . . . ≥ LNA continuación calculamos el perfil de energía acumuladaµ
L21Ef,L21 + L
22
Ef,L21 + L
22 + L
23
Ef, . . . , 1
¶
Transformada de Haar Rafael Molina 56
Usando FAWAV vemos que
Además como L51 =0.3536, si elegimos este umbral tenemos casi el 100% de la energía de la señal.
Como el tamaño de la señal es N y tenemos N coeficiente en el paso 3 tendremos que transmitir el llamado significance map que es una hilera de tamaño N de ceros y unos y nos dice que coeficientes son significativos (unos en la hilera).
En el paso 4 insertamos ceros en la transformada en las posiciones no significativas y con los coeficientes transmitidos obtenemos, al calcular la transformada inversa, la aproximación comprimida de la señal original.
L21 + L22 + L
23 + . . . L
251
Ef= 0.999996
Transformada de Haar Rafael Molina 57
Mientras que en este ejemplo hemos alcanzado una compresión de, podríamos decir, 1024:51 es decir aproximadamente 20:1.
Cuando la señal se complica la transformada de Haar no funciona igual de bien. En la página siguiente tenemos la representación de la señal
En el intervalo [0,2) con 4096 puntos. Su versión comprimida cuando se conserva el 99.6% de la energía (se utilizan 322 coeficientes) se representa en la parte inferior izquierda. Compresión cercana a 12:1. Si queremos reproducir la señal al 99.99% de energía necesitaríamos 1782 valores (aproximadfamente 2.3:1)
f(x) = 40x2(1− x)4 cos(12πx)[0 < x < 1)+ 40(x− 1)2(2− x)8cos(48πx)[1 < x < 2]+ 80(x− 1)12[2− x]2sin(80πx)[1 < x < 2]
Transformada de Haar Rafael Molina 58
Seña
l orig
inal
Ene
rgía
acu
mul
ada,
co
efic
ient
es o
rden
ados
Rec
onst
rucc
ión
con
los
el
99.6
% d
e la
ene
rgía
Tran
sfor
mad
a de
Haa
r, 12
ni
vele
s
0 1 2 0 1 2
0 1 2 0 1 2
-2
0
2
0.99
0
1.01-11
0
11
Transformada de Haar Rafael Molina 59
Bibliografía
James S. Walker , A Primer on Wavelets and Their Scientific Applications, Chapman & Hall/CRC; 2 edition (January 29, 2008)