Illusions / Hermann grid
Hermann grid illusion
Gray smudges at crossings of pure white.
Measured from the image
Sliders
Make your own Hermann grid image
How the effect works
A Hermann grid is a lattice of black squares on a white background. Gray smudges appear at the crossings between the squares. Look straight at one crossing and the smudge there tends to fade. The smudges stay visible at the crossings you are not looking at.
The pixels at every crossing are pure white. The build script reads their value from the image and reports the same number as the streets. No gray exists in the file. Your visual system makes the smudge. The gray comes from how your eyes compare each spot with the area around the spot. A crossing has white in four directions, and a street segment has white in two. That difference changes the comparison.
Wide streets next to the squares weaken the effect. The sweep table varies the street width and prints the street-to-square ratio for each row. Make the streets wider than the squares and the smudges become hard to find. Narrow streets give clearer smudges. Use the sliders on the make-your-own page to find the street width where the smudges stop showing up for you.
Measured at the default settings
Image size: 384 by 384 px. The build script read these values from the rendered pixels.
- Intersections
- x 0, y 0, size 14, x 74, y 0, size 14, x 148, y 0, size 14, x 222, y 0, size 14, x 296, y 0, size 14, x 370, y 0, size 14, x 0, y 74, size 14, x 74, y 74, size 14, x 148, y 74, size 14, x 222, y 74, size 14, ... (36 values)
- Intersection Pixel Value
- 255
- Street To Cell Ratio
- 0.23333333333333334
Where the effect weakens
The table sweeps White street width (px) and scores a geometric proxy from 0 to 1: 1 minus (street width / square size). The proxy comes from the image geometry. The proxy measures geometry and not perception. Your own eyes decide what you see. Rows below 0.5 are marked weak.
Weak range: 34 to 40 px. Proxy at the default setting: 0.767.
| street (px) | Proxy | Street To Cell Ratio | Crossing Pixel Value |
|---|---|---|---|
| 6 | 0.9 | 0.1 | 255 |
| 10 | 0.833 | 0.167 | 255 |
| 14 | 0.767 | 0.233 | 255 |
| 18 | 0.7 | 0.3 | 255 |
| 22 | 0.633 | 0.367 | 255 |
| 26 | 0.567 | 0.433 | 255 |
| 30 | 0.5 | 0.5 | 255 |
| 34 | 0.433 (weak) | 0.567 | 255 |
| 38 | 0.367 (weak) | 0.633 | 255 |
| 40 | 0.333 (weak) | 0.667 | 255 |
Try this
- Raise the street width slowly. Note the point where the smudges stop showing up for you.
- Raise the number of squares per side. Compare the smudge at the center with one near the edge.
- Shrink the squares while the streets stay the same. Watch the ratio change in the readout.
History
- Ludimar Hermann first described the grid illusion in 1870. Source
Only facts confirmed against a source appear here. Where sources disagree, this site leaves the detail out.
More illusions
Entertainment only. Not a vision or health test.





