Nyquist-Shannon Sampling Theorem

Sampling is the process of converting a continuous-time signal into a discrete-time signal by taking measurements (samples) of a continuous-time signal  at a regular sampling period of to create a discrete-time signal  , such that

This process is also outlined in the block diagram below, where a spike train is multiplied with the input to produce the sampled signal , which is then converted to a discrete-time signal, :

\usepackage{tikz}
\usetikzlibrary{arrows.meta, positioning}
 
\begin{document}
\begin{tikzpicture}[node distance=2cm, >=Stealth, thick]
 
% Nodes
\node (input1) at (0,0) {};
\node[draw, circle, minimum size=0.5cm, right=of input1] (adder) {$\times$};
\node[below=1.5cm of adder] (input2) {};
\node[draw, rectangle, minimum height=1.2cm, minimum width=1.8cm, right=of adder] (box) {Dirac-to\newline-Kronecker};
\node[right=of box] (output) {};
 
% Arrows
\draw[->] (input1.east) -- (adder.west) node[at start, left] {$x_{C}(t)$};    % Input from the left to adder
\draw[->] (input2.north) -- (adder.south) node[at start, below] {$z(t)$};  % Input from below to adder
\draw[->] (adder.east) -- (box.west) node[midway, above]{$x_{Z}(t)$};       % Adder output to box
\draw[->] (box.east) -- (output.west) node[right] {$x_{D}[n]$};      % Box output to the right
 
\end{tikzpicture}
\end{document}

Sampling theory is primarily governed by the Nyquist-Shannon Sampling Theorem, which states that a signal that is band-limited (i.e. bounded) to a frequency , such that , can be fully recovered from its sample if

where is the sampling frequency, and is called the Nyquist rate.

Note (Aliasing) ), frequency components overlap with one another and cause distortion known as aliasing. Aliasing makes it impossible to distinguish higher frequencies from lower ones, leading to an inaccurate representation of the original signal. The effects of aliasing can be mitigated by pre-processing the with a low pass (anti-aliasing) filter, as explained below.

If the condition is not met (

Intuition

Examples

The Carriage Wheel Effect

Have you ever seen the wheels move the opposite way in a car commercial? That is called the carriage wheel effect. Suppose a wheel can be modeled by ; intuitively, this makes sense, since as , moves periodically anti-clockwise. Then, using CTFT, . We sample at .

Suppose we choose the sampling frequency . Then, appears to be stationary. Intuitively, if is the frame rate (frames per second), and measures the spin of the wheels of the car, then each frame is recorded exactly at the same spot of the wheel. We can verify this by taking the CTFT of the impulse train, , and performing the modulation

x(t) \times z(t)&=\frac{1}{2\pi}(X * Z)(\omega) \\ &= \omega_{S}\int^{\infty}_{-\infty}\sum^{\infty}_{k=-\infty}\delta\left( \omega - k\omega_{S} \right)\delta(\omega-\omega_{0})d\omega \\ &= \omega_{S}\sum^{\infty}_{k=-\infty}\delta\left( \omega - k\omega_{S} - \omega_{0} \right) \\

by the sifting property of the Dirac delta. Then, can be graphically represented as:

\usepackage{tikz}
\usetikzlibrary{arrows.meta}
 
\begin{document}
\begin{tikzpicture}[scale=1.2, thick]
 
% Axes
\draw[->] (-4, 0) -- (6, 0) node[right] {$\omega$};
\draw[->] (0, -0.5) -- (0, 2.5) node[above] {$X_z(\omega)$};
\draw[-] (-0.125, 1.5) -- (0.125, 1.5) node[at start, left]{$\omega_S$};
 
% Lines for arrows
\draw[->] (1, 0) -- (1, 1.5) node[at start, below]{$\omega_0$};
\draw[->] (5, 0) -- (5, 1.5) node[at start, below]{$\omega_0+\omega_S$};
\draw[->] (-3, 0) -- (-3, 1.5) node[at start, below]{$\omega_0-\omega_S$};
 
\end{tikzpicture}
\end{document}

For , this means that only one of the impulses will be preserved after reconstructing the signal:

\usepackage{tikz}
\usetikzlibrary{arrows.meta}
 
\begin{document}
\begin{tikzpicture}[scale=1.2, thick]
 
% Axes
\draw[->] (-4, 0) -- (6, 0) node[right] {$\omega$};
\draw[->] (0, -0.5) -- (0, 2.5) node[above] {$X_z(\omega)$};
\draw[-] (-0.125, 1.5) -- (0.125, 1.5) node[at start, left]{$\omega_S$};
 
% Lines for arrows
\draw[->, red] (0, 0) -- (0, 1.5) node[at start, below]{$\omega_0 - \omega_{0}$};
\draw[->] (3, 0) -- (3, 1.5) node[at start, below]{$\omega_0$};
\draw[->] (-3, 0) -- (-3, 1.5) node[at start, below]{$-\omega_0$};
 
% Draw low pass
\draw[dashed] (1.5, 0) node[below]{$\frac{\omega_0}{2}$} -- (1.5, 2) -- (-1.5, 2) -- (-1.5, 0) node[below]{$-\frac{\omega_0}{2}$};
 
\end{tikzpicture}
\end{document}

Therefore, we perceive the wheels as stationary, as

For , we get the following graph:

\usepackage{tikz}
\usetikzlibrary{arrows.meta}
 
\begin{document}
\begin{tikzpicture}[scale=1.2, thick]
 
% Axes
\draw[->] (-4, 0) -- (6, 0) node[right] {$\omega$};
\draw[->] (0, -0.5) -- (0, 2.5) node[above] {$X_z(\omega)$};
\draw[-] (-0.125, 1.5) -- (0.125, 1.5) node[at start, left]{$\omega_S$};
 
% Lines for arrows
\draw[->] (2, 0) -- (2, 1.5) node[at start, below]{$\omega_{0}$};
\draw[->] (5, 0) -- (5, 1.5) node[at start, below]{$\frac{5 \omega_{0}}{2}$};
\draw[->, red] (-1, 0) -- (-1, 1.5) node[at start, below]{$-\frac{\omega_{0}}{2}$};
\draw[->] (-4, 0) -- (-4, 1.5) node[at start, below]{$-2\omega_{0}$};
 
% Draw low pass
\draw[dashed] (1.5, 0) node[below]{$\frac{3\omega_0}{4}$} -- (1.5, 2) -- (-1.5, 2) -- (-1.5, 0) node[below]{$-\frac{3\omega_0}{4}$};
 
\end{tikzpicture}
\end{document}

which makes appear to go clockwise. Therefore, the recording shows wheels spinning in the opposite direction of movement.

Finally, for , we get:

\usepackage{tikz}
\usetikzlibrary{arrows.meta}
 
\begin{document}
\begin{tikzpicture}[scale=1.2, thick]
 
% Axes
\draw[->] (-4, 0) -- (6, 0) node[right] {$\omega$};
\draw[->] (0, -0.5) -- (0, 2.5) node[above] {$X_z(\omega)$};
\draw[-] (-0.125, 1.5) -- (0.125, 1.5) node[at start, left]{$\omega_S$};
 
% Lines for arrows
\draw[->, red] (1.2, 0) -- (1.2, 1.5) node[at start, below]{$\omega_{0}$};
\draw[->] (4.2, 0) -- (4.2, 1.5) node[at start, below]{$\frac{7}{2}\omega_{0}$};
\draw[->] (-1.8, 0) -- (-1.8, 1.5) node[at start, above left]{$-\frac{3}{2}\omega_{0}$};
 
% Draw low pass
\draw[dashed] (1.5, 0) node[below]{$\frac{5}{4}\omega_0$} -- (1.5, 2) -- (-1.5, 2) -- (-1.5, 0) node[below]{$-\frac{5}{4}\omega_0$};
 
\end{tikzpicture}
\end{document}

These 3 cases show us that the camera correctly captures the spin of the wheels, only when