mirror of
https://github.com/wiltodelta/remove-ai-watermarks.git
synced 2026-10-14 21:40:47 +02:00
Extend the development-only benchmark family from images to audio and video, and close four research directions from the watermark-landscape map with local, revision-pinned evidence. Benchmark schema: media_type audio and video rows, audioseal and videoseal adapters with media-checked adapter binding, sample-domain audio fidelity (SNR with unbounded_identical), frame-domain video fidelity (mean PSNR, changed-frame fraction), and per-frame temporal evidence in videoseal detection records. The report accepts all three media types and carries SNR columns. Audio: shared pinned AudioSeal oracle, synthetic and system-voice speech cohorts with matched negatives, codec, noise, removed, and forged arms, and the provenance experiment proving visual-only video cleaning leaves the audio bitstream and watermark verdict invariant. Video: TorchScript-only VideoSeal oracle (the pip package is unusable on macOS arm64 and its loader resolves paths relative to cwd), video cohort with crf/scale/fps attacks and four-state arms, temporal evaluation measuring the crf decay curve, the frame-aggregation matrix (computed locally after finding the TorchScript build ignores the aggregation argument), and real provider clips as carriers. Forgery: double-embedding study showing the last writer wins completely under both oracles, scoped remover-trace probe, and the forged/ removed cohort arms encoding each scheme's correct expected verdict (presence rule for audioseal, message rule for videoseal). C2PA resolution: measured the five vendors' resolver contracts and the C2PA 2.2 18.10.5 privacy gradient; product decision recorded that this tool never resolves over the network. A registry guard pins the published resolution-API set. Gate: ruff and pyright src/ clean, 2114 passed / 3 skipped; maintain.sh stops only on the known unfixed lightning 2.6.5 CVEs, pre-existing.
4.3 KiB
4.3 KiB
Documentation
This documentation is split by purpose. Start with the user guides if you want to run the tool. Use the maintainer references only when changing the code.
User guides
| Page | Use it when |
|---|---|
| Installation | You need the CLI, an optional model backend, or a development environment. |
| CLI guide | You want a command for an image, video metadata or visible marks, a directory, or a specific watermark type. |
| Python API | You want to call the package from Python. |
| Supported signals | You need to know which visible marks, metadata formats, and invisible signals are covered. |
| Known limitations | You need the quality, device, format, or verification boundaries. |
| Photo pixel classification | You want classify / classify_pixels: AI versus camera, optional provider. |
| Photo classifier training | You need the retrain pack, public sources, and what is not published. |
| Scope, safety, and legal notes | You need the intended use and legal context. |
Maintainer references
| Page | Purpose |
|---|---|
| Module internals | Current architecture, invariants, and regression guards by module. |
| Development | Environment setup, dependency recovery, CI behavior, and fixture policy. |
| Watermark benchmark kernel | Reproducible local detection, removal-observation, and fidelity measurements. |
| Code provenance | Required notices for licensed derivative work. |
| Verification plan | Verification methods, completed measurements, and remaining validation gaps. |
| Release and distribution | PyPI, Homebrew, Hugging Face Space, photo-classify Hub model, ComfyUI Registry, and the release workflow. |
| Agent skill | Install and maintain the published Agent Skill and Claude plugin. |
| Watermarking landscape | Vendor signals and detection approaches. |
| SynthID technical reference | Mechanism, provenance, robustness, regeneration. |
Research archive
These pages record experiments and the evidence behind past decisions. They are not command references and may describe prototypes that were later removed. The current behavior is defined by the code, tests, README, and user guides.
- ControlNet removal research
- Qwen improvement research
- Doubao reverse-alpha research
- AI-generated image classifiers (photo AI-versus-camera freeze consumed by
classify_pixels, notidentify) - Photo classifier Hugging Face card (Hub publication text of the 2026-08-31 freeze)
- SynthID source classifiers (metadata-free OpenAI/Gemini source finding and provider-lineage experiments)
- SynthID local detector research
- SynthID mark removal research
- SynthID identity research
- SynthID identity follow-up
- Video SynthID quality research
- OpenAI SynthID oracle ladders (routing hub)
- SynthID detector and removal plan (chronological mixed archive)
- Text protection research
- Audio provenance experiment (local AudioSeal matched-oracle study of video audio tracks across visual cleaning)
- VideoSeal temporal evaluation (per-frame scores, aggregation matrix, and crf decay on synthetic and real clips)
- Watermark forgery study (four-state model and double-embedding: the last writer wins under both oracles)
- C2PA resolution research (measured resolver contracts, the privacy gradient, and the decision to never resolve over the network)
- Chroma1 engine research