还不知道怎么定位图片水印坐标的小伙伴,可以翻翻我前面的帖子!
原图
#通过水印坐标去除微博图片水印坐标
import cv2
import numpy as np
#260, 1002, 431, 1035
def remove_watermark(img_path, output_path, watermark_pos):
"""
去除固定位置的水印
:param img_path: 输入图片路径
:param output_path: 输出图片路径
:param watermark_pos: 水印位置 (x1, y1, x2, y2)
"""
# 读取图片
img = cv2.imread(img_path)
# 创建掩膜(标记水印区域)
mask = np.zeros(img.shape[:2], dtype=np.uint8)
x1, y1, x2, y2 = watermark_pos
mask[y1:y2, x1:x2] = 255 # 将水印区域设置为白色
# 使用图像修复算法
result = cv2.inpaint(img, mask, inpaintRadius=3, flags=cv2.INPAINT_TELEA)
# 保存结果
cv2.imwrite(output_path, result)
# 使用示例(需提前确认水印位置)
remove_watermark(
img_path="F:/selfmedia/kendoufeng/wuyanni/bd91d3d4gy1hxpusfuu5ej20u01900vg.jpg",
output_path="F:/selfmedia/kendoufeng/wuyanni/0002.jpg",
watermark_pos=(260, 1002, 431, 1035) # (左上x, 左上y, 右下x, 右下y)
)
运行后效果图: