[KongchangAI]
· 2 min read· 1,010 words

Photo Scrubber: A Local Face Blurring and Metadata Removal Tool Explained

Photo Scrubber: A Local Face Blurring and Metadata Removal Tool Explained

Photo Scrubber blurs faces and removes EXIF metadata entirely in your browser — your photos never leave your device.

Built by Simon Willison to protect strangers' privacy in shared photos, Photo Scrubber is a lightweight browser-based tool powered by Google MediaPipe, WebAssembly, and the BlazeFace model. It automatically detects and blurs faces while stripping GPS-laden EXIF metadata — all locally, with no uploads. Assembled quickly with AI coding assistance, it exemplifies how LLMs are lowering the barrier for indie development and shows how AI can be used to protect privacy rather than compromise it.

A Tool Born from Privacy Concerns

After photographing a group of protesters, developer Simon Willison found himself with a concern: he didn't want to share photos online that contained recognizable faces of strangers. That respect for others' privacy gave rise to Photo Scrubber — an experimental tool that automatically detects and blurs faces in photos.

This motivation resonates broadly today. In the age of social media, casually snapping and sharing photos has become second nature — yet those photos often contain bystanders who never consented to being photographed. For sensitive settings like news scenes and public events, the question of how to share information while protecting people's identities is becoming an increasingly important ethical and technical issue. Photo Scrubber attempts to address this need in a lightweight, ready-to-use way.

How It Works: Local Face Detection in the Browser

The most noteworthy aspect of Photo Scrubber is that it runs entirely locally — all processing happens in the user's browser, and photos never need to be uploaded to any server. This fundamentally avoids the paradox of a privacy tool that itself leaks the very privacy it's meant to protect.

On the technical side, the tool is built on Google's MediaPipe C++ library, compiled to WebAssembly to run in the browser. Face detection relies on the @mediapipe/tasks-vision npm package, paired with the BlazeFace face detection model.

  • MediaPipe: Google's cross-platform machine learning framework, widely used for real-time perception tasks involving vision, audio, and more.
  • WebAssembly: Enables the original C++ library to execute in the browser at near-native performance.
  • BlazeFace: A lightweight face detection model optimized for mobile and real-time scenarios — fast and resource-efficient.

The core value of this combination: no backend, no installation required. Just open the webpage and face blurring is done, balancing both performance and privacy.

What is WebAssembly? WebAssembly (Wasm) is a binary instruction format standardized by the W3C as a web standard. It allows developers to compile code written in system-level languages like C, C++, and Rust into bytecode that runs in the browser at near-native speeds — far outperforming traditional JavaScript on compute-intensive tasks. MediaPipe itself is written in C++ and highly optimized for performance; rewriting it in JavaScript would sacrifice significant accuracy and efficiency. By compiling to Wasm, developers can port this mature inference engine to the browser environment with minimal loss. This is also one of the mainstream approaches for running machine learning models in the browser today — frameworks like TensorFlow.js similarly rely on a Wasm backend to accelerate inference. For end users, Wasm is completely transparent: they simply open a webpage and gain computational capabilities that once required locally installed software.

Two Features in One: Face Blurring + Metadata Removal

Beyond blurring faces, the "metadata removal" in the tool's name is equally important. Digital photos typically carry EXIF metadata, which can include the time of capture, device model, and even precise GPS coordinates. If this information travels with the photo, it can expose the movements of the photographer or the subjects.

For sensitive situations like protest scenes, stripping location data and other metadata is just as critical as blurring faces. Photo Scrubber integrates both privacy protection features into a single, relatively complete "pre-publish scrubbing" workflow.

What is EXIF data? EXIF (Exchangeable Image File Format) is a standardized metadata format embedded in image files like JPEG and TIFF, automatically written by cameras or smartphones at the moment of capture. Common fields include the timestamp, camera brand and model, aperture and shutter settings, and — when location permissions are enabled — GPS latitude and longitude coordinates, sometimes accurate to within a few meters. This means an ordinary street photo can simultaneously record when, where, and with what device it was taken. In politically sensitive contexts like protests or activism, leaked location data can put photographers at risk of being tracked. Most social platforms (such as Twitter/X and Instagram) automatically strip EXIF on upload, but when original images are sent directly via messaging apps or shared as files, metadata typically travels with them untouched — which is exactly where a manual metadata removal tool earns its value.

A Window into AI-Assisted Development

The process of building this tool is itself noteworthy. According to Simon Willison, it was rapidly assembled as an experimental project with the help of an AI model (which he referred to in his description as GPT-6 Astra).

This reflects a trend worth paying attention to: with the coding assistance of large language models, developers can turn a concrete idea into a working prototype in a very short time. The entire pipeline — from conceiving the idea to calling MediaPipe, compiling WebAssembly, and integrating the detection model — has been dramatically compressed. For indie developers and weekend projects, this kind of efficiency gain is changing how tools come to life.

It's worth noting that the author himself positions it as an "experimental tool," meaning it's more of a proof of concept, with room for improvement in detection accuracy, edge case handling, and other areas.

Who Is This Tool For?

Photo Scrubber has a fairly clear target audience:

  • Journalists, bloggers, and event attendees who need to photograph and share images in public settings;
  • Everyday users who care about privacy and don't want to expose strangers' faces online;
  • Tech enthusiasts who prefer local, no-upload privacy tools.

As facial recognition technology becomes increasingly widespread and public imagery is collected at scale, tools that protect privacy in this "reverse" direction carry real-world significance. They remind us that AI can be used not only to identify and track, but also to obscure and protect.

Summary

Photo Scrubber is a small, focused tool: it combines MediaPipe, WebAssembly, and BlazeFace to perform face blurring and metadata removal entirely in the browser, without ever uploading your photos. It addresses the privacy ethics of photo sharing while demonstrating how AI-assisted development makes "idea to tool" more accessible than ever. For users interested in privacy protection and lightweight open-source tools, this is a worthwhile case study worth exploring.

#Photo Scrubber#face blurring tool#EXIF metadata removal#MediaPipe WebAssembly#local privacy tool#BlazeFace#browser-based image privacy
Share:

Related articles