Upload
duongtram
View
222
Download
0
Embed Size (px)
Citation preview
1
Tratamiento Digital de SeñalesTratamiento Digital de SeñalesTEMA 2 : DFT (II)TEMA 2 : DFT (II)
UniversidadeUniversidade de Vigode VigoETSE TelecomunicaciónETSE Telecomunicación
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 2
CONTENIDOSCONTENIDOS
1.1. Repaso de conceptos asociados con la TFRepaso de conceptos asociados con la TF2.2. Formulación de la DFTFormulación de la DFT3.3. Propiedades de la DFTPropiedades de la DFT4.4. Métodos de filtrado lineal basados en la DFTMétodos de filtrado lineal basados en la DFT
1.1. ConvoluciónConvolución por bloquespor bloques2.2. Solapamiento y sumaSolapamiento y suma3.3. Solapamiento y almacenamientoSolapamiento y almacenamiento
5.5. Transformada rápida de Transformada rápida de FourierFourier (FFT)(FFT)6.6. Transformada discreta del coseno (DCT)Transformada discreta del coseno (DCT)
2
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 3
Filtrado Lineal Basado en la DFT (Introducción)Filtrado Lineal Basado en la DFT (Introducción)
•• Motivación:Motivación:–– Queremos realizar filtrados (Queremos realizar filtrados (convolucionesconvoluciones) empleando la ) empleando la
DFT como herramienta de cálculo.DFT como herramienta de cálculo.–– ¿Cómo? Aprovechando la relación entre ¿Cómo? Aprovechando la relación entre convoluciónconvolución lineal lineal
y y convoluciónconvolución circular para señales de tamaño finito.circular para señales de tamaño finito.–– Supongamos Supongamos x[nx[n], señal a filtrar, de longitud L; ], señal a filtrar, de longitud L; –– h[nh[n], respuesta al impulso del sistema, de longitud P:], respuesta al impulso del sistema, de longitud P:
DFT N puntos
DFT N puntos
IDFT N puntos
Cierto si se cumpleCierto si se cumpleQue N Que N ≥≥ L+PL+P--11
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 4
Filtrado Lineal Basado en la DFT (Introducción II)Filtrado Lineal Basado en la DFT (Introducción II)
•• Efectuada la Efectuada la convoluciónconvolución de este modo necesitamos todas de este modo necesitamos todas las muestras de las muestras de x[nx[n] para realizar la DFT] para realizar la DFT
•• En general no es práctico (o es imposible) esperar a En general no es práctico (o es imposible) esperar a obtener toda la señal obtener toda la señal
•• Estudiaremos dos métodos para realizar el filtrado lineal Estudiaremos dos métodos para realizar el filtrado lineal por bloques:por bloques:–– Solapamiento y almacenamiento Solapamiento y almacenamiento –– Solapamiento y sumaSolapamiento y suma
•• ¿Por qué no usar una ¿Por qué no usar una convoluciónconvolución simple?simple?–– El algoritmo de la FFT, que veremos más adelante, permite El algoritmo de la FFT, que veremos más adelante, permite
calcular una DFT de forma tan rápida que este método es calcular una DFT de forma tan rápida que este método es computacionalmentecomputacionalmente ventajoso.ventajoso.
3
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 5
ConvoluciónConvolución por Bloquespor Bloques
•• La salida puede obtenerse empleando La salida puede obtenerse empleando convolucionesconvolucionesparciales de bloques de señal de longitud Lparciales de bloques de señal de longitud L
y[n] = x[n] ? h[n] =
"Xm
xm[n−mL]#? h[n] =
Xm
ym[n−mL]
x[n] =Xm
xm[n−mL]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 6
ConvoluciónConvolución por Bloquespor BloquesUsando la DFTUsando la DFT
x0[n] x1[n]
DFT N puntos
IDFT N puntos
PrecalculadaPrecalculada(igual para todos (igual para todos
los bloques)los bloques)
Si N Si N ≥≥ L+PL+P--11
x1[n] X1[k]
H[k]
y1[n] = x1[n] ? h[n]
4
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 7
Solapamiento y SumaSolapamiento y Suma
•• Así pues, utilizamos .Así pues, utilizamos .
•• La La convoluciónconvolución circular coincide con la linealcircular coincide con la lineal
•• Sólo tenemos que solapar las Sólo tenemos que solapar las convolucionesconvolucionesresultantesresultantes
•• Página siguiente: ejemplo con L=4, P=3 y N=6Página siguiente: ejemplo con L=4, P=3 y N=6
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 8
Solapamiento y SumaSolapamiento y Suma
2L+P-2
x[n]
0 L-1
x0[n]
L 2L-1
x1[n]
2L 3L-1
x2[n]
y[n]
0 L+P-2
y0[n]
L
y1[n]
2L3L+P-2
y2[n]
L muestrasL muestrasSin solaparSin solapar
PP--1 1 MuestasMuestassolapadassolapadas
L=4L=4P=3P=3N=6N=6
DFT x H[k]Y DFT-1
L 2L
5
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 9
Solapamiento y AlmacenamientoSolapamiento y Almacenamiento
•• Es posible evitar la suma necesaria para componer Es posible evitar la suma necesaria para componer las las convolucionesconvoluciones parciales.parciales.
•• Usamos Usamos •• En este caso En este caso convoluciónconvolución circular y lineal no circular y lineal no
coincidencoinciden•• Parte de la Parte de la convoluciónconvolución obtenida es incorrecta, por lo obtenida es incorrecta, por lo
que habrá que ver como proceder.que habrá que ver como proceder.•• Ejemplo: L=5, P=3Ejemplo: L=5, P=3
N = L, L > P
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 10
Solapamiento y Almacenamiento (II)Solapamiento y Almacenamiento (II)
•• Ejemplo: N=L=5, P=3 Ejemplo: N=L=5, P=3
Ν=5
N=5N=5ConvoluciónConvolución
lineallineal
ConvoluciónConvoluciónCircular N=5Circular N=5
N=5N=5
x[n]PP--1 muestras1 muestrasincorrectasincorrectas NN--P+1P+1
MuestrasMuestrascorrectascorrectas
h[n]
6
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 11
Solapamiento y Almacenamiento (III)Solapamiento y Almacenamiento (III)
3L-1
x[n]
0 L-1
x0[n]
L
2L
2L-1 L
2L
x1[n]
x2[n]
y1[n]
y2[n]
PP--1 muestras 1 muestras incorrectasincorrectas
L=4L=4P=3P=3N=4N=4
0
y0[n]
y[n]
ConvoluciónConvoluciónincompletaincompleta
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 12
Solapamiento y Almacenamiento (IV)Solapamiento y Almacenamiento (IV)
0 L-1
x[n]
x0[n]
y[n]
Despreciamos Despreciamos Las muestras Las muestras incorrectasincorrectas
L=4L=4P=3P=3N=4N=4
2L-PL-P+1
x1[n]
0
y0[n]
y1[n]
y2[n]
FaltanFaltanlas Plas P--1 1
primeras primeras muestasmuestas
2(L-P+1)
x2[n]
Bloques de L Bloques de L muestras muestras
solapados Psolapados P--11
7
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 13
Solapamiento y Almacenamiento (y V)Solapamiento y Almacenamiento (y V)
0
2L-P
2(L-P+1)
L-1
L-P+1
0
L
2L
L+P-2
2L+P-2
x[n]
x0[n]
x1[n]
x2[n]
y[n]
y0[n]
y1[n]
y2[n]
Insertamos PInsertamos P--1 1 cerosceros
L=4L=4P=3P=3N=4N=4
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 14
Solapamiento y AlmacenamientoSolapamiento y AlmacenamientoExpresiones TeóricasExpresiones Teóricas
•• La señal x se divide en secciones de L muestras solapadas PLa señal x se divide en secciones de L muestras solapadas P--11
•• Se calcula la Se calcula la convoluciónconvolución circularcircular
•• Eliminamos las PEliminamos las P--1 primeras muestras del resultado1 primeras muestras del resultado
•• Se concatenan las secciones resultantesSe concatenan las secciones resultantes
8
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 15
CONTENIDOSCONTENIDOS
1.1. Repaso de conceptos asociados con la TFRepaso de conceptos asociados con la TF2.2. Formulación de la DFTFormulación de la DFT3.3. Propiedades de la DFTPropiedades de la DFT4.4. Métodos de filtrado lineal basados en la DFTMétodos de filtrado lineal basados en la DFT5.5. Transformada rápida de Transformada rápida de FourierFourier (FFT)(FFT)
1.1. IntroducciónIntroducción2.2. Diezmado en tiempo Diezmado en tiempo 3.3. Diezmado en frecuenciaDiezmado en frecuencia
6.6. Transformada discreta del coseno (DCT)Transformada discreta del coseno (DCT)
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 16
IntroducciónIntroducción
•• La FFT es un algoritmo rápido de calculo de la DFTLa FFT es un algoritmo rápido de calculo de la DFT•• La FFT La FFT nono es una transformada nuevaes una transformada nueva•• Para N=1024 el número de operaciones necesarias Para N=1024 el número de operaciones necesarias
se reduce a un 1 % usando la DFTse reduce a un 1 % usando la DFT•• Desarrollada por Desarrollada por CooleyCooley y y TukeyTukey en 1965en 1965•• Dos algoritmos:Dos algoritmos:
–– Diezmado en tiempoDiezmado en tiempo–– Diezmado en frecuenciaDiezmado en frecuencia
9
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 17
Complejidad de la DFTComplejidad de la DFT
•• Supongamos compleja.Supongamos compleja.•• Operaciones necesarias:Operaciones necesarias:
–– productos complejosproductos complejos–– sumas complejassumas complejas
•• Un producto complejo = 4 productos reales + 2 sumas realesUn producto complejo = 4 productos reales + 2 sumas reales•• Una suma compleja = 2 sumas realesUna suma compleja = 2 sumas reales•• Operaciones reales en una DFT:Operaciones reales en una DFT:
–– productos realesproductos reales–– sumas realessumas reales
X[k] =N−1Xn=0
x[n]e−j2πN kn , k=0,···,N−1
x[n]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 18
Complejidad de la DFT (II)Complejidad de la DFT (II)
•• real:real:
–– productos realesproductos reales–– sumas realessumas reales
•• Ejemplo: Ejemplo: –– 2.097.152 productos reales y 2.095.104 sumas reales2.097.152 productos reales y 2.095.104 sumas reales
•• En general el numero de operaciones es En general el numero de operaciones es
•• Veremos que la FFT esVeremos que la FFT es
X[k] =N−1Xn=0
x[n]e−j2πN kn , k=0,···,N−1
x[n]
10
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 19
¿Cómo se consigue esta reducción?¿Cómo se consigue esta reducción?
X[k] =Xn par
x[n]e−j2πN kn +
Xn impar
x[n]e−j2πN kn
•• Si N es par, podemos separar los N productos de la Si N es par, podemos separar los N productos de la DFT en dos grupos, correspondientes a las muestras DFT en dos grupos, correspondientes a las muestras pares e impares de la señal:pares e impares de la señal:
••Ahora, si representamos n=2r (pares) y n=2r+1 Ahora, si representamos n=2r (pares) y n=2r+1 (impares), podemos dividir la DFT original en dos (impares), podemos dividir la DFT original en dos nuevas nuevas DFTsDFTs con la mitad de puntos, ya que podemos con la mitad de puntos, ya que podemos hacer pasar el 2 de (2r) al denominador, para dar (N/2).hacer pasar el 2 de (2r) al denominador, para dar (N/2).
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 20
Derivación de la FFT Diezmado en TiempoDerivación de la FFT Diezmado en Tiempo
X[k] =
n=2̇X0≤n<N
x[n]e−j2πN kn +
n=2̇+1X0≤n<N
x[n]e−j2πN kn
=
N2 −1Xr=0
x[2r]e−j2πN k2r +
N2 −1Xr=0
x[2r + 1]e−j2πN k(2r+1)
=
N2 −1Xr=0
x[2r]e−j2π
(N/2)kr + e−j
2πN k
N2 −1Xr=0
x[2r + 1]e−j2π
(N/2)kr
DFT de N/2 puntos de las DFT de N/2 puntos de las muestras pares de muestras pares de x[nx[n] (] (G[kG[k])])
DFT de N/2 puntos de las DFT de N/2 puntos de las muestras impares de muestras impares de x[nx[n] (] (H[kH[k])])
11
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 21
Derivación de la FFT (II)Derivación de la FFT (II)
•• Llegamos a:Llegamos a: X[k] = G[k] + e−j2πN kH[k], k=0,···,N−1
X [0] = G[0] + e−j2πN 0H[0]
· · ·X [N
2 − 1] = G[N2 − 1] + e−j2πN (N2 −1)H[N2 − 1]
X [N2] = G[N
2] + e−j
2πN
N2 H[N
2]
· · ·X [N − 1] = G[N − 1] + e−j
2πN (N−1)H[N − 1]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 22
Derivación de la FFT (II)Derivación de la FFT (II)
•• Teniendo en cuenta las extensiones periódicas de ambas Teniendo en cuenta las extensiones periódicas de ambas DFTsDFTs de N/2 puntos, llegamos a:de N/2 puntos, llegamos a:
X [0] = G[0] + e−j2πN 0H[0]
· · ·X [N2 − 1] = G[N2 − 1] + e−j
2πN (N2 −1)H[N2 − 1]
X [N2] = G[0] + e−j
2πN
N2 H[0]
· · ·X [N − 1] = G[N2 − 1] + e−j
2πN (N−1)H[N2 − 1]
12
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 23
X[4]
e−j42πN
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
Punt
os p
ares
Punt
os im
pare
s
X[0]
1
DFTN/2
G[0]
G[1]
G[2]
G[3]
DFTN/2
H[1]
H[2]
H[3]
H[0]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 24
DFTN/2
DFTN/2
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
G[0]
G[1]
G[2]
G[3]
H[1]
H[2]
H[3]
H[0]
X [0]
X[1]
X[2]
X[3]
X [5]
X [4]
X [6]
X[7]
1
e−j2πN
e−j22πN
e−j52πN
e−j62πN
e−j72πN
e−j32πN
e−j42πN
Punt
os p
ares
Punt
os im
pare
s
13
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 25
Número de OperacionesNúmero de Operaciones
•• 2N2N22 productos reales para implementación directa productos reales para implementación directa ((x[nx[n] real)] real)
•• Ahora 2(N/2)Ahora 2(N/2)22+2(N/2)+2(N/2)22+4N=N+4N=N22+4N+4N•• Compensa si N>4 (2NCompensa si N>4 (2N22 > N> N22+4N)+4N)
DFTN/2
DFTN/2
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
G[0]
G[1]
G[2]
G[3]
H[1]
H[2]
H[3]
H[0]
X[0]
X [1]
X [2]
X [3]
X[5]
X[4]
X[6]
X[7]
1
e−j2πN
e−j22πN
e−j52πN
e−j62πN
e−j72πN
e−j32πN
e−j42πN
Dos Dos DFTsDFTs de N/2de N/2más N productos más N productos complejos más N complejos más N sumas complejassumas complejas
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 26
Número de OperacionesNúmero de Operaciones
•• Usamos N muestras de la exponencial compleja Usamos N muestras de la exponencial compleja entre 0 y 2entre 0 y 2ππ
DFTN/2
DFTN/2
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
G[0]
G[1]
G[2]
G[3]
H[1]
H[2]
H[3]
H[0]
X[0]
X [1]
X [2]
X [3]
X[5]
X[4]
X[6]
X[7]
1
e−j2πN
e−j22πN
e−j52πN
e−j62πN
e−j72πN
e−j32πN
e−j42πN
1
e−j2πN
e−j22πN
e−j52πN
e−j62πN
e−j72πN
e−j32πN
e−j42πN
14
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 27
Derivación de la FFTDerivación de la FFT
•• Si N/2 es par podemos realizar el mismo desarrollo Si N/2 es par podemos realizar el mismo desarrollo para las para las DFTsDFTs de N/2 puntosde N/2 puntos
DFTN/4
x[6]
1
e−j22πN
e−j42πN
e−j62πN = e−j3
2πN/2
G[3]
G[1]
G[0]
G[2]
x[0]
x[4]
x[2]
N/2 muestras de la N/2 muestras de la exponencial compleja exponencial compleja
entre 0 y 2entre 0 y 2ππ
DFTN/4
Go[0]
Go[1]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 28
Derivación de la FFTDerivación de la FFT•• El proceso se puede repetir sucesivamente hasta llegar a una DFTEl proceso se puede repetir sucesivamente hasta llegar a una DFT
de dos puntos siempre que N sea potencia de dosde dos puntos siempre que N sea potencia de dos•• Para el caso de N=8 sólo necesitamos una etapa másPara el caso de N=8 sólo necesitamos una etapa más
DFTN/4=2
x[0]
x[4]
Go[0]
Go[1]
Go[1] = x[0] + x[1]e−j 2π
N/4
•• De la De la definiciondefinicion de DFT:de DFT:
Go[0] = x[0] + x[1] 1
e−j42πN
x[0]
x[4]
Go[0]
Go[1]
15
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 29
MariposasMariposas
•• En cualquier etapa de la FFT dos puntos se combinan En cualquier etapa de la FFT dos puntos se combinan siempre mediante el mismo esquema denominado siempre mediante el mismo esquema denominado mariposamariposa
e−j2πN k
e−j2πN (k+N
2 )
e−j2πN
N2
MariposaMariposaDe dos puntosDe dos puntos
≡e−j
2πN k −1
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 30
Diagrama de la FFT Diezmado en TiempoDiagrama de la FFT Diezmado en Tiempo
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 2
e−j2πN 2
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
e−j2πN 0
e−j2πN 2
e−j2πN 1
e−j2πN 3
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
X [0]
X[1]
X[2]
X[3]
X [5]
X [4]
X [6]
X [7]
16
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 31
Diagrama de la FFT Diezmado en TiempoDiagrama de la FFT Diezmado en Tiempo
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 2
e−j2πN 2
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
e−j2πN 0
e−j2πN 2
e−j2πN 1
e−j2πN 3
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
X [0]
X[1]
X[2]
X[3]
X [5]
X [4]
X [6]
X [7]
Ord
enam
ient
o bi
nari
o in
vert
ido
Ord
enam
ient
o bi
nari
o in
vert
ido
Etapa 1Etapa 14 grupos de 1 mariposa4 grupos de 1 mariposa
Etapa 2Etapa 22 grupos de 2 mariposas2 grupos de 2 mariposas
Etapa 3Etapa 31 grupo de 4 mariposas1 grupo de 4 mariposas
LogLog22NN etapasetapas
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 32
Diagrama de la FFT Diezmado en TiempoDiagrama de la FFT Diezmado en Tiempo
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 2
e−j2πN 2
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
−1
e−j2πN 0
e−j2πN 2
e−j2πN 1
e−j2πN 3
x[0]
x[2]
x[4]
x[1]
x[6]
x[3]
x[5]
x[7]
X [0]
X[1]
X[2]
X[3]
X [5]
X [4]
X [6]
X [7]
Usamos sólo N/2 muestras de la Usamos sólo N/2 muestras de la exponencial complejaexponencial compleja
17
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 33
Número de operaciones Número de operaciones
•• Se realizan Se realizan loglog22NN etapasetapas•• Cada etapa requiere:Cada etapa requiere:
–– N/2 multiplicaciones complejasN/2 multiplicaciones complejas–– N sumas complejas (restas)N sumas complejas (restas)
•• Por tantoPor tanto–– 2N productos reales2N productos reales–– N+2N=3N sumas realesN+2N=3N sumas reales
•• En total: En total: 2Nlog2Nlog22NN productos y productos y 3Nlog3Nlog22NN sumassumas•• En definitiva En definitiva O(NlogO(Nlog22NN))•• Para N=1024Para N=1024
–– DFT: aprox. 1024*1024=1048576 operacionesDFT: aprox. 1024*1024=1048576 operaciones–– FFT FFT aproxaprox 1024*10=102401024*10=10240
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 34
Derivación de la FFT Diezmado en FrecuenciaDerivación de la FFT Diezmado en Frecuencia•• Suponemos de nuevo N par y dividimos el cálculo de la Suponemos de nuevo N par y dividimos el cálculo de la
DFT entre valores pares e impares de kDFT entre valores pares e impares de k
X[2r] =N−1Xn=1
x[n]e−j2πN 2rn
=
N2 −1Xm=0
x[m]e−j2πN 2rm +
N2 −1Xm=0
x[m+N
2]e−j
2πN 2r(m+N
2 )
=
N2 −1Xm=0
x[m]e−j2πN 2rm +
N2 −1Xr=0
x[m+N
2]e−j
2πN 2rm
18
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 35
Derivación de la FFT Diezmado en Frecuencia (II)Derivación de la FFT Diezmado en Frecuencia (II)
•• Sea ahora k impar, k=2r+1 (r=0,Sea ahora k impar, k=2r+1 (r=0,…,N…,N/2/2--1)1)
X[2r + 1] =N−1Xn=0
x[n]e−j2πN (2r+1)n
=
N/2−1Xm=0
x[m]e−j2πN (2r+1)m +
N/2−1Xm=0
x[m+N/2]e−j2πN (2r+1)(m+N/2)
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 36
Derivación de la FFT Diezmado en Frecuencia (III)Derivación de la FFT Diezmado en Frecuencia (III)
•• Dividimos los puntos de la FFT en pares e impares:Dividimos los puntos de la FFT en pares e impares:
X[2r] =
N2 −1Xm=0
(x[m] + x[m+N/2]) e−j2π
(N/2)rm
X[2r + 1] =
N2 −1Xm=0
h(x[m] + x[m+N/2])e−j
2πN m
ie−j
2π(N/2)
rm
DFT de N/2 puntos de la DFT de N/2 puntos de la señal señal x[nx[n]+]+x[nx[n+N/2]+N/2]
DFT de N/2 puntos de la señal DFT de N/2 puntos de la señal ((x[nx[n]+]+x[nx[n+N/2])e+N/2])e--j2j2ππ m/Nm/N
•• Aplicando de nuevo la división llegamos a un diagrama similar Aplicando de nuevo la división llegamos a un diagrama similar al de diezmado en tiempoal de diezmado en tiempo
19
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 37
Diagrama de la FFT Diagrama de la FFT Diezmado en FrecuenciaDiezmado en Frecuencia
−1
−1
−1
−1
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 2
e−j2πN 1
e−j2πN 3
−1
−1
−1
−1
e−j2πN 0
e−j2πN 0
e−j2πN 2
e−j2πN 2
e−j2πN 0
e−j2πN 0
e−j2πN 0
e−j2πN 0
−1
−1
−1
−1
X [0]
X[1]
X[2]
X[3]
X [5]
X [4]
X [6]
X [7]
x[0]
x[1]
x[2]
x[3]
x[5]
x[4]
x[6]
x[7]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 38
ComentariosComentarios
•• Existen versiones para valores de N distintos de una Existen versiones para valores de N distintos de una potencia de 2 (potencia de 2 (ejej: 3 2: 3 2kk etcetc))
•• Se pueden realizar los cómputos en un solo registro Se pueden realizar los cómputos en un solo registro de señal (inde señal (in--place)place)
•• La DFT inversa se obtiene con una variación sencilla La DFT inversa se obtiene con una variación sencilla de los diagramas vistosde los diagramas vistos
•• Existen optimizaciones para señales reales (se Existen optimizaciones para señales reales (se aprovecha la simetría de cada DFT)aprovecha la simetría de cada DFT)
20
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 39
CONTENIDOSCONTENIDOS
1.1. Repaso de conceptos asociados con la TFRepaso de conceptos asociados con la TF2.2. Formulación de la DFTFormulación de la DFT3.3. Propiedades de la DFTPropiedades de la DFT4.4. Métodos de filtrado lineal basados en la DFTMétodos de filtrado lineal basados en la DFT5.5. Transformada rápida de Transformada rápida de FourierFourier (FFT)(FFT)6.6. Transformada discreta del coseno (DCT)Transformada discreta del coseno (DCT)
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 40
IntroducciónIntroducción
•• La DFT plantea varios problemas prácticosLa DFT plantea varios problemas prácticos–– Es compleja incluso para señales realesEs compleja incluso para señales reales–– Para señales reales es redundante:Para señales reales es redundante:
Real(H[k]) Imag(H[k])
N/2N/2--1 valores 1 valores RedundantesRedundantes
(si N par)(si N par)
Siempre ceroSiempre ceropara N parpara N par
ya que ya que H[NH[N/2]=H*[N/2] /2]=H*[N/2]
N/2N/2--1 valores 1 valores RedundantesRedundantes
(si N par)(si N par)Siempre ceroSiempre cero
ya que H[0]=H*[0] ya que H[0]=H*[0]
h[n] real =⇒ H∗[k] = H[((−k))N ]
21
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 41
DFT 16 puntos cos(2DFT 16 puntos cos(2ππn/16)n/16)cos(2cos(2ππn/16)n/16)
Extenper(cosExtenper(cos(2pn/16))(2pn/16))
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 42
DCTDCT
•• Se plantea obtener una transformación nuevaSe plantea obtener una transformación nueva–– Que sea real para señales realesQue sea real para señales reales–– Que transforme N valores en N valoresQue transforme N valores en N valores
•• La DCT (La DCT (discretediscrete cosinecosine transformtransform) cumple estos ) cumple estos requisitosrequisitos
•• Se usa extensivamente en codificación de audio y de Se usa extensivamente en codificación de audio y de imagen imagen –– Su utilidad reside en que en comparación con la DFT Su utilidad reside en que en comparación con la DFT
presenta una mayor compactación de la energía espectral presenta una mayor compactación de la energía espectral alrededor de frecuencias bajasalrededor de frecuencias bajas
22
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 43
ScaledScaled--DCT 16 puntos cos(2DCT 16 puntos cos(2ππn/16)n/16)DFT 16 puntos cos(2DFT 16 puntos cos(2ππn/16)n/16)
DCT DCT -- DFTDFT
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 44
Obtención de una Transformación RealObtención de una Transformación Real
•• La DFT es en general compleja debido a que las La DFT es en general compleja debido a que las funciones base de la transformación son complejasfunciones base de la transformación son complejas
•• La DFT pertenece a una familia de transformaciones La DFT pertenece a una familia de transformaciones con expresión general: con expresión general:
•• Donde las N funciones base Donde las N funciones base φφkk[n] son ortogonales [n] son ortogonales entre sientre si
x[n] =1
N
N−1Xk=0
X [k]φk[n]
X[k] =N−1Xn=0
x[n]φ∗k[n]
23
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 45
Obtención de Una Transformación Real (II)Obtención de Una Transformación Real (II)
•• Para la DFT Para la DFT –– La periodicidad implícita en la DFT está causada por la La periodicidad implícita en la DFT está causada por la
periodicidad de las funciones baseperiodicidad de las funciones base
•• Para obtener una transformación real, lo más Para obtener una transformación real, lo más sencillo parecería ser utilizar sencillo parecería ser utilizar
•• El problema es que este procedimiento no genera N El problema es que este procedimiento no genera N funciones diferentesfunciones diferentes
•• EjemploEjemplo
φk[n] = Real³ej
2πN kn
´
φk[n] = ej 2πN kn
φk[n] = cos
µ2π
4kn
¶
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 46
EjemploEjemplo
0 1 2 3 40
0.2
0.4
0.6
0.8
1
0 1 2 3 4-1
-0.5
0
0.5
1
0 1 2 3 4-1
-0.5
0
0.5
1
0 1 2 3 4-1
-0.5
0
0.5
1
φ0[n] φ1[n]
φ2[n] φ3[n]
24
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 47
Obtención de Una Transformación Real (III)Obtención de Una Transformación Real (III)
•• Para solucionar esto, se pueden utilizar N muestras Para solucionar esto, se pueden utilizar N muestras de medio periodo del cosenode medio periodo del coseno
0 1 2 3 40
0.2
0.4
0.6
0.8
1
0 1 2 3 4-1
-0.5
0
0.5
1
0 1 2 3 4-1
-0.5
0
0.5
1
0 1 2 3 4-1
-0.5
0
0.5
1
•• Ejemplo:Ejemplo:
φk[n] = cos(πN kn)
k=0;···,N−1
φ0[n] φ1[n]
φ2[n] φ3[n]
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 48
La DCTLa DCT
•• La DCT utiliza como base variaciones sobre las La DCT utiliza como base variaciones sobre las funciones coseno como la que acabamos de funciones coseno como la que acabamos de describirdescribir
•• Debido a la periodicidad de las funciones base Debido a la periodicidad de las funciones base existe, como en la DFT, una paso subyacente por existe, como en la DFT, una paso subyacente por una extensión periódicauna extensión periódica
•• Como las funciones base son además simétricas, Como las funciones base son además simétricas, existe cierta simetría en la extensión periódicaexiste cierta simetría en la extensión periódica
•• Dependiendo del tipo de función base escogida se Dependiendo del tipo de función base escogida se definen varios tipos de definen varios tipos de DCTsDCTs
25
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 49
Tipos de Tipos de DCTsDCTs
x̃1[n] x̃2[n]
x̃3[n] x̃4[n]
DCT 1 DCT 1 DCT 2 DCT 2
DCT 3 DCT 3 DCT 4 DCT 4
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 50
DCTDCT--22
•• Es la única que estudiaremos aquíEs la única que estudiaremos aquí•• La DCTLa DCT--2 implica una extensión periódica con 2 implica una extensión periódica con
simetría en simetría en --1/2, N1/2, N--1/2, 1/2, etcetc•• Las funciones base para esta transformación:Las funciones base para esta transformación:
x̃2[n]
k=0;···,N−1
φk[n] = cos(πN k(n+
12 )) = cos(
π2N k(2n+ 1))
26
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 51
Definición de la DCTDefinición de la DCT--22
Xc[k] = 2N−1Xn=0
x[n]cos(π
2Nk(2n+ 1)) k=0,···,N−1
β[k[=
½12 k = 01 k = 0, · · · , N − 1
DCT DCT --22
x[n] =1
N
N−1Xk=0
β[k]Xc[k]cos(π
2Nk(2n+ 1)) n=0,···,N−1
Xc[k] =
r2
Nβ̃[k]
N−1Xn=0
x[n]cos(π
2Nk(2n+ 1)) k=0,···,N−1
x[n] =
r2
N
N−1Xk=0
β̃[k]Xc[k]cos(π
2Nk(2n + 1)) n=0,···,N−1
˜β[k] =
½ 1√2
k = 0
1 k = 0, · · · ,N − 1
Definición alternativa Definición alternativa Normalizada (Normalizada (matlabmatlab))
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 52
Relación Entre DFT y DCTRelación Entre DFT y DCT
•• La extensión periódica para la DCTLa extensión periódica para la DCT--2 puede 2 puede expresarse: expresarse:
x2[n] = x[n] + x[2N − 1− n]n=0,···,2N−1x̃2[n] = x[((n))2N ] + x[((−n− 1))2N ]
x[((n))2N ] x[((−n− 1))2N ]
27
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 53
•• Partimos dePartimos de
•• Por tanto, si Por tanto, si x[nx[n] es real,] es real,
x2[n]DFT2N−→ X2[k] k=0,···,2N−1
x[n]DFT2N−→ X [k] k=0,···,2N−1
x∗[((−n− 1))2N ] DFT2N−→ X∗[k]ej2π2N k k=0,···,2N−1
X2[k] = X[k] +X∗[k]ej
πN k
Relación Entre DFT y DCT (II)Relación Entre DFT y DCT (II)
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 54
•• Operando (Operando (x[nx[n] real)] real)
Relación Entre DFT y DCT (III)Relación Entre DFT y DCT (III)
H[k] H∗[k]+ = 2Re(H[k])
X[k] =2N−1Xn=0
x[n]e−j2π2N kn =
N−1Xn=0
x[n]e−jπN kn
X2[k] = ej π2N k(X[k]e−j
π2N k +X∗[k]ej
π2N k)
X2[k] = 2 ej π2N kRe(X[k]e−j
π2N k)
X2[k] = 2ej π2N kRe
"N−1Xn=0
x[n]e−j(πN kn+
π2N k)
#Ecuación 1
28
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 55
•• Operando (Operando (x[nx[n] real)] real)
•• Tomando sólo los N primeros puntos y comparando con la Tomando sólo los N primeros puntos y comparando con la definición de DCT:definición de DCT:
•• Aplicando la ecuación 1 (Aplicando la ecuación 1 (pág.pág. anterior)anterior)
Relación Entre DFT y DCT (IV)Relación Entre DFT y DCT (IV)
X2[k] = 2ej π2N k
"N−1Xn=0
x[n] cos ( π2N k(2n+1))
#k=0,···,2N−1
X2[k] = ej π2N kXc[k] k=0,···,N−1
Xc[k] = 2Re£X[k]e−j
π2N k
¤k=0,···,N−1
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 56
Relación Entre DFT y DCTRelación Entre DFT y DCT--2: Ejemplo2: Ejemplo
x̃2[n]
e−jπ2N k
Real y simétrica
DFT 2N
X2[k] X2[k] · e−jπ2N k
Xc[k]
DFT-1 2N
ComplejaPero X2[k]=X2
*[-k]
Desplazamiento-1/2
x2[n]
x2[((n− 1/2))2N ]
29
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 57
Propiedades de la DCTPropiedades de la DCT
•• Es real para señales realesEs real para señales reales•• Existen algoritmos rápidos para su cálculoExisten algoritmos rápidos para su cálculo•• Es más sencilla que la DFTEs más sencilla que la DFT•• No No se corresponde con la parte real de la DFTse corresponde con la parte real de la DFT•• Compacta la energía espectral alrededor de Compacta la energía espectral alrededor de
frecuencias bajasfrecuencias bajas
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 58
Compactación de Energía en la DCTCompactación de Energía en la DCT
DFT 6 puntos
DCT 6 puntos
x[n]
•• Para la DCT la energía espectral está más agrupada alrededor de Para la DCT la energía espectral está más agrupada alrededor de bajas frecuenciasbajas frecuencias
•• ¿Por qué sucede esto?¿Por qué sucede esto?
|X [k]|
Xc[k]
30
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 59
ExplicaciónExplicación
x[n]
ExtensiónPeriódica DFT
ExtensiónPeriódica DCT
Variación más brusca =
Mayor contenido en altas frecuencias
Variación más suave =
Menor contenido en altas frecuencias
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 60
Uso en CodificaciónUso en Codificación
•• En audio e imagen muchos codificadores trabajan en un En audio e imagen muchos codificadores trabajan en un dominio transformadodominio transformado
•• La DCT es una elección habitual en estos casosLa DCT es una elección habitual en estos casos•• Ejemplo: truncamos el espectro para comprimir la informaciónEjemplo: truncamos el espectro para comprimir la información
Xc[k]|X [k]|
Xc[k]|X [k]|Menor errorMayor error
31
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 61
Ejemplo: JPEGEjemplo: JPEG
•• La DCT es bidimensional, se obtienen bloques de 8x8 La DCT es bidimensional, se obtienen bloques de 8x8 coeficientescoeficientes
•• Puede truncarse la DCT sin afectar demasiado a la señalPuede truncarse la DCT sin afectar demasiado a la señal
Bloque de 8x8 pixels DCT Cuantificación
Bajasfrecuencias
Altasfrecuencias
Altasfrecuencias
DCT
Coeficientestruncados
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 62
Ejemplo: JPEG (II)Ejemplo: JPEG (II)
•• En la práctica no se trunca la DCT sino que se asignan mayor En la práctica no se trunca la DCT sino que se asignan mayor número de bits a los coeficientes de bajas frecuenciasnúmero de bits a los coeficientes de bajas frecuencias
Más bits
Menos bits
Menos bits
32
TDS Tema 1: DFT (Parte 2) Curso 06-07 Página 63
Ejemplo JPEG (III)Ejemplo JPEG (III)
CodificaciónCon DFT
CodificaciónCon DCT