This is a: Web AR laboratory for the development and real-time testing of anti-biometric facial recognition camouflage (also known as, Computer Vision Dazzle).
ghòstati is an experimental platform and diagnostic tool designed to counter facial recognition algorithms. By applying specific makeup patterns (inspired by the CV Dazzle concept), users can explore how computer vision models interpret facial landmarks and attempt to anonymize their digital footprint in real time.
The project features a fully modular, plugin-based architecture, allowing any developer to write custom AR makeup scripts ("Ghostyles") and test their efficiacy against recognition models directly in the browser via their webcam.
- Live Face Tracking: Real-time facial landmark detection directly in the browser utilizing
face-api.js. - Modular Plugin System (Ghostyles): Load custom AR makeup effects dynamically. Plugins can be hosted locally or loaded via a remote URL. Included effects:
- Graphic Liner, Smokey Eyes, Blush Lift, Lip Tint, Soft Contour, Stage Mask, Splash, etc.
- Diagnostic Mode ("Scansione Trucco"): Test the effectiveness of your AR camouflage. The tool evaluates makeup opacity, captures the altered face, and computes matching likelihood against saved profiles to determine if the face recognition system is successfully spoofed.
- Save & Compare: Save an initial baseline face and compare live webcam feeds to it to check if the face matching algorithm still recognizes you after applying the camouflage.
- Privacy-First: All processing is done locally on the client interface without uploading biometric data to remote servers.
Since it's a static web application, there is no build step required.
- Clone the repository:
git clone https://github.com/vecna/ghostati.git cd ghostati - Serve the directory with a local HTTP server:
npx http-server . # or python3 -m http.server 8000
- Open a modern browser, ensure to have a webcam, and navigate to
http://localhost:8000/ghostati.html.
This project uses JSDoc to generate documentation for the source code.
To generate the documentation, run the following command:
npm run docsThis will parse the JSDoc comments in the scripts/ directory and generate a static HTML website in the docs/ folder. You can open docs/index.html in your browser to view the documentation.
You can create your own modular AR makeup effects called Ghostyles. A "Ghostyle" is a simple JavaScript module that exports a draw function hooking into the face tracking engine.
To develop a new Ghostyle:
- Copy the
./ghostyles/00-template.js. - Implement your custom canvas drawing logic based on the provided facial landmarks.
- Test it live by editing the
ghostylist.jsonfile - Open a PR to get it distributed - this can't get any easy at the moment.
See the ghostati-docs.html page for more advanced documentation on Ghostyle development.
Presented as part of the NINA Festival, this tool aims to raise awareness regarding biometric surveillance and facial recognition technologies.
For the Italian version, please see README.it.md.
Last commit: 8296992 – added the UX content for ghostyles future developer
8296992added the UX content for ghostyles future developer261c4f5unified 2D and 3D ghostyle plugin0787760thumbnail added in a list of small pictures per ID.4f47df3infomodal added, but I'm not fully happy yet5404b34removed some dead code
