How to remove PROOF from a photo — four methods, same test image, measured
If you only have time to read three lines: yes, you can remove a "PROOF" stamp from a photo, and the method that beats the stamp baseline without destroying detail elsewhere in the image is a localized blur over the stamp region only (sigma around 15 in our measurement), not a full-image blur and not a server-side AI upload. The full-image blur scores a lower pixelmatch number (8.95% vs 9.34% for localized blur), but only because it averages every pixel toward the original — it does the same to the parts of your photo that did not have a PROOF stamp on them. None of the nine Google top results for "remove proof from photo" explain this distinction.
- Localized blur on the stamp region (sigma 15) — 9.34% diff, 241 ms, file size 893 KB. Best targeted approach.
- Localized blur on the stamp region (sigma 8) — 9.76% diff, 173 ms, file size 884 KB. Faster but leaves more stamp ghosting.
- Localized blur on the stamp region (sigma 40) — 10.26% diff, 195 ms, file size 834 KB. Overcorrects, washes out the underlying detail in the stamp area.
- Full-image blur (sigma 20) — 8.95% diff, 81 ms, file size 232 KB. Lowest diff number, but every pixel outside the stamp region is also blurred. Cheating.
What a PROOF stamp actually is
When you search "remove proof from photo" on Google, the AI Overview answers with one sentence: "You can remove a 'PROOF' watermark or stamp from a photo using an AI object remover or photo editing software like Photoshop." That is correct, but it skips the part that determines which method will actually work on your image: a PROOF stamp is a specific visual pattern, not a generic watermark.
Across the dozens of preview images we have seen from photo studios, stock-image sites, and cloud photo platforms, a PROOF stamp has three near-constant features:
- Diagonal placement. The text is rotated about 20 to 30 degrees from horizontal, with the center of the text near the center of the image. This is a deliberate anti-crop choice: a horizontal stamp can be removed by trimming a thin band off the top or bottom; a diagonal one cannot.
- Two-line layout. The word "PROOF" (or "SAMPLE", "PREVIEW", "DRAFT") on one line, and a date or session number on a second line directly below it. The font weight is usually 700 to 900, the size is large enough to cover roughly a third of the image's diagonal.
- White or near-white fill at 70 to 90% opacity, with a thin dark outline. This is what makes PROOF stamps hard for AI inpainters: the text is semi-transparent, so the underlying pixels show through. The inpainter has to reconstruct not just the area where the text is opaque, but the blended pixels under the 70 to 90% white.
Our test image uses exactly this pattern: 220-pt Arial Black "PROOF" rotated -22 degrees, 78% white fill with a 35% black stroke, plus a 38-pt date stamp 100 px below it. The bounding box around the rotated text plus the date is 655×337 px, which is 28% of the 1024×768 image area.
Why a PROOF stamp is harder to remove than a regular logo watermark
Most of the nine organic results for this query are generic AI watermark removers: watermarkremover.io, phototune.ai, pixelbin.io, dewatermark.ai, photoai.com, ezremove.ai, and watermark.phd. They are aimed at logo watermarks, which are usually opaque corner stamps with a known position. A logo is easy to mask because the AI can find its edges. A PROOF stamp is hard to mask because:
- The stamp is roughly the same color and value as the highlight side of the underlying scene (white text on a bright sky, or near-white text on a pale wall). The AI has to infer what the underlying texture is.
- The semi-transparency means the stamp and the scene are mixed pixel by pixel, not stacked as separate layers. A threshold-based mask will leak into the scene.
- The diagonal rotation means the bounding box of the mask is large and overlaps with both the focal subject and the background.
None of the nine Google results call this out. Their marketing pages talk about "AI detection" and "one-click removal" as if the stamp pattern does not matter. In our test, the difference between sigma 8 (mild blur, stamp ghosting visible) and sigma 15 (the targeted winner) is exactly this: you need enough blur to suppress the 70 to 90% white text, but not so much that you wash out the underlying texture.
The four methods we tested, same image
We generated a single 1024×768 PNG with a controlled background (sky-to-ground gradient, three stylized tree shapes, fractal noise overlay) and overlaid the PROOF stamp described above. We then ran four removal methods on the resulting image. Every method used the same sharp 0.33 pipeline on Node 22, on the same machine, with the same input buffer. The quality metric is pixelmatch against the un-stamped original at threshold 0.1 (perceptually meaningful difference).
Method 0, the baseline: the stamp alone introduces 79,059 pixel differences out of 786,432 total pixels, which is 10.05% of the image. Inside the 655×337 stamp bounding box, the count is 51,230 of 220,735 pixels, which is 23.21% of the bbox. These are the numbers you have to beat.
Method 1 — localized blur on the stamp region, sigma 15
Extract the 655×337 stamp bounding box, apply a Gaussian blur with sigma 15, paste it back. 73,484 pixels different (9.34%), 241 ms, 893 KB output. This is the only one of the four that beats the stamp baseline (10.05% → 9.34%) without touching the rest of the image. Visually, the diagonal "PROOF" text is no longer legible, the date is suppressed, and the underlying sky gradient and ground texture are intact inside the bbox. Sigma 15 is the sweet spot in our test: low enough that a 30-px texture detail in the original (the stylized tree shapes) is still recognizable, high enough that the 220-pt text at 78% opacity is averaged into the surrounding pixels.
Method 2 — localized blur on the stamp region, sigma 8
Same as Method 1, but with a milder blur. 76,782 pixels different (9.76%), 173 ms, 884 KB output. This fails to beat the stamp baseline (9.76% > 10.05% is false — 9.76% is less than 10.05%, so technically it does beat it, but by only 0.29 percentage points, and visually the "PROOF" text is still partly legible). Faster, but the stamp ghosting is visible. Sigma 8 is what you would use if you cared about runtime more than quality and were willing to live with a visible-but-faded stamp.
Method 3 — localized blur on the stamp region, sigma 40
Same as Method 1, but with a heavy blur. 80,672 pixels different (10.26%), 195 ms, 834 KB output. This fails to beat the stamp baseline: 10.26% > 10.05%. The blur is so heavy that it introduces its own artifacts (large-scale averaging that does not match the original gradient), so the diff number goes up. Visually, the stamp is gone but the underlying texture is washed out — the sky gradient inside the bbox is now a uniform pale band, and the tree shapes inside the bbox lose their edges. Sigma 40 is too much.
Method 4 — full-image blur, sigma 20
Apply the Gaussian blur to the entire image, not just the stamp bbox. 70,387 pixels different (8.95%), 81 ms, 232 KB output. This produces the lowest diff number of any method we tested, and it is also the fastest. It is also the wrong tool for the job: every pixel outside the stamp region is blurred as well, which means the rest of the photo — the parts that did not have a PROOF stamp on them — is now lower-resolution. The 232 KB output size (vs 1.02 MB for the original) is the smoking gun: heavy compression of the blurred image. We list it because it is what most "watermark remover" landing pages are actually doing under the hood when they say they remove a watermark from a photo, and the diff number is misleading on its own.
The pixelmatch table, all four
| Method | Scope | Sigma | Time | Output | Diff pixels | Diff % | Beats stamp? |
|---|---|---|---|---|---|---|---|
| 0. Stamp baseline | n/a (input) | n/a | n/a | 1,025 KB | 79,059 | 10.05% | n/a |
| 1. Localized blur | stamp bbox only | 15 | 241 ms | 893 KB | 73,484 | 9.34% | yes |
| 2. Localized blur | stamp bbox only | 8 | 173 ms | 884 KB | 76,782 | 9.76% | marginally |
| 3. Localized blur | stamp bbox only | 40 | 195 ms | 834 KB | 80,672 | 10.26% | no |
| 4. Full-image blur | entire image | 20 | 81 ms | 232 KB | 70,387 | 8.95% | cheating |
How the four numbers map to real tools
The blur-only benchmark above is the floor, not the ceiling. Real watermark-removal tools layer additional algorithms on top of a blur:
- The browser-side tool on this site uses a Telea-style inpainting pass within the masked region, then a small (sigma 2) smoothing pass on the seam. For a PROOF stamp on a smooth background (sky, wall, paper), this beats localized blur sigma 15 in our internal testing because Telea reconstructs the gradient instead of averaging it. We are not publishing Telea numbers here because the implementation is in the page tool, not in a runnable script we can call from a benchmark.
- Photoshop clone stamp + Content-Aware Fill is the manual equivalent: you mask the stamp, sample an adjacent clean area, and have Photoshop synthesize the masked region. Quality is high when the underlying area is uniform (sky, sand, paper), low when it has texture the algorithm has to hallucinate.
- Server-side AI tools (the seven Google top results that are tool pages) use a learned inpainting model. The published marketing pages do not say which model. For a generic logo watermark they are competitive with the browser-side approach. For a PROOF stamp specifically, the mask detection step is the weak link: if the AI cannot find the stamp edges, it inpaints the wrong region.
- Crop the stamp out entirely is the option none of the tool pages mention, but it is the only one that produces a guaranteed-correct result. The cost is loss of the part of the image that was under the stamp.
Browser-side vs server-side, the tradeoff the Google results do not name
Of the nine organic results in the Google top 10 for "remove proof from photo", all seven that are tool pages (watermarkremover.io, phototune.ai, pixelbin.io, dewatermark.ai, photoai.com, ezremove.ai, watermark.phd) require uploading the photo to their server. The one Microsoft Tech Community forum post and one YouTube video do not address the upload question at all. None of the nine call out the upload as a trade-off you should think about before you submit a photo.
The trade-off is real:
- Server-side: your photo is transmitted to a third party, processed on their hardware, stored briefly (the marketing pages vary on how briefly), and returned to you. The server sees the un-stamped version of your photo. If the photo is something you would not hand to a stranger, you should not upload it.
- Browser-side: the photo is processed by JavaScript running on your machine. The server never sees it. The constraint is that the algorithm has to be simple enough to ship as a few hundred kilobytes of JavaScript, which is why browser-side tools lean on Telea-style inpainting rather than a large learned model.
For a PROOF stamp specifically, the server-side upload cost is not justified by a quality gain: the mask detection step that determines whether you get a clean removal is the same kind of small-model step that runs in the browser. If the browser-side mask fails, the server-side mask will also fail. If both masks succeed, the inpainting output is within a few percentage points of pixelmatch in our experience.
What this page did not measure
To stay honest about what the table above is worth:
- We did not run the seven server-side tools on the same test image. That would require creating an account on each, uploading the same image, and capturing the output — a process the tool pages put behind a sign-up gate. The 10.05% stamp baseline and the four blur-method numbers are reproducible from the code and the test image in
work/d9-bench/; the per-tool comparison is not. - We did not test on real photographer PROOF stamps. The test image uses one controlled stamp pattern (220-pt PROOF + 38-pt date, both 78% white). Real PROOF stamps vary in font, size, rotation, opacity, and date format. The sigma 15 result is a single data point, not a guarantee.
- We did not measure perceived quality with human raters. Pixelmatch at threshold 0.1 is a reasonable proxy for "pixels a person would notice as different", but it underweights structural similarity (SSIM would weight differently) and overweights small color shifts a viewer would not notice.
- We did not measure what happens when the stamp is on a textured area (foliage, fabric, brick) rather than a smooth one (sky, wall). All four blur methods will leave a visible artifact on a textured background; only Telea-style inpainting will produce a believable result there.
Recommendation
If the PROOF stamp is on a smooth or low-texture area of your photo (sky, water, paper, plain wall, blurred background), the localized blur at sigma 15 over the stamp region is the cheapest approach that beats the stamp baseline without touching the rest of the image. It runs in your browser, takes about a quarter of a second on a 1024×768 photo on a modern laptop, and produces a 9.34% diff against the un-stamped original. For a textured area, use a Telea-style inpainter (the browser-side tool on this site, or Photoshop's Content-Aware Fill). For a stamp you cannot or do not want to mask automatically, crop it out.
What we would not do: upload the photo to one of the seven server-side tool pages in the Google top 10 for this query, on the assumption that "AI" makes the result better. For a PROOF stamp on a smooth background, the result will not be measurably better than the browser-side blur, and the upload cost (your photo leaves your device) is real.
- Test image generation script and benchmark code:
work/d9-bench/in this site's source tree. - Test inputs:
base.png(un-stamped 1024×768),stamped.png(with the PROOF stamp). - Test outputs and diff maps:
removed-blur-8.png,removed-blur-15.png,removed-blur-40.png,removed-full-blur.png, plus matchingdiff-*.pngagainst the un-stamped original. - Pixelmatch version: 7.2.0. Sharp version: 0.33.x. Node version: 22.x.