Skip to main content

Remove Gemini AI watermarks from images using LaMa AI inpainting

Project description

๐ŸŒ Banana Peel

Remove Gemini AI watermarks from images using LaMa AI inpainting โ€” seamlessly, locally, and in one command.

"Peel away those watermarks like a banana!"

Features

  • AI-powered โ€” Uses the LaMa inpainting model for seamless watermark removal
  • Zero config โ€” Model auto-downloads on first run (~198 MB, one-time)
  • Batch processing โ€” Process entire directories with parallel execution
  • Metadata preservation โ€” EXIF data is carried over to output files
  • Supports PNG, JPG, JPEG, WebP, GIF, BMP, TIFF

Samples

Original Watermark Removed
Original Clean

How It Works

Gemini adds a semi-transparent watermark logo to the bottom-right corner of generated images. Banana Peel:

  1. Detects the watermark position using known mask patterns
  2. Inpaints the area with the LaMa neural network, which "hallucinates" realistic content to fill the gap
  3. Blends the result seamlessly using feathered alpha compositing

The AI model runs 100% locally via ONNX Runtime โ€” no cloud, no API keys, no data leaves your machine.

Installation

Stable (Recommended)

pip install banana-peel

View on PyPI

Development

git clone https://github.com/neocorp/banana-peel.git
cd banana-peel
poetry install

Usage

Single Image

banana-peel image.png
# Output: image_clean.png

# Overwrite original
banana-peel image.png --overwrite

Directory (Batch Processing)

banana-peel ./photos/

# Custom suffix
banana-peel ./photos/ --suffix "_nowm"

First Run

On the first run, Banana Peel will automatically download the AI model (~198 MB). This only happens once โ€” subsequent runs are instant.

๐ŸŒ Banana Peel - First Run Setup
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”
Downloading AI model (198 MB)... this only happens once.

Downloading lama_fp32.onnx โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ” 100% 198.4/198.4 MB

โœ“ Model ready! Processing your image...

Options

banana-peel <PATH> [OPTIONS]

Arguments:
  PATH           Image file or directory to process

Options:
  --overwrite    Overwrite original files
  --suffix TEXT  Custom suffix for output files [default: _clean]
  --version      Show version and exit
  --help         Show help message and exit

Detection Rules

Banana Peel automatically detects watermark size based on image dimensions:

Image Size Watermark Margins
> 1024ร—1024 96ร—96 px 64 px
โ‰ค 1024ร—1024 48ร—48 px 32 px

The watermark is always positioned at the bottom-right corner.

Development

git clone https://github.com/neocorp/banana-peel.git
cd banana-peel
poetry install
poetry run banana-peel --help

Running Tests

poetry run pytest

Credits

License

MIT License โ€” See LICENSE file for details.

Disclaimer

USE AT YOUR OWN RISK

This tool modifies image files. While designed to work reliably, unexpected results may occur. The author assumes no responsibility for any data loss or unintended modifications.

Limitations

  • Only removes Gemini visible watermarks (the semi-transparent logo in bottom-right corner)
  • Does not remove invisible/steganographic watermarks like SynthID
  • Designed for Gemini's current watermark pattern (as of 2026)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

banana_peel-0.1.1.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

banana_peel-0.1.1-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file banana_peel-0.1.1.tar.gz.

File metadata

  • Download URL: banana_peel-0.1.1.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for banana_peel-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4ed3a0a36923315a90fb727ba96a6e1abd125f9f748fd22b5270b50231c5887d
MD5 05bb84fc857ba9e3ad40f7c68fc1fc88
BLAKE2b-256 2331812232e686c7a7ec3e3cc3d73f7086a365e5a68b141563bf7c7c80e54b3e

See more details on using hashes here.

Provenance

The following attestation bundles were made for banana_peel-0.1.1.tar.gz:

Publisher: publish.yml on neocorp/banana-peel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file banana_peel-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: banana_peel-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for banana_peel-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2c681a7c06cfb30dda78ec6174bd897c737dea8f619c948622ddcee85099547f
MD5 c712db7aa5643121684f4d47385c924d
BLAKE2b-256 418bcdf5c7c531230cc56c7cdf4fef22574b4816fbcb7c663c500ed2590f1fb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for banana_peel-0.1.1-py3-none-any.whl:

Publisher: publish.yml on neocorp/banana-peel

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page