Lecture 5: Fourier Series and Discrete Fourier Transform Mark - - PowerPoint PPT Presentation

lecture 5 fourier series and discrete fourier transform
SMART_READER_LITE
LIVE PREVIEW

Lecture 5: Fourier Series and Discrete Fourier Transform Mark - - PowerPoint PPT Presentation

Review Orthogonality Fourier Series DFT Summary Lecture 5: Fourier Series and Discrete Fourier Transform Mark Hasegawa-Johnson ECE 401: Signal and Image Analysis, Fall 2020 Review Orthogonality Fourier Series DFT Summary Review:


slide-1
SLIDE 1

Review Orthogonality Fourier Series DFT Summary

Lecture 5: Fourier Series and Discrete Fourier Transform

Mark Hasegawa-Johnson ECE 401: Signal and Image Analysis, Fall 2020

slide-2
SLIDE 2

Review Orthogonality Fourier Series DFT Summary

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-3
SLIDE 3

Review Orthogonality Fourier Series DFT Summary

Outline

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-4
SLIDE 4

Review Orthogonality Fourier Series DFT Summary

Two-sided spectrum

The spectrum of x(t) is the set of frequencies, and their associated phasors, Spectrum (x(t)) = {(f−N, a−N), . . . , (f0, a0), . . . , (fN, aN)} such that x(t) =

N

  • k=−N

akej2πfkt

slide-5
SLIDE 5

Review Orthogonality Fourier Series DFT Summary

Fourier’s theorem

One reason the spectrum is useful is that any periodic signal can be written as a sum of cosines. Fourier’s theorem says that any x(t) that is periodic, i.e., x(t + T0) = x(t) can be written as x(t) =

  • k=−∞

Xkej2πkF0t which is a special case of the spectrum for periodic signals: fk = kF0, and ak = Xk, and F0 = 1 T0

slide-6
SLIDE 6

Review Orthogonality Fourier Series DFT Summary

Analysis and Synthesis

Fourier Synthesis is the process of generating the signal, x(t), given its spectrum. Last lecture, you learned how to do this, in general. Fourier Analysis is the process of finding the spectrum, Xk, given the signal x(t). I’ll tell you how to do that today.

slide-7
SLIDE 7

Review Orthogonality Fourier Series DFT Summary

Outline

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-8
SLIDE 8

Review Orthogonality Fourier Series DFT Summary

Orthogonality

Two functions f (t) and g(t) are said to be orthogonal, over some period of time T, if T f (t)g(t) = 0

slide-9
SLIDE 9

Review Orthogonality Fourier Series DFT Summary

Sine and Cosine are Orthogonal

For example, sin(2πt) and cos(2πt) are orthogonal over the period 0 ≤ t ≤ 1:

slide-10
SLIDE 10

Review Orthogonality Fourier Series DFT Summary

Sinusoids at Different Frequencies are Orthogonal

Similarly, sinusoids at different frequencies are orthogonal over any time segment that contains an integer number of periods:

slide-11
SLIDE 11

Review Orthogonality Fourier Series DFT Summary

How to use orthogonality

Suppose we have a signal that is known to be x(t) = a cos(2π3t) + b sin(2π3t) + c cos(2π4t) + d sin(2π4t) + . . . . . . but we don’t know a, b, c, d, etc. Let’s use orthogonality to figure out the value of b: 1 x(t) sin(2π3t)dt = a 1 cos(2π3t) sin(2π3t)dt + b 1 sin(2π3t) sin(2π3t)dt + c 1 cos(2π4t) sin(2π3t)dt + e 1 sin(2π4t) sin(2π3t)dt + . . .

slide-12
SLIDE 12

Review Orthogonality Fourier Series DFT Summary

How to use orthogonality

. . . which simplifies to 1 x(t) sin(2π3t)dt = 0 + b 1 sin2(2π3t)dt + 0 + 0 + . . . The average value of sin2(t) is 1/2, so 1 x(t) sin(2π3t)dt = b 2 If we don’t know the value of b, but we do know how to integrate

  • x(t) sin(2π3t)dt, then we can find the value of b from the

formula above.

slide-13
SLIDE 13

Review Orthogonality Fourier Series DFT Summary

How to use orthogonality

slide-14
SLIDE 14

Review Orthogonality Fourier Series DFT Summary

How to use Orthogonality: Fourier Series

We still have one problem. Integrating

  • x(t) cos(2π4t)dt is

hard—lots of ugly integration by parts and so on. There are two useful solutions, depending on the situation:

1 Fourier Series: Instead of cosine, use complex exponential:

  • x(t)e−j2πftdt

That integral is still hard, but it’s always easier than

  • x(t) cos(2π4t)dt. It can usually be solved with some

combination of integration by parts, variable substitution, etc.

2 Discrete Fourier Transform: Instead of integrating, write it

as a sum:

  • x[n]e−j2πfn/Fs

. . . and then write that as a line of python code, and solve it

  • n the computer by typing np.sum().
slide-15
SLIDE 15

Review Orthogonality Fourier Series DFT Summary

Outline

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-16
SLIDE 16

Review Orthogonality Fourier Series DFT Summary

Fourier’s Theorem

Remember Fourier’s theorem. He said that any periodic signal, with a period of T0 seconds, can be written x(t) =

  • k=−∞

Xkej2πkt/T0

slide-17
SLIDE 17

Review Orthogonality Fourier Series DFT Summary

Fourier’s Theorem and Orthogonality

Take Fourier’s theorem, and multiply both sides by e−j2πℓt/T0: x(t)e−2πℓt/T0 =

  • k=−∞

Xkej2π(k−ℓ)t/T0 Now integrate both sides of that equation, over any complete period: 1 T0 T0 x(t)e−2πℓt/T0dt =

  • k=−∞

Xk 1 T0 T0 ej2π(k−ℓ)t/T0dt

slide-18
SLIDE 18

Review Orthogonality Fourier Series DFT Summary

Fourier’s Theorem and Orthogonality

Now think really hard about what’s inside that integral sign: 1 T0 T0 ej2π(k−ℓ)t/T0dt = 1 T0 T0 cos 2π(k − ℓ)t T0

  • dt

+ j 1 T0 T0 sin 2π(k − ℓ)t T0

  • dt

If k = ℓ, then we’re integrating a cosine and a sine over k−ℓ periods. That integral is always zero. If k = ℓ, then we’re integrating 1 T0 T0 cos(0)dt + +j 1 T0 T0 sin(0)dt = 1

slide-19
SLIDE 19

Review Orthogonality Fourier Series DFT Summary

Fourier Series: Analysis

So, because of orthogonality: 1 T0 T0 x(t)e−2πℓt/T0dt =

  • k=−∞

Xk 1 T0 T0 ej2π(k−ℓ)t/T0dt = . . . + 0 + 0 + 0 + Xℓ + 0 + 0 + 0 + . . .

slide-20
SLIDE 20

Review Orthogonality Fourier Series DFT Summary

Fourier Series

Analysis (finding the spectrum, given the waveform): Xk = 1 T0 T0 x(t)e−j2πkt/T0dt Synthesis (finding the waveform, given the spectrum): x(t) =

  • k=−∞

Xkej2πkt/T0

slide-21
SLIDE 21

Review Orthogonality Fourier Series DFT Summary

Fourier series: Square wave example

slide-22
SLIDE 22

Review Orthogonality Fourier Series DFT Summary

Square wave: the X0 term

X0 = 1 T0 T0 x(t)ej2π0t/T0dt

slide-23
SLIDE 23

Review Orthogonality Fourier Series DFT Summary

Square wave: the X1 term

X1 = 1 T0 T0 x(t)ej2π1t/T0dt

slide-24
SLIDE 24

Review Orthogonality Fourier Series DFT Summary

Square wave: the X2 term

X2 = 1 T0 T0 x(t)ej2π2t/T0dt

slide-25
SLIDE 25

Review Orthogonality Fourier Series DFT Summary

Square wave: the X3 term

X3 = 1 T0 T0 x(t)ej2π3t/T0dt

slide-26
SLIDE 26

Review Orthogonality Fourier Series DFT Summary

Square wave: the X5 term

X5 = 1 T0 T0 x(t)ej2π5t/T0dt

slide-27
SLIDE 27

Review Orthogonality Fourier Series DFT Summary

Fourier Series

Analysis (finding the spectrum, given the waveform): Xk = 1 T0 T0 x(t)e−j2πkt/T0dt Synthesis (finding the waveform, given the spectrum): x(t) =

  • k=−∞

Xkej2πkt/T0

slide-28
SLIDE 28

Review Orthogonality Fourier Series DFT Summary

Outline

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-29
SLIDE 29

Review Orthogonality Fourier Series DFT Summary

Discrete-time Fourier Series

Suppose you have a signal x[n], sampled at a certain number of samples per second. Suppose x[n] is periodic with a period of N samples, i.e., x[n] = x[n + N] Then x[n] =

N−1

  • k=0

Xkej2πkn/N

slide-30
SLIDE 30

Review Orthogonality Fourier Series DFT Summary

Discrete Fourier Transform

Suppose you have a signal x[n], sampled at a certain number of samples per second. We’ll pretend that x[n] is periodic with a period of N samples (even if it’s not really), i.e., we’ll pretend that x[n] = x[n + N] We’ll define X[k] so that x[n] = 1 N

N−1

  • k=0

X[k]ej2πkn/N . . . in other words, the DFT is just a scaled-up Fourier series.

slide-31
SLIDE 31

Review Orthogonality Fourier Series DFT Summary

Fourier’s Theorem and Orthogonality

Take Fourier’s theorem, and multiply both sides by e−j2πℓn/N: x[n]e−2πℓn/N = 1 N

N−1

  • k=0

X[k]ej2π(k−ℓ)n/N Now sum both sides of that equation:

N−1

  • n=0

x[n]e−2πℓn/N = 1 N

N−1

  • k=0

X[k]

N−1

  • n=0

ej2π(k−ℓ)n/N

slide-32
SLIDE 32

Review Orthogonality Fourier Series DFT Summary

Fourier’s Theorem and Orthogonality

Now think really hard about what’s inside that summation:

N−1

  • n=0

ej2π(k−ℓ)n/Ndt =

N−1

  • n=0

cos 2π(k − ℓ)n N

  • + j

N−1

  • n=0

sin 2π(k − ℓ)n N

  • If k = ℓ, then we’re summing

a cosine and a sine over k −ℓ periods. That sum is always zero. If k = ℓ, then we’re summing

N−1

  • n=0

cos(0) + +j

N−1

  • n=0

sin(0) = N

slide-33
SLIDE 33

Review Orthogonality Fourier Series DFT Summary

DFT: Analysis

So, because of orthogonality:

N−1

  • n=0

x[n]e−2πℓn/N = 1 N

N−1

  • k=0

X[k]

N−1

  • n=0

ej2π(k−ℓ)n/N = 0 + 0 + . . . + 0 + 0 + X[ℓ] + 0 + 0 + . . . + 0 + 0

slide-34
SLIDE 34

Review Orthogonality Fourier Series DFT Summary

Discrete Fourier Transform

Analysis (finding the spectrum, given the waveform): X[k] =

N−1

  • n=0

x[n]e−j2πkn/N Synthesis (finding the waveform, given the spectrum): x[n] = 1 N

N−1

  • k=0

X[k]ej2πkn/N

slide-35
SLIDE 35

Review Orthogonality Fourier Series DFT Summary

Outline

1

Review: Spectrum

2

Orthogonality

3

Fourier Series

4

Discrete Fourier Tranform

5

Summary

slide-36
SLIDE 36

Review Orthogonality Fourier Series DFT Summary

Summary

Analysis (finding the spectrum, given the waveform): Xk = 1 T0 T0 x(t)e−j2πkt/T0dt Synthesis (finding the waveform, given the spectrum): x(t) =

  • k=−∞

Xkej2πkt/T0 DFT Analysis (finding the spectrum, given the waveform): X[k] =

N−1

  • n=0

x[n]e−j2πkn/N DFT Synthesis (finding the waveform, given the spectrum): x[n] = 1 N

N−1

  • k=0

X[k]ej2πkn/N

slide-37
SLIDE 37

Review Orthogonality Fourier Series DFT Summary

Summary

Things you should know, from today’s lecture: You don’t need to memorize the equations on the previous page, but, for example, given the synthesis equation, you should be able to apply the orthogonality principle to derive the corresponding analysis equation. You should know that every periodic signal x[n] has a spectrum X[k], and that you can use np.fft.fft to compute it. You should know that the DFT makes an implicit assumption that the signal is periodic with a period of N samples. If the signal isn’t really periodic, then you might get weird artifacts because of that assumption – minor at most time scales, but important for careful music analysis.