以下是一个基于Python和OpenCV实现简单图片去水印的示例代码,适用于去除全黑或半透明矩形水印:
```python
import cv2
import numpy as np
def remove_watermark(input_path, output_path, watermark_width=100, watermark_height=30, watermark_x=100, watermark_y=100):
读取图片
img = cv2.imread(input_path)
if img is None:
raise ValueError("无法读取图片文件")
创建黑色水印区域掩膜mask = np.zeros(img.shape[:2], dtype=np.uint8)
x1, y1 = watermark_x, watermark_y
x2, y2 = x1 + watermark_width, y1 + watermark_height
cv2.rectangle(mask, (x1, y1), (x2, y2), 255, -1)
应用掩膜去除水印
img_without_watermark = cv2.bitwise_and(img, img, mask=mask)
保存处理后的图片
cv2.imwrite(output_path, img_without_watermark)
print(f"水印已移除,保存至:{output_path