lxulxu/WatermarkRemover
批量去除视频中位置固定的水印
WatermarkRemover
功能: 一个基于 LAMA 模型批量去除视频中固定水印的工具。
要求
- Python 3.10(需要精确版本)
安装
- 克隆仓库并进入文件夹。
- (可选但推荐)创建并激活 Python 虚拟环境。
- 使用
pip install -r requirements.txt安装基础依赖。 - 安装 PyTorch — 选择以下两种选项之一:
- CPU 版本:
pip install torch - GPU 版本(需要 NVIDIA 显卡):
- 从 NVIDIA 下载页面安装 CUDA Toolkit。
- 安装与您的 CUDA 版本匹配的 cuDNN。
- 使用 PyTorch 官方网站提供的命令安装 PyTorch 的 GPU 版本(例如
pip3 install torch==2.6.0+cu126 ...)。
- CPU 版本:
程序会自动检测 GPU 是否可用,并选择相应的处理模式。
使用方法
从命令行运行:
python watermark_remover.py --input /path/to/videos --output /path/to/output
添加 --preview 可在处理前预览效果。
命令行选项
| 参数 | 短选项 | 描述 | 默认值 |
|---|---|---|---|
--input |
-i |
包含视频文件的文件夹 | .(当前文件夹) |
--output |
-o |
处理后视频的输出文件夹 | output |
--preview |
-p |
处理前显示效果预览 | 禁用 |
工作原理
- 选择水印区域: 程序显示视频的一帧。您手动在水印周围绘制一个框,然后按 空格键 或 回车键 继续。
- 预览(可选): 如果启用,显示处理后的结果。按 空格键 或 回车键 确认,或按 ESC 取消并退出。
- 处理视频: 首次运行会下载 LAMA 模型,这需要一些时间。
- 输出: 结果保存为 MP4 文件。
限制
- 仅适用于位置固定的水印 — 不支持移动水印。
- 同一批次处理的所有视频必须具有相同的尺寸。
- 同一批次中的所有视频必须具有相同的水印。
GPU 问题故障排除
如果您看到 No GPU detected, using CPU for processing,README 建议:
- 检查 Python 是否为 3.10。
- 确认您安装的是 GPU 版本的 PyTorch,而不是 CPU 版本(README 引用了 Lama Cleaner 的文档:如果工具未使用 GPU,则很可能安装了仅 CPU 的 PyTorch)。
- 确保您的 CUDA、cuDNN 和 PyTorch 版本与您的显卡兼容:
- 查看 NVIDIA 的 CUDA 兼容性列表以了解您的 GPU。
- 从 NVIDIA 的存档中选择匹配的 cuDNN 版本。
- 从 PyTorch 网站选择匹配的 PyTorch 构建。
当 GPU 被正确检测到时,程序会打印类似 GPU detected: NVIDIA XXX Using GPU for processing 的信息。
Star 历史
README 包含一个 star-history 图表,显示项目在 GitHub 上的 star 随时间的变化。
相关
- 项目
- 项目
- 项目
- 项目