而且有个专门为这种 NAS 优化的版本。
首选:IOPaint
它就是干这个的——AI 图像修复(inpainting),官方明确列出的用途就是 去除物体、瑕疵、水印、路人。
推荐用这个镜像,专门为 NAS 和家用环境打包:
jonach1998/iopaint:latest
官方原版镜像插件经常报 ModuleNotFoundError,这个版本预装了全部插件,开箱即用,还专门针对低内存设备做了优化。
部署 YAML
Container Manager → 项目 → 新增 → 路径选 /volume1/docker/iopaint → 粘贴:
services:
iopaint:
image: jonach1998/iopaint:latest
container_name: iopaint
restart: unless-stopped
ports:
- "8089:8080"
volumes:
- /volume1/docker/iopaint/cache:/app/cache
- /volume1/docker/iopaint/output:/output
environment:
- DEVICE=cpu
- MODEL=lama
- LOW_MEM=true
- ENABLE_INTERACTIVE_SEG=false
- ENABLE_REALESRGAN=false
- ENABLE_GFPGAN=false
- ENABLE_REMOVE_BG=false
- OMP_NUM_THREADS=4
- MKL_NUM_THREADS=4
mem_limit: 3g
几个针对你 J3455 的调整说明:
| 参数 | 为什么这么设 |
|---|---|
DEVICE=cpu |
没有独显,必须走 CPU |
LOW_MEM=true |
关键。不使用时自动卸载模型,防止 OOM |
ENABLE_INTERACTIVE_SEG=false |
SAM 分割模型很吃内存, 8GB 扛不住,关掉 |
| 其余插件关掉 | 超分、人脸修复、抠图你都用不上,关了省内存、启动快 |
OMP_NUM_THREADS=4 |
匹配你 J3455 的四核 |
端口 8089 避开你已经占用的 8083。
使用
浏览器开 http://NAS的IP:8089:
- 拖入图片
- 用画笔涂抹水印区域(涂满、稍微超出边缘一点效果更好)
- 点 Erase / 擦除
- 看效果,不满意换模型重试,满意就下载
首次使用会自动下载 LaMa 模型(约 200MB),挂在 /app/cache 里,下次启动不用再下。
性能预期(说实话)
J3455 跑这个会比较慢,单张可能 30 秒到 2 分钟。试卷图先缩到宽 1600–2000 再传,能快很多,而且去水印本来也不需要原图那么大。
6 张图大概几分钟跑完,可以接受。
其他方案,供对比
| 方案 | 适用 | 评价 |
|---|---|---|
| IOPaint (LaMa) | 任意位置、任意样式的水印 | ⭐ 通用性最好,推荐 |
zuruoke/watermark-removal |
固定位置的标准图库水印(iStock 等) | 对公众号水印不对症,还要手动下模型 |
guillaumemeyer/watermarks-remover |
只清元数据(C2PA/EXIF),不管画面上的可见水印 | 跟你的需求不一样 |