Академический Документы
Профессиональный Документы
Культура Документы
X (k ) = x (n)e 2 jkn / N
n =0
para k = 0, 1, 2, , N-1
La TDF es una funcin de variable discreta, describiremos cmo se obtiene esta expresin
matemtica aplicada al anlisis de seales digitales y qu representa.
Q
A
y
P
t
v=
PQ
t
A la velocidad tambin podemos definirla en funcin del ngulo barrido o ngulo de fase ( ). A
esta forma de expresar la velocidad la denominamos angular ().
= t
Dr. P. Cetta
Los ngulos pueden expresarse en distintos sistemas de medida, los ms habituales suelen ser el sistema sexagesimal,
que mide los ngulos en grados sexagesimales, o el sistema natural que los mide en radianes.
El sistema sexagesimal parte de un ngulo recto, que mide 90, y define la unidad, 1, como la noventa ava parte del
ngulo recto.
El sistema natural expresa la medida de un ngulo a travs de un nmero abstracto, y es el que se utiliza en
matemtica, dado que las variables que se utilizan son numricas. La unidad en este sistema, 1 radian, se define a
partir de una circunferencia de radio r, y es el ngulo que barre un arco de circunferencia cuya longitud es igual al
radio.
=
2 r
= 2
r
El ngulo mide 2 radianes. Los radianes suelen abreviarse rad, pero en general no se escribe.
Podemos relacionar, entonces, ambos sistemas de medida recordando que a una vuelta completa le corresponde un
ngulo de 360, cuatro ngulos rectos, y equivale a 2 radianes. Luego, 180 es radianes y 90 es /2 radianes.
Nos interesa determinar la elongacin (y), la distancia vertical del objeto al eje horizontal, que
es igual a la proyeccin del radio de la circunferencia sobre el eje vertical.
y = A sin
Dado un tringulo rectngulo, se define al seno del ngulo (sin ) como el nmero que resulta del cociente entre la
longitud del cateto opuesto y la longitud de la hipotenusa.
As, expresamos y en funcin del ngulo del sistema anlogo, o ngulo de fase, y la amplitud A,
o radio. Si deseamos la elongacin expresada en funcin del tiempo, podemos reemplazar el
valor del ngulo por t, recurriendo a la velocidad angular.
y = A sin(t )
En este caso el movimiento oscilatorio comienza con fase inicial = 0. Si el movimiento
comienza en cualquier otra posicin deberamos sumar el valor del ngulo de fase inicial al
inicio del movimiento (t = 0).
y = A sin(t + )
Para independizarnos del movimiento circular, podemos expresar la velocidad angular en
funcin de la frecuencia (f) que es la cantidad de ciclos por segundo.
En el movimiento circular uniforme un giro de 360 se desarrolla en el tiempo que dura un
ciclo, (T). Por lo tanto, si
=
Como
la
frecuencia
el
perodo
se
2
T
vinculan
por
Dr. P. Cetta
El valor de la elongacin para una frecuencia dada est ahora en funcin del tiempo. Esto
podramos anotarlo como y = y (t ) .
La descripcin matemtica de la seal digital es similar. La variable tiempo ya no transcurre de
manera continua, sino que asume valores discretos.
y (n) = A sin( 2 fn / R + )
Dado que R es una constante que depende del problema, para simplificar los clculos en la
prctica se escribe:
Dos ciclos de una seal sinudoidal de 1000Hz, muestreada a 32kHz, y 32 muestras por ciclo.
Recordemos la ley fundamental que se emplea en audio digital, conocida como Teorema de Nyquist (1928), expresa
que para muestrear una componente de frecuencia X, la frecuencia de muestreo debe ser por lo menos de 2X. Por
ejemplo, si deseamos registrar un sonido puro de 10.000 Hz, R debe ser de al menos de 20.000 Hz. Una frecuencia de
muestreo de 44.100 Hz (de un disco compacto, por ejemplo) debera, al menos en la teora, permitirnos registrar
digitalmente sonidos cuya componente de frecuencia ms alta sea de 22.050 Hz.
Si la frecuencia de muestreo es exactamente igual al doble de la frecuencia del sonido a digitalizar, cada ciclo estar
representado por slo dos valores (crticamente muestreado). Esto se observa en la figura siguiente.
Dr. P. Cetta
Si la frecuencia de muestreo es menor al doble de la frecuencia del sonido se produce una indeterminacin
denominada aliasing, que produce distorsin. Puede verse en el siguiente grfico que la lectura de las muestras
obtenidas reproduce una componente de menor frecuencia que no exista en la seal original.
Una sinusoide muestreada por menos de dos muestras por ciclo, que produce aliasing .
Para evitar el aliasing se emplea, en los conversores, un filtro pasa-bajos en la entrada. Su frecuencia de corte se
encuentra a la mitad de la frecuencia de muestreo, e impide que cualquier componente que supere en frecuencia la
mitad de R pase al conversor analgico-digital. Recordemos que un filtro pasa-bajos deja pasar todas las componentes
que se encuentran por debajo de su frecuencia de corte y retiene al resto. Otro filtro pasa-bajos a la salida, suaviza el
contorno de la forma de la seal generada por el conversor digital-analgico a partir de la secuencia de nmeros
almacenada. Una seal crticamente muestreada slo puede ser reproducida como una seal sinusoidal, dado que la
frecuencia de corte del filtro no permite el paso de armnicos.
Retomando las cuestiones matemticas que nos ocupan, veamos ahora otra forma de expresar la
funcin y (n) = A sin(n + )
Nuestra funcin es una constante A multiplicada por el seno de la suma de dos ngulos. La
trigonometra ensea que
sin 2 + cos 2 = 1
Sumando los cuadrados de a y b
a 2 + b 2 = ( A sin ) 2 + ( A cos ) 2
= A2 sin 2 + A2 cos 2
= A2 (sin 2 + cos 2 )
= A2
Por lo tanto, la amplitud es
A = a2 + b2
Dr. P. Cetta
a A sin
=
= tan
b A cos
Dado un tringulo rectngulo, se define al coseno del ngulo (cos ) como el nmero que resulta del cociente entre la
longitud del cateto adyacente y la longitud de la hipotenusa. Dado un tringulo rectngulo, se define a la tangente del
ngulo (tan ) como el nmero que resulta del cociente entre la longitud del cateto opuesto y la longitud del cateto
adyacente, resultando igual al cociente entre el seno y el coseno del ngulo.
Conocida la tangente del ngulo, podemos conocer el ngulo a travs de su inversa, cul es el
ngulo cuya tangente vale
a
?, esta relacin se denomina arco tangente y se escribe as:
b
a
= tan 1
b
Identidad de Euler
La identidad de Euler, una frmula muy utilizada en el procesamiento digital de seales de
audio, nos dice que
e j = cos + j sin
e , al igual que , es un nmero irracional cuyo valor es 2.718281828459, y j representa a la
unidad imaginaria.
El conjunto de nmeros reales, R, puede representarse mediante una recta, que llamamos recta real, donde a cada
punto que la forma le corresponde un nmero real. Las operaciones que realizamos con estos nmeros cumplen con
los axiomas y leyes que definen a R.
Pero en el caso de 1 no encontramos solucin en R, y en consecuencia se define un nuevo conjunto de nmeros.
Estos son los nmeros imaginarios (I), a cuya unidad llamaremos j, y que tambin pueden ser representados en una
recta, denominada recta imaginaria.
j = 1
z = r cos + jr sin
donde r es el vector que posiciona al punto, y el ngulo que forma r con el semieje positivo de
la recta real.
Haciendo uso de la identidad de Euler podemos escribir a z de la siguiente forma:
Dr. P. Cetta
Esta forma exponencial reduce considerablemente la dificultad de las operaciones con nmeros
complejos. En la multiplicacin, por ejemplo, la operacin resulta ms simple:
Por otra parte, es interesante observar que haciendo = en la relacin de Euler, surge la
frmula considerada de singular belleza
e j = cos + j sin
e j = 1+ 0
e j + 1 = 0
dado que rene de forma simple a las constantes e, , j, 0 y 1 con las operaciones de suma,
multiplicacin, potenciacin e igualdad.
Otra derivacin importante surge de la suma de dos complejos conjugados, aquellos que tienen
su parte imaginaria con distinto signo. Si z1 = cos + j sin , z 2 = cos j sin es el
complejo conjugado, con un ngulo igual a .
imag
e j
r
real
-y
e j
Complejos conjugados
En esta situacin se verifica que cos( ) = cos , y por otro lado que sin( ) = sin
cos =
e j + e j
2
sin =
e j e j
2
Dr. P. Cetta
La sinusoide compleja
En el procesamiento de seales digitales suele usarse el trmino sinusoidal para una seal
definida tanto por la funcin seno como por la funcin coseno. De hecho, una funcin coseno
con fase inicial 0 no es sino una funcin seno con fase inicial /2. Su utilizacin es comn
cuando se trata de seales representadas de forma compleja.
imag
e j = cos + j sin
real
e j = cos + j sin
O, ya que = t
e j t = cos t + j sin t
Dr. P. Cetta
Consideramos nuevamente
cos(t ) =
e j (t ) + e j (t )
2
sin t =
e jt e jt
2
e j
a
real
-a
e j
Movimientos circulares de igual velocidad y sentido opuesto.
La Transformada Discreta de Fourier (TDF) nos permite obtener el espectro de una forma de
onda. Este espectro est representado por componentes sinusoidales cuyas frecuencias son
armnicos de una fundamental, denominada frecuencia fundamental de anlisis.
Si partimos de una forma de onda arbitraria, x(n) y enviamos para su anlisis una cantidad N de
muestras sucesivas, representativas de un nico ciclo de una onda infinitamente peridica. El
resultado obtenido contiene los armnicos presentes en el perodo considerado de esa onda
supuestamente peridica.
Consideremos un caso simple, x(n)= A sin(n), cuyo perodo est representado por N muestras.
1
n)
N
Si N = 8, los valores de amplitud para cada muestra del ciclo estarn dados por:
Dr. P. Cetta
y son:
x( n) = 0,
A
A
A
A
, A,
, 0,
, A,
2
2
2
2
Con n = 0, 1, 2, 3, 4, 5, 6, 7 = 0, , N-1
La suma de todos los valores es igual a cero, porque la funcin seno es simtrica respecto al eje
horizontal. La pregunta es entonces cmo extraer de forma matemtica la amplitud mxima de
esa sucesin de muestras.
Dado que x(n) = A sin( n) , si multiplicamos a la funcin por sin( n) nos queda:
x(n) sin( n) = 0 + 2 + A + 2 + 0 + 2 + A + 2 = 4 A = N 2
n=0
1
[cos( ) cos( + )]
2
N 1
n=0
n =0
A N 1
A N 1
cos(3 n) = 0
cos( n) 2
2 n=0
n=0
Consideremos ahora el caso de una forma de onda compleja cualquiera, ya que por el Teorema
de Fourier sabemos que siempre podr descomponerse en un nmero finito de ondas simples de
frecuencia y amplitud determinadas. La expresin de cada componente puede tener esta forma:
Dr. P. Cetta
Podemos multiplicar las muestras por cos(n) y sumar los resultados para extraer a
sin(n) cos(n) = 0
n=0
x(n) cos(n) = N 2
N 1
x(n) sin(n) = N 2
n=0
n=0
ak =
1
N
N 1
x(n) cos(kn)
n =0
bk =
1
N
N 1
x(n) sin(kn)
n =0
fk =
kR
N
para k = 0, 1, 2, , N-1
e j 2 f t = cos(2 ft ) + j sin( 2 ft )
y dado que cos(-x) = cos(x) y sin(-x) = -sin(x), podemos escribir
10
Dr. P. Cetta
kR
nT
N
e j 2 k n / N = cos(2 kn / N ) j sin( 2 kn / N )
Si llamamos a a la parte real y b a la parte imaginaria, segn vimos, podemos calcular A y
para cada componente.
Finalmente, la funcin queda expresada del siguiente modo:
N 1
X (k ) = x (n)e 2 jkn / N
para k = 0, 1, 2, , N-1
n =0
TDF [x(n)] = X (k )
2
X (k ) = a k + bk = Ak
arg[X (k )] = tan 1
bk
= k
ak
Cada una de las componentes del espectro X(k) en que puede descomponerse una forma de onda compleja x(n), de la
que tenemos N muestras, puede obtenerse calculando su amplitud y su ngulo de fase. Esto se logra sumando los
productos entre cada muestra y una funcin sinusoidal compleja.
El siguiente fragmento de programa en lenguaje C describe la aplicacin prctica de la frmula.
for(k = 0; k < N; k++){
//k de 0 a N-1
real[k] = imag[k] = 0;
//se inicializan a 0
for(n = 0; n < N; n++){
//n de 0 a N-1
real[k] += x[n] * cos(2Pi * k * n / N) ;
imag[k] -= x[n] * sin (2Pi * k * n / N) ;
}
real[k] /= N ;
//se escala por 1/N
imag[k] /= N ;
//para A entre 0 y 1
}
Los datos almacenados en las matrices real e imag son los coeficientes a y b, desde donde se obtiene A y la fase. La
frecuencia representada por el ndice k es, como vimos antes, fk = kR / N
11
Dr. P. Cetta
parece detenerse y comienza a girar en sentido opuesto. Recordemos que una pelcula tambin
es discreta, y est formada por 24 cuadros por segundo.
Los primeros 9 (0 a 8) valores de k (hasta R/2, frecuencia de Nyquist) corresponden a las
frecuencias positivas del espectro, los siguientes, a las negativas en orden decreciente. Ejemplo:
k=0
k=1
k=2
k=8
k=9
k = 10
k = 15
0 R/N Hz
1 R/N Hz
2 R/N Hz
8 R/N Hz = R/2
-7 R/N Hz
-6 R/N Hz
-1 R/N Hz
Los valores de amplitud para cada ndice de frecuencia son, segn vimos, N
A
, a excepcin del
2
armnico de 0 Hz (k = 0), tambin llamado DC por direct current, y el armnico con frecuencia
R/2 o frecuencia de Nyquist (k = 8 en el ejemplo anterior), que equivalen a N veces A. Esto se
produce porque tanto la componente de 0 Hz como la componente cuya frecuencia es la mitad
de la frecuencia de muestreo poseen su parte imaginaria igual a 0, sin que pueda distinguirse el
signo de la frecuencia. Una componente crticamente muestreada (dos muestras por ciclo) slo
puede ser una funcin coseno, con valores A y A. Y algo similar ocurre con el armnico a 0
Hz, pues con k = 0 su parte imaginaria es cero, y la real representa N veces su amplitud.
La TDF inversa nos permite convertir los datos de una seal discreta representada en el dominio
de la frecuencia (espectro) al dominio del tiempo (forma de onda).
x ( n) =
1
N
N 1
X ( k )e
+ 2 jkn / N
para n = 0, 1, 2, , N-1
k =0
Por otra parte, la Transformada Rpida de Fourier (FFT, por Fast Fourier Transfom) es un
algoritmo de computacin que implementa de manera rpida y eficaz la Transformada Discreta.
Requiere que N sea potencia de 2.
0 dB
-100 dB
R/2 Hz
0 Hz
Un ciclo de una seal peridica con 4 armnicos, y su espectro calculado con la FFT.
Como es comn en la prctica, slo se representa la parte positiva.
12
Dr. P. Cetta
Convolucin
Seales discretas
Sabemos que en la teora de los sistemas discretos las seales son representadas mediante
secuencias. A la secuencia completa x, en la cual el ensimo trmino se representa por x(n), se la
expresa as:
x(.) = {x(n)} ,
< n<
(n) = 0, n 0
1, n = 0
Y la secuencia de escaln unitario u (n) :
u (n) = 0, n < 0
1, n 0
Ambas secuencias se relacionan a partir de:
n
(k )
u ( n) =
k =
(n) = u (n) u (n 1)
Definimos como energa de una seal a:
x ( n)
n =
y ( n) = x ( n k )
donde k, al igual que n, son enteros.
13
Dr. P. Cetta
Una seal cualquiera puede expresarse como una suma de impulsos escalados:
(0) = 1 , por lo tanto, slo cuando n vale -3, esa muestra tiene a-3 de amplitud. Esto puede
generalizarse mediante:
x( n ) =
x(k ). (n k)
k =
y ( n ) = T [x ( n ) ]
T [ax1 (n) + bx2 (n)] = aT [x1 (n)] + b.T [x2 (n)] = ay1 (n) + by2 (n)
a y b son constantes arbitrarias, las x son seales de entrada, y las y de salida.
Vimos que una secuencia puede ser representada como la suma secuencias unitarias escaladas y
retardadas.
y ( n) =
x(k ). (n k)
k =
y (n) = T x(k ). (n k)
k =
y si es lineal,
y (n) =
x(k ). h (n)
k =
k =
y (n) =
x(k ). h(n k)
k =
14
Dr. P. Cetta
y ( n) =
Los siguientes sistemas son lineales e invariantes en el tiempo, y tienen idntica repuesta al
impulso (el paso por la caja significa convolucin x(n) h( n) )
x(n)
h1 (n)
h2 (n)
y (n)
x(n)
h2 (n)
h1 (n)
y (n)
x(n)
h1 ( n ) h2 ( n )
y (n)
h1 (n)
x(n)
y (n)
h2 (n)
h1 ( n) + h2 ( n)
x(n)
y (n)
15
Dr. P. Cetta
cos A cos B =
1
[cos( A + B) + cos( A B)]
2
De forma equivalente:
(convolucin de secuencias)
y ( n) = f ( n) g ( n) = f ( k ) g ( n k )
k =0
siendo Ny = Nf + Ng 1
k=0
(n - k)=
k=1
(n - k)=
k=2
(n - k)=
k=3
(n - k)=
y(n)
n=0
1x4
0
2x0
-1
1x0
-2
3x0
-3
n=1
1x5
1
2x4
0
1x0
-1
3x0
-2
5
8
n=2
1x0
2
2x5
1
1x4
0
3x0
-1
10
4
13
14
Propiedades:
f ( n) ( n ) = f ( n)
f ( n) (n d ) = f (n d )
16
n=3
1x0
3
2x0
2
1x5
1
3x4
0
n=4
1x0
4
2x0
3
1x0
2
3x5
1
5
12
17
15
15
Dr. P. Cetta
17
Dr. P. Cetta
Ventanas
Los artefactos propios de analizar una seal cuyas componentes no son mltiplos de la
frecuencia fundamental de anlisis (R/N), o bien de R, pueden ser minimizados mediante el uso
de diversas funciones de ventana. Hasta ahora, y sin habernos detenido en ello, al aplicar la DFT
a una seal cualquiera, utilizamos una ventana rectangular de amplitud unitaria.
La DFT de una ventana rectangular es la funcin denominada sinc x (seno cardinal de x,
tambin llamada funcin de muestreo).
sinc ( x) =
sin x
1 si x = 0
x
sin x
x
sin(1.5 )
= 13.46 dB
1.5
Podemos considerar el valor absoluto de sinc(x) para observar mejor cmo se ver afectada la
magnitud de las componentes que no sean mltiplos exactos de la fundamental de anlisis, pero
sin olvidar que los valores negativos producen un cambio de fase en la resultante.
18
Dr. P. Cetta
Es posible disear otras ventanas diferentes a la rectangular, que generen lbulos menos
pronunciados, controlando as la amplitud de los artefactos de anlisis. La funcin sinc2(x), por
ejemplo, es el resultado de aplicar una ventana de forma triangular.
wH (n) = + (1 ) cos
2 n
N
con
N 1
N 1
n
2
2
Si a vale 0.54, la ventana se denomina Hamming, y si vale 0.5, se denomina hanning. El grfico
de la izquierda muestra una ventana Hamming para un N = 256, y la de la derecha la hanning
para igual N. Observar que la primera llega a tocar el eje horizontal.
19
Dr. P. Cetta
Bibliografa
Chowning, J. M. The synthesis of complex audio spectra by means of frequency modulation.
Journal of the Audio Engineering Society, 21(7):526-534. Reprinted in Curtis Roads and John
Strawn, eds. Foundations of Computer Music, Cambridge, MA: MIT Press, 1985.
Moore, F. Richard. Elements of Computer Music. MIT Press. Massachussets. 1991.
Moore, F. R. An introduction to the mathematics of digital signal processing, Part I.
Computer Music Journal, 2(1):38-47. Reprinted in John Strawn, ed. Digital Signal Processing:
An Anthology, Los Altos, CA: William Kaufmann, Inc. 1985.
Moore, F. R. An introduction to the mathematics of digital signal processing, Part II.
Computer Music Journal, 2(2):38-60. Reprinted in John Strawn, ed. Digital Signal Processing:
An Anthology, Los Altos, CA: William Kaufmann, Inc. 1985
Smih, Julius.Introduction to complex numbers. Adapted from Music 320 Course Reader.
CCRMA. Stanford University. 1999.
Smith, Julius O. Introduction to Digital Filters, September 2005 Draft, Center for Computer
Research in Music and Acoustics (CCRMA), Stanford University, Web published at
http://ccrma.stanford.edu/~jos/filters05/.
Smith, Julius. Mathematics of the Discrete Fourier Transform (DFT) with Audio Applications,
Second Edition. CCRMA online book. http://ccrma.stanford.edu/~jos/mdft/mdft.html
20