【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

这篇具有很好参考价值的文章主要介绍了【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

哈喽!我是栗子,今天忙里偷闲给大家更新一下文啦~

所有文章完整的素材+源码都在👇文末自取哦!

大家是不是经常遇到一些电子版加了一些水印需要去掉才能用的或是需要加一些水印文字的

呢?

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

工作的时候,尤其是自媒体工作者,必备水印添加工具以保护知识产权,网上有许多的在线/下

载的水印添加工具,但他们或多或少都存在一些问题!

现在只要你会一些简单的代码就可以搞定这些问题啦~

今天我们就能教大家怎么使用Python超级简单地为图片添加水印啦!超简单滴

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

正文

图片水印的种类有很多,今天我们先讲最简单的几种。

一、9行Python代码,去除图片中的数字水印

问题描述:

已知某图片带有数字水印,且水印信息嵌入到有效信息的后面,不影响有效信息的阅读。要求

编写Python程序,删除图片中的数字水印信息,把处理后的图片保存为新文件。

测试图片,《Python程序设计基础(第2版)》(董付国,清华大学出版社,

ISBN9787302490562,2020年9月第17次印刷)版权页图片。

原图片——

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

效果展示——

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

代码展示——

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

二、OpenCV+NUmpy、PIL + itertools两种方法

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

即上图中的①类水印,这种水印存在白色背景上的文档里,水印是灰色,需要保留的文字是黑

色。

这种通常可以进行简单的亮度/对比度转换,直到水印消失并降低亮度以进行补偿[1]。参考别人

的方法,我发现可以用多种方法去除水印。大致原理比较相似,下面先讲OpenCV的方法。

1)OpenCV + Numpy

本方法需要使用的库:cv2、numpy。cv2是基于OpenCV的图像处理库,可以对图像进行腐

蚀,膨胀等操作;Numpy这是一个强大的处理矩阵和维度运算的库。

函数简介

介绍一下cv2的三个基本函数:使用cv2.imread()cv2.imshow()cv2.imwrite()分别可以读取、显示和保存图像。

img = cv2.imread('test.png')cv2.imshow('test.png',img)cv2.waitKey(0)cv2.imwrite('test_2.png', img)

对于Numpy呢,则要用到np.clip(),它是一个截取函数,用于截取数组中小于或者大于某值

的部分,并使得被截取部分等于固定值。

np.clip(a, a_min, a_max, out=None):

具体用法:

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

可以看到,数组x中的所有数限定到范围0和5之间。为啥要介绍这些函数呢,接着往下看。

色彩转换

回到本文一开始,我们想去除文档图片中的水印。

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

上图中我选取了三个点,这三个像素点分别对应背景白色、黑色字体以及灰色的水印。

我们现在要做的事,就是想办法把水印转换成白色背景。换言之,就是把图片中[217,217,217]

的像素点转换成[255,255,255]。

当然这个[217,217,217]也不是固定的,只是一个范围。为了方便调整,我选取了一些像素点,

做了一个线性回归。

希望把图片整体的像素颜色做一个改变,原有黑色字体尽量跟原来一致,而水印部分则一定要

≥255,然后就可以通过np.clip()限定区间,使之都变成[255,255,255]。

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

说干就干

import cv2import numpy as npimg = cv2.imread('test.png')new = np.clip(1.4057577998008846*img-38.33089999653017, 0, 255).astype(np.uint8)cv2.imwrite('removed.png', new)

下面我们看看调整后的效果(左侧是转换前,右侧是转换后)。

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

处理效果还是不错的,说明对于这类文档图片水印,通过几行Python代码就可以轻松去除水

印。不过通过线性回归改变整体图片颜色,也会影响原有的黑色文本,导致其颜色发生了微微

变化。那我们能不能简单粗暴一点!只改变水印的颜色呢?也可以试试。

2)PIL + itertools

PIL也是一个Python 图像处理库,其中Image模块是在Python PIL图像处理中常见的模块,对

图像进行基础操作的功能基本都包含于此模块内。

itertools 之前更是被我们称为一个 零差评的 Python 内置库。其中itertools.product用来产

生多个列表和迭代器的(积)。

还是跟之前一个原理,我们希望将图片中[217,217,217]的像素点转换成[255,255,255]。

那就简单粗暴一点,也就是像素值相加大概600(217+217+217)以上的像素点,都改成

[255,255,255]就好了。

from itertools import productfrom PIL import Imageimg = Image.open('test.png')width, height = img.sizefor pos in product(range(width), range(height)):    if sum(img.getpixel(pos)[:3]) > 600:        img.putpixel(pos, (255,255,255))img.save('removed_1.png')

运行结果,对比一下。

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)

这两种方法对比,肉眼也没看出来太明显差别。

那大家就喜欢那种方法就用哪个吧!

总结

今天这篇简单的去水印就到这里了啦!下一期给大家更新添加水印的文章可以嘛?

如果大家还有什么需求,可以评论区给我留言的哦~

✨完整的素材等:也可以滴滴我吖!或者点击文末自取免费拿的哈~

😘往期推荐阅读——

项目1.6 【Pygame小游戏】斗地主我见多了,BUT 这款开源欢乐斗地主,最让人服气~

项目2.2【Pygame小游戏】扫雷游戏50多岁了,但这款我能玩一年~(三个版本集合)

项目0.5 【视频倒放神器】超级玩法:千万不要倒放视频,太魔性了根本停不下来......

项目0.6 【Python小程序】隐藏表白图:“你永远都不知道我喜欢你”(建议保存)

🎁文章汇总——

汇总: Python文章合集 | (入门到实战、游戏、Turtle、案例等)

(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)

【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)文章来源地址https://www.toymoban.com/news/detail-463166.html

到了这里,关于【超简单】利用Python去除图片水印,太神奇了叭,你还不会嘛?(附三种方法)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之十一 简单给视频添加水印图片效果

    目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之十一 简单给视频添加水印图片效果 一、简单介绍 二、简单给视频添加水印图片效果实现原理 三、简单给视频添加水印图片效果案例实现简单步骤 四、注意事项 Python是一种跨平台的计算机程序设计语

    2024年04月25日
    浏览(38)
  • python实战之去除视频水印&字幕

    获取资源链接:https://null119.lanzoul.com/b050jscbg         结果如下图所示:         python软件在官网下载即可,这里我们仅对如何批量安装包进行介绍,如下所示         注意:要求文件的分辨率一致,水印位置相同,否则无法进行批量操作。         打开命令行,

    2024年02月07日
    浏览(34)
  • 基于python实现去除视频的水印

    在终端下载相关依赖包 将要去除水印的视频放在video目录下,运行一下         用鼠标操作去除的部分,回车即可 去除了水印的视频输出到了output文件夹下 查看效果,还不错   

    2024年02月16日
    浏览(27)
  • uni-app微信小程序-利用canvas给图片添加水印

    选择图片 → 将图片绘制到 canvas 中并绘制水印 →将添加水印的图片绘制到 canvas 中 → 将 canvas 画布转换为图片地址 → 上传/展示操作 注意:微信小程序在选择照片或者唤起相机之前需要获取相应的 权限 利用 uni.getSetting 查看用户是否调用相机的权限(有就选择图片,没有就

    2024年02月06日
    浏览(34)
  • Python操作Word水印:添加文字或图片水印

    在Word文档中,可以添加半透明的图形或文字作为水印,以保护文档的原创性,防止未经授权的复制或使用。除了提供安全功能外,水印还可以展示文档创作者的信息、附加的文档信息,或者仅用于文档的装饰。本文将介绍如何使用 Spire.Doc for Python 在程序中的轻松 添加文字和

    2024年02月08日
    浏览(31)
  • 剪映怎么去除视频水印?分享这3个方法助你视频去除水印!

    如何在剪映中去除水印?剪映是一款广泛使用的短视频剪辑软件,但是有时我们使用的素材可能带有水印。今天我将分享三种方法,帮助你在剪映中去除水印。 方法一:放大视频画面 在剪映中导入视频后,你会发现视频的左上角和右下角有抖音号水印。单击视频素材。 选中

    2024年02月07日
    浏览(30)
  • Python代码学习之给图片添加文字或图片水印

    图片加水印有什么好处?在现今的数字化时代,网络上的图片泛滥,盗图现象也越来越严重。因此,在发布文章时,为了保护自己的原创作品版权,很多人选择使用水印来保护他们的图片。这样就能更好地做到: 1.版权保护:在商业用途的照片中添加水印可以帮助保护作者的

    2024年02月09日
    浏览(40)
  • 通过Python的PIL库给图片添加图片水印

    大家好,我是空空star,本篇给大家分享一下通过Python的PIL库给图片添加图片水印。 上一篇已经介绍过了PIL库是什么?安装PIL 、查看PIL版本,这里就不再介绍了。 这里我去C站首页找了一个,看起来是不是很酷。 7.1调整前 7.2调整后 8.1左上 8.2左下 8.3右上 8.4右下 8.5中间 其他位

    2023年04月19日
    浏览(39)
  • 一行Python代码给图片添加水印

    很多时候我们设计出一张精美的图片,但是一旦不加水印发到网上就会被他人抄袭,因此为了维护我们自身的版权,很多时候我们需要在一些图片或者视频中添加水印, 下面我将使用filestools模块分别在终端和python代码层面添加水印 。 1.下载ilestools模块 2.查看命令参数 在py

    2024年02月16日
    浏览(26)
  • js 视频水印去除

    参考文档:http://txapi.cn/api 收费 识别要解析的类型(需要收费) 不收费:(这边只说下大概实现思路,具体操作没试过,因为我们这边是通过接口python来实现的) 抖音去水印 逻辑: 通过短链获取到视频mid,通过mid获取到视频详情,再通过视频详情拿到视频地址,将有水印替

    2024年02月14日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包