Skip to main content

Nyquist Theorem for Images


Nyquist Theorem for Images

The Nyquist theorem applies to images too — not just audio. In images, it is about sampling spatial detail, not time.

Simple Explanation

The Nyquist theorem states that to accurately represent an image without losing detail, the sampling rate must be at least twice the highest spatial frequency.

What is Spatial Frequency?

Spatial frequency means how quickly pixel values change across the image.

  • High spatial frequency = sharp edges, fine details
  • Low spatial frequency = smooth areas

Meaning in Image Terms

If the image has very fine details, you need more pixels to capture them correctly. If you don’t sample enough pixels, aliasing happens (weird patterns, jagged edges, moirรฉ).

Nyquist Rule for Images

If the highest detail frequency is f, then:

sampling rate ≥ 2f

In image terms:

pixels per unit distance ≥ 2 × (cycles per unit distance)

Real-World Meaning

  • Camera sensor: must have enough pixels (resolution) to capture the detail
  • Display: must have enough pixels to show it

What Happens if Nyquist is Violated?

You get aliasing, such as:

  • Jagged edges
  • Moirรฉ patterns
  • Staircase lines

How to Avoid Aliasing

  • Use an anti-aliasing filter (removes high-frequency detail before sampling)
  • Use higher resolution (more pixels = higher sampling rate)

Summary

Concept Image Meaning
Sampling Pixels in the image
Frequency Detail level / edge density
Nyquist limit Need at least 2 pixels per detail cycle
Violation Aliasing (jagged lines)

How to Calculate Spatial Frequency from Real Images

You can calculate spatial frequency from real images using two methods: a simple visual estimate or a precise Fourier Transform (FFT) approach.

Method 1: Estimate from Repeating Patterns (Simple)

If the image has repeating lines or stripes, you can measure the distance between repeats.

Example: If stripes repeat every 5 pixels, then:

frequency = 1 / period = 1 / 5 = 0.2 cycles/pixel

Steps:

  1. Open the image
  2. Zoom in to see repeating pattern clearly
  3. Measure distance between two repeating points (in pixels)

Method 2: Use FFT (Fast Fourier Transform)

FFT converts the image from space domain to frequency domain. It shows which frequencies exist and how strong they are.

Example Python code using OpenCV:


import cv2
import numpy as np
import matplotlib.pyplot as plt

# Load image as grayscale
img = cv2.imread('image.jpg', 0)

# Apply FFT
f = np.fft.fft2(img)
fshift = np.fft.fftshift(f)

# Magnitude spectrum
magnitude = 20 * np.log(np.abs(fshift))

plt.imshow(magnitude, cmap='gray')
plt.title('Frequency Domain')
plt.show()
        

In the FFT output: center = low frequency (smooth areas) bright spots far from center = high frequency details

Convert FFT Distance to Real Units

If you know:

  • Image pixel size (mm/pixel)
  • Image resolution

You can convert distance to frequency using:

f = d / (N × ฮ”x)

Where:

  • d = distance from center in FFT
  • N = image size in pixels
  • ฮ”x = mm per pixel

Example:
If image is 1000 pixels wide, pixel size = 0.01 mm/pixel, and d = 250:

f = 250 / (1000 × 0.01) = 25 cycles/mm

Summary

  • Simple method: measure repeating pattern distance → frequency = 1/period
  • Accurate method: use FFT → find highest frequency peak → convert to cycles/mm

Want help?

If you want, I can help you:

  • Run FFT on your image
  • Extract highest frequency automatically
  • Provide code for MATLAB / Python / OpenCV

MATLAB Example: Finding Spatial Frequency Using FFT

The following MATLAB code demonstrates how to generate a simple sinusoidal image, compute its Fourier Transform, and determine the highest spatial frequency present. Comments are written in plain language for clarity.


% Define the physical size of each pixel and the overall image size
pixelSize_mm = 0.01;    % millimeters per pixel
N = 64;                 % image will be N x N pixels

% Create coordinate grids for the image
[x, y] = meshgrid(1:N, 1:N);

% Generate a sinusoidal pattern with a known spatial frequency
freq = 2;               % spatial frequency in cycles/mm
img = 128 + 127 * sin(2*pi*freq*x*pixelSize_mm);

% Ensure image is in double precision for accurate calculations
img = double(img);

% If the image is RGB, convert to grayscale
if size(img,3) == 3
    img = rgb2gray(img);
end

% Compute the 2D Fast Fourier Transform of the image
F = fft2(img);
Fshift = fftshift(F);

% Compute the magnitude spectrum for visualization
mag = abs(Fshift);

% Determine the size of the image
[M, N] = size(img);

% Remove the center (DC) component for peak detection
centerRow = ceil(M/2);
centerCol = ceil(N/2);
mag(centerRow, centerCol) = 0;

% Locate the position of the highest frequency peak
[maxVal, idx] = max(mag(:));
[row, col] = ind2sub(size(mag), idx);

% Convert pixel distances to spatial frequency in cycles/mm
fx = (col - centerCol) / (N * pixelSize_mm);
fy = (row - centerRow) / (M * pixelSize_mm);
f_max = sqrt(fx^2 + fy^2);

% Display the highest spatial frequency
fprintf('Highest spatial frequency: %.2f cycles/mm\n', f_max);

% Visualize the frequency spectrum
figure;
imagesc(log(1 + mag));
colormap gray;
axis image;
colorbar;
title('Log Magnitude Spectrum');

% Visualize the original sinusoidal image
figure;
imagesc(img);
colormap gray;
axis image;
colorbar;
title('Input Sinusoidal Image');
  

This example shows how to simulate an image with a known spatial frequency, use FFT to analyze its frequency content, and visualize both the original image and its spectrum. This is useful for understanding how sampling rates affect image detail and for verifying the Nyquist theorem in practice.

Output 

 

 



Contact Us

Name

Email *

Message *

Popular Posts

UGC NET Electronic Science Previous Year Question Papers with Solutions

Download Papers and Solutions Exam Pattern Preparation Tips FAQs More Home / Engineering & Other Exams / UGC NET 2026 PYQ ๐Ÿ“Š Exam Highlights: Electronic Science (88) Feature Details Junior Research Fellowship (JRF) ₹37,000 + HRA per month Eligibility M.Sc/M.Tech in Electronics (55%) Validity of Certificate JRF (3 Years) | Lectureship (Lifetime) ๐Ÿ“ฅ Download UGC NET Electronics PDFs Complete collection of previous year question papers, answer keys and explanations for Subject Code 88. Start Downloading ๐Ÿ“‚ View All Question Papers June 2026 - Question Paper Download PDF June 202...

CMOS Logic Gates: Inverter, NAND, and NOR

CMOS Logic Gates: Inverter, NAND, and NOR Complementary metal–oxide–semiconductor (CMOS) technology forms the backbone of modern digital IC design. Patented by Frank Wanlass in 1963 ( US patent 3,356,858 ), CMOS enables low-power, high-speed, and noise-immune logic circuits. CMOS gates, including inverters, NAND, and NOR, are widely used in both large-scale and small-scale integrated circuits due to their efficiency and versatility. CMOS Inverter A CMOS inverter consists of a complementary pair of PMOS and NMOS transistors. The PMOS transistor connects to the supply voltage V DD , while the NMOS connects to ground. The input voltage V IN controls both gates, and the output voltage V OUT is taken from the connected drains. CMOS inverters are highly energy-efficient and produce minimal heat due to their comple...

Coherent vs. Non-Coherent Demodulation

  For demodulation In general: 1. Synchronous (coherent) demodulation Receiver generates a local carrier/oscillator . It combines/multiplies the received signal with that carrier. Then a filter extracts the message. Received signal ↓ × Local oscillator ↓ Low-pass filter ↓ Message So yes, carrier multiplication is a common implementation of synchronous demodulation . 2. Asynchronous (non-coherent) demodulation Receiver doesn't need a phase-synchronized local carrier . It uses properties of the received signal itself to recover the information. For ASK , an envelope detector is the classic example: ASK signal ↓ Diode + RC ↓ Envelope ↓ Comparator ↓ Data Modulation Synchronous demodulation Non-coherent/asynchronous demodulation ASK/OOK Local carrier + multiplier Envelope detector AM Product detector Envelope detector FSK Coherent correlator/mixer Frequency discriminator, filters, etc. PSK Local synchronized carrier + multiplier Differential/n...

Online Simulator for Frequency Modulatiuon and Demodulation

FM Modulation Simulator Frequency Modulation (FM) In Frequency Modulation, the frequency of the carrier signal varies in accordance with the message signal's amplitude. s FM (t) = A c cos(ฯ‰ c t + k f ∫m(t)dt) where ฯ‰ = 2ฯ€f & k f = Frequency Sensitivity Modulation index, ฮฒ = (k f * A m ) / f m Change the parameter values to see the effect. Message Freq (Hz) 1 Carrier Freq (Hz) Message Amplitude (Am) Kf (sensitivity): 50 Perform FM Demodulation ๐Ÿงช Experiment for Students: ...

OFDM Symbols and Subcarriers Explained

This article explains how OFDM (Orthogonal Frequency Division Multiplexing) symbols and subcarriers work. It covers modulation, mapping symbols to subcarriers, subcarrier frequency spacing, IFFT synthesis, cyclic prefix, and transmission. Step 1: Modulation First, modulate the input bitstream. For example, with 16-QAM , each group of 4 bits maps to one QAM symbol. Suppose we generate a sequence of QAM symbols: s0, s1, s2, s3, s4, s5, …, s63 Step 2: Mapping Symbols to Subcarriers Assume N sub = 8 subcarriers. Each OFDM symbol in the frequency domain contains 8 QAM symbols (one per subcarrier): Mapping (example) OFDM symbol 1 → s0, s1, s2, s3, s4, s5, s6, s7 OFDM symbol 2 → s8, s9, s10, s11, s12, s13, s14, s15 … OFDM sym...

(Filters) Free MATLAB alternative for signal analysis

Advanced Signal Filters Upload CSV (1st Col) or Audio (WAV, MP3, etc.) Generate Messy Signal (20Hz + 50Hz + 150Hz) No Operation FFT (Spectrum) Amplitude Modulation (AM) Double Sideband Supressed Carrier (DSBSC) Pulse Amplitude Modulation (PAM) Flat Top PAM Filters - LPF, HPF, BPF, Notch Principal Component Analysis (PCA) Cross Spectrum Filter Type: Signal Cleaner ...

Interactive Sallen-Key filter Simulation (2nd order LPF)

  Sallen-Key Filter Explained: Why It’s the Most Popular Second-Order Low-Pass Filter Sallen-Key Filter Explained: Why It’s the Most Popular Second-Order Low-Pass Filter (With Math) If you're learning analog electronics, active filters, or preparing for engineering interviews and exams, you've probably come across the Sallen-Key filter . But what exactly is it, and why do engineers prefer it over simply cascading RC low-pass filters? Live Interactive Simulator Adjust the component values to see the real-time frequency response (Bode Plot). R1 (kฮฉ): 10 R2 (kฮฉ): 10 C1 (nF): 10 C2 (nF): 10 ...

Online Simulator for ASK, FSK, and PSK Signal Generation

Interactive Digital Signal Processing (DSP) Tutorial and Simulator for ASK, FSK, and BPSK modulation techniques. Try our new Digital Signal Processing Simulator!   •   Interactive ASK, FSK, and BPSK tools updated for 2025. Start Now Digital Modulation Visualizer: ASK, FSK, & BPSK Simulator Learn and visualize binary modulation techniques (ASK, FSK, BPSK) in real-time with adjustable carrier and sampling parameters. Perfect for DSP students and engineers. ๐Ÿ“ก ASK Simulator ๐Ÿ“ถ FSK Simulator ๐ŸŽš️ BPSK Simulator ๐Ÿ“š More Topics ASK Modulator FSK Modulator BPSK Modulator Demodulation More Topics 1. ASK (Ampli...