FOVI Retinal Transform
Real-time WebGL implementation of cortical magnification from Blauch, Alvarez & Konkle (Harvard, 2026). Move your mouse to shift gaze. Drag an image onto the canvas.
Drop an image here, or choose a web page below
Sampling Mode: What This Demo Does (and Doesn't Do)
FOVI the paper and this demo use the same cortical magnification equation, but apply it differently.
FOVI (Paper)
Samples the image at foveated sensor locations, dense near fixation and sparse
in the periphery, then reformats them into a uniformly dense, V1-like sensor manifold.
A DNN processes the manifold with kNN-convolution.
Spatial rearrangement · For machine vision
This Demo
Keeps every pixel at its original screen position. Each pixel samples the source at
a higher MIP level (blurrier) based on eccentricity via
textureLod().
It uses the same magnification function with no spatial rearrangement, as a visualization of FOVI's resolution function.
Blur in place · Visualization only
Scrutinizer
Also renders in place, and uses Difference-of-Gaussians band decomposition
to filter spatial frequencies selectively. It adds saliency gating in its LGN stage, crowding
distortion in its V1 stage, and Oklab desaturation. Magnification is one stage of several.
Frequency-selective · Top-down perceptual model
The sampling grid overlay (toggle above) shows FOVI's isotropic foveated sampling pattern. Dot density tracks cortical magnification. This demo computes blur at every screen pixel, including those between sample points. See the system paper for why CMF alone produces periphery that's too sharp, and Color Search for a proposed evaluation of peripheral color decay.
Citation: Blauch, N. M., Alvarez, G. A., & Konkle, T. (2026).
FOVI: A biologically-inspired foveated interface for deep vision models.
arXiv:2602.03766.
Source: github.com/nblauch/fovi (PyTorch) · Vision Science Primer · WebGL implementation by Andy Edmonds
Preprint posted to arXiv Feb 3, 2026. This real-time implementation built Feb 28, 2026 with Claude Code.
Source: github.com/nblauch/fovi (PyTorch) · Vision Science Primer · WebGL implementation by Andy Edmonds
Preprint posted to arXiv Feb 3, 2026. This real-time implementation built Feb 28, 2026 with Claude Code.