AI-Powered Watermark Removal Tool using Florence-2 and LaMA Models
🇬🇧 English | 🇫🇷 Français | 🇨🇳 中文 | 🇯🇵 日本語 | 🇧🇷 Português | 🧠 Brainrot
WatermarkRemover-AI is a cutting-edge application that leverages AI models for precise watermark detection and seamless removal. Perfect for removing watermarks from AI-generated videos like Sora, Sora 2, Runway, and others.
It uses Florence-2 from Microsoft for watermark identification and LaMA for inpainting to fill in the removed regions naturally. The software features a modern GUI built with PyWebview for an accessible and intuitive experience.
demo-comparison.mp4
- Smart Detection - AI-powered watermark detection using Florence-2
- Seamless Removal - LaMA inpainting for natural-looking results
- Video Support - Process videos with two-pass detection and audio preservation
- AI Video Ready - Remove watermarks from Sora, Sora 2, Runway, and other AI-generated videos
- Batch Processing - Handle entire folders at once
- Preview Mode - Preview detected watermarks before processing
- Fade In/Out Handling - Extend masks for watermarks that fade in/out
- GPU Acceleration - CUDA support for faster processing
- Multi-Language UI - Available in English, French, Chinese, Japanese, Portuguese, and more
- Themes - Multiple UI themes to choose from
The versioned Windows package includes an .exe launcher, Python and the desktop
runtime. See portable setup, model downloads and troubleshooting.
The first launch prepares verified models with visible progress and a retry button.
The setup script downloads a portable Python environment automatically - no system Python required.
git clone https://github.com/D-Ogi/WatermarkRemover-AI.git
cd WatermarkRemover-AI
.\setup.ps1After setup, double-click run.bat to launch the app.
Requires Python 3.10+ installed on your system.
git clone https://github.com/D-Ogi/WatermarkRemover-AI.git
cd WatermarkRemover-AI
chmod +x setup.sh
./setup.shAfter setup, run ./run.sh to launch the app.
Install FFmpeg to preserve audio when processing videos:
- Windows: Download from ffmpeg.org and add to PATH
- Linux:
sudo apt install ffmpeg - macOS:
brew install ffmpeg
- Run the app (
run.baton Windows,./run.shon macOS/Linux) - Select your preferred language and theme from the top-right corner
- Select your mode (Single File or Batch)
- Set input and output paths
- Configure settings as needed
- Hit Start Processing
Your settings are automatically saved and restored on next launch.
# Basic usage
python remwm.py input.png output_folder/
# With options
python remwm.py ./images ./output --overwrite --max-bbox-percent=15 --force-format=PNG
# Process video with two-pass detection
python remwm.py video.mp4 ./output --detection-skip=3 --fade-in=0.5 --fade-out=0.5
# Preview mode (detect without processing)
python remwm.py input.png --preview| Option | Description |
|---|---|
--overwrite |
Overwrite existing files |
--transparent |
Make watermark regions transparent (images only) |
--max-bbox-percent |
Max detection size as % of image (default: 10) |
--force-format |
Force output format (PNG, WEBP, JPG, MP4, AVI) |
--detection-prompt |
Custom detection prompt (default: "watermark") |
--detection-skip |
Detect every N frames for videos (1-10, default: 1) |
--fade-in |
Extend mask backwards by N seconds (for fade-in watermarks) |
--fade-out |
Extend mask forwards by N seconds (for fade-out watermarks) |
--preview |
Preview detected watermarks without processing |
- Supported formats: MP4, AVI, MOV, MKV, FLV, WMV, WEBM
- Audio preservation: Requires FFmpeg installed
- Two-pass mode: Faster processing with
--detection-skip> 1 - Fade handling: Use
--fade-in/--fade-outfor watermarks that appear/disappear gradually
- Florence-2 - Microsoft's vision model for watermark detection
- LaMA - Large Mask Inpainting model
- PyWebview - Cross-platform webview wrapper
- Alpine.js - Lightweight JavaScript framework for UI
- PyTorch - Deep learning backend
Contributions are welcome! Feel free to:
- Fork the repository
- Create a feature branch
- Submit a pull request
This project is licensed under the MIT License. See the LICENSE file for details.
LaMA inpainting runs directly from verified TorchScript weights; IOPaint is no
longer required. See runtime, cache and migration instructions
when upgrading an older installation. Use a fresh application environment and check
it with python -m pip check to avoid retaining old IOPaint dependency conflicts.