Drag & drop images
or click to browse — JPEG & PNG supported
FAQ
How does the face detection work?
Pixl.pet uses YOLOv10n-face, a compact ONNX neural network, to detect faces in each image. The model is scaled to 640×640 pixels with letterbox padding and returns bounding boxes with confidence scores. Non-maximum suppression filters overlapping detections.
Everything runs in your browser via ONNX Runtime Web (WebGPU or WASM fallback) — no data ever leaves your device.
What is "person grouping"?
After detection, a second AI model (InsightFace w600k_r50) creates a 512-dimensional numeric fingerprint (embedding) for each detected face. Faces whose cosine similarity exceeds 0.45 are merged into the same person group.
This lets you select and blur one specific individual across a batch of images, while leaving everyone else untouched.
Can I blur only specific people?
Yes. After detection you see a grid of person groups. Click on the people you want to anonymize — only their faces are blurred when you hit "Blur Selected". Unselected groups remain untouched.
What is the difference between Blur and Pixelate?
Blur applies a Gaussian blur (implemented in Rust/WebAssembly) that smooths facial features. You can control the strength from light softening to heavy obscuring.
Pixelate replaces the face region with large coloured blocks — the classic "censoring" look. The block size scales with the blur strength slider.
Does the AI model download every time?
No. The detection model (~6 MB) and the recognition model (~250 MB) are cached by your browser after the first visit. Subsequent uses skip the download entirely and run immediately.
What image formats are supported?
Input: JPEG and PNG. You can drag-and-drop or select multiple files at once for batch processing. Each blurred result is saved in its original format and you can download everything as a single ZIP archive.
Is my face data ever sent to a server?
Never. All inference, embedding extraction and blurring run locally in your browser using Web Workers and WebAssembly. No image pixels, bounding boxes or face embeddings ever leave your device.