mirror of
https://github.com/diptamath/Invisible-Image-watermarking.git
synced 2026-04-24 21:36:21 +02:00
32 lines
671 B
Python
32 lines
671 B
Python
|
|
from PIL import Image
|
||
|
|
|
||
|
|
from sys import argv
|
||
|
|
from qrcode import make as makeQR
|
||
|
|
|
||
|
|
if __name__ == '__main__':
|
||
|
|
qr = makeQR("hello sourya")
|
||
|
|
qw, qh = qr.size
|
||
|
|
|
||
|
|
im = Image.open("hello.jpg")
|
||
|
|
w, h = im.size
|
||
|
|
|
||
|
|
if qw > w:
|
||
|
|
qr = qr.resize((w, w))
|
||
|
|
elif qh > h:
|
||
|
|
qr = qr.resize((h, h))
|
||
|
|
qw, qh = qr.size
|
||
|
|
|
||
|
|
imd = im.load()
|
||
|
|
for i in range(w):
|
||
|
|
for j in range(h):
|
||
|
|
d = imd[i, j]
|
||
|
|
imd[i, j] = d[:-1] + ((d[-1] | 1) if qr.getpixel((i % qw, j % qh)) else (d[-1] & ~1),)
|
||
|
|
|
||
|
|
|
||
|
|
from os.path import splitext
|
||
|
|
|
||
|
|
root, ext = splitext("hello.jpg")
|
||
|
|
im.save(root + '_watermark.png')
|
||
|
|
qr.save(root+'_qrcode'+'.png')
|
||
|
|
|