2024年Python最全超简单!用 Python 为图片和 PDF 去掉水印

学过计算机的小伙伴们都知道 ,计算机中用 RGB 代表红绿蓝,用 (255, 0, 0) 表示红色,(0, 255, 0) 表示绿色,(0, 0, 255) 表示蓝色,(255, 255, 255) 表示白色,(0, 0, 0) 表示黑色,去水印的原理就是将水印的颜色变成白色(255, 255, 255)。

首先获取图片宽和高,用 itertools 模块获取宽和高的笛卡尔积作为像素点。每个像素点的颜色都由 前三位的 RGB 和 第四位的 Alpha 通道构成。Alpha 通道不需要,只要 RGB 数据。

def remove_img():

image_file = input(“请输入图片地址:”)

img = Image.open(image_file)

width, height = img.size

for pos in product(range(width), range(height)):

rgb = img.getpixel(pos)[:3]

print(rgb)

图片去水印

用微信截图的方式查看水印像素点的 RGB。

2024年Python最全超简单!用 Python 为图片和 PDF 去掉水印_第1张图片

可以看到水印的 RGB 是 (210, 210, 210),这里用 RGB 的和超过 620 就判定是水印点,此时将像素颜色替换为白色。最后保存图片。

rgb = img.getpixel(pos)[:3]

if(sum(rgb) >= 620):

img.putpixel(p

你可能感兴趣的:(程序员,python,pdf,开发语言)