IOPaint:本地免费AI图片修复,5分钟跑通去水印
【免费下载链接】IOPaintImage inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.项目地址: https://gitcode.com/GitHub_Trending/io/IOPaint
供应商的产品图上带着水印、旅行照背景里挤满路人,多数人的第一反应是找修图的人。IOPaint 是一款免费开源的 AI 图片修复工具:把 unwanted 区域涂出来,模型自动补上自然内容。它在本地运行,图片不出机器,也不存在按次付费。
它凭什么值得试
IOPaint 的核心思路是“掩码 + 模型”:把要去掉的部分涂成掩码,模型依据周围像素重建内容。删除类任务(水印、人物、文字)交给 LaMa 这类专用修复网络,快而轻;替换物体、向外扩展画面则由 Stable Diffusion 系模型(PowerPaint、BrushNet、AnyText 等)负责,可以提示词描述新内容。
- 完全免费开源,本地运行,图片不出机器
- CPU、GPU、Apple Silicon 都能跑,4GB 显存够用
- 几十个模型同一界面切换,一个参数的事
- 既能修复画面,也能向外扩图(outpainting)
- 内置 SAM 分割、去背景、人脸修复等插件
- 命令行支持批处理,可嵌进自动化工作流
从克隆到跑起来:安装到启动两步命令
pip3 install iopaint # 安装工具本体,无需克隆仓库 iopaint start --model=lama --device=cpu --port=8080 # 用 LaMa 模型启动 Web 服务 iopaint list # 查看已下载到本地缓存的模型常见报错:首次启动会自动下载 LaMa 模型到~/.cache,无网络环境无法启动,先解决网络;端口 8080 被占用时,加--port=8081换一个端口即可。
启动后,用 5 步完成最小闭环:
- 浏览器打开
http://localhost:8080 - 点击画布区域,选择本地图片上传
- 用默认画笔涂抹要去掉的区域
- 确认模型选的是 LaMa(默认值)
- 点击生成,几秒后看到修复结果
三个高频场景实操
产品图去水印:涂抹一遍,水印消失
适用情况:电商卖家清理供应商来图上的版权水印。
操作路径:
- 上传带水印的产品图
- 画笔完整盖住水印区域
- 模型选 LaMa(默认)
- 需要时按
[]调笔刷大小 - 点击生成,等几秒出结果
效果说明:LaMa 是专用修复网络,只依赖周围像素重建,不理解提示词,速度很快。大面积细条纹或渐变背景可能有轻微失真,建议掩码涂得比水印稍大一圈。
水印去除修复结果
旅行照去路人:涂抹一次,背景人物出画
适用情况:单人照片里背景行人抢镜,想保留主体、清掉路人。
操作路径:
- 上传旅行照片
- 涂抹背景人物,笔刷比目标大 10%
- 模型选 LaMa
- 生成后检查补全区域
- 不满意按 Ctrl+Z 撤销重涂
效果说明:LaMa 对人体轮廓附近的纹理重建比较到位,路人消失后地面、墙体过渡自然。若肢体被前景主体遮挡,可能残留鬼影,务必把遮挡交界处一并涂进掩码。
漫画文字清理:气泡擦掉,线条还在
适用情况:扫描版漫画要去掉对话气泡和拟声词,用于重制或汉化底稿。
操作路径:
- 上传漫画图
- 涂抹对话气泡与文字
- 模型切换为 manga
- 生成后放大检查线条
- 有残留再补涂一次
效果说明:manga 模型针对线条画训练,文字区域会按周围画风补成留白或线稿,能保住线条粗细与纸张质感。它只适合线稿类图片,写实场景用 LaMa 更好。
调参速查与避坑
下面的参数只对扩散类模型(PowerPaint、SD inpaint 等)有意义,LaMa 等擦除类模型不用管。
| 场景 | 采样步数 | 引导强度 | 掩码模糊 |
|---|---|---|---|
| 小面积去水印 | 15-20 | 5-6 | 1-2 |
| 大面积去人物 | 20-30 | 7-8 | 2-3 |
| 文字/复杂背景 | 25-35 | 7.5-8.5 | 3 |
问:修复边缘为什么有明显接缝?答:通常是涂抹范围偏小或掩码模糊过低。把涂抹向外扩 2-3 像素,掩码模糊调到 2-3 再试一次,多数情况能消掉。
问:扩散模型结果全黑或全绿是怎么回事?答:多为 GPU 半精度兼容性问题。启动时加--no-half用全精度跑,速度稍慢但结果稳定。
问:CPU 上跑为什么特别慢?答:扩散模型本身就重,CPU 下每张要几十秒甚至几分钟。目标只是“去掉”的话换 LaMa,速度快一个量级,效果对删除类任务也足够。
跑不动 / 效果差时的排查清单
- 纯 CPU:LaMa 等擦除模型没问题,图片压到 1024px 左右;扩散模型只在必要时用
- 入门 GPU(4-6GB 显存):启动时加
--low-mem或--cpu-offload降低显存占用 - 高性能 GPU(12GB 以上):SDXL、PowerPaint、BrushNet 都可以直接上
- Apple Silicon:LaMa、zits、cv2 等擦除模型不支持 MPS 后端,请改用扩散类模型
批量与自动化走命令行入口,掩码文件夹内的图片需与原图同名:
iopaint run --model=lama --device=cpu \ --image=/path/to/image_folder \ --mask=/path/to/mask_folder \ --output=output_dir--mask也可以指向单个掩码文件,此时所有图片复用同一张掩码,且会自动缩放到原图尺寸。
继续深入:5 个值得看的路径
- iopaint/model/lama.py:LaMa 修复实现
- iopaint/batch_processing.py:批量处理逻辑
- iopaint/plugins/segment_anything/:SAM 交互分割
- web_app/src/components/Editor.tsx:画布涂抹交互
- assets/:前后效果示例图
IOPaint 处于持续维护状态,模型清单和插件生态还在扩充,日常使用已经足够稳定。如果你对修复模型原理感兴趣,或者有批量处理图片的需求,这个仓库值得跟一跟。
【免费下载链接】IOPaintImage inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.项目地址: https://gitcode.com/GitHub_Trending/io/IOPaint
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考