ELEC 221 Lecture 17
The sampling theorem
Tuesday 11 March 2025
1 / 32
Motivation
From Tutorial assignment 3:
2 / 32
Motivation
Image credit: https://what-when-how.com/introduction-to-video-and-image-processing/
image-acquisition-introduction-to-video-and-image-processing-part-2/; not active anymore
3 / 32
Motivation
https://youtu.be/B8EMI3_0TO0?t=9
History of frame rate in film (watch it!):
https://www.youtube.com/watch?v=mjYjFEp9Yx0
Image credit: https://www.mediacollege.com/video/frame-rate/img/frame-rates.jpg 4 / 32
Today
Core question: under what conditions can we recover a continuous
time signal using only information from its samples?
Learning outcomes:
state the sampling theorem
define the Nyquist sampling rate and determine if a sampling
rate is su!cient to reconstruct a signal from its samples
describe the phenomenon of aliasing
5 / 32
Impulse train sampling
Sifting property:
x(t)ω(t → t0 ) = x(t0 )ω(t → t0 )
What if we have more than one?
→
!
p(t) = ω(t → nT )
n=↑→
where εs = 2ϑ/T
6 / 32
Impulse train sampling
What does the following signal look like?
xp (t) = x(t)p(t)
7 / 32
Impulse train sampling
The combined signal in the time domain is
→
!
xp (t) = x(nT )ω(t → nT )
n=↑→
What happens in the frequency domain?
" →
1
xp (t) = x(t)p(t) ↑ Xp (jε) = X (jϖ)P(j(ε → ϖ))dϖ
2ϑ ↑→
But what is P(jε)? We haven’t evaluated this yet...
8 / 32
Impulse train sampling
We have a periodic impulse train. Recall what Fourier transforms
of periodic signals looked like:
F
X (jε) = 2ϑω(ε → ε0 ) ↓
↔ x(t) = e jω0 t
→
! →
!
F
X (jε) = 2ϑak ω(ε → kε0 ) ↓
↔ x(t) = ak e jω0 t
k=↑→ k=↑→
9 / 32
Impulse train sampling
We need to find the Fourier series coe!cients of the periodic
impulse train.
→
!
p(t) = ω(t → nT )
n=↑→
" T /2
1
ak = p(t)e ↑jkωs t dt
T ↑T /2
" T /2
1
= ω(t)e ↑jkωs t dt
T ↑T /2
1
=
T
10 / 32
Impulse train sampling
→
!
P(jε) = 2ϑak ω(ε → kεs )
k=↑→
!→
2ϑ
= ω(ε → kεs )
T
k=↑→
11 / 32
Impulse train sampling
" →
1
Xp (jε) = X (jϖ)P(j(ε → ϖ))dϖ
2ϑ ↑→
" → # →
$
1 2ϑ !
= X (jϖ) ω(ε → kεs → ϖ) dϖ
2ϑ ↑→ T
k=↑→
→
!
1
= X (j(ε → kεs ))
T
k=↑→ 12 / 32
Impulse train sampling
13 / 32
Impulse train sampling
Suppose we have sampled...
How do we recover our original signal from this spectrum?
Image credit: Oppenheim 7.1
14 / 32
The sampling theorem
“Let x(t) be a band-limited signal with X (jε) = 0 for |ε| > εM .
Then x(t) is uniquely determined by its samples x(nT ),
n = 0, ±1, ±2, . . ., if
2ϑ
εs > 2εM , εs =
T
Given these samples, we can reconstruct x(t) by generating a
periodic impulse train in which successive impulses have
amplitudes that are successive sample values. This impulse train is
then processed through an ideal lowpass filter with gain T and
cuto” frequency greater than εM and less than εs → εM . The
resulting output signal will exactly equal x(t).”
15 / 32
The sampling theorem
Let’s show this graphically:
16 / 32
The sampling theorem
Image credit: Oppenheim 7.1
17 / 32
The sampling theorem
18 / 32
The Nyquist rate
The sampling frequency is key:
2εM is referred to as the Nyquist rate
εM is referred to as the Nyquist frequency
Exercise: suppose we perform impulse-train sampling with period
T = 10↑4 . If a signal x(t) has X (jε) = 0 for |ε| > 15000ϑ, can
we reconstruct it exactly from the samples?
εs > 30000ϑ
↑4
T = 10 ↔ εs ↗ 62800 < 30000ϑ
19 / 32
Interpolation
In reality we cannot generate a perfect, ideal impulse train. But,
we can still interpolate.
Image credit: Oppenheim Chapter 7
20 / 32
Interpolation
In reality we cannot generate a perfect, ideal impulse train. But,
we can still interpolate.
21 / 32
Aliasing
What happens when you don’t sample at a high enough rate?
Image credit: Oppenheim 7.1 22 / 32
Aliasing
Image credit: Oppenheim 7.3
23 / 32
Aliasing
Image credit: Oppenheim 7.3
24 / 32
Aliasing
Image credit: Oppenheim 7.3
25 / 32
Aliasing
Image credit: Oppenheim 7.3
26 / 32
Simulation
https://visualize-it.github.io/stroboscopic_effect/
simulation.html
Two aspects to consider here:
Why does the interpreted frequency decrease as the true
frequency increases?
Why does it it look like it goes backwards?
We can understand both by looking at the spectra.
27 / 32
Frequency misattribution
28 / 32
Backwards-ness
29 / 32
Backwards-ness
30 / 32
Real-world examples
Fun on your own: read up about Moiré patterns, and various
anti-aliasing techniques that are used in music/images/games!
Image credit: https:
//textureingraphics.wordpress.com/what-is-texture-mapping/anti-aliasing-problem-and-mipmapping/
31 / 32
For next time
Content:
DT processing of CT signals
Sampling in discrete time
Decimation/interpolation
Recommended reading:
From this class: Oppenheim 7.0-7.3
Suggested problems: 7.1-7.6, 7.21, 7.25
For next class: Oppenheim 7.4-7.6
32 / 32