Gemini Watermark Tool: A Deterministic and Verifiable Approach to Image Watermark Removal
When working with images generated by Gemini models, one practical issue often appears quickly:
the semi-transparent watermark located in the bottom-right corner.
In slides, technical documents, UI mockups, diagrams, and screenshots, this watermark can interfere with readability and visual consistency. In many cases, users are not looking to “repair” or “guess” missing image content—they simply want the original pixels restored as accurately as possible.
Gemini Watermark Tool is a command-line utility designed specifically for this purpose.
Rather than relying on generative image repair or heuristic inpainting, it applies a mathematically deterministic reverse alpha blending algorithm to reconstruct the original pixels affected by the watermark.
This article explains what the tool does, how it works, how to use it safely, and where its limitations are—based entirely on the original project documentation.
What Problem Does This Tool Solve?
Gemini-generated images include a visible watermark, applied through alpha blending rather than hard pixel replacement.
This detail is important:
-
The watermark does not overwrite the original pixels -
The underlying image information still exists -
Pixel values are mathematically recoverable under the right conditions
Gemini Watermark Tool is built around this observation.
Its goal is not to invent missing content, but to reverse the blending operation and recover the original pixel values as precisely as possible.
Core Design Philosophy
Many image watermark removal approaches rely on techniques such as:
-
Generative inpainting -
Content-aware fill -
AI-based texture reconstruction
These methods often introduce side effects, especially in text-heavy or UI-based images:
-
Warped characters -
Incorrect spacing -
Altered line thickness -
Invented visual details
This tool intentionally avoids those approaches.
No guessing. No hallucination. No generative reconstruction.
According to the project documentation, Gemini Watermark Tool is:
-
Deterministic -
Non-generative -
Based on mathematical inversion -
Repeatable with identical input and output
The same input image will always produce the same result.
Key Features at a Glance
The tool focuses on practical, engineering-oriented functionality:
-
Batch processing of entire directories -
In-place editing or explicit input/output paths -
Automatic watermark size detection -
Cross-platform binaries -
Zero runtime dependencies -
Single standalone executable
These features are designed for real-world workflows, not experimental image manipulation.
Supported Platforms
Pre-built binaries are provided for the following environments:
| Platform | Architecture |
|---|---|
| Windows | x64 |
| Linux | x64 |
| macOS | Intel + Apple Silicon (Universal) |
| Android | ARM64 |
All binaries are statically linked, requiring no additional runtime libraries.
Visual Examples
The original project includes multiple visual demonstrations comparing the original image, watermarked image, and restored output.
CLI Preview

Processing Demo

Side-by-Side Comparison

The documentation emphasizes one particular use case:
Text-heavy slides and documents
In such cases, generative approaches often distort typography.
Reverse alpha blending preserves sharp edges, spacing, and character structure.
Getting Started
Simplest Usage: Drag & Drop (Windows)
For Windows users, the simplest workflow is:
-
Download GeminiWatermarkTool-Windows-x64.exe -
Drag an image file onto the executable -
The watermark is removed in-place
No parameters or configuration required.
Command Line Usage
Minimal Mode (In-Place Editing)
GeminiWatermarkTool image.jpg
This command removes the watermark and overwrites the original file.
Warning: Always back up important images before using in-place editing.
Explicit Input and Output
GeminiWatermarkTool -i watermarked.jpg -o clean.jpg
This mode preserves the original file and is recommended for safer workflows.
Batch Processing (Directory Mode)
Entire directories can be processed at once:
GeminiWatermarkTool -i ./watermarked_images/ -o ./clean_images/
Supported image formats:
-
.jpg -
.jpeg -
.png -
.webp -
.bmp
How Watermark Size Is Detected
Gemini watermarks appear in different sizes depending on image dimensions.
The tool automatically determines which watermark size to remove.
Detection Rules
| Image Dimensions | Watermark Size | Position |
|---|---|---|
| Width ≤ 1024 or Height ≤ 1024 | 48 × 48 | Bottom-right, 32px margin |
| Width > 1024 and Height > 1024 | 96 × 96 | Bottom-right, 64px margin |
Examples
| Image Size | Detected Watermark |
|---|---|
| 800 × 600 | Small (48 × 48) |
| 1024 × 1024 | Small (48 × 48) |
| 1920 × 1080 | Large (96 × 96) |
Manual override is available if needed.
Command Line Options
| Option | Short | Description |
|---|---|---|
--input <path> |
-i |
Input file or directory |
--output <path> |
-o |
Output file or directory |
--remove |
-r |
Remove watermark (default) |
--force-small |
Force 48×48 watermark | |
--force-large |
Force 96×96 watermark | |
--verbose |
-v |
Detailed output |
--quiet |
-q |
Errors only |
--banner |
-b |
Show ASCII banner |
--version |
-V |
Show version |
--help |
-h |
Help message |
How It Works: Reverse Alpha Blending
How Gemini Applies the Watermark
According to the documentation, Gemini applies its visible watermark using standard alpha blending:
watermarked = α × logo + (1 - α) × original
Here:
-
αrepresents transparency -
logois the watermark image -
originalis the original pixel value
Reconstructing the Original Pixels
By estimating or reconstructing the alpha map, the original pixel values can be recovered:
original = (watermarked - α × logo) / (1 - α)
This process:
-
Does not involve guessing -
Does not use generative models -
Produces deterministic output -
Restores pixels mathematically
The README notes that the reconstructed alpha map is either correct or extremely close, enabling accurate restoration.
Frequently Asked Questions
Why does the image look almost unchanged after processing?
The watermark is semi-transparent.
If the underlying background is similar in color, differences may be subtle.
Recommendation:
-
Zoom to 100% -
Inspect the bottom-right corner
The wrong watermark size was detected. What should I do?
Use a manual override:
GeminiWatermarkTool -i image.jpg -o output.jpg --force-small
or:
--force-large
I get a “file access denied” error.
Check the following:
-
The output directory is writable -
The image file is not open in another application
Known Limitations
The tool is intentionally narrow in scope.
According to the documentation, it:
-
Removes only visible Gemini watermarks -
Does not remove invisible or steganographic watermarks -
Is designed for Gemini’s current watermark pattern -
May not work if the watermark implementation changes
It is not intended as a general-purpose watermark removal solution.
Legal and Usage Notice
The project includes clear usage disclaimers:
-
Intended for personal and educational use -
Users are responsible for legal compliance -
The author does not encourage misuse -
Provided “as is”, without warranty
Any legal implications depend on jurisdiction and usage context.
Building from Source (Advanced Users)
For those who prefer building manually, the project provides full instructions.
Required Tools
| Tool | Requirement |
|---|---|
| CMake | 3.21+ |
| C++ Compiler | C++17 |
| vcpkg | Latest |
| Ninja | Recommended |
Supported platforms include Windows, Linux, macOS (Universal), and Android.
Project Structure
gemini-watermark-tool/
├── CMakeLists.txt
├── CMakePresets.json
├── vcpkg.json
├── src/
│ ├── main.cpp
│ ├── watermark_engine.cpp
│ ├── blend_modes.cpp
│ └── ascii_logo.hpp
└── resources/
Final Thoughts
Gemini Watermark Tool is not about removing a logo for visual convenience.
Its real value lies in its engineering approach:
-
Transparent methodology -
Deterministic behavior -
Mathematically grounded pixel recovery -
Minimal assumptions
For document images, slides, UI assets, and diagrams—where accuracy matters more than aesthetic guessing—this approach offers a controlled and verifiable solution.

