IOPaint(仓库名 Sanster/IOPaint,原名 lama-cleaner)是一款免费、开源、完全自托管的图像修复(inpainting)与图像外绘(outpainting)工具,由 SOTA AI 模型驱动。
用途
- 从图片中移除不需要的物体、瑕疵、水印或人物。
- 擦除并替换图片中的任意内容(由 Stable Diffusion 等扩散模型驱动)。
- 执行图像外绘任务。
主要能力
- 支持多种 AI 模型完成擦除、修复或外绘任务。
- 擦除模型:用于移除图片中不需要的物体、瑕疵、水印、人物。
- 扩散模型:用于替换物体或执行外绘。资料中列出的常用模型包括:runwayml/stable-diffusion-inpainting、diffusers/stable-diffusion-xl-1.0-inpainting-0.1、andregn/Realistic_Vision_V3.0-inpainting、Lykon/dreamshaper-8-inpainting、Sanster/anything-4.0-inpainting、BrushNet、PowerPaintV2、Sanster/AnyText、Fantasy-Studio/Paint-by-Example。
- 插件:Segment Anything(准确快速的交互式对象分割)、RemoveBG(移除图像背景或为前景对象生成蒙版)、Anime Segmentation(类似 RemoveBG,专门针对动漫图像训练)、RealESRGAN(超分辨率)、GFPGAN(人脸修复)、RestoreFormer(人脸修复)、FileManager(方便浏览图片并直接保存到输出目录)。
使用方式
- 提供便捷的 WebUI,用于使用最新 AI 模型编辑图像。
- 可通过命令行安装并启动 IOPaint,启动后所有模型会自动下载。如需更改下载目录,可添加 --model-dir 参数。
- 启动后可在浏览器访问 http://localhost:8080 开始使用。
- 可在启动服务时指定要使用的插件,通过 iopaint start --help 查看启用插件的命令。
- 支持命令行批量处理图片:--image 为包含输入图片的文件夹,--mask 为包含对应蒙版图片的文件夹;当 --mask 为某个蒙版文件路径时,所有图片都将使用该蒙版处理。
- 支持本地 sd ckpt/safetensors 文件(具体用法见官方文档)。
- 前端开发:安装 nodejs,安装前端依赖,在 web_app 中创建 .env.local 文件并填写后端 IP 和端口,启动前端开发环境;安装后端依赖并启动后端服务,然后访问 http://localhost:5173/ 进行开发。前端代码修改后自动更新,后端 Python 代码修改后需重启服务。
适用场景
- 图片去物、去水印、去瑕疵、去人物。
- 图片内容替换与图像外绘。
- 需要本地自托管、注重隐私或希望完全免费使用的图像编辑场景。
- 支持 CPU、GPU 和 Apple Silicon。
- Windows 提供一键安装包;另有 OptiClean:面向 macOS 与 iOS 的对象擦除应用。
限制
- 资料未提供具体的系统最低配置、模型体积、处理速度、收费或价格信息。
- 资料未提供除上述模型与插件之外的其他功能细节。
- 部分模型与插件可能需要额外下载或配置,具体以官方文档为准。