Documente Academic
Documente Profesional
Documente Cultură
Dan Ellis
2013-09-23
x
(t)
ak cos
k=0
Dan Ellis
2 k
t+
T
2013-09-23
Harmonics
of the
fundamental
Fourier Series
ak cos
k=0
i.e.
ak =
x(t) = cos
2
t
T
( 1)
0
1
cos
3
1
k
2 k
t+
T
k = 1, 3, 5, . . .
otherwise
2
1
3t + cos
T
5
2
5t
T
...
0.5
0.5
1
1.5
Dan Ellis
0.5
2013-09-23
0.5
1.5
Fourier Domain
x is equivalently described
by its Fourier Series
parameters:
ak = ( 1)
1
k
k = 1, 3, 5, . . .
ak 1.0
1 2 3 4 5 6 7
Negative ak is
equivalent to phase of
M
1 2 3 4 5 6 7
j 2T k t
ck e
k= M
Dan Ellis
2013-09-23
Fourier Analysis
x
(t)
ck e
k= M
Dan Ellis
T /2
x(t)e
j 2T k t
dt
T /2
2013-09-23
j 2T k t
Fourier Analysis
1
ck =
T
T /2
x(t)e
x
1
=
2
e
cl ejl
dt ; call
jk
1
2
ej(l
k)
2
=
t
T
d
jk
cl
l
T
2
ck e
k= M
T /2
1
=
2
j 2T k t
x
(t)
= ck
Dan Ellis
j 2T k t
2013-09-23
1
Thus, ck = T
T /2
x(t)e
j 2T k t
dt
T /2
j 2T k t
j 2T k t
x(t) =
ck e
k= M
Dan Ellis
2013-09-23
Fourier Transform
Fourier
Transform (FT)
j t
Inverse Fourier
Transform (IFT)
X(j ) =
x(t)e
1
x(t) =
2
X(j )e
j t
Dan Ellis
2013-09-23
Fourier Transform
Mapping between two continuous
functions:
|X( )|
0
level
/ dB -20
0.02
x(t)
-40
-60
-80
0
0.01
4000
6000
8000
freq / Hz
arg{X( )}
0
-0.01
0
2000
0.002
0.004
0.006
0.008
time / sec
/2
0
/2
2 ambiguity
Dan Ellis
2013-09-23
2000
4000
6000
8000
freq / Hz
Z
Assume x(t) = e
1
Now, since x(t) =
j 0 t
X(W)e
2p
...we know X(W) = 2pd(W
jWt
dW
W0)
( x x0 ) f ( x) dx = f ( x0 )
x(t) = Ae
Dan Ellis
j 0 t
x0
f(x)
x
X() = A ( 0 )
2013-09-23
10
Fourier Transforms
Fourier Series
(FS)
Fourier
Transform (FT)
Discrete-Time
FT (DTFT)
Discrete FT
(DFT)
Dan Ellis
Time
Frequency
Continuous
periodic ~x(t)
Discrete
infinite ck
Continuous
Continuous
infinite x(t)
infinite X()
Discrete
Continuous
infinite x[n] periodic X(ej)
Discrete
Discrete
finite/pdc ~x[n] finite/pdc X[k]
2013-09-23
11
X(e ) =
x[n]e
jn
DTFT
n=
Dan Ellis
2013-09-23
12
DTFT example
e.g. x[n] = n[n], || < 1
X(e ) = n= [n]e
= n=0 (e
Re
|X(ej )|
Dan Ellis
jn
S = c cS = c
n
n =1
S cS = c = 1
( |c | < 1 )
1
S =
1c
0
2
1
1 2 3 4 5 6 7
n =0
arg{X(ej )}
j n
1
=
j
1 e
1 - e-j
Im
-1
2013-09-23
13
Periodicity of X(ej!)
X(ej!) has periodicity 2 in ! :
X(e
j ( +2 )
) = x[n]e
= x[n]e
|X(ej )|
j ( +2 )n
jn
j 2 n
= X(e )
arg{X(ej )}
3
2
1
2
Dan Ellis
2013-09-23
14
1
x[n] =
2
X(e
)e
jn
IDTFT
discrete, infinite x[n] ...
IDTFT is actually Fourier Series analysis
(except for sign of !)
Dan Ellis
2013-09-23
15
IDTFT
1
x[n] =
2
1
=
2
X(e
)e
jn
(l x[l]e )e
jl
jn
1 j (nl )
= l x[l] e
d
2
= l x[l]sinc (n l)= x[n]
Dan Ellis
2013-09-23
= 0 unless
n=l
i.e. = [n-l]
16
sinc
1
=
2
j (n
1
l)
dw =
2
Same as cos
Dan Ellis
ej (n l)
j(n l)
1 ej (n l) e j (n
=
2
j(n l)
2j sin (n l)
= sinc (n
j(n l)
1
2
l)
l)
2013-09-23
17
sinc
sin x
sincx
x
1.0
4
sin(x)/x
sin(x)
y=x
= 1 when x = 0
= 0 when x = r, r 0, r = 1, 2, 3,...
Dan Ellis
2013-09-23
18
X(e ) =
x[n] = [n]
x[n]e
n=
j 0
=e
i.e.
[n]
Dan Ellis
1
X(ej)
x[n]
-3 -2 -1
(for all !)
X(ej!)
x[n]
=1
jn
1 2 3
2013-09-23
!
19
1
j
jn
x[n] = e
: x[n] =
X(e
)e
d
j
X(e
) = 2
(
0 ) over - < ! <
but X(ej!) must be periodic in !
j 0 n
e
k 2 ( 0 2k)
j 0 n
If !0 = 0 then x[n] = 1 n
so
Dan Ellis
k 2 ( 2k)
2013-09-23
X(ej!)
0 2 4
20
From before:
[n]
n
1
j
1 e
( | | < 1)
[n]
1
+ k ( + 2k)
j
1 e
DTFT of 1/2
Dan Ellis
2013-09-23
21
DTFT properties
Linear:
Time shift:
g[n n0 ] e
Frequency shift:
Dan Ellis
j 0 n
jn 0
g[n] G (e
2013-09-23
G(e )
j ( 0 )
delay
in
frequency
22
DTFT example
Dan Ellis
j 1
1
X(e ) = 1+ e
1 e
e j
1 e j + e j
= 1+
=
j
1 e
1 e j
1
=
x[n] = n [n]
j
1 e
j
2013-09-23
23
DTFT symmetry
If x[n]
x[-n]
x*[n]
Re{x[n]}
X(e ) =
x[n]e jn
n=
X(ej!) then...
from summation
X(e-j!)
X*(e-j!) (e-j!)* = ej!
1
j
!
XCS(e ) = [ X (e j ) + X * (e j )]
2
jIm{x[n]}
xcs[n]
xca[n]
Dan Ellis
1
j
*
j
= [ X (e ) X (e )]
2
Re{X(ej!)}
jIm{X(ej!)}
XCA(ej!)
2013-09-23
24
XCS
XR(ej!) = XR(e-j!)
XI(ej!) = -XI(e-j!)
Imag
X(ej!) = X*(e-j!)
xim[n]
Real
xre[n]
n
Dan Ellis
2013-09-23
25
jn
= n ( k g[k]h[n k])e
jn
= G(e ) H (e )
g[n] h[n] G(e j )H (e j )
Dan Ellis
2013-09-23
Convolution
becomes
multiplication
26
g[n]
h[n]
Dan Ellis
finding DTFTs of g, h G, H
multiply them: GH
IDTFT of product is result, g[n] h[n]
DTFT
DTFT
G(e j )
Y (e j )
IDTFT
y[n]
H (e j )
2013-09-23
27
1
x[n] =
X(e ) =
1 e j
h[n] = [n] - [n-1]
n[n]
H (e ) = 1 (e
j
j 1
) 1
j
j
j
Y
(e
)
=
H
(e
)X(e
)
1
j
=
e
=1
)
j (
1 e
y[n] = [n] i.e. ...
Dan Ellis
2013-09-23
28
DTFT modulation
j
j
jn
jn
X(e ) = n
G(e
)e
d
h[n]e
2
1
j
j ( )
g[n] h[n]
G(e )H (e
)d
2013-09-23
29
Parsevals relation
Dan Ellis
2013-09-23
30
1
g =
2
G(e
By Parseval
Dan Ellis
2013-09-23
) d
31
Autocorrelation of g[n]:
rgg [] =
no phase
info.
Dan Ellis
2013-09-23
32
3. Discrete FT (DFT)
Discrete FT
(DFT)
Discrete
Discrete
finite/pdc x[n] finite/pdc X[k]
Dan Ellis
2013-09-23
33
2 k
n
N
n=0
N 1
2/N
1
kn
X[k]
=
x[n]W
DFT:
WN
n=0
where WN = e
Dan Ellis
2
N
34
IDFT
N 1
1
nk
Inverse DFT: IDFT x[n] = X[k]WN
N k=0
Check:
1
kl
nk
x[n] = k l x[l]WN WN
N
Sum of complete set
N 1
N 1
1
k (ln ) of rotated vectors
= x[l] WN
= 0 if l n; = N if l = n
N l=0
k=0
im
or finite
re
W
= x[n]
geometric series
WN2
0n<N
Dan Ellis
2013-09-23
= (1-WNlN)/(1-WNl)
35
DFT examples
X[k] =
1
0
n=0
n = 1...N
x[n]WNkn = WN0 = 1
n=0
Periodic sinusoid:
2 rn
N
x[n] = cos
X[k] =
(0 k < N)
Dan Ellis
1
2
(r
Z) = 1 W rn + W rn
N
N
N 1
rn
(W
N
n=0
+ WNrn )WNkn
k = r, k = N
0 otherwise
N
2
2013-09-23
r
36
X[0]
X[1]
X[2]
..
.
X[N
1
1
1
=
.
..
1]
1
WN1
WN2
..
.
(N 1)
1 WN
i.e.
Dan Ellis
kn
N
as a matrix multiply:
1
WN2
WN4
..
.
..
.
2(N 1)
WN
(N 1)
WN
2(N 1)
WN
..
.
(N
WN
1)2
x[N
X = DN x
2013-09-23
x[0]
x[1]
x[2]
..
.
37
1]
Matrix IDFT
If
X = DN x
1
then
x = DN X
i.e. inverse DFT is also just a matrix,
DN1
1
1
1
1
=
N
..
.
1
WN 1
WN 2
..
.
1 WN
(N 1)
1
WN 2
WN 4
..
.
WN
2(N 1)
=1/NDN*
Dan Ellis
2013-09-23
..
.
1)
(N 1)
WN
2(N
WN
..
.
WN
(N 1)2
38
Dan Ellis
39
x[n]e
X(e ) =
jn
continuous freq !
infinite x[n], -<n<
n=
N 1
X[k] = x[n]W
kn
N
DFT
n=0
X[k] = X(e ) = 2 k
N
Dan Ellis
k=1...
2013-09-23
X(ej!)
!
40
jn
1
j
kn
X(e ) = X[k]WN e
n=0 N k=0
N 1
j ( 2 k ) n
1
N
periodic
= X[k] e
sinc
N k=0
n=0
k
N 1
sin N 2 j ( N21) k
1
= X[k]
e
k
N k=0
sin 2
N 1
k = 2Nk
interpolation
Dan Ellis
N 1
2013-09-23
41
Periodic sinc jN
N 1
1e
j n
=
e
j
1e
n =0
jN k / 2
jN k / 2
e
e
e
= j k / 2 j k / 2
e
e
e j k / 2
k
( N 1)
j 2 k sin N 2
pure real
=e
k
pure phase
sin 2
= N when !k = 0; = (-)N when !k/2 =
= 0 when !k/2 = r/N, r = 1, 2, ...
other values in-between...
factor out
half the angle
jN k / 2
Dan Ellis
2013-09-23
42
Periodic sinc
sin Nx
sin x
sinNx/sinx
sinNx
0
-N
X[k] = X(ej2
(N = 8)
k/N)
X(ej 0) =
X[k]
1.5
DFT DTFT
= interpolation
by periodic
sinc
X[k]X(ej!)
Dan Ellis
sinx
sin N
N sin
X[3]
sin N
N sin
k/2
k/2
3/2
3/2
0.5
-0.5
-1
freq
0
k=1
= 2 /N
2013-09-23
k=3
= 6 /N
k=4
= 8 /N
43
[n]
IDFT of X[k] will give N point x
Dan Ellis
2013-09-23
44
DTFT
-A n < B
X(ej)
1
x
[n] =
N
=
sample
x[ ]WNk
k=0
0n<N
Dan Ellis
x[n
r=
x[n]
0n<N
N 1
x[ ]
x
[n] =
X[k]
IDFT
1
N
N 1
k(
WN
WN nk
=1 for n-l = rN, rI
= 0 otherwise
n)
k=0
45
If x[n] = { 8, 5, 4, 3, 2, 2, 1, 1} (8 point)
We form X[k] for k = 0, 1, 2, 3
by sampling X(ej!) at ! = 0, /2, , 3/2
x
[n] =
r=
Dan Ellis
8
+
2
5 4
+ +
2 2
3
+
1
2013-09-23
= {10
rN ]
x[n
(N = 4)
4}
46
x[n]
-1
x[n+N]
(r = -1)
-5 -4 -3 -2 -1
1 2 3 4 5 6 7 8
1 2 3 4 5
x[n]
1 2 3
Dan Ellis
2013-09-23
47
n0
N]
g[n n0 ]
g[N + n n0 ]
n n0
n < n0
0 n0 < N
Dan Ellis
2013-09-23
48
g[<n-2>5]
1 2 3 4
Dan Ellis
2013-09-23
49
5-pt sequence
made periodic
-7 -6 -5 -4 -3 -2 -1
1 2 3 4 5 6 7 8 9 10 11
x [ n
Time-reversed
periodic sequence
-7 -6 -5 -4 -3 -2 -1
1 2 3 4 5 6 7 8 9 10 11
Dan Ellis
2013-09-23
50
Duality
Duality:
if
then
Circular
time reversal
g[n] G [k ]
G [n] N g[ k
Dan Ellis
2013-09-23
51
(0 n < N)
i.e. y [n ] =
y
[n
+
rN
]
c
l
r=
Dan Ellis
2013-09-23
52
Circular convolution
g[m ]h[ n m N ]
G[k]H[k]
m=0
N h[n]
Written as g[n]
Dan Ellis
2013-09-23
53
4 pt sequences:
g[n]={1 2 0 1} h[n]={2 2 1 0}
N 1
g[m ]h[ n m N ]
1 2 3
m=0
h[<n - 0>4]
h[<n - 1>4]
h[<n - 2>4]
h[<n - 3>4]
Dan Ellis
1 2 3
1 2 3
1 2 3
1 2 3
0
1
2013-09-23
1 2 3
g[n] 4 h[n]={4 7 5 4}
1 2 3
Circular convolution
N 1
m=0 g[m ]h[ n m
Modulation
g[n] h[n]
Duality
Parseval
Dan Ellis
1
N
G[k]H[k]
m=0 G[m]H[ k m N ]
N 1
G [n] N g[ k
n=0 x[n]
N 1
1
N
k=0 X [k ]
2013-09-23
N 1
55
Dan Ellis
2013-09-23
56
Procedure (N = L + M - 1):
g[n]
IDFT{Y[k]} =
yL [n + rN ] = yL [n] (0 n < N)
r=
Dan Ellis
2013-09-23
57
Overlap-Add convolution
h[n]
i N n < (i + 1) N
otherwise
g[n]
0
g[n] =
g[n] =
i gi [n]
i
h[n]
gi [n]
Dan Ellis
2013-09-23
58
Overlap-Add convolution
g[n]
h[n]
n
g0[n]
g0[n] * h[n]
n
g1[n]
g2[n]
L
2L
N=
L+M-1
g1[n] * h[n]
n
g2[n] * h[n]
n
3L
h[n] * g[n]
Dan Ellis
2013-09-23
2L
3L
59
n
n