Story Transcript
TECNOLOGÍA DEL HABLA. CURSO 2009/10
TEMA 2: ANÁLISIS Y PARAMETRIZACIÓN DE LA VOZ. 2.1. REPRESENTACIÓN DE LA VOZ: SEÑALES. * Continuas: la voz; notación x(t). * Discretas: conversión euro-dólar; notación x(n).
Continua x(t)
t Discreta x(n)
n La señal original puede ser continua -----------> hay que muestrear para convertirla en discreta La señal original puede ser discreta -----------> no hay que hacer nada
TIPOS DE SEÑALES Señales pares
x(-t)=x(t)
x(-n)=x(n)
x(t) Simétrica respecto al eje de ordenadas
t Señales impares
x(-t)=-x(t)
x(t)
x(-n)=-x(n)
Nula en el origen Simétrica respecto al origen
t
Tema 2: Análisis y parametrización de la voz
1
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Señales periódicas
x(t)
x(n)=x(n+N)
x(t)=x(t+T)
t -3T
-2T
-T
0
T
2T
3T
Transformaciones. Original
x(t)
t
T0
1.-Simetría x(-t)
t -T0
2.- Desplazamiento
Si T1>0 DESPLAZAMIENTO A LA DERECHA Si T11)
x(Mt)
t
T/M
3b.- Factor de Escala (M0 lim
1
Componente continua C0 = A / T0 . Cuanto mayor sea la anchura respecto al período, mayor será C0.
Función sinc discreta:
Al cociente
T0
se le llama ciclo de trabajo. Si
/ T0
es pequeño, n debe ser grande para que
se anule por 1ª vez. Habrá muchas líneas antes del 1º nulo.
Tema 2: Análisis y parametrización de la voz
11
TECNOLOGÍA DEL HABLA. CURSO 2009/10
2.3.2. Transformada de Fourier continua.
X( )
j · ·t
x(t ) e
·dt
Transformada de Fourier de un pulso cuadrado. Anchura τ, amplitud A, centrado en el origen.
x(t) A
t
/2
/2 X(f ) A
t
j t
A e
dt
A
sinc( f )
A
1/
2/
sinc( f )
2/
1/
Pasos por cero
La densidad espectral de potencia es el cuadrado del módulo:
S( f )
X( f )
2
A2
2
sinc2 ( f )
Propiedades de la TF: 1) Linealidad:
TF a1 x1 (t ) a2 x2 (t )
2) Traslación en el tiempo:
TF x(t
3) Traslación en frecuencia:
TF x(t ) e j
t0 )
TF x(t ) e 4) Cambio de escala:
TF x(at )
5) Dualidad:
X (t ) dx(t )
6) Derivación e integración:
X( f
X( f 1 f X( ) a a
f0 )
j X( f )
dt
X( f )/ j
7) Simetría: si x(t ) es real, X ( f ) es hermítica: X ( f )
X *( f )
f0 )
0t
x( f )
x(u )du X( f )
j t0
X( f ) e
0t
j
a1 X 1 ( f ) a2 X 2 ( f )
Fase X ( f )
X *( f )
Fase X * ( f )
Tema 2: Análisis y parametrización de la voz
12
TECNOLOGÍA DEL HABLA. CURSO 2009/10
2.3.3. Transformada de Fourier Discreta (DFT, Discrete Fourier Transform). Dada una secuencia x(n) , se define la DFT la secuencia X (k ) dada por: N 1
X (k )
x(n)·e
j · 2· · n · k N
con 0
k
N 1
con 0
k
N 1
n 0
o bien N 1
X (k )
x(n)·wN
n·k
n 0
siendo w N
e
j2 N
el llamado “factor twiddle” de orden N.
Aunque N puede ser cualquier valor, vamos a suponerle la restricción de que N sea par, con lo cual existe el X (N / 2) . Casos particulares:
X (0) X(
x(0) x(1) x(2) ... x( N 1)
N ) 2
x(0) x(1) x(2) x(3) ... x( N 1) , es decir, la suma de los valores de n par
menos la suma de los valores de n impar. Si x(n) es real, X (0) y X (N / 2) son reales, y el resto son complejos conjugados respecto al valor central X (N / 2) . Propiedades de la DTF: Sea X (k ) la DFT de la secuencia x(n) , lo que se representa como x(n)
Y (k ) .
DFT de la secuencia y(n) , lo que se representa como y(n) 1) Linealidad: Si
y(n)
a1 x1 (n) a2 x2 (n) entonces Y (k )
a1 X 1 (k ) a2 X 2 (k )
X (k )·e
x ( n n0 )
2) Traslación:
X (k ) , y sea Y (k ) la
j · 2· · n0 · k N
x(n-n0) es una traslación circular, no se pierden valores. 3) Modulación:
x(n)·e
4) Simetría:
x( n)
j · 2· · n · k0 N
X (k
k0 )
X ( k)
Ejemplo de cálculo de DFT (la numeración comienza en 0 y acaba en N-1). N
x(0) = 2
x(1) = 6
x(2) = 8
x(3) = 6
x(4) = 5
x(5) = 2
x(6) = 2
x(7) = 8
Tema 2: Análisis y parametrización de la voz
8
13
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Se calcularían de la siguiente forma: 7
x ( n) e 0
X (0)
x(0)
x(1)
x(2)
x(3)
x(4)
x(5)
x(6)
x (7 )
39
n 0
7
X (1)
x ( n) e
j 2 n1 8
j2 0 8
x(0) e
x(1) e
j2 1 8
x(2) e
j2 2 8
x(3) e
j2 3 8
j2 4 8
x(4) e
n 0 j2 5 8
x(5) e 7
X (2)
j2 6 8
x(6) e
x ( n) e
j 2 n2 8
x (7 ) e
x(0) e
j2 7 8
j2 0 8
1,2426 - j7,4142
x(1) e
j2 2 8
x(2) e
j2 4 8
x(3) e
j2 6 8
j2 8 8
x(4) e
n 0
j 2 10 8
x(5) e
x(6) e
7
X (3)
x ( n) e n 0 j 2 15 8
x(5) e
x ( n) e n 0 j5
x(5) e
x(5) e
x ( n) e n 0 j 2 30 8
x(5) e
x ( n) e n 0 j 2 35 8
x(5) e
j 2 n5 8
j 2 n6 8
x(6) e
7
X (7)
x (7 ) e x ( n) e
x(6) e
7
X (6)
x(1) e j 2 21 8
3
j6
j2 3 8
x(2) e
j2 6 8
x(3) e
j2 9 8
j 2 12 8
x(4) e
7,2426 j4,5858
7
j6
x(6) e
x ( n) e n 0 j 2 25 8
j 2 n4 8
j 2 18 8
j2 0 8
j 2 14 8
j n
x(0) e 0
x(1) e
j
x(2) e
j2
x(3) e
j3
x(4) e
j 2 n7 8
x(6) e
x (7 ) e
x(0) e j 2 30 8
x(0) e j 2 36 8
x(0) e j 2 42 8
j7
j2 0 8
x (7) e j2 0 8
x (7 ) e j2 0 8
x ( 7) e
x(0)
x(1) e j 2 35 8
x(1) e j 2 42 8
x(1) e j 2 49 8
x(1) j2 5 8
x(2)
x(2) e
x(3) j 2 10 8
x(4)
x(3) e
x(5) j 2 15 8
x(6)
x (7 )
x(4) e
j 2 20 8
7,2426 j4,5858 j2 6 8
x(2) e
j 2 12 8
x(3) e
j 2 18 8
x(4) e
j 2 24 8
3 j6 j2 7 8
x(2) e
j 2 14 8
x(3) e
j 2 21 8
x(4) e
j 2 28 8
1,2426 j7,4142
Resultado:
X(0) = X(1) = X(2) = X(3) = X(4) = X(5) = X(6) = X(7) =
j4
n 0
7
X (5)
x (7 ) e
x(0) e
x(6) e
7
X (4)
j 2 n3 8
j 2 12 8
39 1,2426 – j 7,4142 -3+j6 - 7,2426 + j 4,5858 -5 - 7,2426 - j 4,5858 -3-j6 1,2426 + j 7,4142
Tema 2: Análisis y parametrización de la voz
14
5
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Se puede comprobar que si la secuencia de partida x(n) es real, los valores de la DFT para índice mayor que N/2 son los complejos conjugados de los valores con índice menor que N/2, con simetría respecto al valor central x(N/2), es decir:
X(5) = X*(3)
En general,
X(6) = X*(2)
X(
N 2
k)
X *(
N 2
X(7) = X*(1)
k ) para 1 k
N 2
1.
Resolución espectral. Se llama resolución espectral, y se representa como f 0 , a la menor diferencia de frecuencia entre muestras consecutivas de la DFT. Un análisis espectral de una DFT nos da información en las frecuencias siguientes: 0 Hz, f 0 Hz y todos los múltiplos de la resolución espectral hasta N/2. Si llamamos T0 al tiempo dentro del cual calculamos la DFT (tiempo de observación), que será N veces mayor que el tiempo Ts o período de muestreo, se cumple que To el período de muestreo son inversas entre sí, f s
NTs . Como la frecuencia y
1 , podemos relacionar la resolución espectral con el Ts
tiempo de observación T0 mediante una sencilla fórmula. Aunque no es trivial, se puede demostrar que:
f0
1 , o bien T0
fo
fs . N
Ejemplo: si los valores de la DFT anterior fueran muestras tomadas cada Ts frecuencia de muestreo sería f s
f0
1 T0
1 Ts
8 , T0
10Hz . Como N
100ms , la
800ms y la resolución espectral sería
1,25Hz , con lo que se podría hacer un análisis espectral desde 0 hasta 5 Hz.
Otro ejemplo: si tenemos una DFT de 4.096 puntos, separados un tiempo de muestreo
Ts f0
0,1ms , la frecuencia de muestreo sería f s 1 T0
1 NTs
1 Ts
10KHz , y la resolución espectral sería
2,44Hz . El módulo y la fase de la muestra k-sima daría la información
espectral a la frecuencia k f 0 , es decir, la muestra X (100) describiría el detalle espectral de la componente discreta de frecuencia 244 Hz. 2.3.4. Transformada de Fourier Rápida (FFT, Fast Fourier Transform). Existe una forma alternativa de calcular la DFT, llamada FFT, que produce los mismos resultados, si bien la cantidad de operaciones a realizar y el tiempo de cálculo es significativamente inferior. Conceptualmente son idénticas. Ahorro tiempo y esfuerzo computacional.
Tema 2: Análisis y parametrización de la voz
15
TECNOLOGÍA DEL HABLA. CURSO 2009/10
j · 2· · n · k N
N 1
X (k )
x(n)·e
N 1
X (k )
o bien
x(n)·wN
n 0
donde w N
n·k
n 0 j2 N
e
(factor “twiddle”), es un número complejo de módulo 1 que sólo depende de N.
Propiedades del factor “twiddle”.
A) W N
k
B) W N
k
WN
C) W N
k
WN
WN
k
N 2
k N
k
D) W N
N n(k ) 2
WN
2
nk
2
Desarrollo de la FFT. DFT's de 2 puntos: MUY SENCILLAS. j · 2· · n · 0 2
1
X (0)
x(n)·e
x(0)
x(1)
x(0)
x(1)
n 0 j · 2· · n ·1 2
1
X (1)
x(n)·e n 0
Desarrollo propiamente dicho: N 1
X (k )
x(n)·wN
n·k
n 0
N 1 2
x(2n)·wN
( 2· n )· k
n 0
X (k )
x(2n)·wN
2nk
x(2n 1)·wN
( 2· n 1)· k
n 0
Suma de términos pares / impares. Sacamos factor común N 1 2
N 1 2
k
w
, que no depende del SUMATORIO.
N 1 2
wN ·
n 0
k N
x(2n 1)·wN
2· n · k
n 0
Aplicando la propiedad C) para k = 2, resulta que W N
2
W N , con lo cual 2
N 1 2
X (k )
x(2n)·w N n 0
o bien
X (k )
n·k
k
N 1 2
wN ·
x(2n 1)·w N n 0
2
n·k
2
k
Y (k ) wN ·Z (k )
siendo
Tema 2: Análisis y parametrización de la voz
16
TECNOLOGÍA DEL HABLA. CURSO 2009/10
N 1 2
Y (k )
x(2n)·w N n 0
N 1 2
n·k
Z (k )
y siendo
x(2n 1)·w N n 0
2
n·k
2
Y (k ) es la DFT de la secuencia que resulta de tomar la mitad de los puntos, concretamente los que ocupan las posiciones pares: x(0), x(2), ... x(N-2).
Z (k ) es la DFT de la secuencia que resulta de tomar la mitad de los puntos, concretamente los que ocupan las posiciones impares: x(1), x(3), ... x(N-1).
Y (k ) y Z (k ) se calculan con el mismo algoritmo; sólo cambian los datos de entrada. Para realizar una DFT de N puntos, lo que se realiza en realidad son sucesivas descomposiciones de la secuencia original en secuencias mitades tomando muestras pares e impares, y volviendo a repetir el proceso hasta llegar a DFT's de 2 puntos. N debe ser potencia de 2. Descomposición rápida en mitades. Cuando entra la secuencia de datos x(n), cada valor ocupa una posición dependiendo del valor de n. Pues bien, dicho valor debe ir a otra posición n' (el algunos casos aislados n y n' coinciden) dada por el llamado criterio de bit reverse. Este criterio indica que el valor x(n), que se encuentra en la posición n, debe colocarse en n', siendo n' el número que resulta en decimal al leer el valor binario de n en sentido contrario. Por ejemplo, para N=512, si n=27, el valor x (27) debe ir a la posición 432, ya que 27 en binario se expresa como 000011011, y leído al revés resulta el binario 110110000, que en decimal es 432. Ejemplo de FFT para N=8. Descomponiendo en mitades pares e impares
x(0) x(1) x(2) x(3) x(4) x(5) x(6) x(7)
x(0) x(2) x(4) x(6) x(1) x(3) x(5) x(7)
Aplicando el criterio del “bit reverse”
x(0) x(4) x(2) x(6) x(1) x(5) x(3) x(7)
0: 1: 2: 3: 4: 5: 6: 7:
000 000 001 100 010 010 011 110 100 001 101 101 110 011 111 111
:0 :4 :2 :6 :1 :5 :3 :7
Conocida la DFT a nivel 2, nada más hacer las sumas y restas, alcanzar los distintos niveles es simplemente aplicar la fórmula recursiva siguiente, hasta llegar al nivel original.
X (k )
k
Y (k ) wN ·Z (k )
con k
0,1,2,...,
N 2
1
Dicha expresión nos permite encontrar la DFT a partir de sus dos mitades. Para k Para k
0 1
X (0) Y (0) Z (0) X (1) Y (1) W N Z (1) Tema 2: Análisis y parametrización de la voz
17
TECNOLOGÍA DEL HABLA. CURSO 2009/10
X (2) Y (2) WN2 Z (2)
Para k 2 ............
N 2
Para k
........................
X(
1
N 2
1)
Y(
N
N 2
x(2n)·w N n 0
N ) 2
X (k
n·k
k
N 1 2
wN ·
x(2n 1)·w N n 0
2 N 1 2
x(2n)·w N n 0
N n ·( k ) 2
wN
N 1 2 N (k ) 2
·
k
Y (k )
wN ·Z (k )
x(2n 1)·w N
n 0
2
Aplicando la propiedad D) del factor twiddle W N
N ) 2
n ·( k
N ) 2
2
W Nnk y aplicando la propiedad A) 2
2
W
n·k
2
n(k
N k 2 N
1)
N . 2
N 1 2
X (k )
N 2
N ) a partir de la expresión de X (k ) , 2
Para calcular la segunda mitad, calculamos X (k cambiando k por k
1
1) WN2 Z (
W Nk se puede expresar como:
N ) 2
X (k
N 1 2
x(2n)·w N n 0
n·k
k
N 1 2
wN ·
x(2n 1)·w N n 0
2
n· k
2
o bien:
X (k
N k ) Y (k ) wN ·Z (k ) 2
Por tanto, Para k
0
Para k
1
Para k
2
N ) Y (0) Z (0) 2 N X( 1) Y (1) WN Z (1) 2 N X( 2) Y (2) WN2 Z (2) 2 X(
............ Para k
N 2
1
........................
X ( N 1)
N Y( 2
1) W
N 1 2 N
Z(
N 2
1)
La segunda mitad se calcula con los mismos datos que la primera mitad, pero haciendo diferencias en vez de sumas. También se puede hacer de otra forma teniendo en cuenta que la propiedad A) del factor twiddle nos permite decir que
W Nk
k
WN
N 2
.
Tema 2: Análisis y parametrización de la voz
18
TECNOLOGÍA DEL HABLA. CURSO 2009/10 N
Para k
0
Para k
1
Para k
2
N ) Y (0) WN2 Z (0) 2 N 1 N X( 1) Y (1) WN2 Z (1) 2 N 2 N X( 2) Y (2) WN2 Z (2) 2 X(
............
N 2
Para k
........................
1
X ( N 1) Y (
N 2
1) WNN 1 Z (
N 1) 2
Resumiendo, se pueden calcular de dos maneras:
1ª FORMA
2ª FORMA
1ª mitad
1ª mitad
X (0) Y (0) Z (0) X (1) Y (1) W N Z (1)
X (0) Y (0) Z (0) X (1) Y (1) W N Z (1)
X (2) Y (2) WN2 Z (2)
X (2) Y (2) WN2 Z (2)
....................
X(
N 2
1)
Y(
N 2
1) W
N 1 2 N
....................
Z(
N 2
1)
X(
N 2
1)
Y(
N 2
N
1
1) WN2 Z (
N 2
2ª mitad
2ª mitad
N ) Y (0) Z (0) 2 N X( 1) Y (1) WN Z (1) 2 N X( 2) Y (2) WN2 Z (2) 2 .................... N 1 N N X ( N 1) Y ( 1) WN2 Z ( 2 2
N ) Y (0) WN2 Z (0) 2 N 1 N X( 1) Y (1) WN2 Z (1) 2 N 2 N X( 2) Y (2) WN2 Z (2) 2 .................... N N X ( N 1) Y ( 1) WNN 1 Z ( 2 2
1)
N
X(
X(
1)
Tema 2: Análisis y parametrización de la voz
1)
19
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Y(0) x(0) x(2) x(4)
Y(1)
DFT de N/2 puntos
Y(2) Y(N/2-1)
x(N-2)
PARES
x(1) x(3) x(5) x(N-1)
Z(0) DFT de N/2 puntos
Z(1) Z(2)
IMPARES
Z(N/2-1)
+
X (0)
Y (0) Z (0)
+
X (1)
Y (1) WN Z (1)
+
X (2)
Y (2) WN2 Z (2)
+
X(
-
X(
-
X(
N 2
1)
Y (1)
WN Z (1)
-
X(
N 2
2)
Y (2)
WN2 Z (2)
-
X ( N 1) Y (
N 2
1)
Y(
N ) 2
N 2
N
1)
WN2
Y (0)
N 2
1
1.00000 0.75148 0.56472 0.42437 0.86688 0.65144 0.48954 0.36788 2x4
1.00000 0.56472 0.75148 0.42437 0.86688 0.48954 0.65144 0.36788 4x2
1.56472 0.43528 1.17585 0.32711 1.35642 0.37734 1.01932 0.28356 4x2
2.74057 0.435 – j 0.327 0.389 0.435 + j 0.327 2.3757 0.377 – j 0.283 0.337 0.377 + j 0.283 2x4
N
1
1) W N2 Z (
5.11631 0.500 – j 0.794 0.389 – j 0.337 0.369 – j 0.140 0.36483 0.369 + j 0.140 0.389 + j 0.337 0.500 + j 0.794 1x8
Obsérvese que X(0) y X(4) son reales, mientras que X(1) es complejo conjugado de X(7), X(2) es complejo conjugado de X(6) y X(3) es complejo conjugado de X(5). En general, si la secuencia original es real, X(0) y X(N/2) son reales, mientras que los restantes son pares conjugados: X(k) = X*(Nk).
Obtención de la columna 4x2. 1.00000 + 0.56472 = 1.56472 1.00000 - 0.56472 = 0.43528 0.75148 + 0.42437 = 1.17585 0.75148 - 0.42437 = 0.32711 0.86688 + 0.48954 = 1.35642 0.86688 - 0.48954 = 0.37734 0.65144 + 0.36788 = 1.01932 0.65144 - 0.36788 = 0.28356 Tema 2: Análisis y parametrización de la voz
N 2
1)
Z (0)
Ejemplo: x(0)=1.0000 x(1)=0.86688 x(2)=0.75148 x(3)=0.65144 x(4)=0.56472 x(5)=0.48954 x(6)=0.42437 x(7)=0.36788 1x8
Z(
20
N 2
1)
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Obtención de la columna 2x4.
W40 = 1 W41 = e-j2π/4 = cos (2π/4) -j sen (2π/4) = 0 -j1 = -j W42 = e-j4π/4 = cos (π) -j sen (π) = -1 W43 = e-j6π/4 = cos (3π/2) -j sen (3π/2) = +j 1.56472 + W40 1.17585 = 1.56472 + 1.17585 = 2.74057 0.43528 + W41 0.32711 = 0.43528 - j 0.32711 1.56472 + W42 1.17585 = 1.56472 - 1.17585 = 0.389 0.43528 + W43 0.32711 = 0.43528 + j 0.32711 o bien
1.56472 - W40 1.17585 = 1.56472 - 1.17585 = 0.389 0.43528 - W41 0.32711 = 0.43528 + j 0.32711 1.35642 + W40 1.01932 = 1.35642 + 1.01932 = 2.37574 0.37734 + W41 0.28356 = 0.37734 - j 0.28356 1.35642 + W42 1.01932 = 1.35642 - 1.01932 = 0.3371 0.37734 + W43 0.28356 = 0.37734 + j 0.28356 o bien
1.35642 - W40 1.01932 = 1.35642 - 1.01932 = 0.3371 0.37734 - W41 0.28356 = 0.37734 + j 0.28356 Obtención de la columna 1x8.
W80 = 1 W81 = e-j2π/8 = cos (π/4) -j sen (π/4) = 0.707(1-j) W82 = e-j4π/8 = cos (π/2) -j sen (π/2) = 0 -j 1 = -j W83 = e-j6π/8 = cos (3π/4) -j sen (3π/4) = -0.707(1+j) W84 = e-j8π/8 = cos (π) -j sen (π) = -1 W85 = e-j10π/8 = cos (5π/4) -j sen (5π/4)=-0.707(1-j) W86 = e-j12π/8 = cos (3π/2) -j sen (3π/2) = +j W87 = e-j14π/8 = cos (7π/4) -j sen (7π/4) = 0.707(1+j) 2.74057 + W80 2.3757 = 5.11631 (0.435 -j 0.327) + W81 (0.377 -j 0.283) = 0.501 - j 0.794 0.389 + W82 0.377 = 0.389 - j 0.337 (0.435 +j 0.327) + W83 (0.377 +j 0.283) = 0.369 - j 0.140 2.74057 + W84 2.3757 = 0.36483 (0.435 -j 0.327) + W85 (0.377 -j 0.283) = 0.369 + j 0.140 0.389 + W86 0.377 = 0.389 + j 0.337 (0.435 +j 0.327) + W87 (0.377 +j 0.283) = 0.501 + j 0.794 o bien 2.74057 - W80 2.3757 = 0.36483 (0.435 -j 0.327) - W81 (0.377 -j 0.283) = 0.369 + j 0.140 0.389 - W82 0.377 = 0.389 + j 0.337
(0.435 +j 0.327) - W83 (0.377 +j 0.283) = 0.501 + j 0.794 Tema 2: Análisis y parametrización de la voz
21
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Comparación en la necesidad de cómputo. DFT de 8 puntos: Cada X (k ) necesita 8 multiplicaciones complejas y 7 sumas complejas. Total: 64 multiplicaciones complejas y 56 sumas complejas. En general, DFT de N puntos: Total: N2 multiplicaciones complejas y N(N -1) sumas complejas. En general, FFT necesita
N ·log 2 N operaciones. 2
Las operaciones de multiplicación son más complejas que las de suma, y para N suficientemente grandes son éstas las que determinan el tiempo total. Ejemplo con N = 1.024 DFT: 1.048.576 multiplicaciones complejas FFT: 5.120 multiplicaciones complejas
Y ESTA RELACIÓN ES MAYOR CUANTO MAYOR ES N. Un circuito DSP (Digital Signal Processing) con 50ns de ciclo de reloj necesita 104 ms para hacer una DFT de 1.024 puntos mientras que el tiempo para hacerlo aplicando FFT es de 0,768 ms.
2.4. MUESTREO. Analógico ----> Digital 1) Muestrear (sampling). 2) Discretizar y cuantificar. Muestreo: es la técnica de captura de una señal en determinados instantes de tiempo (para generar valores llamados muestras) teniendo en cuenta ciertas condiciones para que las muestras contengan toda la información necesaria para identificar la señal.
x(t)
x(t) x(n) = x(nTs) t Ts: período de muestreo, tiempo entre dos muestras consecutivas.
fs
1 : frecuencia de muestreo, número de muestras por segundo. Ts
Muestreo ideal:
s(t )
s(t )
(t nTs ) n
t
Tema 2: Análisis y parametrización de la voz
22
TECNOLOGÍA DEL HABLA. CURSO 2009/10
Señal:
x(t ) t
Señal muestreada:
x s (t )
x s (t )
x(nTs ) (t nTs ) n
t
Espectro de la señal muestreada. Supongamos una señal limitada en banda a W. Se demuestra que la TF de un tren de deltas en el tiempo es un tren de deltas en la frecuencia:
TF
n
(t
nTs )
fs
n
(f
La señal muestreada es el producto en el tiempo: xs (t )
fs )
x(t )
n
(t nTs ) . Por tanto, su TF
será la convolución de las transformadas de cada una de ellas:
Xs( f )
X ( f ) * fs
n
(f
nf s )
fs
n
X( f
nf s )
es decir, salvo una constante, es el espectro de la señal original, antes de muestrear, centrado en los múltiplos de las frecuencias de muestreo (armónicos).
-2fs
-fs
-W
0
W
fs-W
fs
X(f), repetido y
fs+W 2fs-W 2fs
f
Criterio de Nyquist. Para poder recuperar la imagen original, se puede hacer un filtrado paso bajo adecuado y recuperar X ( f ) , pero para ello es necesario que no haya solapamiento (aliasing) entre dos consecutivos, es decir que:
Tema 2: Análisis y parametrización de la voz
23
TECNOLOGÍA DEL HABLA. CURSO 2009/10
fs
W
W
o lo que es lo mismo
fs
2W
que se conoce como criterio de Nyquist, y a la frecuencia 2W se le llama frecuencia de Nyquist. Criterio de Nyquist: La frecuencia de muestreo debe ser al menos el doble de la máxima componente espectral. Teorema de Nyquist: Si a una señal limitada en banda se la muestrea con un tren de impulsos de período igual o inferior al inverso del doble de la frecuencia máxima de la señal, se puede recuperar la señal original de la muestreada aplicando un filtrado paso bajo con frecuencia de corte la mitad de la frecuencia con que se muestreó.
-fs
-fs/2 -W
Ejemplo: voz humana W = 4 KHz.
0
W
fs/2
fs
f
Muestrear al menos a 8 KHZ.
2.5. ANÁLISIS EN EL DOMINIO DEL TIEMPO CORTO. Señal pseudo-estacionaria para corto plazo (decenas de milisegundos). 2.5.1. Necesidad de las ventanas. Es necesario usar ventanas porque hay que tomar intervalos finitos de tiempo. El uso de una ventana es el producto de la señal por una ventana, lo que equivale a convolucionar el espectro de la señal original por la transformada de la ventana.
v(t-τ)
x(t)
t
τ T xv (t ) x(t )v(t ) , siendo v(t Secuencia enventanada discreta: xv ( n) x ( n)v ( n k ) Señal enventanada continua:
) nula fuera de T.
Las ventanas consecutivas se pueden solapar (se deben solapar) para no perder información significativa. Sería deseable que el extremo de la ventana, donde toma los valores mínimos, coincidiera con el centro de la ventana consecutiva, donde toma los valores máximos. Al tiempo entre dos ventanas
Tema 2: Análisis y parametrización de la voz
24
TECNOLOGÍA DEL HABLA. CURSO 2009/10
consecutivas se le llama período de submuestreo Tsm para distinguirlo del período del muestreo
Ts (inversa de la frecuencia de muestreo fs). Al inverso del período de submuestreo se le llama frecuencia de submuestreo f sm y representa en número de ventanas por segundo. Valores típicos de frecuencia de submuestreo para la señal de voz son de 20 a 200 Hz. Como se ve, la frecuencia de submuestreo es sensiblemente menor que la frecuencia de muestreo, de 8 a 10 KHz.
t Tsm 2.5.2. Transformada de Fourier Dependiente del Tiempo (TFDT): espectrogramas. La TF convierte x(t) en X(f). Definimos la TFDT como
X ( f , t)
x ( )v (
t )e
j2 f
d
donde la TFDT de x(t) es la TF de x(t ) vista a través de una ventana de tiempo v( ) centrada en t, con lo que es una función de 2 variables: tiempo y frecuencia. Su representación es una superficie en el espacio. Si fijamos t
t 0 tenemos el espectro de la señal visto a través de una ventana de tiempo
centrada en t 0 . Si fijamos f
f 0 tenemos la evolución temporal de la componente f 0 .
Espectrograma. El espectrograma es una representación matricial (bidimensional) de la evolución temporal de las componentes espectrales con el tiempo, que se puede representar en forma de matriz: 128 145 110
130 147 101
135 154 098
133 158 095
122 166 099
118 155 104
Tema 2: Análisis y parametrización de la voz
115 165 112
111 160 110
25
TECNOLOGÍA DEL HABLA. CURSO 2009/10
o en forma de diversos tonos de gris o diversos colores. Forma práctica de realizar el espectrograma: para una ventana de tiempo particular, se obtendrían los números de una columna concreta. El valor de cada casilla podría ser el valor medio de los módulos de la DFT cuyas frecuencias estuvieran comprendidas dentro de un rango predeterminado. Por ejemplo, el Banco de Holmes. El espectro de una señal de audio se divide en diversas subbandas, cada vez más anchas, para adaptarse al comportamiento del oído humano, que pierde sensibilidad a medida que aumenta la frecuencia. Un ejemplo lo tenemos en el Banco de Holmes, con 19 subbandas centradas en las frecuencias dadas y con las anchuras de banda indicadas. Subbanda Frecuencia central (Hz) Anchura de banda 1 240 120 (±60) 2 360 120 3 480 120 4 600 120 …. …….. ….. …. ……. ….. 15 2.400 200 16 2.700 200 17 3.000 300 (±150) 18 3.300 300 19 3.750 500 (±250) Es como si la señal original la introdujéramos por diversos filtros paso banda y la salida de cada uno de ellos nos diera un número que lo caracterizara. Dicho número puede ser la media aritmética de los módulos de la DFT que están dentro de una cierta subbanda, y serviría para llenar los elementos de cada columna en un espectrograma matricial. 2.5.3. Transformada de Fourier dependiente del tiempo discreta.
S ( k , n)
s (m)v(m
n)e
j 2 km T
m
Según la longitud de la ventana de tiempo, los espectrogramas pueden ser: De banda ancha: ventanas de tiempo cortas, mala resolución espectral (Δf0 grande) del orden de centenares de Hz. De banda estrecha: ventanas de tiempo largas, buena resolución espectral (Δf0 pequeño) del orden de decenas de Hz.
Tema 2: Análisis y parametrización de la voz
26
TECNOLOGÍA DEL HABLA. CURSO 2009/10
2.5.4. Tipos de ventanas, comparación y sus efectos. Vamos a estudiar 4 tipos de ventanas (versión discreta): Rectangular:
vr (n) 1 vr (n) 0
para 0
n
M para resto de n
Hamming:
vham (n) v ham (n)
2 n para 0 M 0 para resto de n
0,54 0,46 cos
n
M
n
M
Hanning:
vhan (n)
0,50 0,50 cos
v han (n)
0 para resto de n
2 n para 0 M
Blackmann-Harris:
vbla (n) v ham (n)
2 n M 0 para resto de n
0,42 0,50 cos
0,08 cos
4 n para 0 M
n
M
Blackman 0 dB
Rectangular -13 dB malo
-60 dB bueno
bueno
malo
f
Idealmente, la mejor ventana sería v(t)=1, desde -∞ hasta +∞, cuya transformada es δ(f). La delta centrada en el origen es la identidad de la convolución, por tanto los espectros de las ventanas serán mejores cuanto más se parezcan a una delta. La delta tiene dos características: a) Separación de lóbulos laterales infinita. b) Anchura de banda nula. Una separación de lóbulos laterales finita supone la aparición de un cierto rizado (espectro lobulado). Una anchura de banda no nula supone que las transiciones en frecuencia sean menos abruptas (suavizado espectral).
Tema 2: Análisis y parametrización de la voz
27
TECNOLOGÍA DEL HABLA. CURSO 2009/10
A la vista de los espectros de las ventanas en cuanto a separación de lóbulos laterales y anchura de banda, el cuadro comparativo de las ventanas es el siguiente:
TIPOS DE VENTANA PENDIENTE DE TRANSICIÓN (ANCHO DE BANDA) Rectangular Buen comportamiento Blackman Mal comportamiento Hamming Regular comportamiento Hanning Regular comportamiento
RIZADO (LÓBULOS SECUNDARIOS) Mal comportamiento Buen comportamiento Regular comportamiento Regular comportamiento
De donde se deduce que las ventanas de Hamming, Hanning son soluciones de compromiso, mientras que la ventana rectangular, además de ser la más sencilla matemáticamente, es la que mejor comportamiento tiene respecto a ancho de banda (y peor en cuanto a lóbulos laterales) mientras que la de Blackman es la mejor en cuanto a lóbulos laterales pero la peor en cuanto a anchura de banda. 2.5.5. Análisis temporal localizado. n
s 2 (m)v(m n)
a) Energía localizada: E s (n)
m n N 1
b) Tasa de cruces por cero: Z s ( n)
n
1 N
sgn{s ( m)}
sgn{s ( m
1)}
2
m n N 1
v(m
n)
siendo la función signo la definida por:
sgn{s(n)} sgn{s(n)}
1 si s(n) 0 1 si s(n) 0
c) Correlación cruzada de dos secuencias:
Rxy (k )
x ( n) y ( n
k)
n
Se define la autocorrelación de una secuencia x(n) como la correlación de ella consigo misma, es decir:
Rx (k )
x ( n) x ( n k )
variando n desde
hasta
n
Propiedades de la autocorrelación: 1) Es una función par: R(k ) R( 2) Tiene un máximo en 3)
k
k) .
0.
R(0) es la potencia de la señal.
Mide el parecido de una señal consigo mismo desplazada. Si la secuencia tiene N muestras no nulas, la autocorrelación tiene 2N 1 valores no nulos, cuya parte positiva y nula se calculan de la forma: N k 1
Rx ( k
0)
x ( n) x ( n k ) n 0
mientras que la parte negativa, por ser función par, se calcula como:
Rx ( k )
Tema 2: Análisis y parametrización de la voz
Rx (k ) .
28