The Gabor wavelet — named for Dennis Gabor (1900–1979), the Hungarian-British engineer who won the 1971 Nobel Prize for holography — is a sine or cosine wave multiplied by a Gaussian bell curve. The idea: instead of analysing a signal with infinitely long sine waves (the standard Fourier transform), you analyse it with wavelets that are localised in time, so you know not just what frequencies are present but when they happen.
The Gabor transform comes from Gabor's 1946 paper Theory of Communication, written while he was a research engineer at the British Thomson-Houston Company. He proposed representing any signal as a superposition of "logons" — discrete time-frequency atoms — each occupying a fixed area in the time-frequency plane. This area, exactly Δt·Δf ≥ 1/4π, is a manifestation of the Heisenberg uncertainty principle applied to information theory: you cannot know both the exact time and exact frequency of a signal simultaneously.
How It Works
A Gabor wavelet looks like this:
g(t) = exp(−t² / 2σ²) · cos(2πft + φ)
The Gaussian envelope (exp(−t²/2σ²)) ensures the wavelet smoothly tapers to zero at the edges — only a short segment of the signal matters. The carrier wave (cos or sin at frequency f) determines which frequency the wavelet is sensitive to. By sweeping f across a range of candidates and measuring the response at each, you produce a spectrogram: a map of energy across both time and frequency.
The three parameters:
- σ (sigma) — the width of the Gaussian. Narrow σ gives better time resolution but worse frequency resolution; wide σ gives the opposite. This is the Heisenberg trade-off in action.
- f — the centre frequency of the wavelet. The wavelet responds most strongly when the signal contains energy near this frequency.
- φ — the phase offset. A cosine wavelet (φ=0) responds to symmetric components; a sine wavelet (φ=π/2) responds to antisymmetric ones. Using both recovers the full complex response.
Why It Matters
The Gabor wavelet is the foundation of IrisCode, the biometric encoding used in iris recognition. John Daugman at Cambridge University showed that applying 2D Gabor wavelets to a normalised iris image produces a 256-byte binary code that is remarkably stable across a lifetime and highly discriminating between individuals. The IrisCode puzzle on this website takes you through the full pipeline.
Other applications include:
- Fingerprint enhancement — Gabor filters oriented along ridge flow improve ridge-valley contrast for matching.
- JPEG 2000 — the wavelet compression standard uses a different wavelet family (Cohen-Daubechies-Feauveau 9/7), but the principle of time-frequency localisation is identical.
- Seismic analysis — geophysicists use Gabor wavelets to identify subsurface reflectors from acoustic pulse echoes.
- Feature extraction in CNNs — the first layer of a convolutional neural network often learns filters that look remarkably like Gabor wavelets tuned to different orientations and scales.
- Speech processing — the mel-frequency cepstrum (MFCC) pipeline uses overlapping windowed FFTs, a discrete cousin of the Gabor approach.
Solving the Puzzle
The website presents you with a short signal segment and a set of candidate frequencies. You need to:
- Construct a Gabor wavelet for each candidate frequency.
- Convolve (or equivalently, compute the dot product) of each wavelet with the signal.
- Find the frequency that produces the largest magnitude response — that's the encoded peak.
- Extract the answer word from the frequency pattern.
This is exactly how a Gabor filter bank works in signal processing: slide a bank of narrowband filters across the spectrum and pick the one that lights up.
Real-World Limits
- Uncertainty bound: No Gabor wavelet can give better than Δt·Δf ≥ 1/4π. Trying to localise a sharp transient (small Δt) smears the frequency (large Δf), and vice versa.
- Computational cost: A full Gabor filter bank over N frequencies × M time steps is O(N·M·k) where k is the kernel width. For real-time iris recognition at 30 fps, Daugman's implementation uses dedicated hardware.
- Parametric sensitivity: Too narrow a Gaussian (small σ) and the filter misses low frequencies entirely. Too wide, and it blurs across time. Getting sigma right requires knowing something about the signal's time-frequency structure — a chicken-and-egg problem that Gabor himself noted.
- Alternative bases: The wavelet transform generalises the Gabor idea with a mother wavelet that can be scaled and shifted. Different mother wavelets (Haar, Daubechies, Morlet) trade off different properties. The Morlet wavelet is essentially a Gabor wavelet with a zero-mean correction.