Watermark-Removal 基于机器学习的图像修复(Image Inpainting),通过深度学习技术自动去除图片中的水印,使修复后的图片与原图难以区分。

1、技术原理 基于生成对抗网络(GAN)和上下文注意力机制(Contextual Attention),通过图像修复技术填补水印区域的像素。 引用两篇论文方法: 《Generative Image Inpainting with Contextual Attention》(上下文注意力生成修复) 《Free-Form Image Inpainting with Gated Convolution》(门控卷积的自由形修复)

2、功能特点

自动化去水印:输入带水印图片,输出无痕修复后的图片。

支持自定义模型:需预先下载训练好的模型文件(需手动配置)。

兼容性:基于TensorFlow 1.15.0开发(需降级环境)。

使用步骤

1、克隆仓库

git clone https://github.com/zuruoke/watermark-removal

2、配置环境 降级TensorFlow至1.15.0:

pip install tensorflow==1.15.0

安装依赖库neuralgym

pip install git+https://github.com/JiahuiYu/neuralgym

3、下载模型文件 从指定链接下载模型文件,放置于model/目录,并重命名checkpoint.txtcheckpoint

4、运行去水印

python main.py --image 输入图片路径 --output 输出路径 --checkpoint_dir model/ --watermark_type istock

注意事项

1、环境限制 需使用较旧的TensorFlow 1.15.0版本,可能与新硬件/系统存在兼容性问题。 未提供预训练模型直接下载链接,需用户自行获取。

2、适用场景 主要用于研究目的,实际效果取决于水印复杂度与模型训练数据。