原图:
水印图(用PS很简单就能把水印扣出来了):
Python去水印之后的效果:
由于图像的分辨率比较低,所以我自己水印抠出来的效果不是太好,导致去水印的结果其实并不是非常理想。
如果是分辨率高的图像,抠出来的水印十分规整,效果就会好很多。
import cv2
def get_water():
# 黑底白字
src = cv2.imread('yuan.jpg') # 默认的彩色图(IMREAD_COLOR)方式读入原始图像
# black.jpg
mask = cv2.imread('di.jpg', cv2.IMREAD_GRAYSCALE) # 灰度图(IMREAD_GRAYSCALE)方式读入水印蒙版图像
# 参数:目标修复图像; 蒙版图(定位修复区域); 选取邻域半径; 修复算法(包括INPAINT_TELEA/INPAINT_NS, 前者算法效果较好)
dst = cv2.inpaint(src, mask, 3, cv2.INPAINT_NS)
cv2.imwrite('result1.jpg', dst)
get_water()
如果对效果要求没有那么苛刻的话,这个脚本的实用性还是很高的,改一改可以批量去除水印。
最后效果如何,就看PS抠出来的水印图咋样了,水印图要和需要处理的图像分辨率大小一样。
文章来源互联网,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890
Python Free
邮箱:417803890@qq.com
QQ:417803890
皖ICP备19001818号-4
© 2019 copyright www.pythonf.cn - All rights reserved
微信扫一扫关注公众号:
Python Free