Pixelated Photos Can Be Partially Reversed at Low Intensity
Slap a mosaic over a face or license plate and it's tempting to assume "now it's unrecognizable." But pixelation doesn't delete the original information — it's lossy compression that blurs it down to a lower resolution. The smaller (weaker) you set the block size, the more clues about the original shape survive. Let's look at why, starting with the algorithm the tool actually runs.
1. Pixelation is "downsampling," not "deletion"
This tool's pixelation code works in two stages: it shrinks the original image onto a small canvas, then draws that result back up to the original size. In the actual code, a numBlocks(dim, px) function computes the shrunken canvas's row and column count as Math.round(dim/px), and imageSmoothingEnabled = false scales it back up with no smoothing, keeping the blocky edges sharp. In other words, the larger the "block size (px)," the fewer cells the shrunken canvas has and the more information gets destroyed — the smaller it is, the more cells survive and the closer the result stays to the original resolution.
2. Block size vs. how much information survives
The key variable is how fine a grid the image was shrunk to. Take a 640×480 face photo: applying different pixel sizes changes the shrunken canvas's cell count — which is also the number of color samples that ultimately survive — like this.
| Pixel size (px) | Shrunken canvas size | Surviving blocks | Information density vs. original |
|---|---|---|---|
| 4px (weak pixelation) | 160×120 | 19,200 | High — outlines and shading are largely preserved |
| 30px (medium) | 21×16 | 336 | Low — only rough shapes can be guessed |
| 80px (strong pixelation) | 8×6 | 48 | Very low — individual features are essentially indistinguishable |
At 4px, the 19,200 surviving blocks amount to roughly 6.25% of the original 640×480 = 307,200-pixel image's color samples kept intact — enough that the human eye can already guess at the rough layout of facial features.
3. Why low intensity opens the door to reconstruction
From an image-processing standpoint, pixelation is a form of low-pass filter. When the block size is small, a good deal of the original's low-frequency information (overall brightness distribution, edge positions, color gradients) survives. Deep-learning super-resolution models work by taking exactly this low-frequency information as a clue and "filling in" plausible high-frequency detail on top of it. Multiple security research papers have reported reconstructing subjects' likenesses to a significant degree from low-intensity mosaics or low-resolution thumbnails using deep learning. Conversely, when the block size is large enough that little information survives to begin with (e.g., only 48 blocks), a reconstruction model simply doesn't have enough to work with, making a plausible guess much harder.
4. How does this compare to Gaussian blur — which is safer?
Image blur, which serves a similar purpose, softens edges instead, and at low intensity the underlying shape can likewise be partially inferred — similar to pixelation in that respect. However, strong Gaussian blur mixes pixels over a wider area (convolution), which tends to destroy information more thoroughly, and many assessments consider it more resistant to reconstruction at an equivalent perceived "strength." If your goal is to reliably obscure something, it's safer to combine a sufficiently large pixelation block size with strong blur, or to just cover the area with an opaque rectangle.
5. Practical recommendations
- Sensitive personal information (faces, license plates): Set the pixel size to 30px or larger. This tool supports up to 80px.
- Purely cosmetic or retro effects: A low intensity of around 4–12px gives a natural pixel-art look. Only use this range where there's no reconstruction risk.
- Double-check before publishing: It's good practice to zoom into the downloaded image yourself and visually verify that the shape isn't guessable before posting it. Also consider running it through EXIF removal to strip location and device metadata before you publish.
Frequently asked questions
Q. What's this tool's pixel size range?
A. The slider runs from 2px (weak) to 80px (strong), with a default of 12px. When masking sensitive information, we recommend going well above the default — 30px or higher.
Q. Have there been real cases of pixelated images being reconstructed?
A. Academic research has reported cases of reconstructing subjects closely resembling the original from low-intensity mosaic or low-resolution images using super-resolution deep-learning models. The lower the intensity (the smaller the blocks), the higher the reconstruction success rate tends to be.
Q. Is covering the area with a solid black rectangle safer than pixelating it?
A. Yes. An opaque solid-color rectangle replaces the original information entirely, so there's theoretically no reconstruction risk at all. If certainty is your top priority, this is the safest method.
Q. Is the image I process with this tool sent to a server?
A. No. The entire shrink-and-rescale rendering process runs inside the browser's Canvas API only — the original file is never sent anywhere.