from : https://mubiu.com/blog/python3-opencv
-- coding: utf-8 --
import cv2
mask.png 与src.jpg尺寸相同并且黑色背景,白色区域是要处理水印的区域
https://docs.opencv.org/master/df/d3d/tutorial_py_inpainting.html#gsc.tab=0
src = cv2.imread(‘src.jpg’) # 默认的彩色图(IMREAD_COLOR)方式读入原始图像
mask = cv2.imread(‘mask.png’, cv2.IMREAD_GRAYSCALE) # 灰度图(IMREAD_GRAYSCALE)方式读入水印蒙版图像
mask = cv2.imread(‘mask.png’, 0)
参数:目标修复图像; 蒙版图(定位修复区域); 选取邻域半径; 修复算法(包括INPAINT_TELEA/INPAINT_NS, 前者算法效果较好)
dst = cv2.inpaint(src, mask, 3, cv2.INPAINT_TELEA)
cv2.imwrite(‘result.jpg’, dst)
cv.imshow(‘dst’,dst)
cv.waitKey(0)
cv.destroyAllWindows()
本文介绍如何利用Python结合OpenCV库中的inpaint方法去除图片上的水印。通过加载带有水印的原始图片和标记水印位置的蒙版图片,使用INPAINT_TELEA算法实现对水印的有效修复,并保存处理后的图像。
6387

被折叠的 条评论
为什么被折叠?



