- Remove-AI-Watermarks एक CLI और Python लाइब्रेरी है जो Google Gemini(Nano Banana), ChatGPT/DALL-E, Stable Diffusion, Adobe Firefly, Midjourney आदि से बनी इमेज में दिखने वाले वॉटरमार्क, अदृश्य वॉटरमार्क और AI-जनित metadata को एक साथ प्रोसेस करती है
- दिखने वाले वॉटरमार्क हटाना Gemini/Nano Banana के sparkle लोगो को लक्षित करता है, और ज्ञात alpha map का उपयोग करने वाले inverse alpha blending तथा gradient mask inpainting से प्रोसेस किया जाता है; यह प्रति इमेज लगभग 0.05 सेकंड लेता है और GPU की जरूरत नहीं होती
- अदृश्य वॉटरमार्क हटाना SynthID, StableSignature, TreeRing जैसे pixel और frequency domain patterns को diffusion-आधारित regeneration से कमजोर करता है; डिफ़ॉल्ट प्रोफ़ाइल SDXL और लगभग 1024px native pipeline का उपयोग करती है
- metadata सफाई EXIF, PNG text chunks, XMP
DigitalSourceType, C2PA Content Credentials को लक्षित करती है, और Instagram, Facebook, X(Twitter) के “Made with AI” लेबल को ट्रिगर करने वाले AI-संबंधित fields को हटाती है, जबकि Author, Copyright, Title जैसे standard metadata को सुरक्षित रखती है
- समर्थित दायरे में Google Gemini/Nano Banana/Gemini 3 Pro का sparkle लोगो, SynthID, C2PA/EXIF; OpenAI DALL-E 3/ChatGPT का C2PA; Stable Diffusion के PNG text chunks और steganographic watermark; Adobe Firefly के Content Credentials; Midjourney का EXIF/XMP आदि शामिल हैं
- Smart Face Protection diffusion प्रोसेसिंग से पहले YOLO से लोगों का पता लगाकर चेहरे निकालता है, और प्रोसेसिंग के बाद मूल चेहरों को soft elliptical mask के साथ फिर से blend करता है ताकि चेहरे की विशेषताओं में विकृति कम हो
- Analog Humanizer वैकल्पिक रूप से film grain और chromatic aberration जोड़ता है ताकि आउटपुट स्क्रीन की फोटो जैसा लगे, और इसे AI image classifiers को bypass करने वाली सुविधा के रूप में समझाया गया है
- इंस्टॉल के लिए
pipx install git+https://github.com/wiltodelta/remove-ai-watermarks.git या uv tool install git+https://github.com/wiltodelta/remove-ai-watermarks.git की सिफारिश की गई है, और डिफ़ॉल्ट इंस्टॉलेशन में दिखने वाले वॉटरमार्क हटाना तथा metadata हटाना शामिल है
- आवश्यकताएँ Python 3.10+ हैं; दिखने वाले वॉटरमार्क हटाना और metadata प्रोसेसिंग केवल CPU पर संभव है, जबकि अदृश्य वॉटरमार्क हटाने के लिए CUDA या MPS GPU की सिफारिश की जाती है, हालांकि यह CPU पर भी धीरे काम करता है
- अदृश्य वॉटरमार्क हटाना पहली बार चलने पर लगभग 2GB मॉडल अपने-आप डाउनलोड करता है, और डिवाइस का ऑटो-डिटेक्शन CUDA(Linux/Windows) > MPS(macOS) > CPU क्रम में होता है;
--device से इसे निर्दिष्ट किया जा सकता है
- CLI का उपयोग
remove-ai-watermarks all image.png -o clean.png की तरह किया जाता है, और डायरेक्टरी batch प्रोसेसिंग remove-ai-watermarks batch ./images/ --mode all की तरह; visible, invisible, metadata subcommands भी उपलब्ध हैं
- Python API में
GeminiEngine वॉटरमार्क detection और removal करता है, और has_ai_metadata, remove_ai_metadata से इमेज के AI metadata की जाँच और removal किया जा सकता है
- roadmap में SynthID-Image v2 automated regression tests, AVIF/HEIF/JPEG-XL के अंदर EXIF/XMP removal की सीमाएँ, और अलग पैकेज के रूप में योजनाबद्ध video pipeline शामिल हैं; Nightshade/Glaze/PhotoGuard removal को कलाकार सुरक्षा पर हमले की श्रेणी मानकर समर्थित नहीं किया गया है
- कानूनी सेक्शन में कहा गया है कि AI-जनित provenance labeling कई न्यायक्षेत्रों में विनियमित है, और provenance जानकारी को धोखे के इरादे से हटाना कानून, DMCA, या platform terms का उल्लंघन कर सकता है; अनुपालन की जिम्मेदारी उपयोगकर्ता की है
- threat model का फोकस पहले से वितरित AI इमेज को automated detection systems और “Made with AI” लेबल से निपटने में मदद करना है, लेकिन यह चेतावनी भी दी गई है कि यदि मूल फ़ाइल creator account या Google systems से होकर गुज़री हो, तो यह server-side records तक को anonymous नहीं बना सकता
1 टिप्पणियां
Hacker News टिप्पणियाँ
SynthID और OpenAI पर दूसरे थ्रेड की टिप्पणी को कम आंका गया, लेकिन मुझे लगता है कि इस मुद्दे में हैकर भावना क्या होनी चाहिए, इसे वह अच्छी तरह पकड़ती है
हम privacy को महत्व देते हैं, इसलिए हर digital activity पर barcode लगाने वाले टूल्स को स्वीकार नहीं करना चाहिए। “अभी वे ऐसा नहीं करते” वाला तर्क भी खास भरोसेमंद नहीं है
हैकर भावना का केंद्र इससे बढ़कर यह होना चाहिए कि open source models को local पर चलाया जाए, बिना कंपनियों पर निर्भर हुए
वे ऐसे साधन चाहते हैं जिनसे अपनी सत्ता को चुनौती देने वालों को पहचानकर दंडित कर सकें
अगर privacy महत्वपूर्ण है, तो local models इस्तेमाल किए जा सकते हैं
अगर किसी चीज़ पर यह स्पष्ट संकेत हो कि वह AI है, तो अच्छा ही है, क्योंकि तब उसके स्रोत से आई बाकी चीज़ों को भी पूरी तरह नज़रअंदाज़ किया जा सकता है
यह टूल लोगों को वही बात दिखाने का अच्छा तरीका है
जैसे photo editor में अधिक जटिल object removal करने पर
यह मज़ेदार है कि यह पोस्ट ठीक OpenAI Adopts SynthID Watermarks पोस्ट के एक स्लॉट ऊपर है
चोरी किए गए copyrighted material पर प्रशिक्षित डेटा से बनी images पर watermark लगाना, असली और नकली में फर्क करने की मंशा समझ में आती है, लेकिन फिर भी कुछ गड़बड़ सा लगता है
Gemini के मामले में यह विवरण थोड़ा भ्रामक है। ठीक से हटाया जा सकने वाला हिस्सा सिर्फ दिखाई देने वाला watermark है
SynthID हटाने के लिए SDXL के साथ कम noise level पर image को फिर से generate करना पड़ता है, और ऐसा करने पर कई छोटे details खराब होने की संभावना बहुत अधिक है, और high resolution पर यह शायद ठीक से काम नहीं करेगा। NB2 और GPT Image 2 अधिकतम 4K image output को support करते हैं
उससे ऊपर सब upscaling है, इसलिए SDXL जैसा ही है। GPT Image 2 मूल रूप से 4K को support करता है, लेकिन अभी experimental है
Gemini watermark हटाने के लिए बस developer tools खोलकर watermark की ओर जाने वाले HTTP request को block कर दें
यह client side पर logo overlay करने का मामला है
“सही threat model वाला use case: false positive ‘AI-generated’ label से कला या historical records को बचाना” वाला स्पष्टीकरण मानना मुश्किल है
समझ नहीं आता कि AI से image generate करने का इससे क्या संबंध है। Image generators ऐसी चीज़ पर watermark नहीं डाल सकते जो उन्होंने बनाई ही नहीं, और अगर README के अनुसार watermark इतनी fidelity वाला है कि किसी खास session ID तक trace किया जा सकता है, तो human-made art पर false positive watermark लगने की संभावना भी बहुत कम लगती है। ऊपर से, watermark हटाने के लिए image में किया गया संशोधन उस चीज़ को अनिवार्य रूप से बदल देता है जिसे supposedly “preserve” करना है
जितना अधिक पढ़ता हूँ, उतना ही यकीन होता है कि README के use cases बकवास हैं, और असली मकसद social media पर AI-generated label को bypass करके AI garbage images पोस्ट करने देना है
किसी वास्तविक image को लेकर Gemini या ChatGPT से उसका बहुत छोटा हिस्सा बदलने को कहना बेहद आसान है। Lighting या shadow जैसी मामूली edits भी की जा सकती हैं, और इस तरह बनी image को अक्सर संबंधित watermarking tool detect कर लेता है। इस तरह लगभग किसी भी वास्तविक image को आसानी से AI-generated image की तरह पेश किया जा सकता है
इस खास project को लेकर पसंद या नापसंद से अलग, मुझे लगता है कि आगे का रास्ता हर AI output पर watermark लगाने की कोशिश में नहीं, बल्कि non-AI resources की authenticity prove करने में है
watermarking तभी ठीक से काम करती है जब उसका तरीका गोपनीय रहे
high-frequency noise में ciphertext डालना पुराना तरीका है। Generative models के क्षेत्र में generation की flexibility का उपयोग करके macro structure के भीतर encoding करना कहीं अधिक दिलचस्प होगा
क्या बस open source models का उपयोग नहीं किया जा सकता?